<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://horde3d.org/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Kornerr</id>
		<title>Horde3D Wiki - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="http://horde3d.org/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Kornerr"/>
		<link rel="alternate" type="text/html" href="http://horde3d.org/wiki/index.php?title=Special:Contributions/Kornerr"/>
		<updated>2026-08-14T14:06:38Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.29.3</generator>

	<entry>
		<id>http://horde3d.org/wiki/index.php?title=Tutorial_-_Setup_Horde_with_Qt4&amp;diff=656</id>
		<title>Tutorial - Setup Horde with Qt4</title>
		<link rel="alternate" type="text/html" href="http://horde3d.org/wiki/index.php?title=Tutorial_-_Setup_Horde_with_Qt4&amp;diff=656"/>
				<updated>2010-02-10T02:59:59Z</updated>
		
		<summary type="html">&lt;p&gt;Kornerr: updated the tutorial&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|  border=&amp;quot;0&amp;quot; &lt;br /&gt;
| {{ContentBlock|color=white&lt;br /&gt;
|content=Before you start you should read QtOpenGL tutorial: http://doc.trolltech.com/4.6/opengl-hellogl.html (Substitute correct version of your Qt distribution).&lt;br /&gt;
&lt;br /&gt;
Horde3D library should be already installed for build scripts to succeed.&lt;br /&gt;
{{CppSourceCode|&lt;br /&gt;
description= GLWidget.h|&lt;br /&gt;
code=&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot; line=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
#ifndef GL_WIDGET_H&lt;br /&gt;
#define GL_WIDGET_H&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;QtOpenGL&amp;gt;&lt;br /&gt;
#include &amp;lt;horde3d/Horde3D.h&amp;gt;&lt;br /&gt;
#include &amp;lt;horde3d/Horde3DUtils.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
class GLWidget : public QGLWidget {&lt;br /&gt;
    Q_OBJECT&lt;br /&gt;
    public:&lt;br /&gt;
        GLWidget();&lt;br /&gt;
        ~GLWidget();&lt;br /&gt;
&lt;br /&gt;
        QSize minimumSizeHint() const {&lt;br /&gt;
            return QSize(640, 480);&lt;br /&gt;
        }&lt;br /&gt;
        QSize sizeHint() const {&lt;br /&gt;
            return QSize(640, 480);&lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
    protected:&lt;br /&gt;
        void initializeGL();&lt;br /&gt;
        void paintGL();&lt;br /&gt;
        void resizeGL(int width, int height);&lt;br /&gt;
&lt;br /&gt;
    private:&lt;br /&gt;
        H3DRes mCam;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
#endif // GL_WIDGET_H&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{CppSourceCode|width=1024|&lt;br /&gt;
description= GLWidget.cpp|&lt;br /&gt;
code=&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot; line=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;quot;GLWidget.h&amp;quot;&lt;br /&gt;
#include &amp;lt;stdexcept&amp;gt;&lt;br /&gt;
&lt;br /&gt;
GLWidget::GLWidget() : QGLWidget() { }&lt;br /&gt;
&lt;br /&gt;
GLWidget::~GLWidget() {&lt;br /&gt;
    h3dutDumpMessages();&lt;br /&gt;
    h3dRelease();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void GLWidget::initializeGL() {&lt;br /&gt;
    if (!h3dInit()) {&lt;br /&gt;
        h3dutDumpMessages();&lt;br /&gt;
        throw std::runtime_error(&amp;quot;Could not initialize renderer&amp;quot;);&lt;br /&gt;
    }&lt;br /&gt;
    H3DRes pipeline = h3dAddResource(&lt;br /&gt;
        H3DResTypes::Pipeline, &amp;quot;pipelines/forward.pipeline.xml&amp;quot;, 0);&lt;br /&gt;
    H3DRes knight = h3dAddResource(&lt;br /&gt;
        H3DResTypes::SceneGraph , &amp;quot;models/knight/knight.scene.xml&amp;quot;, 0);&lt;br /&gt;
    h3dutLoadResourcesFromDisk(&amp;quot;Content&amp;quot;);&lt;br /&gt;
    H3DNode node = h3dAddNodes(H3DRootNode, knight);&lt;br /&gt;
    h3dSetNodeTransform(node, 0,0,0, 0,0,0, 1,1,1);&lt;br /&gt;
    mCam = h3dAddCameraNode(H3DRootNode, &amp;quot;cam&amp;quot;, pipeline);&lt;br /&gt;
    h3dSetNodeTransform(mCam, 0,40,-40, 23,-166,0, 1,1,1);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void GLWidget::paintGL() {&lt;br /&gt;
    h3dRender(mCam);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void GLWidget::resizeGL(int width, int height) {&lt;br /&gt;
    h3dSetupViewport(0, 0, width, height, true);&lt;br /&gt;
    h3dSetupCameraView(&lt;br /&gt;
        mCam, 45.0f, static_cast&amp;lt;float&amp;gt;(width)/height, 0.1f, 1000.0f);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{CppSourceCode|&lt;br /&gt;
description= main.cpp|&lt;br /&gt;
code=&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot; line=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;quot;GLWidget.h&amp;quot;&lt;br /&gt;
#include &amp;lt;QApplication&amp;gt;&lt;br /&gt;
&lt;br /&gt;
int main(int argc, char* argv[]) {&lt;br /&gt;
    QApplication app(argc, argv);&lt;br /&gt;
    GLWidget glw;&lt;br /&gt;
    glw.show();&lt;br /&gt;
    return app.exec();&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
QMake project file:&lt;br /&gt;
{{CppSourceCode|&lt;br /&gt;
description= h3d_qt4.pro|&lt;br /&gt;
code=&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot; line=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
TEMPLATE = app&lt;br /&gt;
TARGET = h3d_qt4&lt;br /&gt;
DEPENDPATH += .&lt;br /&gt;
INCLUDEPATH += .&lt;br /&gt;
LIBS += -lHorde3D -lHorde3DUtils&lt;br /&gt;
QT += opengl&lt;br /&gt;
&lt;br /&gt;
# Input&lt;br /&gt;
HEADERS += GLWidget.h&lt;br /&gt;
SOURCES += GLWidget.cpp main.cpp&amp;lt;/source&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
'''Note''': [http://www.horde3d.org/wiki/index.php5?title=Building_Horde3D#Linkage_order_for_your_application Linkage order for your application]&lt;br /&gt;
&lt;br /&gt;
CMake project file:&lt;br /&gt;
{{CppSourceCode|&lt;br /&gt;
description= CMakeLists.txt|&lt;br /&gt;
code=&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot; line=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
PROJECT(H3D_QT4)&lt;br /&gt;
&lt;br /&gt;
CMAKE_MINIMUM_REQUIRED(VERSION 2.6)&lt;br /&gt;
CMAKE_POLICY(VERSION 2.6)&lt;br /&gt;
# Debug, all warnings.&lt;br /&gt;
ADD_DEFINITIONS(-g -Wall)&lt;br /&gt;
# Find Qt4.&lt;br /&gt;
INCLUDE(FindQt4)&lt;br /&gt;
FIND_PACKAGE(Qt4 REQUIRED)&lt;br /&gt;
SET(QT_USE_QTOPENGL TRUE)&lt;br /&gt;
INCLUDE(${QT_USE_FILE})&lt;br /&gt;
INCLUDE_DIRECTORIES(${QT_INCLUDES}&lt;br /&gt;
                    /usr/local/include&lt;br /&gt;
                    /usr/include)&lt;br /&gt;
# Headers with Q_OBJECT macro.&lt;br /&gt;
SET(&lt;br /&gt;
    H3D_QT4_MOC_HDR&lt;br /&gt;
    GLWidget.h&lt;br /&gt;
)&lt;br /&gt;
QT4_WRAP_CPP(H3D_QT4_MOC_SRC ${H3D_QT4_MOC_HDR})&lt;br /&gt;
# Sources.&lt;br /&gt;
SET(&lt;br /&gt;
    H3D_QT4_SRC&lt;br /&gt;
    GLWidget.cpp&lt;br /&gt;
    main.cpp&lt;br /&gt;
)&lt;br /&gt;
ADD_EXECUTABLE(h3d_qt4 ${H3D_QT4_MOC_SRC} ${H3D_QT4_SRC})&lt;br /&gt;
TARGET_LINK_LIBRARIES(h3d_qt4 Horde3D Horde3DUtils ${QT_LIBRARIES})&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
[http://kornerr.alfamoon.com/images/h3d_qt4.png The result should look like this]&lt;br /&gt;
|}&lt;br /&gt;
[[category: Tutorials]]&lt;/div&gt;</summary>
		<author><name>Kornerr</name></author>	</entry>

	<entry>
		<id>http://horde3d.org/wiki/index.php?title=Building_Horde3D&amp;diff=655</id>
		<title>Building Horde3D</title>
		<link rel="alternate" type="text/html" href="http://horde3d.org/wiki/index.php?title=Building_Horde3D&amp;diff=655"/>
				<updated>2010-02-09T06:26:31Z</updated>
		
		<summary type="html">&lt;p&gt;Kornerr: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__ __NOEDITSECTION__{{ContentBlock|color=white|content={{!!}}&lt;br /&gt;
This article contains instructions for building Horde3D from source on all supported platforms. Since Horde3D is very lightweight and has a minimal amount of external dependencies, getting it to compile and run is usually quite straightforward.&lt;br /&gt;
&lt;br /&gt;
== Obtaining the SDK ==&lt;br /&gt;
&lt;br /&gt;
Besides the [http://sourceforge.net/projects/horde3d/files/ official release packages], there is also a subversion repository hosted at SourceForge which is usually more up-to-date than the stable point releases.&lt;br /&gt;
&lt;br /&gt;
The repository has the common SVN structure ''branches'', ''tags'' and ''trunk''. The latest development snapshot can be found in the ''trunk'' folder, while the official releases are tagged in the ''tags'' folder. If you check out the trunk folder, you will get the SDK along with all official extensions.&lt;br /&gt;
&lt;br /&gt;
See [[SVN Source Instructions]] for instructions on how to obtain code from Subversion.&lt;br /&gt;
&lt;br /&gt;
== Building on Windows ==&lt;br /&gt;
&lt;br /&gt;
The preferred way of building Horde3D on Windows is using '''Visual Studio'''. The SDK comes with a solution file for Visual Studio 2005 that can be opened with the Visual C++ Express Edition as well. If you have Visual Studio 2008 (Standard/Professional or Express), you can simply use the VS Conversion Wizard to update the solution and project files. The solution contains the samples that can be started directly from Visual Studio. Just set the desired sample as startup project.&lt;br /&gt;
&lt;br /&gt;
It is also possible to use CMake to create the Visual Studio solution files. The process is similar to what you do on Linux then. However, if you want to use Visual Studio's ''nmake'', you usually have to use the Visual Studio Command Prompt instead of the standard ''cmd'' shell. Sample batch files for creating VS 2005 and 2008 projects can be found in the ''CMake'' folder located in the Horde3D repository.&lt;br /&gt;
&lt;br /&gt;
== Building on Linux ==&lt;br /&gt;
&lt;br /&gt;
The Horde3D SDK is compatible with gcc and ships with [http://www.cmake.org CMake] configuration files. To build Horde3D, just switch to the Horde3D root directory. Create a new directory which will contain the makefiles created by CMake, for example ''CMake'' and change into it. After that, type&lt;br /&gt;
&lt;br /&gt;
  cmake ..&lt;br /&gt;
&lt;br /&gt;
which will create the makefiles. Once they are created, you can type &amp;lt;tt&amp;gt;make&amp;lt;/tt&amp;gt; to build the code or &amp;lt;tt&amp;gt;make clean&amp;lt;/tt&amp;gt; to remove all generated files.&lt;br /&gt;
&lt;br /&gt;
=== Linkage order for your application ===&lt;br /&gt;
You must link Horde3D library to your final executable before GL one.&lt;br /&gt;
&lt;br /&gt;
'''WRONG''':&lt;br /&gt;
  gcc -o app main.cpp -lGL '''-lHorde3D'''&lt;br /&gt;
&lt;br /&gt;
'''RIGHT''':&lt;br /&gt;
  gcc -o app main.cpp '''-lHorde3D''' -lGL&lt;br /&gt;
&lt;br /&gt;
This is required for GCC 3.x and 4.x series on Linux. If you don't follow the linkage order, you will get [http://horde3d.org/forums/viewtopic.php?f=2&amp;amp;t=384 glCreateShader error within h3dInit call].&lt;br /&gt;
&lt;br /&gt;
== Building on Max OS X ==&lt;br /&gt;
&lt;br /&gt;
Mac OS X is an advanced graphical system layered over a traditional Unix core. Because of this, you can either use Apple's graphical Xcode IDE to develop Horde3D based applications, or you can go the traditional Unix way using gcc and makefiles.&lt;br /&gt;
&lt;br /&gt;
==== The Mac Way Using Xcode ====&lt;br /&gt;
&lt;br /&gt;
To create the Xcode project files, you have to install CMake first. After installing the CMake command line tools, you should be able to run CMake from the console. Switch to Horde3D root directory and create a new directory in which the CMake output will be stored, for example ''CMake''. Change the current directory to that newly created one and type&lt;br /&gt;
&lt;br /&gt;
  cmake -G &amp;quot;Xcode&amp;quot; ..&lt;br /&gt;
&lt;br /&gt;
You should now be able to open the newly created project in Xcode in order to build Horde3D.&lt;br /&gt;
&lt;br /&gt;
==== The Unix Way Using the Command Line ====&lt;br /&gt;
&lt;br /&gt;
''TODO''&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Kornerr</name></author>	</entry>

	<entry>
		<id>http://horde3d.org/wiki/index.php?title=Building_Horde3D&amp;diff=654</id>
		<title>Building Horde3D</title>
		<link rel="alternate" type="text/html" href="http://horde3d.org/wiki/index.php?title=Building_Horde3D&amp;diff=654"/>
				<updated>2010-02-09T06:23:41Z</updated>
		
		<summary type="html">&lt;p&gt;Kornerr: Linkage order on Linux&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__ __NOEDITSECTION__{{ContentBlock|color=white|content={{!!}}&lt;br /&gt;
This article contains instructions for building Horde3D from source on all supported platforms. Since Horde3D is very lightweight and has a minimal amount of external dependencies, getting it to compile and run is usually quite straightforward.&lt;br /&gt;
&lt;br /&gt;
== Obtaining the SDK ==&lt;br /&gt;
&lt;br /&gt;
Besides the [http://sourceforge.net/projects/horde3d/files/ official release packages], there is also a subversion repository hosted at SourceForge which is usually more up-to-date than the stable point releases.&lt;br /&gt;
&lt;br /&gt;
The repository has the common SVN structure ''branches'', ''tags'' and ''trunk''. The latest development snapshot can be found in the ''trunk'' folder, while the official releases are tagged in the ''tags'' folder. If you check out the trunk folder, you will get the SDK along with all official extensions.&lt;br /&gt;
&lt;br /&gt;
See [[SVN Source Instructions]] for instructions on how to obtain code from Subversion.&lt;br /&gt;
&lt;br /&gt;
== Building on Windows ==&lt;br /&gt;
&lt;br /&gt;
The preferred way of building Horde3D on Windows is using '''Visual Studio'''. The SDK comes with a solution file for Visual Studio 2005 that can be opened with the Visual C++ Express Edition as well. If you have Visual Studio 2008 (Standard/Professional or Express), you can simply use the VS Conversion Wizard to update the solution and project files. The solution contains the samples that can be started directly from Visual Studio. Just set the desired sample as startup project.&lt;br /&gt;
&lt;br /&gt;
It is also possible to use CMake to create the Visual Studio solution files. The process is similar to what you do on Linux then. However, if you want to use Visual Studio's ''nmake'', you usually have to use the Visual Studio Command Prompt instead of the standard ''cmd'' shell. Sample batch files for creating VS 2005 and 2008 projects can be found in the ''CMake'' folder located in the Horde3D repository.&lt;br /&gt;
&lt;br /&gt;
== Building on Linux ==&lt;br /&gt;
&lt;br /&gt;
The Horde3D SDK is compatible with gcc and ships with [http://www.cmake.org CMake] configuration files. To build Horde3D, just switch to the Horde3D root directory. Create a new directory which will contain the makefiles created by CMake, for example ''CMake'' and change into it. After that, type&lt;br /&gt;
&lt;br /&gt;
  cmake ..&lt;br /&gt;
&lt;br /&gt;
which will create the makefiles. Once they are created, you can type &amp;lt;tt&amp;gt;make&amp;lt;/tt&amp;gt; to build the code or &amp;lt;tt&amp;gt;make clean&amp;lt;/tt&amp;gt; to remove all generated files.&lt;br /&gt;
&lt;br /&gt;
=== Linkage order for your application ===&lt;br /&gt;
You must link Horde3D library to your final executable before GL one:&lt;br /&gt;
&lt;br /&gt;
'''WRONG''':&lt;br /&gt;
  gcc -o app main.cpp -lGL '''-lHorde3D'''&lt;br /&gt;
&lt;br /&gt;
'''RIGHT''':&lt;br /&gt;
  gcc -o app main.cpp '''-lHorde3D''' -lGL&lt;br /&gt;
&lt;br /&gt;
This is required for GCC 3.x and 4.x series on Linux. If you don't follow the linkage order, you will get [http://horde3d.org/forums/viewtopic.php?f=2&amp;amp;t=384 glCreateShader error within h3dInit call].&lt;br /&gt;
&lt;br /&gt;
== Building on Max OS X ==&lt;br /&gt;
&lt;br /&gt;
Mac OS X is an advanced graphical system layered over a traditional Unix core. Because of this, you can either use Apple's graphical Xcode IDE to develop Horde3D based applications, or you can go the traditional Unix way using gcc and makefiles.&lt;br /&gt;
&lt;br /&gt;
==== The Mac Way Using Xcode ====&lt;br /&gt;
&lt;br /&gt;
To create the Xcode project files, you have to install CMake first. After installing the CMake command line tools, you should be able to run CMake from the console. Switch to Horde3D root directory and create a new directory in which the CMake output will be stored, for example ''CMake''. Change the current directory to that newly created one and type&lt;br /&gt;
&lt;br /&gt;
  cmake -G &amp;quot;Xcode&amp;quot; ..&lt;br /&gt;
&lt;br /&gt;
You should now be able to open the newly created project in Xcode in order to build Horde3D.&lt;br /&gt;
&lt;br /&gt;
==== The Unix Way Using the Command Line ====&lt;br /&gt;
&lt;br /&gt;
''TODO''&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Kornerr</name></author>	</entry>

	</feed>