共计 34 篇文章

jME3的资产管理与文件系统

本文目标 经常有朋友问这么几个问题: 怎么用jME3显示3D模型? 怎么用jME3显示一张图片? 为什么发生AssetNotFoundException异常? 我的模型为什么是黑漆漆的? 回答这些问题,一般我会先问他/她使用的是什么开发工具,然后教他/她在自己的IDE中建立资产目录结构,把模型和纹理放到同一个文件夹。我还会再发一段用 AssetManager 来导入3D模型的代码,让他/她参考着来修改自己的代码。 不过这并没有什么鬼用,问的人实在太多了,我没有精力一一指导。因此,我打算写一套文章来详细分析解决方法。以后再有人问我这些问题,就可以让他们来这些文章中寻找答案。 问题分析 先引用《 ...

关于重构jME3教程

今年夏季,我写了一套"jME3初学者教程",本意是想让学习jMonkeyEngine的初学者能够有一套比较容易入门的参考资料。写作的过程中,我尽自己所能,希望把我所了解的jMonkeyEngine介绍清楚。不过,目前来看,并没有达到我的预期目标。所以我想在明年抽空把它重构。 重构的主要原因,是这套教程没有区分知识的难度。虽然名为“初学者”教程,但是从读者反馈来看,文章中夹杂了大量不适合初学者的内容。其实我在刚开始规划这套教程的时候,并不打算写这么多。由于我的心理负担比较重,编写时总觉得必须先介绍某些原理,否则说不清楚。再者,我本人也是一个游戏开发的初学者,想借个机会把这两年的学习经验总结一下, ...

一个JVM内存调优案例

半年前一时兴起,跟风开发过一个贪吃蛇小游戏。只做了单机版,随后就失去了兴趣。项目地址:https://github.com/jmecn/Snake 这个项目在运行时,内存占用量非常大。起步就有100MB,随着运行时间增加,内存消耗越来越大。5分钟后差不多就消耗了1GB内存。 我猜测问题是由于Zay-ES工作时创建了大量的对象实例导致的。GC回收不及时,导致这些对象一直保留在堆内存中。因为这个原因,我认为Zay-ES框架有内存泄露(Memory Leak),最终因此放弃了这个项目。 学习JVM的工作方式之后,我才明白这不是Zay-ES的错。 ...