Articles of 资产

快速的资源管理

所以我现在正在做一件我无法解决的事情。 让我说我有我的所有游戏数据压缩到zip档案。 游戏中有一个脚本系统可以让你做一些事情。 例如产卵npcs,装备特定物品等 问题在哪里? 当我加载分隔成块的世界时,很容易在没有任何通知的情况下加载所需的资产和其他数据。 但让我们说,我写了一个脚本,按下button后触发爆炸。 在那个时候,游戏需要加载爆炸纹理等。没有单独的线程,在较慢的系统上,游戏肯定会冻结一段时间。 如果我会使用单独的线程 – 在较慢的系统上可能会导致缺less纹理问题或类似的东西。 所以在加载世界块的时候加载一些资源是很容易的,但是如何预测在脚本执行之后将会看到的对象应该加载哪些资源? 我不知道是否有可能明白我想做什么,但我可以举另一个例子。 在Bethesda的Fallout 3或者TES游戏中,你可以使用spawn命令来显示所有纹理的npc。 任何想法如何快速加载纹理和模型?

在cocos2d v3中预加载

我正在尝试创建一个预加载,但是我不知道如何在cocos2d iphone v3中实现这个主题的代码。 由于CCTextureCache已更改为CCTexture,并且不再具有sharedTextureCache属性。 @interface TextureHelper : NSObject + (void) preloadTextures; + (CCTexture2D *) textureForImageNamed:(NSString *) imageName; @end @implementation TextureHelper + (CCTexture2D *) textureForImageNamed:(NSString *) imageName { return [[CCTextureCache sharedTextureCache] textureForKey:imageName]; } + (void) preloadTextures { // or could read from a directory… NSArray *imageNames = @[ @"myImage1.png", @"myImage2.png" ]; for (NSString *imageName in imageNames) […]

在编辑器中听取资产修改

我想听一个事件,一些资产(预制,确切)已被修改。 令我惊讶的是, AssetModificationProcessor没有这样的事件。 Unity有没有办法做到这一点?

我应该压缩游戏数据文件吗?

我正在打包我的游戏资源到一个单一的文件。 我select了格式,但我不知道是否应该使用压缩。 我明白可能的优点和缺点: 压缩意味着更less的安装时间(很less发生)。 压缩意味着光盘和下载过程中的游戏规模较小。 压缩意味着每次游戏资源caching机制决定从档案中cachingRAM中的一些数据时应该提取数据。 我错过了什么? 其他游戏开发者通常会做什么?为什么?

什么是所有统一游戏资产文件?

Unity游戏资源中包含的所有文件是什么? 我怎样才能创建所有这些关联的文件types? Unity包装内容的这个细节已经过去了。

具有自定义项目/服装的静态2D角色configuration文件

我想创建一个基于RPG的networking应用程序。 用户有一个自定义的字符,应该显示在一个小轮廓图像。 这些是我的要求: 图像可以是静态的。 所以不需要像吹头发那样的animation。 图像应该是2D的,非常简单,复古。 用户可以装备不同的衣服和物品,然后显示。 用户应该能够自定义他们的角色背景图像。 我是一名软件工程师,而不是一名艺术家。 这就是为什么我需要很多帮助 我可以在哪里得到这些照片? 如果我需要自己创建它们,我该怎么做? 任何提示都表示赞赏。 提前致谢!

string表或虚拟文件系统的树

我正在开发一个二进制文件格式来存储我的游戏的资产,我正在考虑如何实现“文件表”。 一种select是为这样的文件条目创建结构: struct Entry { uint16_t nameLength; //< This basically stores the whole path eg "dir1/file1.txt" char* name; uint64_t dataSize; uint64_t dataOffset; }; 或者我可以使用一种方法,我认为它更加优雅,基于ISO 9660文件系统,但是我认为它可能会影响遍历文件树。 struct Entry { uint16_t entrySize; //< This is used for going to the next entry (next = current + current.entrySize) uint8_t entryType; //< 0 for file, 1 for directory + […]

双触摸控制打开一个轴

我想快速浏览一下function,放在房间的中间,然后环顾四周。 所以很显然,我导入了标准资产,并将FPS控制器放在中间,然后拖入Dual touch控件并将其构建到android。 问题是它只能水平旋转而不能垂直旋转。 我尝试了一下值,但似乎没有任何工作。

音效的最佳来源?

在独立游戏制作(C#,XNA)中使用音效的好源是什么? 声音不需要是免费的。 但是,他们应该有明确的商业使用许可证。 该网站应该允许search,浏览和预览(或更好:预听)。 我已经看过http://www.1soundfx.com,但他们的收集不是太大。 我特意寻找音效。 没有音乐,也没有办法让自己的声音。 所有的帮助非常感谢!

如何减less/处理图片加载时间?

我正在开发一款2D游戏,它具有非常高分辨率的图像(这样在Retina MacBook等上看起来不错),并且看到图像加载引起的显着延迟。 当我切换到加载72个500×600 PNG图像的屏幕时,我注意到了最强的滞后 – 在具有SSD的漂亮的现代系统上花费了近一秒的时间。 从磁盘加载文件相当快,通常小于1毫秒。 但使用libpng加载PNG需要大约5-7毫秒。 现在我有两个问题: 我有什么select加快加载? 将使用精灵表帮助? (我的猜测是否定的,因为加载时间似乎随着图像大小而增加)。 添加预缩减版本的文件并在较低分辨率下使用这些文件是否合理? 我应该预先加载所有资产吗? 我目前的做法有点幼稚:每个实体一旦实例化就加载自己的纹理。 我可以改变一些事情,以确保所有的实体尽可能实例化,但似乎容易出错。 有更好的方法吗? 我想我们最终会得到大约100-200 MB的图像,所以在游戏开始时将它们全部加载到内存中可能会很好。 我能想到的最好方法是从图像文件到图像ID进行巨大映射,并使用ID在代码中加载图像,然后我就可以预先知道所有的图像文件。 或者我应该避免加载一切,如果我可以加快装载,直到它再次不明显?