HGE引擎之hgeSprite
一、hgeSprite类
hgeSprite是一个精灵实体的HGE帮助类。
1、构造函数
创建和初始化一个hgeSprite对象。
hgeSprite(HTEXTURE tex, float x, float y, float w, float h);
其中:tex为纹理图片,x与y为精灵对应纹理图片的左上角位置,w与h为精灵的宽度与高度。
2、渲染函数
1) Render 将精灵渲染到屏幕上
void Render(float x, float y);
其中:x与y为显示精灵的屏幕位置
2) RenderEx 可使用缩放和旋转的方式来渲染精灵
void RenderEx(float x, float y, float rot, float hscale=1.0f, float vscale=0.0f);
其中:x与y为显示精灵的屏幕位置,rot为旋转角度,hscale和vscale精灵的宽度与高度的放缩比例
3) RenderStretch 渲染拉伸的精灵
void RenderStretch(float x1, float y1, float x2, float y2);
其中:x1与y1为左上角,x2与y2为右上角,即将精灵以拉伸的方式显示在固定有四方形中。
4) Render4V 将精灵渲染到屏幕上的任意矩形中
void Render4V(float x0, float y0, float x1, float y1, float x2, float y2, float x3, float y3);
其中: (x0,y0)---------(x1,y1)
| |
(x3,y3)---------(x2,y2)
3、相关的辅助函数
SetTexture 设置精灵要使用的纹理。
SetTextureRect 设置精灵要使用的纹理区域。
SetColor 为指定的顶点或整个精灵设置色彩和透明度。
SetZ 为指定的顶点或整个精灵设置Z序(Z-order)。
SetBlendMode 设置精灵的混合模式。
SetHotSpot 设置精灵的锚点,即精灵的中心点位置。
SetFlip 设置水平和/或垂直翻转精灵。
GetTexture 返回当前精灵的纹理。
GetTextureRect 返回精灵使用的当前纹理区域。
GetColor 返回指定的精灵顶点颜色。
GetZ 返回指定的精灵顶点Z序(Z-order)。
GetBlendMode 返回当前精灵的混合模式 。
GetHotSpot 返回精灵的锚点。
GetFlip 返回当前精灵的水平和/或垂直翻转。
GetWidth 返回精灵的宽度。
GetHeight 返回精灵的高度。
GetBoundingBox 返回精灵的约束边界(四边形)。
GetBoundingBoxEx 返回缩放和旋转的精灵约束边界(四边形)。
4、几点注意事项
1> hgeSprite中的SetHotSpot的功用是设定该sprite的热点(锚点)。其接受的参数a,b代表改热点据sprite坐上角的相对横,纵距离。设置热点是初始化一个sprite过程中的一部分。
HGE引擎之hgeSprite的更多相关文章
- C++多小球非对心弹性碰撞(HGE引擎)
程序是一个月前完成的,之前一直没正儿八经的来整理下这个程序,感觉比较简单,不过即使简单的东西也要跟大家分享下. 源码下载:http://download.csdn.net/detail/y851716 ...
- hge引擎示例教程cmake项目
hge引擎的示例代码在vs2017不能很好的运行,需要调不少东西,所以我将其重新整理成cmake的项目. 所有示例均在vs2017 msvc 下测试可以正常运行. 由于缺少libhgehelp.a所以 ...
- HGE引擎 - 绘制,声音,碰撞处理
原帖地址:http://blog.csdn.net/i_dovelemon/article/details/8818037 另外,年代久远,该引擎官网早已上不去了!!! 1.库的安装和下载 从官网上h ...
- HGE引擎改进——2014/2/18 和 2014/2/27
2014/2/18 更新 hgehelper库:增加hgeSkeleton类,该类用于播放骨骼动画 增加工具骨骼动画编辑器(AnimationEd),该工具用于骨骼动画的编辑 2014/2/27 更新 ...
- HGE引擎改进——2014/1/27
2014/1/27 更新 hge库: 1.增加回调函数procResizeFunc(),这个函数会在窗口大小改变时调用,不是必要函数 2.修复LOG信息显示为乱码的错误 项目主页:https://co ...
- HGE引擎改进
基于HGEDX9版本修改. hge库: 1.全UNICODE化 2.增加时间模块:Timer_StartTick(),Timer_NowTick()等六个函数 3.增加服从正态分布的随机数生成函数:R ...
- HGE引擎改进——2014/3/4
2014/3/4 更新 1.提升资源包管理效率 2.Show库整合.目前Show库有Picture.Frame.Animation和Particle类,以及PictureData和ParticleSy ...
- hge引擎使用技巧
图片周围最好留出一像素,即上下左右都多出一像素.然后使用pngopt.exe处理一下.这样可以减少图片拉伸.旋转时边界模糊的情况 图片宽高最好是 2的N次方
- 对HGE游戏引擎的一次封装
HGE游戏引擎是一个开源2D游戏引擎,基于directX. 它的渲染及逻辑是基于帧回调的框架模式, 其提供一些主要的图像操作和输入控制功能. 我在之前写一个2D游戏的时候对它整个框架进行了一次封装,非 ...
随机推荐
- Android开发笔记:打包数据库
对于数据比较多的控制一般会加入SQLite数据库进行数据存储,在打包时这些数据库是不自动打包到apk中的,如何创建数据库呢 方法1:将创建数据库的sql语句在SQLiteHelper继承类中实现,在第 ...
- mysql开发中使用存储过程
在mysql开发中使用存储过程的理由: 当希望在不同的应用程序或平台上执行相同的函数,或者封装特定功能时,存储过程是非常有用的 mysql 执行语句是要先编译,然后再执行的.这样如果查询并发大的时候. ...
- getconf 命令
getconf 命令 用途 将系统配置变量值写入标准输出. 系统的默认参数,比如mkfs读取默认参数,并格式化,默认PAGESIZE是4096 语法 getconf [ -v specificatio ...
- Linux - sort & uniq
参考:http://www.cnblogs.com/ggjucheng/archive/2013/01/13/2858385.html sort < InputFile | uniq -c
- 压测 502 日志报错 upstream timed out (110: Connection timed out)
环境介绍 服务器:centos6.5服务:nginx proxy 问题描述: 压测 开发同事 的开发环境项目没事,但是 线上机器 命中%50 ,大量502 php的某些页面打不开,页面提示gatewa ...
- nsstring打印结构体
// // main.m // 09-常用结构体 // // Created by apple on 14-3-20. // Copyright (c) 2014年 apple. All ri ...
- ios webView 默认有缓存
ios webview清除缓存. ios默认webview是有缓存的,所以不改变URL的话,刷新不了网页数据,或者像我这样写 NSMutableURLRequest *request = [NSMut ...
- ios9 升级后 企业版app plist无法安装
昨天apple推送了ios9, 公司的一些app是企业版的,平常通过 item-service 结果更改如下 plist可以了 itms-services://?action=download-man ...
- mysql 常见的几个错误问题
Mysql常见的几个错误问题及解决方法: 1.问题: mysql DNS反解:skip-name-resolve 错误日志有类似警告: 点击(此处)折叠或打开 120119 16:26:04 [War ...
- 使用Navicat for Oracle新建表空间、用户及权限赋予---来自烂泥
Navicat for Oracle是有关Oracle数据库的客户端工具.通过这个客户端,我们可以图形方式对Oracle数据库进行操作. 说 明我们此次试验的Oracle数据库版本是Oracle 10 ...