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.提供了帧率控制,帧率的显示是显示在控制台窗口中的!
查看全文
相关阅读:
JQ轮播
JS中正则匹配的三个方法match exec test的用法
JavaScript 表单验证
JS 控制CSS样式表
AJAX 的简单用法:
shell之运用sed将其值存到变量
shell之创建文件及内容
修复vbox的共享文件夹的符号链接错误
字符转码
php魔术方法
原文地址:https://www.cnblogs.com/alongu3d/p/4354849.html
最新文章
[C#]this.Invoke和this.BeginInvoke的区别
[ASP.NET]static变量和viewstate的使用方法
[ASP.NET]使用Layer简介
[ASP.NET]使用Oracle.ManagedDataAccess的OracleParameter参数化和OracleDataAdapter模糊查询
[js]获取网页屏幕可见区域高度
数据库锁
微服务实战
ab压力测试工具-批量压测脚本
分布式数据存储
分布式数据存储
热门文章
分布式数据存储
Java日志记录的事儿
分布式数据存储-MySQL主从复制
由浅入深了解Thrift之微服务化应用架构
由浅入深了解Thrift之结果封装
AangularJS相关术语
wekpack笔记
AangularJS入门总结三
AangularJS入门总结二
AangularJS入门总结一
Copyright © 2011-2022 走看看