社区
C++ 语言
帖子详情
关于游戏里的进度条的实现
green369258
2007-08-26 04:25:07
游戏里面每当你切换场景的时候,都会有loading 的进度条来提示你场景什么时候加载完毕,我想知道他是怎么实现的呢,急需,谢谢!关于进度条的渲染我已经自己写成了,但是不知道怎么加到我的游戏框架里去了,大家指点指点,谢谢了!
...全文
463
7
打赏
收藏
关于游戏里的进度条的实现
游戏里面每当你切换场景的时候,都会有loading 的进度条来提示你场景什么时候加载完毕,我想知道他是怎么实现的呢,急需,谢谢!关于进度条的渲染我已经自己写成了,但是不知道怎么加到我的游戏框架里去了,大家指点指点,谢谢了!
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
snake1234
2007-08-29
打赏
举报
回复
楼上的,请不要随便鄙视.涨到90+然后死机,那是因为你机器装载数据的速度慢,跟假不假没关系.
在读取一个大文件,装载大地图数据,渲染一个很大的场景,当没有完成的时候,如何判断进行到那里了?所以分数据段LOAD,每装载完一段,进度条就前进一段,是合理的做法.
所以完全真实的进度条是不现实的,当然也有办法,但是当装载已经很慢的时候,来做这些动作,让装载速度变的更慢,是不能接受的.
72193
2007-08-28
打赏
举报
回复
还使用整数吧!不会访问异常吧?
green369258
2007-08-28
打赏
举报
回复
如果想做进度条是要必须开线程么?
alps_008
2007-08-28
打赏
举报
回复
真实的进度条看着漂亮啊,最鄙视那些假的进度条了,动不动涨到90%+然后跟死机了一样的不动弹。。。
war3的大的RPG地图读取就是最典型的例子,不过人家分开模块来划分进度条倒也可以说的过去吧还算。但是肯定有更好的方法来实现
snake1234
2007-08-26
打赏
举报
回复
还着那么好心...还要按真实的读取来设置进度条啊?
首先;数据分段LOAD,首先是图片资源,然后是音乐资源,如果图片,音乐资源过大,可以拆分读取.最后渲染第一场景的地图等.
每完成一段读取,LOADING图片前进一段.
游戏里面的LOADING进度条都是假的进度,除非你要在中断里面检测读取的真实进度.不过完全没有必要.
green369258
2007-08-26
打赏
举报
回复
我的程序结构不允许边加载东西边进行渲染,开个线程吧,总是指针访问冲突,要不就是只加载不渲染,要不就是只渲染不加载,郁闷呀。怎么才能解决指针的冲突的?
在指点小弟一下吧,谢谢了。
程序用了游戏中的层级的概念,即面向对象的后期绑定方法。
gfxiang
2007-08-26
打赏
举报
回复
比如你load一个文件,如果文件比较大的话,你可能是用一个循环来读这个文件,那么你就可以在这个循环里用当前已读文件的字节数除以文件的大小得到的百分数来设置进度条显示值。
假设你的进度条是用一个类ProgressBar表示
bool load(string filename, ProgressBar& bar)
{
ifstream ifile(filename, ios::binary);
ifile.seekg(0, ios::end);
int size = ifile.tellg(); // 文件大小
ifile.seekg(0, ios::beg);
while (!ifile.eof())
{
ifile.read(...);
// ...
double value = ifile.tellg() / double(size); // 当前已经字节除以文件大小
bar.setvalue(value); // 设置进度条值,一旦进度条值发生改变,通过某种机制通知程序重新渲染进度条
}
// ...
return true;
}
【前端灵魂脚本语言JavaScript⑤】——JS中数组的使用
JavaScript数组的使用。
前端js数组方法
该方法会直接修改原数组,并返回修改后的数组。是数组对象的一个方法,它用于创建一个新数组,新数组中的元素是原数组中每个元素经过指定函数处理后的结果。是数组对象的一个方法,其主要作用是在数组的末尾添加一个或多个元素,并返回新数组的长度。是数组对象的一个方法,其作用是在数组的开头添加一个或多个元素,并返回新数组的长度。是数组对象的一个方法,其主要作用是创建一个新数组,新数组中的元素是原数组中满足指定条件的所有元素。是数组对象的一个方法,用于从原数组中提取出一部分元素,组成一个新的数组,而不会对原数组进行修改。
前端 - JavaScript 练习 - 水仙花数
JavaScript 判断水仙花数……
练习 JavaScript (JS) 是掌握前端技术
作为前端开发员,练习 JavaScript (JS) 是掌握前端技术的重要步骤。以下是一些练习 JavaScript 的方法和具体的练习题目,涵盖了从基础到高级的各种技能。
web前端-JavaScript中的数组详解
使用检查数组对象时返回。1.直接添加2.按照索引添加(将元素添加到哪个位置)这
里
值得注意的是,如果按照索引添加元素,数组的长度是按照的添加的最大索引来计算的。读取数组元素是一个返回值,需要变量去接收或者直接输出。 1.直接读取,即读取整个数组内的元素。2.读取数组中的某个元素。3.当读取一个不存在的元素时,返回undefined。length属性可以设置/返回数组长度。补充小技巧:可以利用length属性向数组的最后一个位置添加元素。 方法用于连接两个或多个数组。 方法用于把数组中的所有元素转换一个字符串
C++ 语言
65,214
社区成员
250,514
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章