当前位置: 首页 > news >正文

asp伪静态网站如何做筛选谷歌怎么做网站优化

asp伪静态网站如何做筛选,谷歌怎么做网站优化,网站建设捌金手指专业8,泊头市网站建设古之学者必有师#xff0c;对于技术的提升#xff0c;只靠自己的摸索虽然能得到深刻的经验#xff0c;但往往没有较高的效率。笔者这些天学习了BV1eM4m1S74K“提瓦特幸存者”的C开发#xff0c;也是实现了该类型游戏的开发。今天#xff0c;就通过经验总结#xff0c;亲手…古之学者必有师对于技术的提升只靠自己的摸索虽然能得到深刻的经验但往往没有较高的效率。笔者这些天学习了BV1eM4m1S74K“提瓦特幸存者”的C开发也是实现了该类型游戏的开发。今天就通过经验总结亲手结束这一小段学习过程 游戏的基本框架所有游戏的底层框架都是通过一个主循环来刷新画布每个循环中都实现读取操作、处理数据、绘制画面这三个步骤。 int main() {while (running) {//动态延时记录本次循环开始的时间DWORD start_time  GetTickCount();  //32位无符号整数长度不随编译器变化//读取操作区域while (peekmessage(msg)) {}//处理数据区域cleardevice();//渲染画面区域FlushBatchDraw();//记录循环结束时间DWORD end_time  GetTickCount();DWORD delta_time  end_time - start_time;//1秒144次刷新即帧率为144一个循环就是一帧if (delta_time  1000 / 144) {Sleep(1000 / 144 - delta_time);}}EndBatchDraw();return 0; }在这些操作执行完后加上动态延时从而实现游戏开发中“帧”的概念。这也是游戏引擎设计的基本框架是不是很有Update()函数的感觉关于渲染缓冲区为了隐藏渲染或其他处理的过程BeginBatchDraw函数会让后续的渲染操作在缓冲区中进行像一块闲置的画布当调用FlushBatchDraw或EndBatchDraw即所有操作绘制结束时直接代替当前画布达到无缝衔接的效果。一些代码细节视频的创作者在许多地方都体现了C的编码细节比如使用static静态变量只在第一次调用时创建后续调用会跳过复用同一内存使用TCHAR这一Windows兼容类型适应非英文环境同样使用宽字符串适应非英文环境……头文件依赖问题在这次C开发的过程中我总是被所谓“出现未定义的变量名”给搞到破防。这是头文件重复包含导致的。一个项目各个区域的执行顺序是全局变量-静态全局变量-函数声明-静态函数声明-类定义-静态类成员定义-命名空间变量-函数定义……头文件一般用来包含变量与函数的声明、类的定义等重要信息。头文件的循环包含引发编译错误的原因编译器处理 #include 时会把对应头文件内容嵌入包含位置。若头文件循环包含其可能会陷入无限递归尝试展开头文件的情形。即便使用包含守卫( #ifndef 三件套 )或 #pragma once 规避重复展开由于头文件解析时需要对方类型完成自身声明或定义循环依赖会导致部分必要的声明或定义无法在依赖解析阶段正确处理。类似A.h在第一行包含了B.h同时B.h的第一行包含了A.h, B类使用的A类的定义但是在头文件依赖解析A.h时先展开B.h但B.h遍历到A.h会因为包含守卫而跳过这下B类里A就没有了定义……这里有三个编程习惯可以尽量避免头文件重复包含的问题1、使用前向声明在使用A的头文件中声明声明一下A类。不需要访问具体成员时需要。2、使用包含守卫即 #ifndef、#define、#endif 连招。3、使用 #pragma once可替代包含守卫使头文件在一个编译单元中只包含一次。但这些方法只能尽量避免我们遇到的问题最重要的还是在一开始就规划好项目的结构。保持头文件声明、源文件定义的好习惯在必要时进行重构让文件包含的脉络清晰一目了然。动画与MCI工具游戏中使用的动画分为骨骼动画关键帧动画与序列帧动画。序列帧动画就是让图片素材以若干个帧为单位进行交替从而达到动画播放的效果。这里使用自定义图集类来批量载入名称有规律的图片素材。 Atlas::Atlas(LPCTSTR path, int num) {TCHAR path_file[256];for (size_t i  0; i num; i) {_stprintf_s(path_file, path, i);IMAGE* frame  new IMAGE();loadimage(frame, path_file);frame_list.push_back(frame);} }这种方法依次用从零开始的自然数代替图集中的数字部分实现图片载入。MCI工具媒体控制接口能够让我们以字符串的形式对windows系统发出指令控制音乐的播放。但在我的测试中mp3文件在播放时会明显影响游戏的帧率。经过测试与查询这与MP3格式文件的特性有关编解码边播放。而MCI解码的消息可能会打断Sleep让主循环提前醒来导致帧率变高。所以在加载音频文件时更推荐使用WAV格式1、MCI 加载 MP3 资源时底层会创建额外的线程或窗口并且会向主消息队列发送消息比如 MM_MCINOTIFYEasyX 的 peekmessage 也会处理这些消息。2、WAV 文件是无压缩格式处理简单不会影响主线程而 MP3 需要解码可能会影响主线程的消息分发和定时精度。3、某些 Windows 环境下MCI 加载MP3会让Sleep变得不准确主循环实际刷新频率变高。 小结虽然本篇图文列出的点很少但是这次学习经历切切实实加深了游戏开发的理解。我想这些框架性的东西也可能成为游戏引擎开发的一个开端而通过C而不是依赖引擎的开发更能深入底层逻辑让日后对代码的优化的方向更清晰。如有补充纠正欢迎留言。
http://www.pierceye.com/news/744379/

相关文章:

  • 无锡市住房和城乡建设局网站昆明做网站的网络公司
  • 家居seo整站优化方案已经有了网站源代码怎样搭建
  • 红河州网站建设对网站做维护
  • 网站建设5000费用预算wordpress 鼠标点击特效
  • 江门企业自助建站系统做网站诱导网站
  • 知识问答网站开发南昌建站
  • 开发网站需要租服务器网易企业邮箱如何申请注册
  • 青岛市黄岛区城市建设局网站南京建设监理协会网站
  • 网站设计要点做网站的是什么职业
  • 造型设计网站推荐哪些企业网站做得好
  • 东丰网站建设网络域名怎么注册
  • 行业网站模板装饰公司东莞网站建设
  • 成都政务网站建设电脑编程与网站建设
  • 描述电子商务网站建设网站开发教程H5
  • 个人做电影网站有什么风险招聘网站制作公司
  • 安徽网站推广公司网站集群建设参数
  • 个人网站做哪种能赚钱网站维护有哪些企业
  • 专题类的网站郴州全网推广公
  • 流行用什么做网站手机响应式网站
  • 绍兴网站建设 微德福如何填写网站开发验收单
  • php 创建网站开发中山如何建设网站
  • 莱芜企业建站公司申请微信公众号
  • 手机网站 html5上海网站开发怎么做
  • 精密科技东莞网站建设ppt简约大气模板
  • 一家专做特卖的网站seo推广优化方案
  • 南沙门户网站建设监理工程师成绩在建设部哪个网站查
  • 做视频网站需要什么证件wordpress从
  • 算卦网站开发京东慧采入驻条件及费用2023年
  • 网站建设好后如何提交搜索引擎公共网络建设指导书
  • 做网站最快多久DW怎么做电商网站