zoukankan      html  css  js  c++  java
  • QLGame 2d Engine SpriteBatch类创建

                 GitHub地址:https://github.com/wsgzxl/QLGame2dEngine

                  今天说五个问题:

                  1.前面说到的 颜色不对的问题,是因为FreeImage读取出来的数据格式与OpenGL显示需要的顺序不一致,所以有些颜色不对,已经在TextureManager类TextureManager::FIBitmap2GLBitmap方法进行了处理!

                  2.对PNG透明图片的渲染采用的是用

                        glEnable(GL_BLEND);

                        glBlendFunc(GL_SRC_ALPHA,GL_ONE_MINUS_SRC_ALPHA);

                        注意这两句必须写在glBegin()方法之前,否则无效!

                  3.如何实现坐标系的对应,也就是我们习惯使用的2D坐标系,左上角(0,0)右下角(窗口的长,窗口的宽)

                     glOrtho,这个函数是显示2D视图的,这个方法有六个参数

                    (左,右,前,后,近,远)

                      举个例子 如果是800*600的窗口,那么可以写成(0,800,600,0,-100,100)

                      其实,写成(0,800,0,600,-100,100)也可以实现opengl中的一个单位长度对应屏幕一个像素,而因为2D的Y,是越往下,值越大,而3D的Y,是越往下,值越小,所以,将600和0交换之后,就完美实现了和2D游戏一样的坐标系了!

                  4.SpriteBatch暂时只支持设置位置坐标,还不支持设定旋转和缩放方法,以后会提供!

                  5.提供了帧率控制,帧率的显示是显示在控制台窗口中的!        

  • 相关阅读:
    样条之CatmullRom
    分形之树(Tree)
    B样条
    样条之贝塞尔(Bezier)
    插值与样条
    windows 下的Python虚拟环境(vitrualen)pycharm创建Django项目
    VS2010专业版和旗舰版(中文版)下载
    PHP课程环境安装总结文档
    原码、反码、补码知识详细讲解(此作者是我找到的讲的最细最明白的一个)
    C语言中size_t类型详细说明【转载】
  • 原文地址:https://www.cnblogs.com/alongu3d/p/4354849.html
Copyright © 2011-2022 走看看