Showing
35 changed files
with
979 additions
and
0 deletions
Kinect20.lib
0 → 100644
No preview for this file type
Kinect_Sample_Re.vcxproj
0 → 100644
1 | +<?xml version="1.0" encoding="utf-8"?> | ||
2 | +<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> | ||
3 | + <ItemGroup Label="ProjectConfigurations"> | ||
4 | + <ProjectConfiguration Include="Debug|Win32"> | ||
5 | + <Configuration>Debug</Configuration> | ||
6 | + <Platform>Win32</Platform> | ||
7 | + </ProjectConfiguration> | ||
8 | + <ProjectConfiguration Include="Debug|x64"> | ||
9 | + <Configuration>Debug</Configuration> | ||
10 | + <Platform>x64</Platform> | ||
11 | + </ProjectConfiguration> | ||
12 | + <ProjectConfiguration Include="Release|Win32"> | ||
13 | + <Configuration>Release</Configuration> | ||
14 | + <Platform>Win32</Platform> | ||
15 | + </ProjectConfiguration> | ||
16 | + <ProjectConfiguration Include="Release|x64"> | ||
17 | + <Configuration>Release</Configuration> | ||
18 | + <Platform>x64</Platform> | ||
19 | + </ProjectConfiguration> | ||
20 | + </ItemGroup> | ||
21 | + <PropertyGroup Label="Globals"> | ||
22 | + <ProjectGuid>{A2B5344E-B006-4B4E-A7E5-AACEFCD907EC}</ProjectGuid> | ||
23 | + <Keyword>Win32Proj</Keyword> | ||
24 | + <RootNamespace>Kinect_Sample_Re</RootNamespace> | ||
25 | + <WindowsTargetPlatformVersion>10.0.16299.0</WindowsTargetPlatformVersion> | ||
26 | + <ProjectName>gltest</ProjectName> | ||
27 | + </PropertyGroup> | ||
28 | + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> | ||
29 | + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration"> | ||
30 | + <ConfigurationType>Application</ConfigurationType> | ||
31 | + <UseDebugLibraries>true</UseDebugLibraries> | ||
32 | + <PlatformToolset>v141</PlatformToolset> | ||
33 | + <CharacterSet>Unicode</CharacterSet> | ||
34 | + </PropertyGroup> | ||
35 | + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration"> | ||
36 | + <ConfigurationType>Application</ConfigurationType> | ||
37 | + <UseDebugLibraries>true</UseDebugLibraries> | ||
38 | + <PlatformToolset>v141</PlatformToolset> | ||
39 | + <CharacterSet>Unicode</CharacterSet> | ||
40 | + </PropertyGroup> | ||
41 | + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration"> | ||
42 | + <ConfigurationType>Application</ConfigurationType> | ||
43 | + <UseDebugLibraries>false</UseDebugLibraries> | ||
44 | + <PlatformToolset>v141</PlatformToolset> | ||
45 | + <WholeProgramOptimization>true</WholeProgramOptimization> | ||
46 | + <CharacterSet>Unicode</CharacterSet> | ||
47 | + </PropertyGroup> | ||
48 | + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration"> | ||
49 | + <ConfigurationType>Application</ConfigurationType> | ||
50 | + <UseDebugLibraries>false</UseDebugLibraries> | ||
51 | + <PlatformToolset>v141</PlatformToolset> | ||
52 | + <WholeProgramOptimization>true</WholeProgramOptimization> | ||
53 | + <CharacterSet>Unicode</CharacterSet> | ||
54 | + </PropertyGroup> | ||
55 | + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> | ||
56 | + <ImportGroup Label="ExtensionSettings"> | ||
57 | + </ImportGroup> | ||
58 | + <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> | ||
59 | + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> | ||
60 | + </ImportGroup> | ||
61 | + <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets"> | ||
62 | + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> | ||
63 | + </ImportGroup> | ||
64 | + <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> | ||
65 | + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> | ||
66 | + </ImportGroup> | ||
67 | + <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets"> | ||
68 | + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> | ||
69 | + </ImportGroup> | ||
70 | + <PropertyGroup Label="UserMacros" /> | ||
71 | + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> | ||
72 | + <LinkIncremental>true</LinkIncremental> | ||
73 | + <IncludePath>C:\opencv\build\include;C:\Users\ljhoo_000\Documents\Visual Studio 2013\Projects\Kinect_Sample_Re\Kinect_Sample_Re\lib\freeglut\include;$(IncludePath)</IncludePath> | ||
74 | + <LibraryPath>C:\opencv\build\x64\vc10\lib;C:\Users\ljhoo_000\Documents\Visual Studio 2013\Projects\Kinect_Sample_Re\Kinect_Sample_Re\lib\freeglut\lib\x64;$(LibraryPath)</LibraryPath> | ||
75 | + </PropertyGroup> | ||
76 | + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> | ||
77 | + <LinkIncremental>true</LinkIncremental> | ||
78 | + <IncludePath>D:\과제\DMC\kinect_v2\Kinect_V2\Kinect_Sample_Re\gl;C:\Program Files\Microsoft SDKs\Kinect\v2.0-DevPreview1404\inc;C:\GitWork\Kinect_V2\Kinect_Sample_Re\Kinect_Sample_Re\lib\freeglut\include;$(IncludePath)</IncludePath> | ||
79 | + <LibraryPath>C:\Program Files\Microsoft SDKs\Kinect\v2.0-DevPreview1404\lib\x64;C:\GitWork\Kinect_V2\Kinect_Sample_Re\Kinect_Sample_Re\lib\freeglut\lib\x64;$(LibraryPath)</LibraryPath> | ||
80 | + </PropertyGroup> | ||
81 | + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> | ||
82 | + <LinkIncremental>false</LinkIncremental> | ||
83 | + </PropertyGroup> | ||
84 | + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> | ||
85 | + <LinkIncremental>false</LinkIncremental> | ||
86 | + </PropertyGroup> | ||
87 | + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> | ||
88 | + <ClCompile> | ||
89 | + <PrecompiledHeader> | ||
90 | + </PrecompiledHeader> | ||
91 | + <WarningLevel>Level3</WarningLevel> | ||
92 | + <Optimization>Disabled</Optimization> | ||
93 | + <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions> | ||
94 | + <SDLCheck>true</SDLCheck> | ||
95 | + </ClCompile> | ||
96 | + <Link> | ||
97 | + <SubSystem>Console</SubSystem> | ||
98 | + <GenerateDebugInformation>true</GenerateDebugInformation> | ||
99 | + </Link> | ||
100 | + </ItemDefinitionGroup> | ||
101 | + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> | ||
102 | + <ClCompile> | ||
103 | + <PrecompiledHeader> | ||
104 | + </PrecompiledHeader> | ||
105 | + <WarningLevel>Level3</WarningLevel> | ||
106 | + <Optimization>Disabled</Optimization> | ||
107 | + <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions);_CRT_SECURE_NO_WARNINIGS</PreprocessorDefinitions> | ||
108 | + <SDLCheck>true</SDLCheck> | ||
109 | + </ClCompile> | ||
110 | + <Link> | ||
111 | + <SubSystem>Console</SubSystem> | ||
112 | + <GenerateDebugInformation>true</GenerateDebugInformation> | ||
113 | + <AdditionalDependencies>Kinect20.lib;%(AdditionalDependencies)</AdditionalDependencies> | ||
114 | + </Link> | ||
115 | + </ItemDefinitionGroup> | ||
116 | + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> | ||
117 | + <ClCompile> | ||
118 | + <WarningLevel>Level3</WarningLevel> | ||
119 | + <PrecompiledHeader> | ||
120 | + </PrecompiledHeader> | ||
121 | + <Optimization>MaxSpeed</Optimization> | ||
122 | + <FunctionLevelLinking>true</FunctionLevelLinking> | ||
123 | + <IntrinsicFunctions>true</IntrinsicFunctions> | ||
124 | + <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions> | ||
125 | + <SDLCheck>true</SDLCheck> | ||
126 | + </ClCompile> | ||
127 | + <Link> | ||
128 | + <SubSystem>Console</SubSystem> | ||
129 | + <GenerateDebugInformation>true</GenerateDebugInformation> | ||
130 | + <EnableCOMDATFolding>true</EnableCOMDATFolding> | ||
131 | + <OptimizeReferences>true</OptimizeReferences> | ||
132 | + </Link> | ||
133 | + </ItemDefinitionGroup> | ||
134 | + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> | ||
135 | + <ClCompile> | ||
136 | + <WarningLevel>Level3</WarningLevel> | ||
137 | + <PrecompiledHeader> | ||
138 | + </PrecompiledHeader> | ||
139 | + <Optimization>MaxSpeed</Optimization> | ||
140 | + <FunctionLevelLinking>true</FunctionLevelLinking> | ||
141 | + <IntrinsicFunctions>true</IntrinsicFunctions> | ||
142 | + <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions> | ||
143 | + <SDLCheck>true</SDLCheck> | ||
144 | + </ClCompile> | ||
145 | + <Link> | ||
146 | + <SubSystem>Console</SubSystem> | ||
147 | + <GenerateDebugInformation>true</GenerateDebugInformation> | ||
148 | + <EnableCOMDATFolding>true</EnableCOMDATFolding> | ||
149 | + <OptimizeReferences>true</OptimizeReferences> | ||
150 | + </Link> | ||
151 | + </ItemDefinitionGroup> | ||
152 | + <ItemGroup> | ||
153 | + <ClCompile Include="Renderer.cpp" /> | ||
154 | + </ItemGroup> | ||
155 | + <ItemGroup> | ||
156 | + <ClInclude Include="Renderer.h" /> | ||
157 | + </ItemGroup> | ||
158 | + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> | ||
159 | + <ImportGroup Label="ExtensionTargets"> | ||
160 | + </ImportGroup> | ||
161 | +</Project> | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
Kinect_Sample_Re.vcxproj.filters
0 → 100644
1 | +<?xml version="1.0" encoding="utf-8"?> | ||
2 | +<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> | ||
3 | + <ItemGroup> | ||
4 | + <Filter Include="소스 파일"> | ||
5 | + <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier> | ||
6 | + <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions> | ||
7 | + </Filter> | ||
8 | + <Filter Include="헤더 파일"> | ||
9 | + <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier> | ||
10 | + <Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions> | ||
11 | + </Filter> | ||
12 | + <Filter Include="리소스 파일"> | ||
13 | + <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier> | ||
14 | + <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions> | ||
15 | + </Filter> | ||
16 | + </ItemGroup> | ||
17 | + <ItemGroup> | ||
18 | + <ClCompile Include="Renderer.cpp"> | ||
19 | + <Filter>소스 파일</Filter> | ||
20 | + </ClCompile> | ||
21 | + </ItemGroup> | ||
22 | + <ItemGroup> | ||
23 | + <ClInclude Include="Renderer.h"> | ||
24 | + <Filter>헤더 파일</Filter> | ||
25 | + </ClInclude> | ||
26 | + </ItemGroup> | ||
27 | +</Project> | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
Kinect_Sample_Re.vcxproj.user
0 → 100644
README.txt
0 → 100644
Renderer.h
0 → 100644
1 | +#pragma once | ||
2 | + | ||
3 | +#include <math.h> | ||
4 | +#include <iostream> | ||
5 | +#include <fstream> | ||
6 | +#include "gl/freeglut.h" // OpenGL header files | ||
7 | +#include <list> | ||
8 | +//#define TIME_CHECK_ | ||
9 | +#define DEPTH_CALIB_ | ||
10 | +#pragma warning(disable:4996) | ||
11 | +#define BLOCK 4 | ||
12 | +#define READ_SIZE 110404//5060//110404 | ||
13 | +#define scale 20 | ||
14 | +//#define TEST 14989 | ||
15 | +//#define STATIC_ | ||
16 | + | ||
17 | +using namespace std; | ||
18 | + | ||
19 | +struct Vertex{ | ||
20 | + float X; | ||
21 | + float Y; | ||
22 | + float Z; | ||
23 | + int index_1; | ||
24 | + int index_2; | ||
25 | + int index_3; | ||
26 | +}; | ||
27 | + | ||
28 | +// variables for GUI | ||
29 | +const float TRACKBALLSIZE = 0.8f; | ||
30 | +const int RENORMCOUNT = 97; | ||
31 | +//const int width = KinectBasic::nColorWidth; | ||
32 | +//const int height = KinectBasic::nColorHeight; | ||
33 | + | ||
34 | +GLint drag_state = 0; | ||
35 | +GLint button_state = 0; | ||
36 | + | ||
37 | +GLint rot_x = 0; | ||
38 | +GLint rot_y = 0; | ||
39 | +GLint trans_x = 0; | ||
40 | +GLint trans_y = 0; | ||
41 | +GLint trans_z = 0; | ||
42 | + | ||
43 | +int add_depth_flag = 0; | ||
44 | +int model_flag = 0; | ||
45 | +int depth_display_flag = 0; | ||
46 | +int geodesic_skel[23][5] = { 0 }; | ||
47 | + | ||
48 | +int side_status[50] = { 0 }; | ||
49 | + | ||
50 | +float quat[4] = {0}; | ||
51 | +float t[3] = {0}; | ||
52 | + | ||
53 | +Vertex skt[23]; | ||
54 | +bool bTracked = false; | ||
55 | +bool checkt = false; | ||
56 | +Vertex *vertex; | ||
57 | +Vertex *vertex_color; | ||
58 | + | ||
59 | +bool recheck; | ||
60 | + | ||
61 | +// variables for display OpenGL based point viewer | ||
62 | +int dispWindowIndex = 0; | ||
63 | +GLuint dispBindIndex = 0; | ||
64 | +const float dispPointSize = 2.0f; | ||
65 | + | ||
66 | +// variables for display text | ||
67 | +string dispString = ""; | ||
68 | +const string dispStringInit = "Depth Threshold: D\nInfrared Threshold: I\nNonlocal Means Filter: N\nPick BodyIndex: P\nAccumulate Mode: A\nSelect Mode: C,B(select)\nSave: S\nReset View: R\nQuit: ESC"; | ||
69 | +string frameRate; | ||
70 | + | ||
71 | +// HANDLE hMutex; | ||
72 | +//KinectBasic kinect; | ||
73 | + | ||
74 | +// functions for GUIs | ||
75 | +void InitializeWindow(int argc, char* argv[]); | ||
76 | + | ||
77 | +// high-level functions for GUI | ||
78 | +void draw_center(); | ||
79 | +void idle(); | ||
80 | +void display(); | ||
81 | +void close(); | ||
82 | +void special(int, int, int) {} | ||
83 | +void keyboard(unsigned char, int, int); | ||
84 | +void mouse(int, int, int, int); | ||
85 | +void reshape(int, int); | ||
86 | +void motion(int, int); | ||
87 | + | ||
88 | + | ||
89 | +// basic functions for computation/GUI | ||
90 | +// trackball codes were imported from those of Gavin Bell | ||
91 | +// which appeared in SIGGRAPH '88 | ||
92 | +void vzero(float*); | ||
93 | +void vset(float*, float, float, float); | ||
94 | +void vsub(const float*, const float*, float*); | ||
95 | +void vcopy(const float*, float*); | ||
96 | +void vcross(const float *v1, const float *v2, float *cross); | ||
97 | +float vlength(const float *v); | ||
98 | +void vscale(float *v, float div); | ||
99 | +void vnormal(float *v); | ||
100 | +float vdot(const float *v1, const float *v2); | ||
101 | +void vadd(const float *src1, const float *src2, float *dst); | ||
102 | + | ||
103 | +void trackball(float q[4], float, float, float, float); | ||
104 | +//void add_quats(float*, float*, float*); | ||
105 | +void axis_to_quat(float a[3], float phi, float q[4]); | ||
106 | +void normalize_quat(float q[4]); | ||
107 | +float tb_project_to_sphere(float, float, float); | ||
108 | +void build_rotmatrix(float m[4][4], float q[4]); | ||
109 | +void Reader(); | ||
110 | +void DrawObj(); | ||
111 | +void DrawMeshObj(); | ||
112 | +void Setskt(); | ||
113 | + | ||
114 | +//CameraSpacePoint m_SpacePoint[JointType::JointType_Count]; | ||
115 | +void Track(); |
a.out
0 → 100755
No preview for this file type
apple.obj
0 → 100644
This diff could not be displayed because it is too large.
applef2.txt
0 → 100644
This diff could not be displayed because it is too large.
applet.bmp
0 → 100644
This file is too large to display.
applet.txt
0 → 100644
This diff could not be displayed because it is too large.
freeglut.dll
0 → 100644
No preview for this file type
freeglut.lib
0 → 100644
No preview for this file type
gl/freeglut.h
0 → 100644
1 | +#ifndef __FREEGLUT_H__ | ||
2 | +#define __FREEGLUT_H__ | ||
3 | + | ||
4 | +/* | ||
5 | + * freeglut.h | ||
6 | + * | ||
7 | + * The freeglut library include file | ||
8 | + * | ||
9 | + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS | ||
10 | + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||
11 | + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL | ||
12 | + * PAWEL W. OLSZTA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER | ||
13 | + * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN | ||
14 | + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | ||
15 | + */ | ||
16 | + | ||
17 | +#include "freeglut_std.h" | ||
18 | +#include "freeglut_ext.h" | ||
19 | + | ||
20 | +/*** END OF FILE ***/ | ||
21 | + | ||
22 | +#endif /* __FREEGLUT_H__ */ |
gl/freeglut_ext.h
0 → 100644
1 | +#ifndef __FREEGLUT_EXT_H__ | ||
2 | +#define __FREEGLUT_EXT_H__ | ||
3 | + | ||
4 | +/* | ||
5 | + * freeglut_ext.h | ||
6 | + * | ||
7 | + * The non-GLUT-compatible extensions to the freeglut library include file | ||
8 | + * | ||
9 | + * Copyright (c) 1999-2000 Pawel W. Olszta. All Rights Reserved. | ||
10 | + * Written by Pawel W. Olszta, <olszta@sourceforge.net> | ||
11 | + * Creation date: Thu Dec 2 1999 | ||
12 | + * | ||
13 | + * Permission is hereby granted, free of charge, to any person obtaining a | ||
14 | + * copy of this software and associated documentation files (the "Software"), | ||
15 | + * to deal in the Software without restriction, including without limitation | ||
16 | + * the rights to use, copy, modify, merge, publish, distribute, sublicense, | ||
17 | + * and/or sell copies of the Software, and to permit persons to whom the | ||
18 | + * Software is furnished to do so, subject to the following conditions: | ||
19 | + * | ||
20 | + * The above copyright notice and this permission notice shall be included | ||
21 | + * in all copies or substantial portions of the Software. | ||
22 | + * | ||
23 | + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS | ||
24 | + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||
25 | + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL | ||
26 | + * PAWEL W. OLSZTA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER | ||
27 | + * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN | ||
28 | + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | ||
29 | + */ | ||
30 | + | ||
31 | +#ifdef __cplusplus | ||
32 | + extern "C" { | ||
33 | +#endif | ||
34 | + | ||
35 | +/* | ||
36 | + * Additional GLUT Key definitions for the Special key function | ||
37 | + */ | ||
38 | +#define GLUT_KEY_NUM_LOCK 0x006D | ||
39 | +#define GLUT_KEY_BEGIN 0x006E | ||
40 | +#define GLUT_KEY_DELETE 0x006F | ||
41 | +#define GLUT_KEY_SHIFT_L 0x0070 | ||
42 | +#define GLUT_KEY_SHIFT_R 0x0071 | ||
43 | +#define GLUT_KEY_CTRL_L 0x0072 | ||
44 | +#define GLUT_KEY_CTRL_R 0x0073 | ||
45 | +#define GLUT_KEY_ALT_L 0x0074 | ||
46 | +#define GLUT_KEY_ALT_R 0x0075 | ||
47 | + | ||
48 | +/* | ||
49 | + * GLUT API Extension macro definitions -- behaviour when the user clicks on an "x" to close a window | ||
50 | + */ | ||
51 | +#define GLUT_ACTION_EXIT 0 | ||
52 | +#define GLUT_ACTION_GLUTMAINLOOP_RETURNS 1 | ||
53 | +#define GLUT_ACTION_CONTINUE_EXECUTION 2 | ||
54 | + | ||
55 | +/* | ||
56 | + * Create a new rendering context when the user opens a new window? | ||
57 | + */ | ||
58 | +#define GLUT_CREATE_NEW_CONTEXT 0 | ||
59 | +#define GLUT_USE_CURRENT_CONTEXT 1 | ||
60 | + | ||
61 | +/* | ||
62 | + * Direct/Indirect rendering context options (has meaning only in Unix/X11) | ||
63 | + */ | ||
64 | +#define GLUT_FORCE_INDIRECT_CONTEXT 0 | ||
65 | +#define GLUT_ALLOW_DIRECT_CONTEXT 1 | ||
66 | +#define GLUT_TRY_DIRECT_CONTEXT 2 | ||
67 | +#define GLUT_FORCE_DIRECT_CONTEXT 3 | ||
68 | + | ||
69 | +/* | ||
70 | + * GLUT API Extension macro definitions -- the glutGet parameters | ||
71 | + */ | ||
72 | +#define GLUT_INIT_STATE 0x007C | ||
73 | + | ||
74 | +#define GLUT_ACTION_ON_WINDOW_CLOSE 0x01F9 | ||
75 | + | ||
76 | +#define GLUT_WINDOW_BORDER_WIDTH 0x01FA | ||
77 | +#define GLUT_WINDOW_HEADER_HEIGHT 0x01FB | ||
78 | + | ||
79 | +#define GLUT_VERSION 0x01FC | ||
80 | + | ||
81 | +#define GLUT_RENDERING_CONTEXT 0x01FD | ||
82 | +#define GLUT_DIRECT_RENDERING 0x01FE | ||
83 | + | ||
84 | +#define GLUT_FULL_SCREEN 0x01FF | ||
85 | + | ||
86 | +/* | ||
87 | + * New tokens for glutInitDisplayMode. | ||
88 | + * Only one GLUT_AUXn bit may be used at a time. | ||
89 | + * Value 0x0400 is defined in OpenGLUT. | ||
90 | + */ | ||
91 | +#define GLUT_AUX 0x1000 | ||
92 | + | ||
93 | +#define GLUT_AUX1 0x1000 | ||
94 | +#define GLUT_AUX2 0x2000 | ||
95 | +#define GLUT_AUX3 0x4000 | ||
96 | +#define GLUT_AUX4 0x8000 | ||
97 | + | ||
98 | +/* | ||
99 | + * Context-related flags, see freeglut_state.c | ||
100 | + */ | ||
101 | +#define GLUT_INIT_MAJOR_VERSION 0x0200 | ||
102 | +#define GLUT_INIT_MINOR_VERSION 0x0201 | ||
103 | +#define GLUT_INIT_FLAGS 0x0202 | ||
104 | +#define GLUT_INIT_PROFILE 0x0203 | ||
105 | + | ||
106 | +/* | ||
107 | + * Flags for glutInitContextFlags, see freeglut_init.c | ||
108 | + */ | ||
109 | +#define GLUT_DEBUG 0x0001 | ||
110 | +#define GLUT_FORWARD_COMPATIBLE 0x0002 | ||
111 | + | ||
112 | + | ||
113 | +/* | ||
114 | + * Flags for glutInitContextProfile, see freeglut_init.c | ||
115 | + */ | ||
116 | +#define GLUT_CORE_PROFILE 0x0001 | ||
117 | +#define GLUT_COMPATIBILITY_PROFILE 0x0002 | ||
118 | + | ||
119 | +/* | ||
120 | + * Process loop function, see freeglut_main.c | ||
121 | + */ | ||
122 | +FGAPI void FGAPIENTRY glutMainLoopEvent( void ); | ||
123 | +FGAPI void FGAPIENTRY glutLeaveMainLoop( void ); | ||
124 | +FGAPI void FGAPIENTRY glutExit ( void ); | ||
125 | + | ||
126 | +/* | ||
127 | + * Window management functions, see freeglut_window.c | ||
128 | + */ | ||
129 | +FGAPI void FGAPIENTRY glutFullScreenToggle( void ); | ||
130 | +FGAPI void FGAPIENTRY glutLeaveFullScreen( void ); | ||
131 | + | ||
132 | +/* | ||
133 | + * Window-specific callback functions, see freeglut_callbacks.c | ||
134 | + */ | ||
135 | +FGAPI void FGAPIENTRY glutMouseWheelFunc( void (* callback)( int, int, int, int ) ); | ||
136 | +FGAPI void FGAPIENTRY glutCloseFunc( void (* callback)( void ) ); | ||
137 | +FGAPI void FGAPIENTRY glutWMCloseFunc( void (* callback)( void ) ); | ||
138 | +/* A. Donev: Also a destruction callback for menus */ | ||
139 | +FGAPI void FGAPIENTRY glutMenuDestroyFunc( void (* callback)( void ) ); | ||
140 | + | ||
141 | +/* | ||
142 | + * State setting and retrieval functions, see freeglut_state.c | ||
143 | + */ | ||
144 | +FGAPI void FGAPIENTRY glutSetOption ( GLenum option_flag, int value ); | ||
145 | +FGAPI int * FGAPIENTRY glutGetModeValues(GLenum mode, int * size); | ||
146 | +/* A.Donev: User-data manipulation */ | ||
147 | +FGAPI void* FGAPIENTRY glutGetWindowData( void ); | ||
148 | +FGAPI void FGAPIENTRY glutSetWindowData(void* data); | ||
149 | +FGAPI void* FGAPIENTRY glutGetMenuData( void ); | ||
150 | +FGAPI void FGAPIENTRY glutSetMenuData(void* data); | ||
151 | + | ||
152 | +/* | ||
153 | + * Font stuff, see freeglut_font.c | ||
154 | + */ | ||
155 | +FGAPI int FGAPIENTRY glutBitmapHeight( void* font ); | ||
156 | +FGAPI GLfloat FGAPIENTRY glutStrokeHeight( void* font ); | ||
157 | +FGAPI void FGAPIENTRY glutBitmapString( void* font, const unsigned char *string ); | ||
158 | +FGAPI void FGAPIENTRY glutStrokeString( void* font, const unsigned char *string ); | ||
159 | + | ||
160 | +/* | ||
161 | + * Geometry functions, see freeglut_geometry.c | ||
162 | + */ | ||
163 | +FGAPI void FGAPIENTRY glutWireRhombicDodecahedron( void ); | ||
164 | +FGAPI void FGAPIENTRY glutSolidRhombicDodecahedron( void ); | ||
165 | +FGAPI void FGAPIENTRY glutWireSierpinskiSponge ( int num_levels, GLdouble offset[3], GLdouble scale ); | ||
166 | +FGAPI void FGAPIENTRY glutSolidSierpinskiSponge ( int num_levels, GLdouble offset[3], GLdouble scale ); | ||
167 | +FGAPI void FGAPIENTRY glutWireCylinder( GLdouble radius, GLdouble height, GLint slices, GLint stacks); | ||
168 | +FGAPI void FGAPIENTRY glutSolidCylinder( GLdouble radius, GLdouble height, GLint slices, GLint stacks); | ||
169 | + | ||
170 | +/* | ||
171 | + * Extension functions, see freeglut_ext.c | ||
172 | + */ | ||
173 | +typedef void (*GLUTproc)(); | ||
174 | +FGAPI GLUTproc FGAPIENTRY glutGetProcAddress( const char *procName ); | ||
175 | + | ||
176 | +/* | ||
177 | + * Multi-touch/multi-pointer extensions | ||
178 | + */ | ||
179 | + | ||
180 | +#define GLUT_HAS_MULTI 1 | ||
181 | + | ||
182 | +FGAPI void FGAPIENTRY glutMultiEntryFunc( void (* callback)( int, int ) ); | ||
183 | +FGAPI void FGAPIENTRY glutMultiButtonFunc( void (* callback)( int, int, int, int, int ) ); | ||
184 | +FGAPI void FGAPIENTRY glutMultiMotionFunc( void (* callback)( int, int, int ) ); | ||
185 | +FGAPI void FGAPIENTRY glutMultiPassiveFunc( void (* callback)( int, int, int ) ); | ||
186 | + | ||
187 | +/* | ||
188 | + * Joystick functions, see freeglut_joystick.c | ||
189 | + */ | ||
190 | +/* USE OF THESE FUNCTIONS IS DEPRECATED !!!!! */ | ||
191 | +/* If you have a serious need for these functions in your application, please either | ||
192 | + * contact the "freeglut" developer community at freeglut-developer@lists.sourceforge.net, | ||
193 | + * switch to the OpenGLUT library, or else port your joystick functionality over to PLIB's | ||
194 | + * "js" library. | ||
195 | + */ | ||
196 | +int glutJoystickGetNumAxes( int ident ); | ||
197 | +int glutJoystickGetNumButtons( int ident ); | ||
198 | +int glutJoystickNotWorking( int ident ); | ||
199 | +float glutJoystickGetDeadBand( int ident, int axis ); | ||
200 | +void glutJoystickSetDeadBand( int ident, int axis, float db ); | ||
201 | +float glutJoystickGetSaturation( int ident, int axis ); | ||
202 | +void glutJoystickSetSaturation( int ident, int axis, float st ); | ||
203 | +void glutJoystickSetMinRange( int ident, float *axes ); | ||
204 | +void glutJoystickSetMaxRange( int ident, float *axes ); | ||
205 | +void glutJoystickSetCenter( int ident, float *axes ); | ||
206 | +void glutJoystickGetMinRange( int ident, float *axes ); | ||
207 | +void glutJoystickGetMaxRange( int ident, float *axes ); | ||
208 | +void glutJoystickGetCenter( int ident, float *axes ); | ||
209 | + | ||
210 | +/* | ||
211 | + * Initialization functions, see freeglut_init.c | ||
212 | + */ | ||
213 | +FGAPI void FGAPIENTRY glutInitContextVersion( int majorVersion, int minorVersion ); | ||
214 | +FGAPI void FGAPIENTRY glutInitContextFlags( int flags ); | ||
215 | +FGAPI void FGAPIENTRY glutInitContextProfile( int profile ); | ||
216 | + | ||
217 | +/* to get the typedef for va_list */ | ||
218 | +#include <stdarg.h> | ||
219 | + | ||
220 | +FGAPI void FGAPIENTRY glutInitErrorFunc( void (* vError)( const char *fmt, va_list ap ) ); | ||
221 | +FGAPI void FGAPIENTRY glutInitWarningFunc( void (* vWarning)( const char *fmt, va_list ap ) ); | ||
222 | + | ||
223 | +/* | ||
224 | + * GLUT API macro definitions -- the display mode definitions | ||
225 | + */ | ||
226 | +#define GLUT_CAPTIONLESS 0x0400 | ||
227 | +#define GLUT_BORDERLESS 0x0800 | ||
228 | +#define GLUT_SRGB 0x1000 | ||
229 | + | ||
230 | +#ifdef __cplusplus | ||
231 | + } | ||
232 | +#endif | ||
233 | + | ||
234 | +/*** END OF FILE ***/ | ||
235 | + | ||
236 | +#endif /* __FREEGLUT_EXT_H__ */ |
gl/freeglut_std.h
0 → 100644
This diff is collapsed. Click to expand it.
gl/gl.h
0 → 100644
This diff is collapsed. Click to expand it.
gl/glext.h
0 → 100644
This diff could not be displayed because it is too large.
gl/glui.h
0 → 100644
This diff is collapsed. Click to expand it.
gl/glut.h
0 → 100644
This diff is collapsed. Click to expand it.
gl/wglext.h
0 → 100644
This diff is collapsed. Click to expand it.
lib/freeglut/Copying.txt
0 → 100644
1 | + | ||
2 | + Freeglut Copyright | ||
3 | + ------------------ | ||
4 | + | ||
5 | + Freeglut code without an explicit copyright is covered by the following | ||
6 | + copyright: | ||
7 | + | ||
8 | + Copyright (c) 1999-2000 Pawel W. Olszta. All Rights Reserved. | ||
9 | + Permission is hereby granted, free of charge, to any person obtaining a copy | ||
10 | + of this software and associated documentation files (the "Software"), to deal | ||
11 | + in the Software without restriction, including without limitation the rights | ||
12 | + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||
13 | + copies or substantial portions of the Software. | ||
14 | + | ||
15 | + The above copyright notice and this permission notice shall be included in | ||
16 | + all copies or substantial portions of the Software. | ||
17 | + | ||
18 | + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||
19 | + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||
20 | + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL | ||
21 | + PAWEL W. OLSZTA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER | ||
22 | + IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN | ||
23 | + CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | ||
24 | + | ||
25 | + Except as contained in this notice, the name of Pawel W. Olszta shall not be | ||
26 | + used in advertising or otherwise to promote the sale, use or other dealings | ||
27 | + in this Software without prior written authorization from Pawel W. Olszta. |
lib/freeglut/Readme.txt
0 → 100644
1 | +freeglut 2.8.1-1.mp for MSVC | ||
2 | + | ||
3 | +This package contains freeglut import libraries, headers, and Windows DLLs. | ||
4 | +These allow 32 and 64 bit GLUT applications to be compiled on Windows using | ||
5 | +Microsoft Visual C++. | ||
6 | + | ||
7 | +For more information on freeglut, visit http://freeglut.sourceforge.net/. | ||
8 | + | ||
9 | + | ||
10 | +Installation | ||
11 | + | ||
12 | +Create a folder on your PC which is readable by all users, for example | ||
13 | +“C:\Program Files\Common Files\MSVC\freeglut\” on a typical Windows system. Copy | ||
14 | +the “lib\” and “include\” folders from this zip archive to that location. | ||
15 | + | ||
16 | +The appropriate freeglut DLL can either be placed in the same folder as your | ||
17 | +application, or can be installed in a system-wide folder which appears in your | ||
18 | +%PATH% environment variable. Be careful not to mix the 32 bit DLL up with the 64 | ||
19 | +bit DLL, as they are not interchangeable. | ||
20 | + | ||
21 | + | ||
22 | +Compiling 32 bit Applications | ||
23 | + | ||
24 | +To create a 32 bit freeglut application, create a new Win32 C++ project in MSVC. | ||
25 | +From the “Win32 Application Wizard”, choose a “Windows application”, check the | ||
26 | +“Empty project” box, and submit. | ||
27 | + | ||
28 | +You’ll now need to configure the compiler and linker settings. Open up the | ||
29 | +project properties, and select “All Configurations” (this is necessary to ensure | ||
30 | +our changes are applied for both debug and release builds). Open up the | ||
31 | +“general” section under “C/C++”, and configure the “include\” folder you created | ||
32 | +above as an “Additional Include Directory”. If you have more than one GLUT | ||
33 | +package which contains a “glut.h” file, it’s important to ensure that the | ||
34 | +freeglut include folder appears above all other GLUT include folders. | ||
35 | + | ||
36 | +Now open up the “general” section under “Linker”, and configure the “lib\” | ||
37 | +folder you created above as an “Additional Library Directory”. A freeglut | ||
38 | +application depends on the import libraries “freeglut.lib” and “opengl32.lib”, | ||
39 | +which can be configured under the “Input” section. However, it shouldn’t be | ||
40 | +necessary to explicitly state these dependencies, since the freeglut headers | ||
41 | +handle this for you. Now open the “Advanced” section, and enter “mainCRTStartup” | ||
42 | +as the “Entry Point” for your application. This is necessary because GLUT | ||
43 | +applications use “main” as the application entry point, not “WinMain”—without it | ||
44 | +you’ll get an undefined reference when you try to link your application. | ||
45 | + | ||
46 | +That’s all of your project properties configured, so you can now add source | ||
47 | +files to your project and build the application. If you want your application to | ||
48 | +be compatible with GLUT, you should “#include <GL/glut.h>”. If you want to use | ||
49 | +freeglut specific extensions, you should “#include <GL/freeglut.h>” instead. | ||
50 | + | ||
51 | +Don’t forget to either include the freeglut DLL when distributing applications, | ||
52 | +or provide your users with some method of obtaining it if they don’t already | ||
53 | +have it! | ||
54 | + | ||
55 | + | ||
56 | +Compiling 64 bit Applications | ||
57 | + | ||
58 | +Building 64 bit applications is almost identical to building 32 bit applications. | ||
59 | +When you use the configuration manager to add the x64 platform, it’s easiest to | ||
60 | +copy the settings from the Win32 platform. If you do so, it’s then only necessary | ||
61 | +to change the “Additional Library Directories” configuration so that it | ||
62 | +references the directory containing the 64 bit import library rather | ||
63 | +than the 32 bit one. | ||
64 | + | ||
65 | + | ||
66 | +Problems? | ||
67 | + | ||
68 | +If you have problems using this package (compiler / linker errors etc.), please | ||
69 | +check that you have followed all of the steps in this readme file correctly. | ||
70 | +Almost all of the problems which are reported with these packages are due to | ||
71 | +missing a step or not doing it correctly, for example trying to build a 32 bit | ||
72 | +app against the 64 bit import library. If you have followed all of the steps | ||
73 | +correctly but your application still fails to build, try building a very simple | ||
74 | +but functional program (the example at | ||
75 | +http://www.transmissionzero.co.uk/computing/using-glut-with-mingw/ works fine | ||
76 | +with MSVC). A lot of people try to build very complex applications after | ||
77 | +installing these packages, and often the error is with the application code or | ||
78 | +other library dependencies rather than freeglut. | ||
79 | + | ||
80 | +If you still can’t get it working after trying to compile a simple application, | ||
81 | +then please get in touch via http://www.transmissionzero.co.uk/contact/, | ||
82 | +providing as much detail as you can. Please don’t complain to the freeglut guys | ||
83 | +unless you’re sure it’s a freeglut bug, and have reproduced the issue after | ||
84 | +compiling freeglut from the latest SVN version—if that’s still the case, I’m sure | ||
85 | +they would appreciate a bug report or a patch. | ||
86 | + | ||
87 | + | ||
88 | +Changelog | ||
89 | + | ||
90 | +2013–05–11: Release 2.8.1-1.mp | ||
91 | + | ||
92 | + • First 2.8.1 MSVC release. I’ve built the package using Visual Studio 2012, | ||
93 | + and the only change I’ve made is to the DLL version resource—I’ve changed | ||
94 | + the description so that my MinGW and MSVC builds are distinguishable from | ||
95 | + each other (and other builds) using Windows Explorer. | ||
96 | + | ||
97 | + | ||
98 | +Martin Payne | ||
99 | +2013–05–11 | ||
100 | + | ||
101 | +http://www.transmissionzero.co.uk/ |
lib/freeglut/bin/freeglut.dll
0 → 100644
No preview for this file type
lib/freeglut/bin/x64/freeglut.dll
0 → 100644
No preview for this file type
lib/freeglut/include/GL/freeglut.h
0 → 100644
1 | +#ifndef __FREEGLUT_H__ | ||
2 | +#define __FREEGLUT_H__ | ||
3 | + | ||
4 | +/* | ||
5 | + * freeglut.h | ||
6 | + * | ||
7 | + * The freeglut library include file | ||
8 | + * | ||
9 | + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS | ||
10 | + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||
11 | + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL | ||
12 | + * PAWEL W. OLSZTA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER | ||
13 | + * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN | ||
14 | + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | ||
15 | + */ | ||
16 | + | ||
17 | +#include "freeglut_std.h" | ||
18 | +#include "freeglut_ext.h" | ||
19 | + | ||
20 | +/*** END OF FILE ***/ | ||
21 | + | ||
22 | +#endif /* __FREEGLUT_H__ */ |
lib/freeglut/include/GL/freeglut_ext.h
0 → 100644
1 | +#ifndef __FREEGLUT_EXT_H__ | ||
2 | +#define __FREEGLUT_EXT_H__ | ||
3 | + | ||
4 | +/* | ||
5 | + * freeglut_ext.h | ||
6 | + * | ||
7 | + * The non-GLUT-compatible extensions to the freeglut library include file | ||
8 | + * | ||
9 | + * Copyright (c) 1999-2000 Pawel W. Olszta. All Rights Reserved. | ||
10 | + * Written by Pawel W. Olszta, <olszta@sourceforge.net> | ||
11 | + * Creation date: Thu Dec 2 1999 | ||
12 | + * | ||
13 | + * Permission is hereby granted, free of charge, to any person obtaining a | ||
14 | + * copy of this software and associated documentation files (the "Software"), | ||
15 | + * to deal in the Software without restriction, including without limitation | ||
16 | + * the rights to use, copy, modify, merge, publish, distribute, sublicense, | ||
17 | + * and/or sell copies of the Software, and to permit persons to whom the | ||
18 | + * Software is furnished to do so, subject to the following conditions: | ||
19 | + * | ||
20 | + * The above copyright notice and this permission notice shall be included | ||
21 | + * in all copies or substantial portions of the Software. | ||
22 | + * | ||
23 | + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS | ||
24 | + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||
25 | + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL | ||
26 | + * PAWEL W. OLSZTA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER | ||
27 | + * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN | ||
28 | + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | ||
29 | + */ | ||
30 | + | ||
31 | +#ifdef __cplusplus | ||
32 | + extern "C" { | ||
33 | +#endif | ||
34 | + | ||
35 | +/* | ||
36 | + * Additional GLUT Key definitions for the Special key function | ||
37 | + */ | ||
38 | +#define GLUT_KEY_NUM_LOCK 0x006D | ||
39 | +#define GLUT_KEY_BEGIN 0x006E | ||
40 | +#define GLUT_KEY_DELETE 0x006F | ||
41 | +#define GLUT_KEY_SHIFT_L 0x0070 | ||
42 | +#define GLUT_KEY_SHIFT_R 0x0071 | ||
43 | +#define GLUT_KEY_CTRL_L 0x0072 | ||
44 | +#define GLUT_KEY_CTRL_R 0x0073 | ||
45 | +#define GLUT_KEY_ALT_L 0x0074 | ||
46 | +#define GLUT_KEY_ALT_R 0x0075 | ||
47 | + | ||
48 | +/* | ||
49 | + * GLUT API Extension macro definitions -- behaviour when the user clicks on an "x" to close a window | ||
50 | + */ | ||
51 | +#define GLUT_ACTION_EXIT 0 | ||
52 | +#define GLUT_ACTION_GLUTMAINLOOP_RETURNS 1 | ||
53 | +#define GLUT_ACTION_CONTINUE_EXECUTION 2 | ||
54 | + | ||
55 | +/* | ||
56 | + * Create a new rendering context when the user opens a new window? | ||
57 | + */ | ||
58 | +#define GLUT_CREATE_NEW_CONTEXT 0 | ||
59 | +#define GLUT_USE_CURRENT_CONTEXT 1 | ||
60 | + | ||
61 | +/* | ||
62 | + * Direct/Indirect rendering context options (has meaning only in Unix/X11) | ||
63 | + */ | ||
64 | +#define GLUT_FORCE_INDIRECT_CONTEXT 0 | ||
65 | +#define GLUT_ALLOW_DIRECT_CONTEXT 1 | ||
66 | +#define GLUT_TRY_DIRECT_CONTEXT 2 | ||
67 | +#define GLUT_FORCE_DIRECT_CONTEXT 3 | ||
68 | + | ||
69 | +/* | ||
70 | + * GLUT API Extension macro definitions -- the glutGet parameters | ||
71 | + */ | ||
72 | +#define GLUT_INIT_STATE 0x007C | ||
73 | + | ||
74 | +#define GLUT_ACTION_ON_WINDOW_CLOSE 0x01F9 | ||
75 | + | ||
76 | +#define GLUT_WINDOW_BORDER_WIDTH 0x01FA | ||
77 | +#define GLUT_WINDOW_BORDER_HEIGHT 0x01FB | ||
78 | +#define GLUT_WINDOW_HEADER_HEIGHT 0x01FB /* Docs say it should always have been GLUT_WINDOW_BORDER_HEIGHT, keep this for backward compatibility */ | ||
79 | + | ||
80 | +#define GLUT_VERSION 0x01FC | ||
81 | + | ||
82 | +#define GLUT_RENDERING_CONTEXT 0x01FD | ||
83 | +#define GLUT_DIRECT_RENDERING 0x01FE | ||
84 | + | ||
85 | +#define GLUT_FULL_SCREEN 0x01FF | ||
86 | + | ||
87 | +#define GLUT_SKIP_STALE_MOTION_EVENTS 0x0204 | ||
88 | + | ||
89 | +/* | ||
90 | + * New tokens for glutInitDisplayMode. | ||
91 | + * Only one GLUT_AUXn bit may be used at a time. | ||
92 | + * Value 0x0400 is defined in OpenGLUT. | ||
93 | + */ | ||
94 | +#define GLUT_AUX 0x1000 | ||
95 | + | ||
96 | +#define GLUT_AUX1 0x1000 | ||
97 | +#define GLUT_AUX2 0x2000 | ||
98 | +#define GLUT_AUX3 0x4000 | ||
99 | +#define GLUT_AUX4 0x8000 | ||
100 | + | ||
101 | +/* | ||
102 | + * Context-related flags, see freeglut_state.c | ||
103 | + */ | ||
104 | +#define GLUT_INIT_MAJOR_VERSION 0x0200 | ||
105 | +#define GLUT_INIT_MINOR_VERSION 0x0201 | ||
106 | +#define GLUT_INIT_FLAGS 0x0202 | ||
107 | +#define GLUT_INIT_PROFILE 0x0203 | ||
108 | + | ||
109 | +/* | ||
110 | + * Flags for glutInitContextFlags, see freeglut_init.c | ||
111 | + */ | ||
112 | +#define GLUT_DEBUG 0x0001 | ||
113 | +#define GLUT_FORWARD_COMPATIBLE 0x0002 | ||
114 | + | ||
115 | + | ||
116 | +/* | ||
117 | + * Flags for glutInitContextProfile, see freeglut_init.c | ||
118 | + */ | ||
119 | +#define GLUT_CORE_PROFILE 0x0001 | ||
120 | +#define GLUT_COMPATIBILITY_PROFILE 0x0002 | ||
121 | + | ||
122 | +/* | ||
123 | + * Process loop function, see freeglut_main.c | ||
124 | + */ | ||
125 | +FGAPI void FGAPIENTRY glutMainLoopEvent( void ); | ||
126 | +FGAPI void FGAPIENTRY glutLeaveMainLoop( void ); | ||
127 | +FGAPI void FGAPIENTRY glutExit ( void ); | ||
128 | + | ||
129 | +/* | ||
130 | + * Window management functions, see freeglut_window.c | ||
131 | + */ | ||
132 | +FGAPI void FGAPIENTRY glutFullScreenToggle( void ); | ||
133 | +FGAPI void FGAPIENTRY glutLeaveFullScreen( void ); | ||
134 | + | ||
135 | +/* | ||
136 | + * Window-specific callback functions, see freeglut_callbacks.c | ||
137 | + */ | ||
138 | +FGAPI void FGAPIENTRY glutMouseWheelFunc( void (* callback)( int, int, int, int ) ); | ||
139 | +FGAPI void FGAPIENTRY glutCloseFunc( void (* callback)( void ) ); | ||
140 | +FGAPI void FGAPIENTRY glutWMCloseFunc( void (* callback)( void ) ); | ||
141 | +/* A. Donev: Also a destruction callback for menus */ | ||
142 | +FGAPI void FGAPIENTRY glutMenuDestroyFunc( void (* callback)( void ) ); | ||
143 | + | ||
144 | +/* | ||
145 | + * State setting and retrieval functions, see freeglut_state.c | ||
146 | + */ | ||
147 | +FGAPI void FGAPIENTRY glutSetOption ( GLenum option_flag, int value ); | ||
148 | +FGAPI int * FGAPIENTRY glutGetModeValues(GLenum mode, int * size); | ||
149 | +/* A.Donev: User-data manipulation */ | ||
150 | +FGAPI void* FGAPIENTRY glutGetWindowData( void ); | ||
151 | +FGAPI void FGAPIENTRY glutSetWindowData(void* data); | ||
152 | +FGAPI void* FGAPIENTRY glutGetMenuData( void ); | ||
153 | +FGAPI void FGAPIENTRY glutSetMenuData(void* data); | ||
154 | + | ||
155 | +/* | ||
156 | + * Font stuff, see freeglut_font.c | ||
157 | + */ | ||
158 | +FGAPI int FGAPIENTRY glutBitmapHeight( void* font ); | ||
159 | +FGAPI GLfloat FGAPIENTRY glutStrokeHeight( void* font ); | ||
160 | +FGAPI void FGAPIENTRY glutBitmapString( void* font, const unsigned char *string ); | ||
161 | +FGAPI void FGAPIENTRY glutStrokeString( void* font, const unsigned char *string ); | ||
162 | + | ||
163 | +/* | ||
164 | + * Geometry functions, see freeglut_geometry.c | ||
165 | + */ | ||
166 | +FGAPI void FGAPIENTRY glutWireRhombicDodecahedron( void ); | ||
167 | +FGAPI void FGAPIENTRY glutSolidRhombicDodecahedron( void ); | ||
168 | +FGAPI void FGAPIENTRY glutWireSierpinskiSponge ( int num_levels, GLdouble offset[3], GLdouble scale ); | ||
169 | +FGAPI void FGAPIENTRY glutSolidSierpinskiSponge ( int num_levels, GLdouble offset[3], GLdouble scale ); | ||
170 | +FGAPI void FGAPIENTRY glutWireCylinder( GLdouble radius, GLdouble height, GLint slices, GLint stacks); | ||
171 | +FGAPI void FGAPIENTRY glutSolidCylinder( GLdouble radius, GLdouble height, GLint slices, GLint stacks); | ||
172 | + | ||
173 | +/* | ||
174 | + * Extension functions, see freeglut_ext.c | ||
175 | + */ | ||
176 | +typedef void (*GLUTproc)(); | ||
177 | +FGAPI GLUTproc FGAPIENTRY glutGetProcAddress( const char *procName ); | ||
178 | + | ||
179 | +/* | ||
180 | + * Multi-touch/multi-pointer extensions | ||
181 | + */ | ||
182 | + | ||
183 | +#define GLUT_HAS_MULTI 1 | ||
184 | + | ||
185 | +FGAPI void FGAPIENTRY glutMultiEntryFunc( void (* callback)( int, int ) ); | ||
186 | +FGAPI void FGAPIENTRY glutMultiButtonFunc( void (* callback)( int, int, int, int, int ) ); | ||
187 | +FGAPI void FGAPIENTRY glutMultiMotionFunc( void (* callback)( int, int, int ) ); | ||
188 | +FGAPI void FGAPIENTRY glutMultiPassiveFunc( void (* callback)( int, int, int ) ); | ||
189 | + | ||
190 | +/* | ||
191 | + * Joystick functions, see freeglut_joystick.c | ||
192 | + */ | ||
193 | +/* USE OF THESE FUNCTIONS IS DEPRECATED !!!!! */ | ||
194 | +/* If you have a serious need for these functions in your application, please either | ||
195 | + * contact the "freeglut" developer community at freeglut-developer@lists.sourceforge.net, | ||
196 | + * switch to the OpenGLUT library, or else port your joystick functionality over to PLIB's | ||
197 | + * "js" library. | ||
198 | + */ | ||
199 | +int glutJoystickGetNumAxes( int ident ); | ||
200 | +int glutJoystickGetNumButtons( int ident ); | ||
201 | +int glutJoystickNotWorking( int ident ); | ||
202 | +float glutJoystickGetDeadBand( int ident, int axis ); | ||
203 | +void glutJoystickSetDeadBand( int ident, int axis, float db ); | ||
204 | +float glutJoystickGetSaturation( int ident, int axis ); | ||
205 | +void glutJoystickSetSaturation( int ident, int axis, float st ); | ||
206 | +void glutJoystickSetMinRange( int ident, float *axes ); | ||
207 | +void glutJoystickSetMaxRange( int ident, float *axes ); | ||
208 | +void glutJoystickSetCenter( int ident, float *axes ); | ||
209 | +void glutJoystickGetMinRange( int ident, float *axes ); | ||
210 | +void glutJoystickGetMaxRange( int ident, float *axes ); | ||
211 | +void glutJoystickGetCenter( int ident, float *axes ); | ||
212 | + | ||
213 | +/* | ||
214 | + * Initialization functions, see freeglut_init.c | ||
215 | + */ | ||
216 | +FGAPI void FGAPIENTRY glutInitContextVersion( int majorVersion, int minorVersion ); | ||
217 | +FGAPI void FGAPIENTRY glutInitContextFlags( int flags ); | ||
218 | +FGAPI void FGAPIENTRY glutInitContextProfile( int profile ); | ||
219 | + | ||
220 | +/* to get the typedef for va_list */ | ||
221 | +#include <stdarg.h> | ||
222 | + | ||
223 | +FGAPI void FGAPIENTRY glutInitErrorFunc( void (* vError)( const char *fmt, va_list ap ) ); | ||
224 | +FGAPI void FGAPIENTRY glutInitWarningFunc( void (* vWarning)( const char *fmt, va_list ap ) ); | ||
225 | + | ||
226 | +/* | ||
227 | + * GLUT API macro definitions -- the display mode definitions | ||
228 | + */ | ||
229 | +#define GLUT_CAPTIONLESS 0x0400 | ||
230 | +#define GLUT_BORDERLESS 0x0800 | ||
231 | +#define GLUT_SRGB 0x1000 | ||
232 | + | ||
233 | +#ifdef __cplusplus | ||
234 | + } | ||
235 | +#endif | ||
236 | + | ||
237 | +/*** END OF FILE ***/ | ||
238 | + | ||
239 | +#endif /* __FREEGLUT_EXT_H__ */ |
lib/freeglut/include/GL/freeglut_std.h
0 → 100644
This diff is collapsed. Click to expand it.
lib/freeglut/include/GL/glut.h
0 → 100644
1 | +#ifndef __GLUT_H__ | ||
2 | +#define __GLUT_H__ | ||
3 | + | ||
4 | +/* | ||
5 | + * glut.h | ||
6 | + * | ||
7 | + * The freeglut library include file | ||
8 | + * | ||
9 | + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS | ||
10 | + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||
11 | + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL | ||
12 | + * PAWEL W. OLSZTA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER | ||
13 | + * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN | ||
14 | + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | ||
15 | + */ | ||
16 | + | ||
17 | +#include "freeglut_std.h" | ||
18 | + | ||
19 | +/*** END OF FILE ***/ | ||
20 | + | ||
21 | +#endif /* __GLUT_H__ */ |
lib/freeglut/lib/freeglut.lib
0 → 100644
No preview for this file type
lib/freeglut/lib/x64/freeglut.lib
0 → 100644
No preview for this file type
mymodel.obj
0 → 100644
This diff could not be displayed because it is too large.
result.png
0 → 100644
289 KB
sol.cpp
0 → 100644
This diff is collapsed. Click to expand it.
-
Please register or login to post a comment