我在我的应用程序中使用JME,有时它会崩溃并显示以下消息:
#
# A fatal error has been detected by the Java Runtime Environment:
#
# EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x3d601ad7, pid=168, tid=4012
#
# JRE version: 6.0_29-b11
# Java VM: Java HotSpot(TM) Client VM (20.4-b02 mixed mode, sharing windows-x86)
# Problematic frame:
# C [ig4dev32.dll+0x21ad7]
#
# An error report file with more information is saved as:
# C:\...\hs_err_pid168.log
#
# If you would like to submit a bug report, please visit:
# http://java.sun.com/webapps/bugreport/crash.jsp
# The crash happened outside the …Run Code Online (Sandbox Code Playgroud) 我想在Java中绘制一个3D点云(比如100000点),能够拖动和旋转它并选择一个绘制的3D点并通过点击它获得它的x,y,z.我担心继续支持java3D,同时我看到java3D仍然是一个更大的社区,并且比JMonkey3更加活跃,JMonkey3是jme3的稳定版本.我也想把它作为applet部署.
我应该选择什么技术?
我想编辑默认JMonkey项目的启动屏幕,以便我可以用自定义图像(我们的项目徽标)替换显示JMonkey的图像.我是指执行SimpleApplication项目时出现的屏幕.我正在Linux机器上运行JMonkey SDK(Linux Mint 13,如果这很重要)和OpenJDK 7.
我们使用jme3,setMaxSlope并且没有实现BetterCharacterControl的问题.引擎的开发人员说我们可以使用新的控制器自己解决它:
http://hub.jmonkeyengine.org/forum/topic/setmaxslope-for-bettercharactercontrol/
我真的很喜欢解决方案,因为我的游戏需要它.之前我问过它,但我们没有解决它:
你能帮助我们进步吗?我录制了一个有问题的视频:
http://www.youtube.com/watch?v=PF_UzoOXD0E
一些文档在这里:http://hub.jmonkeyengine.org/wiki/doku.php/jme3:advance: walking_character?s [] = bettercharactercontrol#bettercharactercontrol
我努力将功能添加到控制器:
package adventure;
import com.jme3.math.Vector3f;
import com.jme3.bullet.control.BetterCharacterControl;
public class GameCharControl extends BetterCharacterControl {
protected Vector3f lastlocation = new Vector3f();
public GameCharControl(float x, float y, float z) {
super(x, y, z);
}
@Override
public void update(float tpf) {
super.update(tpf);
System.out.println("location " + location);
System.out.println("lastlocation " + lastlocation);
if (location.equals(lastlocation)) {
System.out.println("update2");
this.setHeightPercent(101);
}
rigidBody.getPhysicsLocation(location);
applyPhysicsTransform(location, rotation);
lastlocation = location;
} …Run Code Online (Sandbox Code Playgroud) 四元数不仅可以描述旋转,还可以描述方向,即从初始(零)位置旋转.
我希望模拟从一个方向到另一个方向的平滑旋转.余计算开始定向startOrientation和结束定向endOrientation,并希望描述中间取向为startOrientation*(1-argument) + endOrientation*argument同时argument从变化0到1.
猴子引擎更新功能的代码如下:
@Override
public void simpleUpdate(float tpf) {
if( endOrientation != null ) {
if( !started ) {
started = true;
}
else {
fraction += tpf * speed;
argument = (float) ((1 - Math.cos(fraction * Math.PI)) / 2);
orientation = startOrientation.mult(1-argument).add(endOrientation.mult(argument));
//orientation = startOrientation.mult(1-fraction).add(endOrientation.mult(fraction));
log.debug("tpf = {}, fraction = {}, argument = {}", tpf, fraction, argument);
//log.debug("orientation = {}", orientation);
rootNode.setLocalRotation(orientation);
if( fraction >= …Run Code Online (Sandbox Code Playgroud) 我目前正在尝试在项目的使用JOGL和JMonkeyEngine项目之间做出决定,所以我想了解一下每个项目的基础知识,并决定我喜欢哪个项目.有没有人有任何书籍或网络资源建议学习如何使用每一个?我真的更喜欢提供大量详细信息和示例的内容,这些内容使用良好的风格而不是简短的在线教程,而且代码示例质量很差.官方文档总是很好,但我还没有找到它. JMonkeyEngine说它有完整的文档,但我还没有在他们的网站上找到它.任何信息,将不胜感激.
我应该提一下,我以前从未使用OpenGL过.如果我一起去,JOGL我将需要学习所有的OpenGL基础知识,所以OpenGL如果JOGL资源没有全面详细介绍,我也需要很好的资源.
我正在使用JMonkeyEngine制作一个Java游戏,我已经按照他们网站上的教程在墙上射击球(子弹).我知道一切是如何工作的,但当我增加子弹的速度时,它会直接穿过墙壁.
现在我知道发生这种情况的原因(因为子弹每帧移动速度太快,无法进行碰撞注册).我也知道如何解决这个问题,我在他们的网站上找到了以下方法(JMonkeyEngine).
setCcdMotionThreshold(0f)
Run Code Online (Sandbox Code Playgroud)
但有人能告诉我这是如何实现的,或者我可以在哪里找到使用它的人的样本?
由于我从辅助类CharacterControl改为新类,BetterCharacterControl我注意到一些改进,例如推动其他角色正在工作,但我的主角已经开始滑过步骤而无法爬上更高的台阶.

我必须跳过上面的步骤,这不是正确的比赛方式,它应该只是走过去.旧助手类CharacterControl有一个默认的不滑动方式,只是走过几步,我认为可以通过改变我创建主角的代码来纠正它.
private void createNinja() {
ninjaNode = (Node) assetManager
.loadModel("Models/Ninja/Ninja.mesh.xml");
ninjaNode.setShadowMode(RenderQueue.ShadowMode.CastAndReceive);
ninjaNode.setLocalScale(0.06f);
ninjaNode.setLocalTranslation(new Vector3f(55, 3.3f, -60));
ninjaControl = new BetterCharacterControl(2, 4, 0.5f);
ninjaControl.setJumpForce(new Vector3f(6, 6, 6));
ninjaNode.addControl(ninjaControl);
rootNode.attachChild(ninjaNode);
bulletAppState.getPhysicsSpace().add(ninjaControl);
getPhysicsSpace().add(ninjaControl);
animationControl = ninjaNode.getControl(AnimControl.class);
animationChannel = animationControl.createChannel();
}
Run Code Online (Sandbox Code Playgroud)
完整的代码是
package adventure;
import com.jme3.system.AppSettings;
import java.io.File;
import com.jme3.renderer.queue.RenderQueue;
import com.jme3.renderer.queue.RenderQueue.ShadowMode;
import com.jme3.animation.AnimChannel;
import com.jme3.animation.AnimControl;
import com.jme3.animation.AnimEventListener;
import com.jme3.animation.LoopMode;
import com.jme3.app.SimpleApplication;
import com.jme3.asset.BlenderKey;
import com.jme3.asset.plugins.HttpZipLocator;
import com.jme3.asset.plugins.ZipLocator;
import com.jme3.bullet.BulletAppState;
import com.jme3.bullet.PhysicsSpace;
import com.jme3.bullet.collision.shapes.CapsuleCollisionShape;
import com.jme3.bullet.control.BetterCharacterControl;
import …Run Code Online (Sandbox Code Playgroud) 我的艺术家在3d studio Max中创建了一个3D鞋模型作为FBX.看起来如下图所示.

我在我的程序中使用jMonkeyEngine,它不支持FBX文件,所以我将FBX导出到波前OBJ文件,3d studio max也给了我相应的mtl文件.
所以当我将导出的obj模型加载到我的程序中时,它使用jMonkeyEngine作为库,它看起来不像真正的鞋子,它没有任何纹理.

该程序还显示一个警告
警告:OBJ网格样式_7-geom-0不包含法线!它可能无法正确显示
我的simpleInitApp方法
Spatial myModel = assetManager.loadModel("/Textures/Shoes/style_7.obj");
myModel.scale(0.09f);
rootNode.attachChild(myModel);
Run Code Online (Sandbox Code Playgroud)
OBJ文件和材料文件都在同一目录中.所以我认为根据doc jMonkeyEngine直接从OBJ所在的同一目录加载材料.
如果你想我可以在这里上传OBJ文件和材料文件以及所有需要的图像.
我的绝对目标是在JmonkeyEngine中显示相同的Model,如screenshot1所示.
我错过了什么?我做错了什么 ?
谢谢
作为使用JME引擎的初学者,我想知道是否可以创建平坦的地形?
我使用TerrainBlock并使用MidPointHeightMap创建了一个有点颠簸的地形,但似乎无法让它完全平坦.
提前致谢.
我正在尝试使用JMonkey Engine 3D图形库在我指定的3D顶点之间绘制直线.JMonkey当然是为导入模型而优化的,但我知道它也可用于"内部"创建自定义形状.
所以例如,如果我试图绘制:
(2,0,0)
( - 1,0,1)
(0,1,1)
(1,1,1)
(1,4,0)
然后我会得到:

我正在使用jMonkeyEngine开发桌面PC游戏.它还处于早期阶段(始终开始,永不完成,呃?).
没有物理(只是移动相机),当您进入几何模型的内部时,面会消失.所以我的问题是,如何将材质(纹理)应用于网格内部?
java ×12
jmonkeyengine ×12
3d ×5
game-physics ×2
opengl ×2
3d-model ×1
3d-modelling ×1
controls ×1
java-3d ×1
javascript ×1
jogl ×1
line ×1
lwjgl ×1
openjdk ×1
quaternions ×1
rotation ×1
swing ×1