求游戏开发史的介绍 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Game Engines
Unreal Engine
MyCryENGINE
archxm
V2EX    游戏开发

求游戏开发史的介绍

  •  
  •   archxm 2024-02-14 17:35:29 +08:00 2870 次点击
    这是一个创建于 604 天前的主题,其中的信息可能已经有所发展或是发生改变。
    • 如果从 c++ opengl 一个开源的游戏引擎 这种路线来学习,
    • 其实会发现,还是不会做游戏。
    • 游戏编程是一个方面,还有大量美工活,
    • 以及,各种奇技淫巧。
    • 我感觉,在 1980 时代,那种红白机,甚至红白机之前的游戏,
    • 应该也是很复杂的,也有很多奇技淫巧,是值得了解的。
    • 不知道有没有这方面的总结,一本书,或者什么其他的。
    9 条回复    2024-02-15 09:30:23 +08:00
    flyqie
        1
    flyqie  
       2024-02-14 20:04:46 +08:00
    挺好奇楼主看这些是想做什么,开发还是兴趣驱动来拓展知识面。

    没记错的话,这些奇技淫巧很多都是与平台绑定并且是特定环境和场景下的东西(很多与性能受限相关)。

    搜搜特定平台游戏开发的老书?
    levelworm
        2
    levelworm  
       2024-02-14 20:49:39 +08:00   1
    其实我觉得可以参考游戏发展史,从早期的小游戏开始做起,一直做到比如 90 年代,把每个阶段的代表性游戏都自己做一遍。用什么做无所谓,可以自己写引擎,也可以用别人的引擎。因为你是做游戏,不是做引擎,引擎只是游戏的一部分。我自己曾经整理过一个列表,大概 15-20 个游戏的样子,有兴趣的话继续讨论。

    如果想要了解早期的编程技巧,我可以推荐一点,不过我自己不是业内人士,所以仅供参考。

    Michael Abrash 的所有技术书籍:大致上着重于讲述 80-90 年代的 IBM PC 汇编程序的优化和技巧。从技术上来说,这些内容已经没有参考价值了(除非你要做 retro game ),但是其中的理念和想法还是很有价值的。值得一看。

    https://www.nesdev.org/ : 红白机编程参考大全。Google 一下,你也能发现很多其他流行机种的类似网站,比如 Gameboy 、Atair 2600 这些早期的机种都有。在 retro console game dev 社区中,Gameboy 是最流行的,资料最多,而且可以直接用 C 编程,工具链也很成熟。总体来说,Gameboy, NES, SNES 这三个应该是资料最齐全、社区最庞大的机种。如果没记错的话,PlayStation 1 的资料和工具链也很不错(毕竟是稍微现代一些的主机),而且性能相对强大,可以写 3D 游戏。
    levelworm
        3
    levelworm  
       2024-02-14 21:01:36 +08:00   1
    如果对 ID Software 的第一视角射击游戏背后的代码和技术感兴趣的话,可以推荐一系列书和一个网站:

    Fabien Sanglard 的所有书籍: https://fabiensanglard.net/three_books_update/index.html

    https://www.gamers.org/dEngine/

    如果纯粹是想要了解历史,也可以推荐几本书:

    Master of Doom (ID Software 的历史)

    The Doom Guy (对 ID Software 的早期历史有非常详尽的描述)

    The Making of Prince of Persia

    The Making of Karateka

    Sid Meier's Memoir!



    此外 Youtube 上搜索 [游戏名] + Postmortem ,也能找到很多著名游戏制作人对制作过程的详尽回顾和分析。

    最后,考虑到 DND 对电子游戏,尤其是 RPG 的影响,也不妨研究一下。尤其是 ADND 2e 。
    Muslanet
        4
    Muslanet  
       2024-02-14 23:24:27 +08:00 via Android
    现代游戏和那个时候开发差异还是很大的。世嘉任天堂那会更像是嵌入式开发,图片和文字都是取模后的,不能直接读写文件资源加载,开发游戏要操作寄存器和芯片然后使用精灵作为“对象”,现代游戏开发则省掉了这些麻烦。dos 游戏貌似是直接调 Windows 的 api 绘图接口(不确定)。因为现代游戏开发都交给游戏引擎处理了且有通用 gpu 接口统一处理,感觉没啥参考意义。但是从游戏某个分类或者某一系列游戏发展史的话从这个角度讲感觉游戏史还是很有参考意义的。

    关于“奇技淫巧”莫非在说游戏性能的优化?说到这个当年的游戏性能真是太有意义了,光一个图片资源复用都感觉能出来的人太聪明了,有限的硬件资源充分利用,寸土寸金,内存利用的明明白白,各种游戏寄存器数据刷新思路也很厉害。

    不是做洗游戏开发的,发言也不严谨,就是一个 gba 游戏和嵌入式爱好者的猜测,专业理解还得看相关领域的各位大佬。
    archxm
        5
    archxm  
    OP
       2024-02-14 23:53:41 +08:00
    @flyqie 这个怎么说呢,个人还有另一个怪癖,平时看技术书时,会下载 pdf ,很多时候,这些 pdf 没有目录,或者说,没有书签,不太方便翻阅。所以,我经常给下载好的 pdf ,没目录的,去创建目录。结果好多时候,技术没怎么学到,大半天去搞那些目录了。
    了解游戏开发的奇技淫巧,也算个人怪癖吧,没啥特别目的性的。
    archxm
        6
    archxm  
    OP
       2024-02-14 23:56:12 +08:00
    @levelworm 感谢你的指导,不过,我自己整理的话,还是挺费时间的,我直接放弃。
    曾经也啃过汇编,但毕竟自己主力还是 cpp 程序员,所以汇编也就看一看,然后就忘记了。忘的九霄云外去了。
    当然了,你说的这些,我也会慢慢去看的。谢谢了
    archxm
        7
    archxm  
    OP
       2024-02-15 00:00:16 +08:00
    @Muslanet 我觉得不对,现代人已经病了,什么病了,一提游戏,就是 3d 引擎,就是 x,y,z 轴,就是什么变换,什么 3d 渲染,什么光锥。
    其实 俄罗斯方块,不算游戏吗?超级玛丽,他也不是 3d ,泡泡龙、祖玛青蛙、猴子塔防,都是很优秀的游戏。当然了,fps 射击游戏,也很多人喜欢,名气最大。
    R4rvZ6agNVWr56V0
        8
    R4rvZ6agNVWr56V0  
       2024-02-15 02:25:54 +08:00   1
    Amber2011
        9
    Amber2011  
       2024-02-15 09:30:23 +08:00 via Android   1
    游戏开发 世嘉新人培训教材
    红白机视觉史
    超级任天堂视觉史
    不过这些都是我想看的,还没看过。
    看书名应该勉强符合要求
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2905 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 24ms UTC 13:50 PVG 21:50 LAX 06:50 JFK 09:50
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86