最近学习c++ 的AGK图形编程基础,想做一下简单的记录
首先要下载APPGAMEKIT 下载https://www.appgamekit.com/
接下来就是在
Vs10 为Vs2010的, Vs9 为Vs 2008 选择哪个文件复制重命名自己的工程名称
以下函数大多在准备图像基础设置,封装进 app:Begin() 函数内,加载资源游戏准备就绪
- agk::SetVirtualResolution(Width , Height ); //设置虚拟屏幕分辨率
- agk::CreateSprite(index, file ); //创建精灵对象
- agk::SetSpritePosition(index, x, y ); //设置精灵对象位置
- agk::SetSpriteDepth(index,depth ); // 在单线程执行时,对每个精灵对象会出现重复,这时 后执行的往往会覆盖前面的精灵,就可以用 此函数对精灵深度不同来进行多层图的设置
- agk::SetSpriteScale(index, xscale,yscale); // 对精灵缩放
- agk::GetSpriteX(index); //获得精灵的X坐标
- agk::GetSpriteY(intdex); //获得精灵的Y坐标
- agk::GetSpriteHeight(index); //获得精灵高度
- agk::GetSpriteWidth (index ); //获得精灵宽度
- agk::SetSpriteAngle(index, Angle); // 旋转精灵 0~359
- agk::SetSpriteFlip(index, Horizontal, Vertical ); // 翻转精灵 Horizontal :1水平翻转 Vertical : 1垂直翻转
- agk::SetSpriteVisible(index, Visible ); //Visible :1 为可见
- agk::SetSpriteColorRed(index , RedChannel) ; // 精灵红色通道设定
- agk::SetSpriteColorBule(index, BuleChannel ); // 精灵蓝色道设定
- agk::SetSpriteColorGreen(index , GreenChannel );// 精灵绿色通道设定
- agk::SetSpriteAlpha(index, Alpha ); // 精灵透明度设定
- agk::CloneSprite(index, DestinationSpiteIndex ); // DestionationSpriteIndex 为虚拟精灵索引
- agk::LoadImage (ImageIndex , ImageFile , BlackToTransparent ); // 对纯黑色背景去除 BlackToTransparent 为1时,黑色像素透明, 0显示黑色像素
- agk::DeleteSprite(index ); // 将精灵从内存中删除
- agk::SetClearColor (Red, Green , Blue ); // 填充屏幕做准备
- agk::ClearScreen(); //调用SetClearColor() 对屏幕填充颜色
- agk::Print (String); // 显示文本内容
- agk::PrintC(Sting ); // 显示文本内容 与agk::Print 区别在于 PrinC 对文本末尾不添加换行符
游戏循环 app::Loop(), 一当进入游戏循环都是初始值为60fps 来进行 除非关闭直至函数停止
要想显示上模块中的图像设置, 就要调通 agk::Sync();来进行对在缓冲内存的图像 更新在屏幕上
agk::SetSyncRate(FramesPerSecond , Mode ); // FramesPerSecond 为浮点数帧数 ,Mode 为1 CPU运算消耗大,对帧数精确显示,为0较少CPU运算能力