TooLongLink Video Watcher AI
Watch:
العربية - Arabic
Bahasa Indonesia
বাংলা - Bengali
български - Bulgarian
简体中文 - Chinese Simplified
繁體中文 - Chinese Traditional
Hrvatski - Croatian
Čeština - Czech
Dansk - Danish
Nederlands - Dutch
English
Eesti - Estonian
فارسی - Farsi
Suomi - Finnish
Français - French
Deutsch - German
Ελληνικά - Greek
ગુજરાતી - Gujarati
עברית - Hebrew
हिन्दी - Hindi
Magyar - Hungarian
Italiano - Italian
日本語 - Japanese
ಕನ್ನಡ - Kannada
한국어 - Korean
Latviešu - Latvian
Lietuvių - Lithuanian
മലയാളം - Malayalam
मराठी - Marathi
Norsk - Norwegian
Polski - Polish
Português - Portuguese
Română - Romanian
Русский - Russian
Српски - Serbian
Slovenčina - Slovak
Slovenščina - Slovenian
Español - Spanish
Kiswahili - Swahili
Svenska - Swedish
தமிழ் - Tamil
తెలుగు - Telugu
ไทย - Thai
Türkçe - Turkish
Українська - Ukrainian
اردو - Urdu
Tiếng Việt - Vietnamese
Submit
《波斯王子》开发者详解:如何克服Apple II的内存限制,通过独创动画和“暗影人”实现游戏突破
Ars Technica
总结:
Jordan Mechner讲述了《波斯王子》的开发历程,特别是如何克服Apple II电脑48KB的严苛内存限制。
他最初通过“转描机(Rotoscoping)”技术,将真人动作(包括其兄弟和空手道老师的动作)捕捉并逐帧绘制成像素,赋予角色流畅的动画效果。
尽管角色动画生动,但游戏初期缺乏战斗和悬念,显得不够有趣,且Apple II平台已濒临淘汰。
在一位同事的启发下,Mechner利用Apple II汇编语言的XOR指令,将主角的像素数据通过位移异或运算,在不额外占用大量内存的情况下,创造出了“暗影人”这一独特对手。
“暗影人”不仅为游戏增添了情感深度和冲突,还巧妙地利用了现有的角色动画数据,完美解决了内存瓶颈。
后期,Mechner还从电影《罗宾汉》中截取剑术动作,引入了守卫角色,进一步完善了游戏体验。
尽管《波斯王子》最初在Apple II上表现平平,但移植到PC、Mac及主机平台后大获成功,证明了创新设计在技术限制下的力量。
Jordan Mechner讲解Apple II的内存限制 [
00:08:30
]
游戏核心理念与早期影响 [
00:00:51
]
Jordan Mechner,《波斯王子》的创作者,讲述了他在游戏开发中遇到的挑战和解决方案。
早年对计算机和游戏的热情
[
00:01:02
]
在1970年代中期,Mechner对漫画和电影充满热情。
1978年Apple II发布后,他发现可以用它来玩游戏和制作自己的游戏。
在没有互联网的时代,他通过杂志(如《Creative Computing》和《Softalk》)和朋友交流学习编程。
Softalk杂志封面 [
00:01:40
]
从街机克隆到叙事游戏
[
00:01:57
]
Mechner早期的游戏是现有街机游戏的复制品,目标是高分,有三条命。
大学时期,他想制作一个有故事的游戏,于是诞生了《空手道(Karateka)》。
《空手道》:动画和故事的初步尝试
[0002:10]
《空手道》的故事很简单:英雄解救被邪恶军阀绑架的公主。
游戏玩法是向右跑,击败一个又一个敌人,直到最后救出公主。
Rotoscoping(转描机技术)的运用
[
00:03:10
]
发现角色动画僵硬后,Mechner采用了“转描机”技术,该技术在电影动画早期(如迪士尼的《白雪公主》)就有使用。
他用Super 8胶片拍摄了他的空手道老师的动作。
然后逐帧描绘,再将草图转换为屏幕上的像素。
为Karateka描绘的动画草图 [
00:03:50
]
《波斯王子》的灵感来源
[
00:04:14
]
《空手道》的成功让Mechner有了继续开发游戏的条件。
电影《夺宝奇兵》
[
00:04:16
]:影片开头印第安纳琼斯躲避陷阱的动作带来了平台游戏的灵感,他希望角色具有真实的重量感和受伤感。
早期平台游戏
[
00:04:36
]:如《Lode Runner》和《The Castles of Doctor Creep》中的机关谜题设计。
《一千零一夜》和电影《巴格达窃贼》
[
00:05:22
]:为游戏故事提供了东方奇幻背景和邪恶大臣绑架公主的设定。
《巴格达窃贼》电影片头 [
00:05:30
]
《波斯王子》动画技术与内存挑战 [
00:05:34
]
更复杂的动画需求
《波斯王子》需要更多动画:奔跑、跳跃、攀爬、跌落等。
VHS时代的转描机技术2.0
[
00:05:45
]
1985年,Mechner利用VHS摄像机拍摄了他的弟弟在停车场进行奔跑和跳跃的动作。
Mechner的弟弟在停车场奔跑,作为游戏动画参考 [
00:05:50
]
将录像带中的画面通过复杂的模拟-数字-模拟-数字转换流程导入计算机:
将VHS录像带在暗室电视上播放。
用35mm相机对着电视屏幕逐帧拍摄。
将胶片冲洗成照片。
用胶带将照片拼接,用记号笔和涂改液勾勒出角色轮廓,形成黑白高对比度的图像。
照片底片条,显示了用于动画捕捉的连续帧 [
00:06:40
]
将这些图像通过Xerox复印机复制,得到一系列干净的白色角色图像,背景为黑色。
通过Xerox复印机处理后的角色动画帧,用于进一步数字化 [
00:06:50
]
使用特殊的数字化卡将这些图像输入Apple II,再通过动画工具逐像素裁剪和编辑。
Apple II的严苛内存限制
[
00:08:08
]
Apple II只有48KB内存,比一封普通文本邮件还要小。
这48KB内存必须包含所有内容:图像、背景、动画帧、游戏逻辑、音效、音乐。
仅角色在地牢中导航所需的基本动画就已耗尽所有可用内存。
屏幕上显示了Apple II游戏开发中的各项资源及其在内存中的占比 [
00:08:30
]
《波斯王子》开发困境:趣味性与平台衰落 [
00:08:50
]
游戏缺乏趣味性
[
00:09:12
]
到1988年,Mechner已开发两年,角色动画流畅,能跳跃、攀爬、触发机关、躲避陷阱。
尽管概念验证很棒,但游戏玩起来并不有趣,缺乏悬念和兴奋感。
Apple II平台濒临淘汰
[
00:09:22
]
1988年,Apple II作为游戏平台已经过时,新的机器拥有更多颜色、更高分辨率、更好的音效。
切换到新平台意味着从头开始,这让Mechner担心即使游戏做得再好,也可能无人问津。
一张关于16位游戏爆发的杂志封面,暗示Apple II平台的衰落 [
00:09:40
]
他意识到,最初的愿景可能只是第一稿,需要重新审视。
最初的非暴力设想
[
00:10:07
]
Mechner最初设想主角是一个非暴力的角色,只需要在地牢中生存并解救公主,对抗的是环境中的陷阱。
由于内存限制,他无法增加其他角色。
“暗影人”的诞生:内存限制下的创意突破 [
00:10:37
]
同事Tomi Pierce的坚持
[
00:10:46
]
Mechner的同事Tomi Pierce反复强调游戏需要“战斗”,这让他很沮丧,因为他认为内存不足以支持动画流畅的敌人。
XOR指令的启发
[
00:12:38
]
在向Tomi解释无法创建不同颜色敌人时,Mechner突然想到可以使用Apple II汇编语言的“exclusive-or(异或)”指令。
他意识到,通过将每个字节与自身异或并位移一位,可以创建出主角的“闪烁、幽灵般”轮廓。
Exclusive-OR指令的文字描述 [
00:13:00
]
“暗影人”的实现
[
00:13:17
]
这个想法催生了“暗影人(Shadow Man)”这一角色。
只用了五分钟的代码,主角就变成了闪烁的幽灵形态。
屏幕上显示了通过XOR指令创建的“暗影人”角色 [
00:13:20
]
Robert Cook建议“暗影人”可以通过跳入镜子而诞生,成为主角的敌人,窃取药水,关闭大门。
“暗影人”的诞生是内存限制下的一个意外惊喜,最终成为游戏中最精彩的特色之一。
“暗影人”提供的深度
[
00:14:23
]
游戏结尾,主角与“暗影人”的对决,每次攻击“暗影人”都会损失力量点,暗示继续战斗只会伤害自己。
解决方法是放下剑,此时“暗影人”也会放下剑,然后两人融合,主角恢复所有被窃取的力量。
这种富有哲理的冲突和解决方式是Mechner在没有内存限制的情况下可能不会想到的。
主角与暗影人融合的画面,象征着内在的整合 [
00:14:40
]
剑术动画与守卫的引入 [
00:15:03
]
为剑术战斗挤出内存
[
00:15:03
]
“暗影人”的引入让Mechner意识到战斗的必要性,他设法从Apple II辅助内存卡中挤出12KB内存用于增加守卫。
守卫动画的挑战
[
00:15:26
]
他的弟弟已经不在身边,且不擅长剑术。
Mechner和同事Robert尝试拍摄自己的剑术动作,但效果不佳。
Jordan Mechner和同事Robert Cook在练习剑术,但效果不理想 [
00:15:40
]
电影《罗宾汉》的启发
[
00:15:45
]
绝望之中,他转向了1938年埃罗尔·弗林(Errol Flynn)主演的电影《罗宾汉》。
电影中罗宾汉与对手的剑术对决有6秒钟完美侧面轮廓的片段。
Mechner逐帧拍摄了VHS录像带上的这些画面,提取了角色进行剑术战斗所需的动作。
1938年电影《罗宾汉》中的剑术对决片段,作为游戏动画的参考 [
00:16:00
]
游戏完成
[
00:16:08
]
守卫的加入让游戏感觉完整,带来了挑战、悬念和恐惧感,重现了《空手道》的成功元素。
超越Apple II:多平台成功与后续发展 [
00:17:11
]
Apple II上的初期失利
[
00:17:11
]
《波斯王子》于1989年底在Apple II上发布,但因平台衰落,初期销售不佳,Mechner担心游戏会石沉大海。
一篇关于新科技使Apple II架构过时的报纸文章 [
00:17:20
]
多平台移植的成功
[
00:17:30
]
游戏被移植到PC、Mac以及世嘉和任天堂等主机平台,挽救了最初的失败,使其成为热门游戏。
这些平台的内存限制不复存在,证明了“暗影人”和战斗设计的正确性。
《波斯王子2:影与火》
[
00:18:08
]
1993年发布的续作充分利用了新一代PC的声效、音乐和彩色图形能力,增加了更多敌人、角色和丰富的环境。
但基本玩法(陷阱、战斗、解谜和探索)依然与初代《波斯王子》相似。
《波斯王子2:影与火》中的丛林环境 [
00:18:30
]
《波斯王子:时之沙》
[
00:18:49
]
2003年的重制版在PlayStation 2等主机上推出,首次引入了3D图形和时间倒流能力。
尽管技术进步,但设计仍然面临限制:他们简化了过于复杂的政治阴谋故事,将所有王国居民设定为沙怪,使游戏玩法更专注于杂技、战斗和逃跑,与手柄操作的实际能力相契合。
《波斯王子:时之沙》中的3D游戏画面 [
00:19:00
]
游戏设计理念的演变 [
00:16:29
]
限制推动创意
[
00:14:02
]
Mechner总结道,约束有时会促使开发者寻找更具创意的解决方案,这比在资源充足的情况下更容易。
如果没有内存限制,他可能会创建各种怪物,但正是这一限制迫使他深入挖掘,创造了更深刻、更令人满意的“暗影人”。
“两个声音”的教训
[
00:16:29
]
当大脑中有两种对立的方法时,要倾听这两种声音。
有时一个声音会让你偏离最初的道路,但有时它会将你引回正确的方向。
例如,增加战斗与《波斯王子》作为剑客电影的现代版本精神是完全一致的。
强调优势而非劣势
[
00:19:51
]
在设计游戏故事时,要做出能够强调游戏优势而非弱点的选择。
即使可以进行对话和面部动画,庞大的角色阵容也可能削弱游戏的强项。
保留开发日志的价值
[
00:20:04
]
Mechner强调了记录开发日志的重要性,这帮助他回忆起许多细节,他的日志也作为书籍重新出版。
《波斯王子》30周年日志书籍封面 [
00:20:00
]
Copied!
Why didn’t you like it?
Inaccurate / wrong facts
Missing important points
Took too much time to load
Article too long / verbose
Article too short / not enough detail
Article hard to read / bad formatting
Images irrelevant / broken
Language / translation issues
Offensive / inappropriate
Other
Submit
Thank you for your feedback!
×