• HGE tutorial02


    来看看第二个程序,程序就不贴了。

    第二个程序相比于第一个程序多了声音和纹理的使用,这里出现的新的东西hgeQuad,还有HEFFECT。对于hgeQuad:http://blog.csdn.net/wenzhoufeng22/article/details/2326437,博客中有介绍。

    现在还是不懂,在这个结构中

    struct hgeQuad
    {
        hgeVertex        v[4];
        HTEXTURE        tex;
        int            blend;
    };
    
    /*
    ** HGE Vertex structure
    */
    struct hgeVertex
    {
        float            x, y;        // screen position    
        float            z;            // Z-buffer depth 0..1
        DWORD            col;        // color
        float            tx, ty;        // texture coordinates
    };

      其中hgeQuad中的 blend的属性,还有在hgeVertex中的 z也不是很清楚的东西。

      blend值是指的像素的混合 http://blog.csdn.net/qq45000/article/details/8130685

      通过不同的blend可以实现多种效果,需要实验!

      z-buffer:假设空间是三维的(好像是废话),我们看到的就是xoy面,然后通过设定z坐标则可以表示物体到xoy面对距离。也就是说z值的不同表示的是物体的远近感。

      接下来的代码:

    void boom() {
        int pan=int((x-400)/4);
        float pitch=(dx*dx+dy*dy)*0.0005f+0.2f;
        hge->Effect_PlayEx(snd,100,pan,pitch);
    }
    

      

      也有不了解的部分,对于函数的参数在教程中也没有介绍

      接下来的部分就是都能看懂的部分,没有什么特别的地方。在声明了纹理之后才使用纹理,同时在遇到碰壁的情况时会发出声音,即调用boom()。

      将程序稍加修改,原来只有一个球,我将图片中的另外一个五角星放入球中:)  龙珠的有没有。新建一个ball类,在类中设立两个hgeQuad分别显示五角星和圆形。在画图形的图形遇到了问题,因为在hge中画图形只有三个,Gfx_RenderQuad、Gfx_RenderLine、Gfx_RenderTriple。

      

      

  • 相关阅读:
    学习篇之函数就是对象
    @Controller和@RestController的区别
    maven 阿里云 国内镜像 中央仓库
    IntelliJ IDEA使用教程
    解决“无法从套接字读取更多数据”
    at java.util.Arrays.copyOfRange(Arrays.java:3209)导致的java.lang.OutOfMemoryError: Java heap space 错误的解决办法
    maven中引入ojdbc包
    Oralce增加表空间
    Web服务框架发展与REST服务开发
    Oralce解锁表
  • 原文地址:https://www.cnblogs.com/yoru/p/4018026.html
Copyright © 2020-2023  润新知