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过程中的一部分。

转载于:https://www.cnblogs.com/color-my-life/p/3216198.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
HGE 1.8.1a Unicode Edition and Support Joystick中文的使用方法:1、现将现在的工程转换为UNICODE,否则会提示找不到hgeFont符号。2、在用到的字符串处使用宏TXT()进行字符处理(hge中自带的),也可声明如HGE_CHAR a[]={"hello"};方式使用3、不能使用现在的字体文件,我们先用Bitmap Font Generator (www.AngelCode.com)生成fnt字体,然后用本HGE中自带的bmfconv进行转换,生成本HGE能用的字体。手柄的使用方法:1、先生成一个指针类型的DIJOYSTATE结构,如:DIJOYSTATE js=new DIJOYSTATE; hge.h文件有此结构定义2、m_hge->System_SetState(HGE_USEJOYSTICK,true);进行标志位设置设置为true为可用手柄。3、m_hge->System_SetState(HGE_JOYSTICKFUN,JoystickStateProxy,js); 其中JoystickStateProxy是指手柄的callback函数,相当于FrameFunc等,函数原型是void JoystickStateProxy();4、m_hge->System_SetState(HGE_JOYUPDATE,10);//更新手柄信息的速度,就是轮询时间,手柄事件的状态更新。5、m_hge->System_SetState(HGE_JOYEVENT,10);//触发事件的速度,也就是JoystickStateProxy这个函数的访问速度。这里是10毫秒触发一次要想看手柄的处理,请看我的博客文章:http://blog.csdn.net/zealczg/archive/2008/07/23/2695760.aspx( 游戏手柄(JoyStick)的延时处理 )声明:本程序的unicode 功能是国外的朋友实现的,并且还支持adobe的flash播放功能,我只是实现了手柄的接口,欢迎进行技术讨论!QQ:16535702,简单问题请勿骚扰!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值