当前位置:首页 » 软件开发
开发技术指南» 文章正文
    引言: 1 背景BSP树1969年发明,90年代后用到游戏中。
 

 

    摘要: 91游戏制作联盟大型专题:《2004年游戏业回顾》邀您精诚合作 审视游戏开发动态,发布游戏制作教程,网罗游戏开发人才,展示原创游戏作品——91游戏制作联盟开办以来,以其独特的定位和丰富的内涵,博得了广大游戏爱好者和游戏制作发烧友的热情支持! 继成功策划和举办首届“天晴杯游戏制作精英大赛”后,91游戏制作联盟将于2004年12月隆重......
 ·3d游戏引擎设计与实现(17)    »显示摘要«
    摘要: 由于有人不断跟我要什么资料,其实我也没有什么资料,就只有要有网络就行了。然后上google一查,就是最好的资料。 今天,我就把我所有连接发布出来,大家就好好看看了,资料就在那里,你的3d是否成功,就看你的理解水平和实践了。希望大家共同努力,打造最成功的3d产业商品出来,一连几天深圳开了一个文博会,但里面最成功的,要数报业集团了,当然最引人的也就是深圳大芬村的油画村,起先,我怎么也想不到油画还能成......


BSP树(1)
1 背景

bsp树1969年发明,90年代后用到游戏中. 【程序编程相关:“细心呵护”Windows日志文件

【推荐阅读:老牛也能拉“快”车:Win 98瞬间启动

bsp树是一个结构,可以分割为子集.bsp算法在pre-processing的时候处理多边形,而不是在run-time. 【扩展信息:全面了解Windows操作系统安全模式

bsp树的结构定义如下:

class bsptree

{

 bsptreenode rootnode

}

class bsptreenode

{

 bsptree tree

 bsptreepolygon divider

 bsptreenode *rightchild

 bsptreenode *leftchild

 bsptreepolygon polygonset[]

}

class bsptreepolygon

{

 3dvector point1

 3dvector point2

 3dvector point3

}

你可以将场景(scene)中的部分或全部的多边形(polygon)划分成一个个小集合(convex set),在这些集合中每个多边形都在其他任何多边形的前面.当polygon1中的所有点都在polygon2的前面的时候,我们说polygon1在polygon2的前面.

点在面前面的算法如下:

classify-point (polygon, point)

sidevalue = polygon.normal × point

if (sidevalue = polygon.distance)

 then return coinciding

else if (sidevalue < polygon.distance)

 then return behind

else return infront


...   下一页
 ·3d游戏引擎设计与实现(18)    »显示摘要«
    摘要: 这几天已经封装摄像机类,就可以自由地在地图里行走,目前只是添加了5个自由度的摄像机系统。可以向前,向后,向左,向右,向上,向下,x轴旋转,y轴旋转等5个自由度。基本上,就用这个五个自由度,就可以在3d世界里漫游了。如果再添加碰撞检测,就可以让这个摄像机不会穿墙而过了。 在这里发现,如果没有加载纹理之前,显示线框图,是一个很好的调试方法。 后面接着要写的内容就是怎么样加载纹理,怎么样设置每个顶点的......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE