`
windybell
  • 浏览: 14867 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论
文章列表
编程语言都相当多的共性,分享一下学习经验。就编程语言而言,我一般对它们内涵的知识进行分层,然后选择学习。     初级:语法(必须掌握)     中级:常用功能(建议掌握)     高级:专业领域(建议选学) 知识体系很总要!知识体系很总要!知识体系很总要!重要的话要说三遍! 没有知识体系,你根本不知道自己有多少东西要学,为什么要学,到底学会了没有!     初级:语法 指的是“类型、变量、表达式、符号、关键字、选择、判断、分支、循环、函数、闭包、注释”等一系列最基础的内容,自学任何语言都要优先掌握。     中级:常用功能 这部分内容通常包含“I/O、图形、多线程、网络、数据 ...

jME中文网站

    博客分类:
  • JME3
jME中文论坛:http://bbs.jmecn.net jME中文网:http://www.jmecn.net
基于导航网格的A星寻路(Navigation mesh) Posted on 2010-09-26 13:00 Zhiyett 阅读(7024) 评论(14) 编辑 收藏 最近花了几个月的时间实现了导航网格寻路和导航网格自动生成。 □导航网格数据结构定义     由于数据之间有着层级关系,所以 ...
折腾JME3已经有一段时间了,目前已经基本掌握了这么几个技能: 1、3D数学知识 (1)用向量Vector3f、Vector2f、Vector4f表示顶点、位移、方向、速度等; (2)用矩阵Matrix3f、Matrix4f描述空间变换; (3)用四元数(Quaternion)描述旋转轴和旋转角度; (4)3D模型概念Spatial、Node、Geometry、Mesh、Material、Texture; (5)场景树rootNode (6)Tranlation、Rotate、Scale 2、游戏资源管理 (1)3D模型、天空盒、音乐、贴图、动画等资源文件的加载和使用。 (2)资源加载、资源定位 ...

最近的成果

游戏一共有8个State: Intro、Loading、UserLogin、ServerList、SelectHero、CreateHero、InGame、Quit 其中Loading是一个特殊的State,不同State切换时若需要加载资源,就会通过Loading来中转。 状态基本事件流如下: Intro->UserLogin->ServerList->SelectHero->InGame->Quit 扩展流: SelectHero->CreateHero SelectHero->ServerList SelectHero->UserLogi ...
JME3没有直接提供改变屏幕大小的接口,我们可以通过settings来修改参数,然后调用Application的restart()方法来使这些参数生效。restart()方法源码是这么说的: /** * Restarts the context, applying any changed settings. * <p> * Changes to the {@link AppSettings} of this Application are not * applied immediately; calling this metho ...
最近粗略地看了一下com.jme3.animation包下的源码,有一点点理解,不过也不一定对。反正以后也还要接着继续研究,先总结在这里做个备忘录。 一、JME3支持的动画类型 JME3目前只支持骨骼动画和节点动画。虽然它貌似也曾经实现过关键帧动画(有一个PoseTrack类),但是现在废弃了。JME3最重视的还是骨骼动画,看看animation包下面专门定义了Skeleton、Bone、BoneTrack等那么多类就可想而知。 二、骨骼动画相关知识 由于我以前从来没有学习过3D动画知识,所以有一些基本的数学原理不太懂,最近也差了一些资料。 下面几个帖子非常有学习价值: 骨骼蒙皮动画(S ...
系列目录: JME3资源管理之一:核心组件介绍 JME3资源管理之二:AssetLoader和AssetLocator JME3资源管理之三:资源加载流程 JME3资源管理之四:心得和小节 1、加密资源包 有时候我们需要对游戏资源进行打包、加密。那么使用这些资 ...
系列目录: JME3资源管理之一:核心组件介绍 JME3资源管理之二:AssetLoader和AssetLocator JME3资源管理之三:资源加载流程 JME3资源管理之四:心得和小节 JME3在加载资源的过程中,AssetManager会先根据AssetKey去缓存中查找资源,如果找得到的话当然皆大欢喜,找不到的话才会去读取磁盘。 具体加载的流程是这样的: 1、在缓存中查找资源 检查AssetCache中的资源,若找不到就进行下一步,若找到就直接返回了。 AssetCache cache = handler.getCache(key.getCacheType()); ...
系列目录: JME3资源管理之一:核心组件介绍 JME3资源管理之二:AssetLoader和AssetLocator JME3资源管理之三:资源加载流程 JME3资源管理之四:心得和小节 AssetManager加载资源前,首先要注册各种AssetLoader和AssetLocator,否则AssetManager将不知道怎么去加载资源。 1、注册AssetLoader AssetLoader保存在一个map中,通过后缀名来匹配。如果2个AssetLoader都注册了同样的后缀名,那么后注册的AssetLoader会挤掉先定义的AssetLoader。 am.registerLo ...
系列目录: JME3资源管理之一:核心组件介绍 JME3资源管理之二:AssetLoader和AssetLocator JME3资源管理之三:资源加载流程 JME3资源管理之四:心得和小节 1、AssetManager 这是JME3资源管理器的核心接口,它提供了统一的方式来管理各种 ...

3维空间曲线

    博客分类:
  • JME3
JME3提供了Curve类,用于生成曲线网格。利用它可以很容易绘制3维空间曲线。 package com.ruanko.jme3; import java.util.Random; import com.jme3.app.SimpleApplication; import com.jme3.material.Material; import com.jme3.math.ColorRGBA; import com.jme3.math.FastMath; i ...
神说要有光 要分白天和黑夜 要有日月星辰,昼夜交替出现 要有天空,空中的云要随风飘动 要有四季,春夏秋冬交替变化 要有时节变化,不同的季节有不同的天气,晴天风雨雷电冰霜随之变化。 先放一些资料在这里。 how-to-moving-clouds skydome by t0neg0d volumetric-lighting-filter-wip seeking-alpha-testers-for-skycontrol tryout-a-new-skydom skycontrol-enters-beta-test
我希望在游戏中能够有昼夜变化,四季变化,这样就意味着游戏中将会有一套自己的时间算法。假设游戏中时间流逝的速度为现实世界的30倍,那么一天就等于在游戏中过了一个月。 随着游戏中时间的变化,会有日出和日落,也会有四季变化。不同的时刻,太阳光照的角度不同,人在地上的影子方向也不一样。比如夏天太阳高度会高一些,冬天则会低一些。 我把游戏世界的位置定位在地球北纬30°(跟武汉一样),那么一年中,春分和秋分两个节气的中午12时,太阳日照高度就是60°。夏至和冬至的太阳高度则要分别加减黄赤夹角(23°26′),为83.5°和36.5°。 我假设游戏中地球公转轨迹是一个非常完美的圆形,那么太阳的高度变 ...
JMonkeyEngine3中提供了AudioNode用来管理音乐资源,它通过AssetManager来加载OGG格式或WAV格式的音频文件,并提供了“流”和“缓存”2种模式。 AudioNode构造方法的第3个参数是一个boolean类型,它决定了以什么模式来加载音频: true表示 ...
Global site tag (gtag.js) - Google Analytics