一、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的更多相关文章

  1. C++多小球非对心弹性碰撞(HGE引擎)

    程序是一个月前完成的,之前一直没正儿八经的来整理下这个程序,感觉比较简单,不过即使简单的东西也要跟大家分享下. 源码下载:http://download.csdn.net/detail/y851716 ...

  2. hge引擎示例教程cmake项目

    hge引擎的示例代码在vs2017不能很好的运行,需要调不少东西,所以我将其重新整理成cmake的项目. 所有示例均在vs2017 msvc 下测试可以正常运行. 由于缺少libhgehelp.a所以 ...

  3. HGE引擎 - 绘制,声音,碰撞处理

    原帖地址:http://blog.csdn.net/i_dovelemon/article/details/8818037 另外,年代久远,该引擎官网早已上不去了!!! 1.库的安装和下载 从官网上h ...

  4. HGE引擎改进——2014/2/18 和 2014/2/27

    2014/2/18 更新 hgehelper库:增加hgeSkeleton类,该类用于播放骨骼动画 增加工具骨骼动画编辑器(AnimationEd),该工具用于骨骼动画的编辑 2014/2/27 更新 ...

  5. HGE引擎改进——2014/1/27

    2014/1/27 更新 hge库: 1.增加回调函数procResizeFunc(),这个函数会在窗口大小改变时调用,不是必要函数 2.修复LOG信息显示为乱码的错误 项目主页:https://co ...

  6. HGE引擎改进

    基于HGEDX9版本修改. hge库: 1.全UNICODE化 2.增加时间模块:Timer_StartTick(),Timer_NowTick()等六个函数 3.增加服从正态分布的随机数生成函数:R ...

  7. HGE引擎改进——2014/3/4

    2014/3/4 更新 1.提升资源包管理效率 2.Show库整合.目前Show库有Picture.Frame.Animation和Particle类,以及PictureData和ParticleSy ...

  8. hge引擎使用技巧

    图片周围最好留出一像素,即上下左右都多出一像素.然后使用pngopt.exe处理一下.这样可以减少图片拉伸.旋转时边界模糊的情况 图片宽高最好是 2的N次方

  9. 对HGE游戏引擎的一次封装

    HGE游戏引擎是一个开源2D游戏引擎,基于directX. 它的渲染及逻辑是基于帧回调的框架模式, 其提供一些主要的图像操作和输入控制功能. 我在之前写一个2D游戏的时候对它整个框架进行了一次封装,非 ...

随机推荐

  1. highchat中的category编程object问题

    设置highchart时的category时我是动态赋值的形式category=cat;cat是['title','title']是X轴的坐标显示但当单击chat的图例时X轴变成了object: ca ...

  2. android studio 0.8.11 如何导入Library(新手向)

    网上下了个ViewPagerIndicator的库,下载下来是个zip包,解压开来,里面有一个library和一个sample文件夹,还有一些其他的配置文件. 其中library就是我们新项目中要引入 ...

  3. 用CocoaPods做iOS程序的依赖管理

    CocoaPods简介 每种语言发展到一个阶段,就会出现相应的依赖管理工具,例如Java语言的Maven,nodejs的npm.随着iOS开发者的增多,业界也出现了为iOS程序提供依赖管理的工具,它的 ...

  4. 如何让SQLPLUS实现带日期的时间戳

    from http://www.itpub.net/thread-1876506-4-1.html SQL> defineDEFINE _DATE           = "20-7月 ...

  5. Windows下mysql忘记密码的解决方法

    Windows下mysql忘记密码的解决方法 mysql5.0 http://www.jb51.net/article/21984.htm方法一: 1.在DOS窗口下输入 net stop mysql ...

  6. VMware Workstation linux 问题

    1.can't find  /mnt/cdrom in etc/fstab or /etc/mtab mkdir /mnt/cdrom 2.80端口被占 一.查看哪些端口被打开 netstat -an ...

  7. Metro之Popup控件的使用(登录)

    最终实现效果如下: 添加用户控件LoginPage.xaml,前台代码 <Popup x:Name="LoginPopup" Width="{Binding Ele ...

  8. 【Android】ListView监听上下滑动(判断是否显示返回顶部按钮

    设置滚动监听判断ListView的滚动方向同时获取屏幕高度.ListView实际高度,判断是否需要展示返回顶部按钮 package com.zihao.activity;   import java. ...

  9. linux系统服务名称

    服务列表(按字母顺序排列) 服务名 必需(是/否) 用途描述 acon 否 语言支持 acpi 否 电源管理 acpid 否 监听精灵进程 adsl 否 内部ADSL开关控制 alsa 否 高级Lin ...

  10. thttpd增加gzip压缩响应报文体功能,以减少传输数据量

    thttpd thttpd是一个非常小巧的轻量级web server,它非常非常简单,仅仅提供了HTTP/1.1和简单的CGI支持,在其官方网站上有一个与其他web server(如Apache, Z ...