📄 org_ogre4j_root.cpp
字号:
/* Ogre4J
Copyright (C) 2002 macross
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#include "org_ogre4j_Root.h"
#include "Ogre4JRoot.h"
//==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==
JNIEXPORT jboolean JNICALL Java_org_ogre4j_Root_start
(JNIEnv *env, jobject, jstring pluginFile, jstring ressourceFile, jboolean showConfigDialog) {
jboolean res = false;
const char* _pluginFile = env->GetStringUTFChars(pluginFile, 0);
const char* _ressourceFile = env->GetStringUTFChars(ressourceFile, 0);
try {
res =
OGRE4J.start(_pluginFile, _ressourceFile, showConfigDialog?true:false);
}
catch(Ogre::Exception& e) {
printf("******* An exception has occured!\n%s\n*******\n", e.getFullDescription().c_str());
}
env->ReleaseStringUTFChars(pluginFile, _pluginFile);
env->ReleaseStringUTFChars(ressourceFile, _ressourceFile);
return res;
}
//==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==
JNIEXPORT void JNICALL Java_org_ogre4j_Root_exit
(JNIEnv *, jobject) {
OGRE4J.exit();
}
//==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==
JNIEXPORT jobject JNICALL Java_org_ogre4j_Root_getSceneManager
(JNIEnv *, jobject, jint sceneType) {
SceneManager* sceneManager = OGRE4J.root->getSceneManager((SceneType)sceneType);
return OGRE4J.newJRef(OGRE4J.sceneManagerClass, sceneManager);
}
//==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==
JNIEXPORT jobject JNICALL Java_org_ogre4j_Root_addViewport
(JNIEnv *env, jobject, jobject camera) {
return OGRE4J.addViewport(env, camera);
}
//==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==
JNIEXPORT void JNICALL Java_org_ogre4j_Root_writeContentsToFile
(JNIEnv *env, jobject obj, jstring name) {
const char* _name = env->GetStringUTFChars(name, 0);
OGRE4J.renderWindow->writeContentsToFile(_name);
env->ReleaseStringUTFChars(name, _name);
}
//==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==
JNIEXPORT void JNICALL Java_org_ogre4j_Root_startRendering
(JNIEnv *env, jobject, jobject frameListener) {
OGRE4J.startRendering(env, frameListener);
}
//==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -