PeriDyno
1.0.0
Loading...
Searching...
No Matches
D:
Peridyno
peridyno
src
Rendering
GUI
ImWidgets
imGuIZMO.quat
vgConfig.h
Go to the documentation of this file.
1
//------------------------------------------------------------------------------
2
// Copyright (c) 2018-2020 Michele Morrone
3
// All rights reserved.
4
//
5
// https://michelemorrone.eu - https://BrutPitt.com
6
//
7
// twitter: https://twitter.com/BrutPitt - github: https://github.com/BrutPitt
8
//
9
// mailto:brutpitt@gmail.com - mailto:me@michelemorrone.eu
10
//
11
// This software is distributed under the terms of the BSD 2-Clause license
12
//------------------------------------------------------------------------------
13
#pragma once
14
16
// v g M a t h C O N F I G start
17
18
//------------------------------------------------------------------------------
19
// EXPERIMENTAL ==> NOT FULL TESTED (YET)
20
//
21
// uncomment to use DOUBLE precision
22
// It automatically enable also VGM_USES_TEMPLATE (read below)
23
// Default ==> SINGLE precision: float
24
//------------------------------------------------------------------------------
25
//#define VGM_USES_DOUBLE_PRECISION
26
27
//------------------------------------------------------------------------------
28
// uncomment to use TEMPLATE internal vgMath classes/types
29
//
30
// This is if you need to extend the use of different math types in your code
31
// or for your purposes, there are predefined alias:
32
// float ==> vec2 / vec3 / vec4 / quat / mat3|mat3x3 / mat4|mat4x4
33
// and more TEMPLATE (only!) alias:
34
// double ==> dvec2 / dvec3 / dvec4 / dquat / dmat3|dmat3x3 / dmat4|dmat4x4
35
// int ==> ivec2 / ivec3 / ivec4
36
// uint ==> uvec2 / uvec3 / uvec4
37
// If you select TEMPLATE classes the widget too will use internally them
38
// with single precision (float)
39
//
40
// Default ==> NO template
41
//------------------------------------------------------------------------------
42
//#define VGM_USES_TEMPLATE
43
44
//------------------------------------------------------------------------------
45
// uncomment to use "glm" (0.9.9 or higher) library instead of vgMath
46
// Need to have "glm" installed and in your INCLUDE research compiler path
47
//
48
// vgMath is a subset of "glm" and is compatible with glm types and calls
49
// change only namespace from "vgm" to "glm". It's automatically set by
50
// including vGizmo.h or vgMath.h or imGuIZMOquat.h
51
//
52
// note: affects only virtualGizmo3D / imGuIZMO.quat on which library to use
53
// internally: vgMath | glm
54
//
55
// Default ==> use vgMath
56
// If you enable GLM use, automatically is enabled also VGM_USES_TEMPLATE
57
// if you can, I recommend to use GLM
58
//------------------------------------------------------------------------------
59
//#define VGIZMO_USES_GLM
60
61
//------------------------------------------------------------------------------
62
// uncomment to use LeftHanded
63
//
64
// This is used only in: lookAt / perspective / ortho / frustrum - functions
65
// DX is LeftHanded, OpenGL is RightHanded
66
//
67
// Default ==> RightHanded
68
//------------------------------------------------------------------------------
69
//#define VGM_USES_LEFT_HAND_AXES
70
71
//------------------------------------------------------------------------------
72
// uncomment to avoid vgMath.h add folow line code:
73
// using namespace vgm | glm; // if (!VGIZMO_USES_GLM | VGIZMO_USES_GLM)
74
//
75
// Automatically "using namespace" is added to the end vgMath.h:
76
// it help to maintain compatibilty between vgMath & glm declaration types,
77
// but can go in confict with other pre-exist data types in your project
78
//
79
// note: this is only if you use vgMath.h in your project, for your data types:
80
// it have no effect for vGizmo | imGuIZMO internal use
81
//
82
// Default ==> vgMath.h add: using namespace vgm | glm;
83
//------------------------------------------------------------------------------
84
//#define VGM_DISABLE_AUTO_NAMESPACE
85
86
//------------------------------------------------------------------------------
87
// uncomment to use HLSL name types (in addition!)
88
//
89
// It add also the HLSL notation in addition to existing one:
90
// alias types:
91
// float ==> float2 / float3 / float4 / quat / float3x3 / float4x4
92
// and more TEMPLATE (only!) alias:
93
// double ==> double2 / double3 / double4 / dquat / double3x3 / double4x4
94
// int ==> int2 / int3 / int4
95
// uint ==> uint2 / uint3 / uint4
96
//
97
// Default ==> NO HLSL alia types defined
98
//------------------------------------------------------------------------------
99
//#define VGM_USES_HLSL_TYPES
100
101
//------------------------------------------------------------------------------
102
// imGuiZmo.quat - v3.0 and later - (used only inside it)
103
//
104
// Used to remove Pan & Dolly feature to imGuIZMO.quat widget and to use
105
// only rotation feature (like v2.2 and above)
106
//
107
// Pan/Dolly use virtualGizmo3DClass just a little bit complex of
108
// virtualGizmoClass that uses only "quat" rotations
109
// uncomment for very low resources ==> Pan & Dolly will be disabled
110
//
111
// Default ==> Pan & Dolly enabled
112
//------------------------------------------------------------------------------
113
//#define IMGUIZMO_USE_ONLY_ROT
114
115
//------------------------------------------------------------------------------
116
// imGuiZmo.quat - v3.0 and later - (used only inside it)
117
//
118
// used to specify where ImGui include files should be searched
119
// #define IMGUIZMO_IMGUI_FOLDER
120
// is equivalent to use:
121
// #include <imgui.h>
122
// #include <imgui_internal.h>
123
// #define IMGUIZMO_IMGUI_FOLDER myLibs/ImGui/
124
// (final slash is REQUIRED) is equivalent to use:
125
// #include <myLib/ImGui/imgui.h>
126
// #include <myLib/ImGui/imgui_internal.h>
127
// Default: IMGUIZMO_IMGUI_FOLDER commented/undefined
128
// is equivalent to use:
129
// #include <imgui/imgui.h>
130
// #include <imgui/imgui_internal.h>
131
//
132
// N.B. Final slash to end of path is REQUIRED!
133
//------------------------------------------------------------------------------
134
// #define IMGUIZMO_IMGUI_FOLDER ImGui/
135
136
// v g M a t h C O N F I G end
Generated by
1.13.2