zoukankan      html  css  js  c++  java
  • 3D作品 3D小飞机游戏

    3D作品 3D小飞机游戏 

     

    DirectX9.0好长一段时间。没有能做一个像样的东西。心里感觉就像没有过它一样。毕竟没什么证明我学过了。于以后的学习以后的就业都会有一定的促进作用。

    记得大一时玩过一个3D的单机飞机。于是,就想试一下自己能不能写一个简单的。也好总结一下自己所学的DirectX9.0。于是开始找资料做准备。(哎,好像3D的图像资源好难找……,只能用别人的了)。

    ……

    所用的环境: VS2005 + DirectX 9.0(音效引擎用的是Dietct X7.0)

     

    项目的总体结构:

    Mygame12的文件夹下有三个子文件夹:GameEngineResourcesSound.

     

     

    GameEngine: 一个简单的游戏引擎。其实我也不知道它算不算引擎。因为我知道的OGRE引擎是好庞大。而我之于她像茫茫苍海中之一粟,浩荡星空中之一小星,可能还是不能发光的那一颗呢。

    里面的文件有好下:

     

    有粒子系统、光照、材质、天空盒子、摄像机、面板、地形等。大多是看了《DietctX 9.0 3D 游戏开发编程基础》这本书后敲打出来代码的。而很别扭的事的是:t3dlib.h.t3dlib.cpp这两个音控制的是从《window游戏编程开发大师技巧》这的事的库来的。是DiretcX70.。因为我不知道DietctX 9.0 3D怎么控制声音的。

    感觉真的很别扭。当然还有几个文件也是直接拷贝别人的代码。

    第二个文件是:Resources内容如下:

     

     

    资源文件主要是包含3D相关的图像资源。有高位图、X文件和其它的。

    第三个是Sound. 如下:

     

    其实也是资源。不过没和上面的分来放了。

    接下来的是这个两个很重要的文件了:Driver.cppDriver.h

    这两个文件调用了其它几乎所有的类。程序的主函数和消息控制也在里面。

    但是感觉是我写得最难看的一个文件了。感觉很乱。600多行的代没什么条理。码让由此,我应该好好去理解面向对象设计思想和设计模式了。

    Hero.cppHero.h是游戏主角。是你控制的英雄。而其他的Enemy.cppEnemy.hEnemyModel.cppEnemyModel.h是你要消灭的敌人。Explode.hExplode.cpp 从粒子类继承下来的爆炸类。particleGun.h.particleGun.cpp从粒子类继承下来的子弹类。Snow.hSnow.cpp从粒子类继承的雪花类。

    最后一个是雾化效果:SceneFog.hSceneFog.cpp  

    --end

     

  • 相关阅读:
    java.lang.ClassNotFoundException:org.springframework.web.context.ContextLoaderListener问题解决
    Unix
    Win7 扩容磁盘分区
    在Java中怎样高效的推断数组中是否包括某个元素
    2.JAVA编程思想——一切都是对象
    Cookie-Parser是怎样解析签名后的cookie的(同一时候对cookie和cookie-signature进行说明)
    hive 索引
    Javascript属性constructor/prototype的底层原理
    HTML5 的四个亮点
    零基础学python-1.5 第一个程序
  • 原文地址:https://www.cnblogs.com/fangshenghui/p/1853056.html
Copyright © 2011-2022 走看看