游戏关卡设计主要使用的元素包括: 1.玩家 2.角色(包括npc和怪兽) 3.光照 4.玩家出生点 5.怪兽出生点 6.触发器区域(玩家进入这个区域,触发一个脚本) 7.怪物出生 触发区域(玩家进入区域,触发怪物产生) 8.退出关卡触发区域 9.触发物体(当玩家和对象交互的时候,触发一个脚本) 10.宝箱类型对象 11.可摧毁类型对象 12.陷阱触发器 13.定时 陷阱触发器(定时开关的陷阱,相似于地面喷射的火焰) 14.爆炸效果陷阱 15.门 16.路点(用于过场动画里面的行走点)动画
其中光照是营造氛围很是重要的元素:火炬之光采用了一种相似于光照贴图的技术, 1.首先手绘的几张光照图; 2.将光照图摆放到场景中 3.物体的shader在渲染的时候,根据xz平面坐标,计算出对应的光照图影响,和物体自己的颜色相乘,就获得伪光照的效果设计
在unity里面实现的话, 首先须要设计shader,为shader添加一个texture用于放置光照贴图; 在asset中新建一个rendertarget 对象,将其放到须要使用光照贴图的对象的材质中; 构建一个光照贴图摄像机,用于拍摄场景中的 伪光照模型,伪光照模型处于一个独立的层上面,和通常物体分开,光照摄像机的render target设置为刚才新建的 render对象; 为每一个须要光照影响的对象附加一个脚本,用于动态传入光照摄像机的位置到shader中,在shader中根据自身位置和摄像机位置,计算对象的光照贴图坐标。对象