游戏开发论坛

 找回密码
 立即注册
搜索
查看: 4469|回复: 17

[交流探讨]3D游戏引擎

[复制链接]

20

主题

398

帖子

398

积分

中级会员

Rank: 3Rank: 3

积分
398
发表于 2005-10-11 17:32:00 | 显示全部楼层 |阅读模式
我最近一段时间在看《3D游戏大师技巧》这本书,想研究一下3D游戏引擎的原理。

3D流水线的第一个步骤就是载入3D模型,然后对3D模型进行各种变换和处理。感觉微软的.X文件太过复杂,载入模型后,不知如何对模型数据来进行处理,所以想自己定义3D模型文件,然后用自己定义的数据结构来载入模型,这样就可以得心应手的对顶点数据进行处理了。无奈刚开始学习,感觉是一头雾水,不知如何下手,请各位前辈多加指点,介绍一些经验,或者提供一些相关文档,小弟感激不尽!

[em24]

20

主题

398

帖子

398

积分

中级会员

Rank: 3Rank: 3

积分
398
 楼主| 发表于 2005-10-12 13:24:00 | 显示全部楼层

Re:[交流探讨]3D游戏引擎

我的一个感觉:D3D提供了很多基础功能,比如说摄像机、可视空间剪裁(不知道是不是这样称呼),顶点缓冲、Mesh、纹理等等,还有一些矩阵变换的功能,但是和一个完整的3D流水线还有很大的差距。我感觉很多商业游戏引擎好像都没有使用D3D所提供的这些功能,而是用自己的方法来实现的,不知道我说得对不对?

我觉得D3D所提供的这些功能,只适合制作一些演示程序,或用于教学,真正开发游戏,用起来效果不是很好,大部分基础功能都应该自己来实现。

20

主题

398

帖子

398

积分

中级会员

Rank: 3Rank: 3

积分
398
 楼主| 发表于 2005-10-12 13:28:00 | 显示全部楼层

Re:[交流探讨]3D游戏引擎

如果真正开发一款3D图形引擎的话,到底应该在什么层次上来使用D3D呢?是利用D3D的功能,并加入一些D3D没有提供的功能好呢?还是完全从底层开始构建,不使用D3D所提供的那些高级功能呢?

21

主题

120

帖子

129

积分

注册会员

Rank: 2

积分
129
发表于 2005-10-12 17:05:00 | 显示全部楼层

Re:[交流探讨]3D游戏引擎

我的理解是,D3D或者GL只是图形SDK,你要做一个图形引擎的话,就要将他们提供的API进行合适的封装,使得封装出来的引擎接口具有一定的逻辑性和易用性。

11

主题

23

帖子

23

积分

注册会员

Rank: 2

积分
23
发表于 2005-10-12 19:46:00 | 显示全部楼层

Re:[交流探讨]3D游戏引擎

我觉得D3D所提供的这些功能,只适合制作一些演示程序,或用于教学,真正开发游戏,用起来效果不是很好,大部分基础功能都应该自己来实现。

=================================================

你这个理解的太对了,商业游戏根本没有用微软X文件的,也不用用LoadXFromFile()这么简单的函数装载模型的,很多都是自己写的模块。微软例子中的东西和微软提供的一些辅助类和函数只是用来推广D3D用的,商业上不用这些。

16

主题

83

帖子

103

积分

注册会员

Rank: 2

积分
103
QQ
发表于 2005-10-13 12:21:00 | 显示全部楼层

Re:[交流探讨]3D游戏引擎

如果你想看商业引擎或游戏中的模型是如何组织的,建议1楼看暴雪的M2文件.它的格式如下:
http://wowmapview.sourceforge.net/wiki/index.php/M2#M2_Files
还有很多加载它的源码,你可以查查.
它真的很不错,特别是在人物换装备上.用了皮肤纹理整合,骨骼绑定装备,等等
反正我是入迷了.呵呵.

20

主题

398

帖子

398

积分

中级会员

Rank: 3Rank: 3

积分
398
 楼主| 发表于 2005-10-13 12:45:00 | 显示全部楼层

Re:[交流探讨]3D游戏引擎

E文的呀!虽然小弟的E文水平一般,不过还勉强能看,谢谢楼上的仁兄!

63

主题

871

帖子

891

积分

高级会员

Rank: 4

积分
891
QQ
发表于 2005-10-13 16:22:00 | 显示全部楼层

Re:[交流探讨]3D游戏引擎

长见识了啊

1

主题

2

帖子

6

积分

新手上路

Rank: 1

积分
6
发表于 2005-10-14 11:48:00 | 显示全部楼层

Re: [交流探讨]3D游戏引擎

楼主 我最近也再看那本书
我的qq是22508466 加起 以后多交流交流

20

主题

398

帖子

398

积分

中级会员

Rank: 3Rank: 3

积分
398
 楼主| 发表于 2005-10-14 16:09:00 | 显示全部楼层

Re:[交流探讨]3D游戏引擎

D3D似乎不支持背面剔除(非可见面的消除)功能,请问自己要如何来实现呢?提点思路也好啊!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2026-1-22 08:57

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表