diff options
Diffstat (limited to 'libs/assimp/samples/SimpleOpenGL')
-rw-r--r-- | libs/assimp/samples/SimpleOpenGL/CMakeLists.txt | 58 | ||||
-rw-r--r-- | libs/assimp/samples/SimpleOpenGL/Sample_SimpleOpenGL.c | 448 | ||||
-rw-r--r-- | libs/assimp/samples/SimpleOpenGL/SimpleOpenGL.sln | 20 | ||||
-rw-r--r-- | libs/assimp/samples/SimpleOpenGL/SimpleOpenGL.vcproj | 199 |
4 files changed, 0 insertions, 725 deletions
diff --git a/libs/assimp/samples/SimpleOpenGL/CMakeLists.txt b/libs/assimp/samples/SimpleOpenGL/CMakeLists.txt deleted file mode 100644 index ba5deb4..0000000 --- a/libs/assimp/samples/SimpleOpenGL/CMakeLists.txt +++ /dev/null @@ -1,58 +0,0 @@ -SET(SAMPLE_PROJECT_NAME assimp_simpleogl) - -FIND_PACKAGE(OpenGL) -FIND_PACKAGE(GLUT) -IF ( MSVC ) - SET(M_LIB) -ELSE () - find_library(M_LIB m) -ENDIF () - -IF ( NOT GLUT_FOUND ) - IF ( MSVC ) - SET ( GLUT_FOUND 1 ) - SET ( GLUT_INCLUDE_DIR ${Assimp_SOURCE_DIR}/samples/freeglut/ ) - SET ( GLUT_LIBRARIES ${Assimp_SOURCE_DIR}/samples/freeglut/lib/freeglut.lib ) - ELSE () - MESSAGE( WARNING "Please install glut." ) - ENDIF () -ENDIF () - -# Used for usage and error messages in the program. -ADD_COMPILE_DEFINITIONS(ASSIMP_VERSION="${ASSIMP_VERSION}") -ADD_COMPILE_DEFINITIONS(PROJECT_NAME="${SAMPLE_PROJECT_NAME}") - -if ( MSVC ) - ADD_DEFINITIONS( -D_SCL_SECURE_NO_WARNINGS ) - ADD_DEFINITIONS( -D_CRT_SECURE_NO_WARNINGS ) -endif () - -INCLUDE_DIRECTORIES( - ${Assimp_SOURCE_DIR}/include - ${Assimp_SOURCE_DIR}/code - ${OPENGL_INCLUDE_DIR} - ${GLUT_INCLUDE_DIR} - ${Assimp_SOURCE_DIR}/samples/freeglut/include -) - -LINK_DIRECTORIES( - ${Assimp_BINARY_DIR} - ${Assimp_BINARY_DIR}/lib -) - -ADD_EXECUTABLE( ${SAMPLE_PROJECT_NAME} - Sample_SimpleOpenGL.c -) - -TARGET_USE_COMMON_OUTPUT_DIRECTORY(${SAMPLE_PROJECT_NAME}) - -SET_PROPERTY(TARGET ${SAMPLE_PROJECT_NAME} PROPERTY DEBUG_POSTFIX ${CMAKE_DEBUG_POSTFIX}) - -TARGET_LINK_LIBRARIES( ${SAMPLE_PROJECT_NAME} assimp ${OPENGL_LIBRARIES} ${GLUT_LIBRARIES} ${M_LIB} ) -SET_TARGET_PROPERTIES( ${SAMPLE_PROJECT_NAME} PROPERTIES - OUTPUT_NAME ${SAMPLE_PROJECT_NAME} -) - -INSTALL( TARGETS ${SAMPLE_PROJECT_NAME} - DESTINATION "${ASSIMP_BIN_INSTALL_DIR}" COMPONENT assimp-dev -) diff --git a/libs/assimp/samples/SimpleOpenGL/Sample_SimpleOpenGL.c b/libs/assimp/samples/SimpleOpenGL/Sample_SimpleOpenGL.c deleted file mode 100644 index c8ab7b3..0000000 --- a/libs/assimp/samples/SimpleOpenGL/Sample_SimpleOpenGL.c +++ /dev/null @@ -1,448 +0,0 @@ -/* ---------------------------------------------------------------------------- -// Simple sample to prove that Assimp is easy to use with OpenGL. -// It takes a file name as command line parameter, loads it using standard -// settings and displays it. -// -// If you intend to _use_ this code sample in your app, do yourself a favour -// and replace immediate mode calls with VBOs ... -// -// The vc8 solution links against assimp-release-dll_win32 - be sure to -// have this configuration built. -// ---------------------------------------------------------------------------- -*/ - -#include <stdlib.h> -#include <stdio.h> - -#ifdef __APPLE__ -#include <freeglut.h> -#else -#include <GL/freeglut.h> -#endif - -/* assimp include files. These three are usually needed. */ -#include <assimp/cimport.h> -#include <assimp/scene.h> -#include <assimp/postprocess.h> - -#define COMMAND_USAGE "--usage" - -/* ---------------------------------------------------------------------------- */ -inline static void print_run_command(const char* command_name) { - printf("Run '%s %s' for more information.\n", - PROJECT_NAME, command_name); -} - -/* ---------------------------------------------------------------------------- */ -inline static void print_error(const char* msg) { - printf("ERROR: %s\n", msg); -} - -#define NEW_LINE "\n" -#define DOUBLE_NEW_LINE NEW_LINE NEW_LINE - -/* ---------------------------------------------------------------------------- */ -inline static void print_usage() { - static const char* usage_format = - "Usage: " - PROJECT_NAME - " <file>" DOUBLE_NEW_LINE - "where:" DOUBLE_NEW_LINE - " %-10s %s" DOUBLE_NEW_LINE - "options:" DOUBLE_NEW_LINE - " %-10s %s" DOUBLE_NEW_LINE; - printf(usage_format, - // where - "file", "The input model file to load.", - // options - COMMAND_USAGE, "Display usage."); -} - -/* the global Assimp scene object */ -const C_STRUCT aiScene* scene = NULL; -GLuint scene_list = 0; -C_STRUCT aiVector3D scene_min, scene_max, scene_center; - -/* current rotation angle */ -static float angle = 0.f; - -#define aisgl_min(x,y) (x<y?x:y) -#define aisgl_max(x,y) (y>x?y:x) - -/* ---------------------------------------------------------------------------- */ -void reshape(int width, int height) -{ - const double aspectRatio = (float) width / height, fieldOfView = 45.0; - - glMatrixMode(GL_PROJECTION); - glLoadIdentity(); - gluPerspective(fieldOfView, aspectRatio, - 1.0, 1000.0); /* Znear and Zfar */ - glViewport(0, 0, width, height); -} - -/* ---------------------------------------------------------------------------- */ -void get_bounding_box_for_node (const C_STRUCT aiNode* nd, - C_STRUCT aiVector3D* min, - C_STRUCT aiVector3D* max, - C_STRUCT aiMatrix4x4* trafo -){ - C_STRUCT aiMatrix4x4 prev; - unsigned int n = 0, t; - - prev = *trafo; - aiMultiplyMatrix4(trafo,&nd->mTransformation); - - for (; n < nd->mNumMeshes; ++n) { - const C_STRUCT aiMesh* mesh = scene->mMeshes[nd->mMeshes[n]]; - for (t = 0; t < mesh->mNumVertices; ++t) { - - C_STRUCT aiVector3D tmp = mesh->mVertices[t]; - aiTransformVecByMatrix4(&tmp,trafo); - - min->x = aisgl_min(min->x,tmp.x); - min->y = aisgl_min(min->y,tmp.y); - min->z = aisgl_min(min->z,tmp.z); - - max->x = aisgl_max(max->x,tmp.x); - max->y = aisgl_max(max->y,tmp.y); - max->z = aisgl_max(max->z,tmp.z); - } - } - - for (n = 0; n < nd->mNumChildren; ++n) { - get_bounding_box_for_node(nd->mChildren[n],min,max,trafo); - } - *trafo = prev; -} - -/* ---------------------------------------------------------------------------- */ -void get_bounding_box(C_STRUCT aiVector3D* min, C_STRUCT aiVector3D* max) -{ - C_STRUCT aiMatrix4x4 trafo; - aiIdentityMatrix4(&trafo); - - min->x = min->y = min->z = 1e10f; - max->x = max->y = max->z = -1e10f; - get_bounding_box_for_node(scene->mRootNode,min,max,&trafo); -} - -/* ---------------------------------------------------------------------------- */ -void color4_to_float4(const C_STRUCT aiColor4D *c, float f[4]) -{ - f[0] = c->r; - f[1] = c->g; - f[2] = c->b; - f[3] = c->a; -} - -/* ---------------------------------------------------------------------------- */ -void set_float4(float f[4], float a, float b, float c, float d) -{ - f[0] = a; - f[1] = b; - f[2] = c; - f[3] = d; -} - -/* ---------------------------------------------------------------------------- */ -void apply_material(const C_STRUCT aiMaterial *mtl) -{ - float c[4]; - - GLenum fill_mode; - int ret1, ret2; - C_STRUCT aiColor4D diffuse; - C_STRUCT aiColor4D specular; - C_STRUCT aiColor4D ambient; - C_STRUCT aiColor4D emission; - ai_real shininess, strength; - int two_sided; - int wireframe; - unsigned int max; - - set_float4(c, 0.8f, 0.8f, 0.8f, 1.0f); - if(AI_SUCCESS == aiGetMaterialColor(mtl, AI_MATKEY_COLOR_DIFFUSE, &diffuse)) - color4_to_float4(&diffuse, c); - glMaterialfv(GL_FRONT_AND_BACK, GL_DIFFUSE, c); - - set_float4(c, 0.0f, 0.0f, 0.0f, 1.0f); - if(AI_SUCCESS == aiGetMaterialColor(mtl, AI_MATKEY_COLOR_SPECULAR, &specular)) - color4_to_float4(&specular, c); - glMaterialfv(GL_FRONT_AND_BACK, GL_SPECULAR, c); - - set_float4(c, 0.2f, 0.2f, 0.2f, 1.0f); - if(AI_SUCCESS == aiGetMaterialColor(mtl, AI_MATKEY_COLOR_AMBIENT, &ambient)) - color4_to_float4(&ambient, c); - glMaterialfv(GL_FRONT_AND_BACK, GL_AMBIENT, c); - - set_float4(c, 0.0f, 0.0f, 0.0f, 1.0f); - if(AI_SUCCESS == aiGetMaterialColor(mtl, AI_MATKEY_COLOR_EMISSIVE, &emission)) - color4_to_float4(&emission, c); - glMaterialfv(GL_FRONT_AND_BACK, GL_EMISSION, c); - - max = 1; - ret1 = aiGetMaterialFloatArray(mtl, AI_MATKEY_SHININESS, &shininess, &max); - if(ret1 == AI_SUCCESS) { - max = 1; - ret2 = aiGetMaterialFloatArray(mtl, AI_MATKEY_SHININESS_STRENGTH, &strength, &max); - if(ret2 == AI_SUCCESS) - glMaterialf(GL_FRONT_AND_BACK, GL_SHININESS, shininess * strength); - else - glMaterialf(GL_FRONT_AND_BACK, GL_SHININESS, shininess); - } - else { - glMaterialf(GL_FRONT_AND_BACK, GL_SHININESS, 0.0f); - set_float4(c, 0.0f, 0.0f, 0.0f, 0.0f); - glMaterialfv(GL_FRONT_AND_BACK, GL_SPECULAR, c); - } - - max = 1; - if(AI_SUCCESS == aiGetMaterialIntegerArray(mtl, AI_MATKEY_ENABLE_WIREFRAME, &wireframe, &max)) - fill_mode = wireframe ? GL_LINE : GL_FILL; - else - fill_mode = GL_FILL; - glPolygonMode(GL_FRONT_AND_BACK, fill_mode); - - max = 1; - if((AI_SUCCESS == aiGetMaterialIntegerArray(mtl, AI_MATKEY_TWOSIDED, &two_sided, &max)) && two_sided) - glDisable(GL_CULL_FACE); - else - glEnable(GL_CULL_FACE); -} - -/* ---------------------------------------------------------------------------- */ -void recursive_render (const C_STRUCT aiScene *sc, const C_STRUCT aiNode* nd) -{ - unsigned int i; - unsigned int n = 0, t; - C_STRUCT aiMatrix4x4 m = nd->mTransformation; - - /* update transform */ - aiTransposeMatrix4(&m); - glPushMatrix(); - glMultMatrixf((float*)&m); - - /* draw all meshes assigned to this node */ - for (; n < nd->mNumMeshes; ++n) { - const C_STRUCT aiMesh* mesh = scene->mMeshes[nd->mMeshes[n]]; - - apply_material(sc->mMaterials[mesh->mMaterialIndex]); - - if(mesh->mNormals == NULL) { - glDisable(GL_LIGHTING); - } else { - glEnable(GL_LIGHTING); - } - - for (t = 0; t < mesh->mNumFaces; ++t) { - const C_STRUCT aiFace* face = &mesh->mFaces[t]; - GLenum face_mode; - - switch(face->mNumIndices) { - case 1: face_mode = GL_POINTS; break; - case 2: face_mode = GL_LINES; break; - case 3: face_mode = GL_TRIANGLES; break; - default: face_mode = GL_POLYGON; break; - } - - glBegin(face_mode); - - for(i = 0; i < face->mNumIndices; i++) { - int index = face->mIndices[i]; - if(mesh->mColors[0] != NULL) - glColor4fv((GLfloat*)&mesh->mColors[0][index]); - if(mesh->mNormals != NULL) - glNormal3fv(&mesh->mNormals[index].x); - glVertex3fv(&mesh->mVertices[index].x); - } - - glEnd(); - } - - } - - /* draw all children */ - for (n = 0; n < nd->mNumChildren; ++n) { - recursive_render(sc, nd->mChildren[n]); - } - - glPopMatrix(); -} - -/* ---------------------------------------------------------------------------- */ -void do_motion (void) -{ - static GLint prev_time = 0; - static GLint prev_fps_time = 0; - static int frames = 0; - - int time = glutGet(GLUT_ELAPSED_TIME); - angle += (float)((time-prev_time)*0.01); - prev_time = time; - - frames += 1; - if ((time - prev_fps_time) > 1000) /* update every seconds */ - { - int current_fps = frames * 1000 / (time - prev_fps_time); - printf("%d fps\n", current_fps); - frames = 0; - prev_fps_time = time; - } - - - glutPostRedisplay (); -} - -/* ---------------------------------------------------------------------------- */ -void display(void) -{ - float tmp; - - glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); - - glMatrixMode(GL_MODELVIEW); - glLoadIdentity(); - gluLookAt(0.f,0.f,3.f,0.f,0.f,-5.f,0.f,1.f,0.f); - - /* rotate it around the y axis */ - glRotatef(angle,0.f,1.f,0.f); - - /* scale the whole asset to fit into our view frustum */ - tmp = scene_max.x-scene_min.x; - tmp = aisgl_max(scene_max.y - scene_min.y,tmp); - tmp = aisgl_max(scene_max.z - scene_min.z,tmp); - tmp = 1.f / tmp; - glScalef(tmp, tmp, tmp); - - /* center the model */ - glTranslatef( -scene_center.x, -scene_center.y, -scene_center.z ); - - /* if the display list has not been made yet, create a new one and - fill it with scene contents */ - if(scene_list == 0) { - scene_list = glGenLists(1); - glNewList(scene_list, GL_COMPILE); - /* now begin at the root node of the imported data and traverse - the scenegraph by multiplying subsequent local transforms - together on GL's matrix stack. */ - recursive_render(scene, scene->mRootNode); - glEndList(); - } - - glCallList(scene_list); - - glutSwapBuffers(); - - do_motion(); -} - -/* ---------------------------------------------------------------------------- */ -int loadasset (const char* path) -{ - /* we are taking one of the postprocessing presets to avoid - spelling out 20+ single postprocessing flags here. */ - scene = aiImportFile(path,aiProcessPreset_TargetRealtime_MaxQuality); - - if (scene) { - get_bounding_box(&scene_min,&scene_max); - scene_center.x = (scene_min.x + scene_max.x) / 2.0f; - scene_center.y = (scene_min.y + scene_max.y) / 2.0f; - scene_center.z = (scene_min.z + scene_max.z) / 2.0f; - return 0; - } - return 1; -} - -/* ---------------------------------------------------------------------------- */ -int main(int argc, char **argv) -{ - const char* model_file = NULL; - C_STRUCT aiLogStream stream; - - if (argc < 2) { - print_error("No input model file specified."); - print_run_command(COMMAND_USAGE); - return EXIT_FAILURE; - } - - // Find and execute available commands entered by the user. - for (int i = 1; i < argc; ++i) { - if (!strncmp(argv[i], COMMAND_USAGE, strlen(COMMAND_USAGE))) { - print_usage(); - return EXIT_SUCCESS; - } - } - - // Check and validate the specified model file extension. - model_file = argv[1]; - const char* extension = strrchr(model_file, '.'); - if (!extension) { - print_error("Please provide a file with a valid extension."); - return EXIT_FAILURE; - } - - if (AI_FALSE == aiIsExtensionSupported(extension)) { - print_error("The specified model file extension is currently " - "unsupported in Assimp " ASSIMP_VERSION "."); - return EXIT_FAILURE; - } - - glutInitWindowSize(900,600); - glutInitWindowPosition(100,100); - glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH); - glutInit(&argc, argv); - glutSetOption(GLUT_ACTION_ON_WINDOW_CLOSE, GLUT_ACTION_GLUTMAINLOOP_RETURNS); - - glutCreateWindow("Assimp - Very simple OpenGL sample"); - glutDisplayFunc(display); - glutReshapeFunc(reshape); - - /* get a handle to the predefined STDOUT log stream and attach - it to the logging system. It remains active for all further - calls to aiImportFile(Ex) and aiApplyPostProcessing. */ - stream = aiGetPredefinedLogStream(aiDefaultLogStream_STDOUT,NULL); - aiAttachLogStream(&stream); - - /* ... same procedure, but this stream now writes the - log messages to assimp_log.txt */ - stream = aiGetPredefinedLogStream(aiDefaultLogStream_FILE,"assimp_log.txt"); - aiAttachLogStream(&stream); - - // Load the model file. - if(0 != loadasset(model_file)) { - print_error("Failed to load model. Please ensure that the specified file exists."); - aiDetachAllLogStreams(); - return EXIT_FAILURE; - } - - glClearColor(0.1f,0.1f,0.1f,1.f); - - glEnable(GL_LIGHTING); - glEnable(GL_LIGHT0); /* Uses default lighting parameters */ - - glEnable(GL_DEPTH_TEST); - - glLightModeli(GL_LIGHT_MODEL_TWO_SIDE, GL_TRUE); - glEnable(GL_NORMALIZE); - - /* XXX docs say all polygons are emitted CCW, but tests show that some aren't. */ - if(getenv("MODEL_IS_BROKEN")) - glFrontFace(GL_CW); - - glColorMaterial(GL_FRONT_AND_BACK, GL_DIFFUSE); - - glutGet(GLUT_ELAPSED_TIME); - glutMainLoop(); - - /* cleanup - calling 'aiReleaseImport' is important, as the library - keeps internal resources until the scene is freed again. Not - doing so can cause severe resource leaking. */ - aiReleaseImport(scene); - - /* We added a log stream to the library, it's our job to disable it - again. This will definitely release the last resources allocated - by Assimp.*/ - aiDetachAllLogStreams(); - return EXIT_SUCCESS; -} diff --git a/libs/assimp/samples/SimpleOpenGL/SimpleOpenGL.sln b/libs/assimp/samples/SimpleOpenGL/SimpleOpenGL.sln deleted file mode 100644 index 5ccbafe..0000000 --- a/libs/assimp/samples/SimpleOpenGL/SimpleOpenGL.sln +++ /dev/null @@ -1,20 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 10.00 -# Visual Studio 2008 -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SimpleOpenGL", "SimpleOpenGL.vcproj", "{A53D047C-2C35-44FB-B7DB-2066FE520950}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Win32 = Debug|Win32 - Release|Win32 = Release|Win32 - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {A53D047C-2C35-44FB-B7DB-2066FE520950}.Debug|Win32.ActiveCfg = Debug|Win32 - {A53D047C-2C35-44FB-B7DB-2066FE520950}.Debug|Win32.Build.0 = Debug|Win32 - {A53D047C-2C35-44FB-B7DB-2066FE520950}.Release|Win32.ActiveCfg = Release|Win32 - {A53D047C-2C35-44FB-B7DB-2066FE520950}.Release|Win32.Build.0 = Release|Win32 - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection -EndGlobal diff --git a/libs/assimp/samples/SimpleOpenGL/SimpleOpenGL.vcproj b/libs/assimp/samples/SimpleOpenGL/SimpleOpenGL.vcproj deleted file mode 100644 index cbc56c1..0000000 --- a/libs/assimp/samples/SimpleOpenGL/SimpleOpenGL.vcproj +++ /dev/null @@ -1,199 +0,0 @@ -<?xml version="1.0" encoding="Windows-1252"?> -<VisualStudioProject - ProjectType="Visual C++" - Version="9,00" - Name="SimpleOpenGL" - ProjectGUID="{A53D047C-2C35-44FB-B7DB-2066FE520950}" - RootNamespace="SimpleOpenGL" - Keyword="Win32Proj" - TargetFrameworkVersion="131072" - > - <Platforms> - <Platform - Name="Win32" - /> - </Platforms> - <ToolFiles> - </ToolFiles> - <Configurations> - <Configuration - Name="Debug|Win32" - OutputDirectory="$(ConfigurationName)" - IntermediateDirectory="$(ConfigurationName)" - ConfigurationType="1" - CharacterSet="1" - > - <Tool - Name="VCPreBuildEventTool" - /> - <Tool - Name="VCCustomBuildTool" - /> - <Tool - Name="VCXMLDataGeneratorTool" - /> - <Tool - Name="VCWebServiceProxyGeneratorTool" - /> - <Tool - Name="VCMIDLTool" - /> - <Tool - Name="VCCLCompilerTool" - Optimization="0" - AdditionalIncludeDirectories="..\glut;..\..\include" - PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE" - MinimalRebuild="true" - BasicRuntimeChecks="3" - RuntimeLibrary="3" - UsePrecompiledHeader="0" - WarningLevel="3" - Detect64BitPortabilityProblems="true" - DebugInformationFormat="4" - /> - <Tool - Name="VCManagedResourceCompilerTool" - /> - <Tool - Name="VCResourceCompilerTool" - /> - <Tool - Name="VCPreLinkEventTool" - /> - <Tool - Name="VCLinkerTool" - AdditionalDependencies="glut32.lib assimp.lib" - OutputFile="$(OutDir)\$(ProjectName)_Debug.exe" - LinkIncremental="2" - AdditionalLibraryDirectories="..\glut;"..\..\lib\assimp_debug-dll_win32";..\..\bin\debug\" - GenerateDebugInformation="true" - SubSystem="1" - RandomizedBaseAddress="1" - DataExecutionPrevention="0" - TargetMachine="1" - /> - <Tool - Name="VCALinkTool" - /> - <Tool - Name="VCManifestTool" - /> - <Tool - Name="VCXDCMakeTool" - /> - <Tool - Name="VCBscMakeTool" - /> - <Tool - Name="VCFxCopTool" - /> - <Tool - Name="VCAppVerifierTool" - /> - <Tool - Name="VCPostBuildEventTool" - CommandLine="copy "$(ConfigurationName)\$(TargetFileName)" ..\bin
copy ..\..\bin\assimp_debug-dll_Win32\Assimp32d.dll ..\bin
" - /> - </Configuration> - <Configuration - Name="Release|Win32" - OutputDirectory="$(ConfigurationName)" - IntermediateDirectory="$(ConfigurationName)" - ConfigurationType="1" - CharacterSet="1" - WholeProgramOptimization="1" - > - <Tool - Name="VCPreBuildEventTool" - /> - <Tool - Name="VCCustomBuildTool" - /> - <Tool - Name="VCXMLDataGeneratorTool" - /> - <Tool - Name="VCWebServiceProxyGeneratorTool" - /> - <Tool - Name="VCMIDLTool" - /> - <Tool - Name="VCCLCompilerTool" - AdditionalIncludeDirectories="..\glut;..\..\include" - PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE" - RuntimeLibrary="2" - UsePrecompiledHeader="0" - WarningLevel="3" - Detect64BitPortabilityProblems="true" - DebugInformationFormat="3" - /> - <Tool - Name="VCManagedResourceCompilerTool" - /> - <Tool - Name="VCResourceCompilerTool" - /> - <Tool - Name="VCPreLinkEventTool" - /> - <Tool - Name="VCLinkerTool" - AdditionalDependencies="glut32.lib assimp.lib" - LinkIncremental="1" - AdditionalLibraryDirectories="..\glut;"..\..\lib\assimp_release-dll_win32"" - GenerateDebugInformation="true" - SubSystem="1" - OptimizeReferences="2" - EnableCOMDATFolding="2" - RandomizedBaseAddress="1" - DataExecutionPrevention="0" - TargetMachine="1" - /> - <Tool - Name="VCALinkTool" - /> - <Tool - Name="VCManifestTool" - /> - <Tool - Name="VCXDCMakeTool" - /> - <Tool - Name="VCBscMakeTool" - /> - <Tool - Name="VCFxCopTool" - /> - <Tool - Name="VCAppVerifierTool" - /> - <Tool - Name="VCPostBuildEventTool" - CommandLine="copy "$(ConfigurationName)\$(TargetFileName)" ..\bin
copy ..\..\bin\assimp_release-dll_Win32\Assimp32.dll ..\bin
" - /> - </Configuration> - </Configurations> - <References> - </References> - <Files> - <Filter - Name="res" - Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx" - UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}" - > - </Filter> - <Filter - Name="source" - Filter="h;hpp;hxx;hm;inl;inc;xsd" - UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}" - > - <File - RelativePath="Sample_SimpleOpenGL.c" - > - </File> - </Filter> - </Files> - <Globals> - </Globals> -</VisualStudioProject> |