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.提供了帧率控制,帧率的显示是显示在控制台窗口中的!
查看全文
相关阅读:
复制域 动态域
字段
ik分词器
redis配置文件
注解事务头部
springSecurity配置解析
sprring安全的.xml
springSecurity需要的webxml
nginx负载均衡+keepalived高可用
20190802_Nginx基础
原文地址:https://www.cnblogs.com/alongu3d/p/4354849.html
最新文章
CentOS7 修改默认时区为 北京时间
在Linux下设置定时任务(每分钟执行一次特定的shell脚本)
Linux(CentOS7)下发送邮件(使用Gmail作为发件服务器)
CentOS7 开通特定防火墙端口
Linux(CentOS 7) 新增或修改 SSH默认端口
在CentOS7 安装ffmpeg
编译Twitter的Heron时一直报错“heron/bazel_configure.py", line 25, in <module> import semver ImportError: No module named semver”如何处理。
Linux下巧用cat与EOF实现文件的替换和追加
四种方式实现点击chrome链接在ie中显示页面
javascript之call用法实例
热门文章
java之Timer类使用方法小例子
[置顶] 记一次中文乱码解决过程
-Dmaven.multiModuleProjectDirectory system propery is not set解决方案
[置顶] 彻底停止运行线程池ThreadPoolExecutor
[置顶] java动态控制线程的启动和停止
[置顶] java.io.IOException: No such file or directory解决方案之权限问题
[置顶] linux与windows之间传输文件工具rz上传大文件失败问题解决方案
[置顶] spring巧用继承解决bean的id相同的问题
消费者
scz
Copyright © 2011-2022 走看看