From e391f6d9e79144a1698e98b45cea74a4fbc8019b Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Sun, 13 Jun 2021 18:32:27 +0300 Subject: [PATCH 01/55] lsl: move lslVariantm, lslMath and r3dMath to new MathLib --- src/CMakeLists.txt | 1 + src/LexStd/CMakeLists.txt | 2 -- src/LexStd/header/lslCommon.h | 2 -- src/LexStd/header/lslUtility.h | 4 ++-- src/MapEditor/CMakeLists.txt | 4 +++- src/MapEditor/stdafx.h | 1 + src/MathLib/CMakeLists.txt | 24 +++++++++++++++++++ src/MathLib/header/MathCommon.h | 3 +++ .../header/d3d/d3dx9math.h | 0 .../header/d3d/d3dx9math.inl | 0 src/{LexStd => MathLib}/header/lslMath.h | 2 +- src/{LexStd => MathLib}/header/lslMath.inl | 0 src/{LexStd => MathLib}/header/lslVariant.h | 6 ++--- src/{LexStd => MathLib}/header/r3dMath.h | 0 src/MathLib/header/stdafx.h | 3 +++ src/{LexStd => MathLib}/source/lslMath.cpp | 0 src/{LexStd => MathLib}/source/lslVariant.cpp | 6 ++--- src/{LexStd => MathLib}/source/r3dMath.cpp | 0 src/MathLib/source/stdafx.cpp | 2 ++ src/NetLib/CMakeLists.txt | 1 + src/NetLib/header/stdafx.h | 2 +- src/NetLib/include/net/NetCommon.h | 1 + src/RRR3d/CMakeLists.txt | 2 ++ src/RRR3d/stdafx.h | 1 + src/Rock3dEngine/CMakeLists.txt | 1 + src/Rock3dEngine/header/graph/Shader.h | 3 ++- src/Rock3dEngine/header/stdafx.h | 4 ++-- src/Rock3dEngine/source/graph/Engine.cpp | 10 -------- src/Rock3dGame/CMakeLists.txt | 2 ++ src/Rock3dGame/header/stdafx.h | 1 + 30 files changed, 60 insertions(+), 28 deletions(-) create mode 100644 src/MathLib/CMakeLists.txt create mode 100644 src/MathLib/header/MathCommon.h rename src/{LexStd => MathLib}/header/d3d/d3dx9math.h (100%) rename src/{LexStd => MathLib}/header/d3d/d3dx9math.inl (100%) rename src/{LexStd => MathLib}/header/lslMath.h (99%) rename src/{LexStd => MathLib}/header/lslMath.inl (100%) rename src/{LexStd => MathLib}/header/lslVariant.h (99%) rename src/{LexStd => MathLib}/header/r3dMath.h (100%) create mode 100644 src/MathLib/header/stdafx.h rename src/{LexStd => MathLib}/source/lslMath.cpp (100%) rename src/{LexStd => MathLib}/source/lslVariant.cpp (93%) rename src/{LexStd => MathLib}/source/r3dMath.cpp (100%) create mode 100644 src/MathLib/source/stdafx.cpp diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index e9238403..0c233ebf 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -9,6 +9,7 @@ if (MSVC) endif() add_subdirectory(LexStd) +add_subdirectory(MathLib) add_subdirectory(NetLib) add_subdirectory(Rock3dEngine) add_subdirectory(Rock3dGame) diff --git a/src/LexStd/CMakeLists.txt b/src/LexStd/CMakeLists.txt index a0a70928..14241670 100644 --- a/src/LexStd/CMakeLists.txt +++ b/src/LexStd/CMakeLists.txt @@ -4,7 +4,6 @@ add_definitions(-DNOMINMAX) # Use std::max()/std::min() list(APPEND PROJECT_DIRS "header" - "header/d3d" "source" ) add_dir("${PROJECT_DIRS}" "${PROJECT_NAME}") @@ -18,7 +17,6 @@ add_library(${PROJECT_NAME} STATIC target_include_directories(${PROJECT_NAME} PRIVATE header ${CMAKE_SOURCE_DIR}/extern/tinyxml/include - ${CMAKE_SOURCE_DIR}/extern/directx/include ) target_link_libraries(${PROJECT_NAME}) diff --git a/src/LexStd/header/lslCommon.h b/src/LexStd/header/lslCommon.h index 19d12f74..af0d50b8 100644 --- a/src/LexStd/header/lslCommon.h +++ b/src/LexStd/header/lslCommon.h @@ -15,7 +15,6 @@ #include #include -#include "d3d\d3dx9math.h" #ifdef DEBUG_MEMORY #define new new( _NORMAL_BLOCK, __FILE__, __LINE__) @@ -25,7 +24,6 @@ #include #include #include -#include #include #include #include diff --git a/src/LexStd/header/lslUtility.h b/src/LexStd/header/lslUtility.h index 10d1bdfa..c2cdddb0 100644 --- a/src/LexStd/header/lslUtility.h +++ b/src/LexStd/header/lslUtility.h @@ -4,9 +4,9 @@ #include "lslCommon.h" #include "lslObject.h" #include "lslException.h" -#include "lslMath.h" -#include "lslVariant.h" #include "lslContainer.h" +#include "lslContainer.h" +#include namespace lsl { diff --git a/src/MapEditor/CMakeLists.txt b/src/MapEditor/CMakeLists.txt index 292e696f..1c5dbfb5 100644 --- a/src/MapEditor/CMakeLists.txt +++ b/src/MapEditor/CMakeLists.txt @@ -18,13 +18,15 @@ add_executable(${PROJECT_NAME} WIN32 ) target_include_directories(${PROJECT_NAME} PRIVATE - ${CMAKE_SOURCE_DIR}/src/LexStd/header + ${CMAKE_SOURCE_DIR}/src/LexStd/header + ${CMAKE_SOURCE_DIR}/src/MathLib/header ${CMAKE_SOURCE_DIR}/src/Rock3dGame/include ${CMAKE_SOURCE_DIR}/extern/directx/include ) target_link_libraries(${PROJECT_NAME} PRIVATE LexStd + MathLib Rock3dGame ${CMAKE_SOURCE_DIR}/extern/directx/lib/d3dx9.lib ) diff --git a/src/MapEditor/stdafx.h b/src/MapEditor/stdafx.h index 068f1290..f374c3aa 100644 --- a/src/MapEditor/stdafx.h +++ b/src/MapEditor/stdafx.h @@ -46,6 +46,7 @@ #pragma push_macro("malloc") #pragma push_macro("free") +#include "MathCommon.h" #include "Rock3dGame.h" #pragma pop_macro("new") diff --git a/src/MathLib/CMakeLists.txt b/src/MathLib/CMakeLists.txt new file mode 100644 index 00000000..a9f2d1e2 --- /dev/null +++ b/src/MathLib/CMakeLists.txt @@ -0,0 +1,24 @@ +project(MathLib) + +add_definitions(-DNOMINMAX) # Use std::max()/std::min() + +list(APPEND PROJECT_DIRS + "header" + "header/d3d" + "source" + ) +add_dir("${PROJECT_DIRS}" "${PROJECT_NAME}") + +add_library(${PROJECT_NAME} STATIC + ${${PROJECT_NAME}_SOURCE} + ${${PROJECT_NAME}_INLINE} + ${${PROJECT_NAME}_HEADER} +) + +target_include_directories(${PROJECT_NAME} PRIVATE + header + ${CMAKE_SOURCE_DIR}/src/LexStd/header + ${CMAKE_SOURCE_DIR}/extern/directx/include +) + +target_link_libraries(${PROJECT_NAME}) diff --git a/src/MathLib/header/MathCommon.h b/src/MathLib/header/MathCommon.h new file mode 100644 index 00000000..60568bb9 --- /dev/null +++ b/src/MathLib/header/MathCommon.h @@ -0,0 +1,3 @@ +#pragma once + +#include "d3d\d3dx9math.h" diff --git a/src/LexStd/header/d3d/d3dx9math.h b/src/MathLib/header/d3d/d3dx9math.h similarity index 100% rename from src/LexStd/header/d3d/d3dx9math.h rename to src/MathLib/header/d3d/d3dx9math.h diff --git a/src/LexStd/header/d3d/d3dx9math.inl b/src/MathLib/header/d3d/d3dx9math.inl similarity index 100% rename from src/LexStd/header/d3d/d3dx9math.inl rename to src/MathLib/header/d3d/d3dx9math.inl diff --git a/src/LexStd/header/lslMath.h b/src/MathLib/header/lslMath.h similarity index 99% rename from src/LexStd/header/lslMath.h rename to src/MathLib/header/lslMath.h index a4c442d3..3e6df483 100644 --- a/src/LexStd/header/lslMath.h +++ b/src/MathLib/header/lslMath.h @@ -1,8 +1,8 @@ #ifndef LSL_MATH #define LSL_MATH +#include "MathCommon.h" #include "lslCommon.h" - #include "lslException.h" //namespace r3d diff --git a/src/LexStd/header/lslMath.inl b/src/MathLib/header/lslMath.inl similarity index 100% rename from src/LexStd/header/lslMath.inl rename to src/MathLib/header/lslMath.inl diff --git a/src/LexStd/header/lslVariant.h b/src/MathLib/header/lslVariant.h similarity index 99% rename from src/LexStd/header/lslVariant.h rename to src/MathLib/header/lslVariant.h index c29bf2df..d18ca246 100644 --- a/src/LexStd/header/lslVariant.h +++ b/src/MathLib/header/lslVariant.h @@ -4,8 +4,8 @@ #include "lslCommon.h" #include "lslMath.h" -namespace lsl -{ +//namespace lsl +//{ class Variant { @@ -665,6 +665,6 @@ inline bool VariantVec::operator!=(const VariantVec& value) const return _MyBase::operator!=(value); } -} +//} #endif \ No newline at end of file diff --git a/src/LexStd/header/r3dMath.h b/src/MathLib/header/r3dMath.h similarity index 100% rename from src/LexStd/header/r3dMath.h rename to src/MathLib/header/r3dMath.h diff --git a/src/MathLib/header/stdafx.h b/src/MathLib/header/stdafx.h new file mode 100644 index 00000000..23495e0e --- /dev/null +++ b/src/MathLib/header/stdafx.h @@ -0,0 +1,3 @@ +#pragma once + +#include "MathCommon.h" diff --git a/src/LexStd/source/lslMath.cpp b/src/MathLib/source/lslMath.cpp similarity index 100% rename from src/LexStd/source/lslMath.cpp rename to src/MathLib/source/lslMath.cpp diff --git a/src/LexStd/source/lslVariant.cpp b/src/MathLib/source/lslVariant.cpp similarity index 93% rename from src/LexStd/source/lslVariant.cpp rename to src/MathLib/source/lslVariant.cpp index d059a872..39b55cc0 100644 --- a/src/LexStd/source/lslVariant.cpp +++ b/src/MathLib/source/lslVariant.cpp @@ -2,11 +2,11 @@ #include "lslVariant.h" -namespace lsl -{ +//namespace lsl +//{ const unsigned Variant::cTypeSize[cTypeEnd] = {1, sizeof(int), sizeof(unsigned), sizeof(float), sizeof(double), sizeof(bool), sizeof(char)}; const unsigned VariantVec::cMyTypeSize[cMyTypeEnd] = {sizeof(D3DXVECTOR2), sizeof(D3DXVECTOR3), sizeof(D3DXVECTOR4), sizeof(D3DXMATRIX)}; -} \ No newline at end of file +//} \ No newline at end of file diff --git a/src/LexStd/source/r3dMath.cpp b/src/MathLib/source/r3dMath.cpp similarity index 100% rename from src/LexStd/source/r3dMath.cpp rename to src/MathLib/source/r3dMath.cpp diff --git a/src/MathLib/source/stdafx.cpp b/src/MathLib/source/stdafx.cpp new file mode 100644 index 00000000..46cd1889 --- /dev/null +++ b/src/MathLib/source/stdafx.cpp @@ -0,0 +1,2 @@ + +#include "stdafx.h" diff --git a/src/NetLib/CMakeLists.txt b/src/NetLib/CMakeLists.txt index a62e5f49..95978a67 100644 --- a/src/NetLib/CMakeLists.txt +++ b/src/NetLib/CMakeLists.txt @@ -21,6 +21,7 @@ target_include_directories(${PROJECT_NAME} PRIVATE header include ${CMAKE_SOURCE_DIR}/src/LexStd/header + ${CMAKE_SOURCE_DIR}/src/MathLib/header ${CMAKE_SOURCE_DIR}/extern/boost/include ${CMAKE_SOURCE_DIR}/extern/directx/include ) diff --git a/src/NetLib/header/stdafx.h b/src/NetLib/header/stdafx.h index a40dd0e3..452da068 100644 --- a/src/NetLib/header/stdafx.h +++ b/src/NetLib/header/stdafx.h @@ -7,7 +7,7 @@ #include #include -#include "net\NetLib.h" +#include "net/NetLib.h" namespace net { diff --git a/src/NetLib/include/net/NetCommon.h b/src/NetLib/include/net/NetCommon.h index b9c5f243..9974b149 100644 --- a/src/NetLib/include/net/NetCommon.h +++ b/src/NetLib/include/net/NetCommon.h @@ -3,6 +3,7 @@ #include #include +#include "MathCommon.h" #include "lslCommon.h" #include "lslUtility.h" #include "lslException.h" diff --git a/src/RRR3d/CMakeLists.txt b/src/RRR3d/CMakeLists.txt index 1ff4523d..e5d47493 100644 --- a/src/RRR3d/CMakeLists.txt +++ b/src/RRR3d/CMakeLists.txt @@ -12,12 +12,14 @@ add_executable(${PROJECT_NAME} WIN32 ${SRC_FILES}) target_include_directories(${PROJECT_NAME} PRIVATE ${CMAKE_SOURCE_DIR}/src/LexStd/header + ${CMAKE_SOURCE_DIR}/src/MathLib/header ${CMAKE_SOURCE_DIR}/src/Rock3dGame/include ${CMAKE_SOURCE_DIR}/extern/directx/include ) target_link_libraries(${PROJECT_NAME} PRIVATE LexStd + MathLib Rock3dGame ${CMAKE_SOURCE_DIR}/extern/directx/lib/d3dx9.lib ) diff --git a/src/RRR3d/stdafx.h b/src/RRR3d/stdafx.h index c17cdb27..2b74c8a8 100644 --- a/src/RRR3d/stdafx.h +++ b/src/RRR3d/stdafx.h @@ -11,6 +11,7 @@ #define _WIN32_WINNT 0x0600 // Change this to the appropriate value to target other versions of Windows. #endif +#include "MathCommon.h" #include "lslCommon.h" #include diff --git a/src/Rock3dEngine/CMakeLists.txt b/src/Rock3dEngine/CMakeLists.txt index 961eeae7..ff991e47 100644 --- a/src/Rock3dEngine/CMakeLists.txt +++ b/src/Rock3dEngine/CMakeLists.txt @@ -32,6 +32,7 @@ add_library(${PROJECT_NAME} STATIC target_include_directories(${PROJECT_NAME} PRIVATE header ${CMAKE_SOURCE_DIR}/src/LexStd/header + ${CMAKE_SOURCE_DIR}/src/MathLib/header ${CMAKE_SOURCE_DIR}/extern/physx/include/Cooking ${CMAKE_SOURCE_DIR}/extern/physx/include/Foundation ${CMAKE_SOURCE_DIR}/extern/physx/include/Physics diff --git a/src/Rock3dEngine/header/graph/Shader.h b/src/Rock3dEngine/header/graph/Shader.h index 2c9bf531..08454f16 100644 --- a/src/Rock3dEngine/header/graph/Shader.h +++ b/src/Rock3dEngine/header/graph/Shader.h @@ -2,6 +2,7 @@ #define R3D_GRAPH_SHADER #include "Engine.h" +#include "lslVariant.h" namespace r3d { @@ -24,7 +25,7 @@ class Shader: public VideoResource, public BaseShader D3DXInclude(Shader* owner); }; public: - typedef lsl::VariantVec Value; + typedef VariantVec Value; typedef std::map Values; typedef std::map Textures; diff --git a/src/Rock3dEngine/header/stdafx.h b/src/Rock3dEngine/header/stdafx.h index 7275e669..fdecec55 100644 --- a/src/Rock3dEngine/header/stdafx.h +++ b/src/Rock3dEngine/header/stdafx.h @@ -1,10 +1,10 @@ #pragma once +#include "MathCommon.h" #include "lslCommon.h" #include #include "lslObject.h" -#include "r3dMath.h" #include "lslUtility.h" -#include "lslException.h" \ No newline at end of file +#include "lslException.h" diff --git a/src/Rock3dEngine/source/graph/Engine.cpp b/src/Rock3dEngine/source/graph/Engine.cpp index 505743f4..b7b7a272 100644 --- a/src/Rock3dEngine/source/graph/Engine.cpp +++ b/src/Rock3dEngine/source/graph/Engine.cpp @@ -373,16 +373,6 @@ bool Engine::BeginScene() return true; } -void precision_sleep(double timeout) -{ - double startTime = lsl::GetTimeDbl(); - while (lsl::GetTimeDbl() - startTime < timeout) - { - //for (int i = 0; i < 500; ++i) - // YieldProcessor(); - } -} - bool Engine::EndScene() { LSL_ASSERT(_beginScene); diff --git a/src/Rock3dGame/CMakeLists.txt b/src/Rock3dGame/CMakeLists.txt index e9e33a8d..04e120db 100644 --- a/src/Rock3dGame/CMakeLists.txt +++ b/src/Rock3dGame/CMakeLists.txt @@ -30,6 +30,7 @@ target_include_directories(${PROJECT_NAME} PRIVATE header include ${CMAKE_SOURCE_DIR}/src/LexStd/header + ${CMAKE_SOURCE_DIR}/src/MathLib/header ${CMAKE_SOURCE_DIR}/src/NetLib/include ${CMAKE_SOURCE_DIR}/src/Rock3dEngine/header ${CMAKE_SOURCE_DIR}/extern/ogg/include @@ -43,6 +44,7 @@ target_include_directories(${PROJECT_NAME} PRIVATE target_link_libraries(${PROJECT_NAME} PRIVATE LexStd + MathLib NetLib Rock3dEngine libogg_static.lib diff --git a/src/Rock3dGame/header/stdafx.h b/src/Rock3dGame/header/stdafx.h index 15489c1b..e78def41 100644 --- a/src/Rock3dGame/header/stdafx.h +++ b/src/Rock3dGame/header/stdafx.h @@ -1,5 +1,6 @@ #pragma once +#include "MathCommon.h" #include "lslCommon.h" #include From ec50208d6ed1d8435eb97e98086b8d8bf23bc7c5 Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Mon, 14 Jun 2021 12:39:10 +0300 Subject: [PATCH 02/55] add clang-format --- .clang-format | 143 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 143 insertions(+) create mode 100644 .clang-format diff --git a/.clang-format b/.clang-format new file mode 100644 index 00000000..f45344a1 --- /dev/null +++ b/.clang-format @@ -0,0 +1,143 @@ +BasedOnStyle: Microsoft + +# To apply code style please run: +# find ./src -iname *.h -o -iname *.cpp | xargs clang-format -i + +# To dump Microsoft style options run: +# clang-format -style=microsoft -dump-config > .clang-format +# --- +# Language: Cpp +# AccessModifierOffset: -2 +# AlignAfterOpenBracket: Align +# AlignConsecutiveMacros: false +# AlignConsecutiveAssignments: false +# AlignConsecutiveDeclarations: false +# AlignEscapedNewlines: Right +# AlignOperands: true +# AlignTrailingComments: true +# AllowAllArgumentsOnNextLine: true +# AllowAllConstructorInitializersOnNextLine: true +# AllowAllParametersOfDeclarationOnNextLine: true +# AllowShortBlocksOnASingleLine: Never +# AllowShortCaseLabelsOnASingleLine: false +# AllowShortFunctionsOnASingleLine: None +# AllowShortLambdasOnASingleLine: All +# AllowShortIfStatementsOnASingleLine: Never +# AllowShortLoopsOnASingleLine: false +# AlwaysBreakAfterDefinitionReturnType: None +# AlwaysBreakAfterReturnType: None +# AlwaysBreakBeforeMultilineStrings: false +# AlwaysBreakTemplateDeclarations: MultiLine +# BinPackArguments: true +# BinPackParameters: true +# BraceWrapping: + # AfterCaseLabel: false + # AfterClass: true + # AfterControlStatement: true + # AfterEnum: true + # AfterFunction: true + # AfterNamespace: true + # AfterObjCDeclaration: true + # AfterStruct: true + # AfterUnion: false + # AfterExternBlock: true + # BeforeCatch: true + # BeforeElse: true + # IndentBraces: false + # SplitEmptyFunction: true + # SplitEmptyRecord: true + # SplitEmptyNamespace: true +# BreakBeforeBinaryOperators: None +# BreakBeforeBraces: Custom +# BreakBeforeInheritanceComma: false +# BreakInheritanceList: BeforeColon +# BreakBeforeTernaryOperators: true +# BreakConstructorInitializersBeforeComma: false +# BreakConstructorInitializers: BeforeColon +# BreakAfterJavaFieldAnnotations: false +# BreakStringLiterals: true +# ColumnLimit: 120 +# CommentPragmas: '^ IWYU pragma:' +# CompactNamespaces: false +# ConstructorInitializerAllOnOneLineOrOnePerLine: false +# ConstructorInitializerIndentWidth: 4 +# ContinuationIndentWidth: 4 +# Cpp11BracedListStyle: true +# DeriveLineEnding: true +# DerivePointerAlignment: false +# DisableFormat: false +# ExperimentalAutoDetectBinPacking: false +# FixNamespaceComments: true +# ForEachMacros: + # - foreach + # - Q_FOREACH + # - BOOST_FOREACH +# IncludeBlocks: Preserve +# IncludeCategories: + # - Regex: '^"(llvm|llvm-c|clang|clang-c)/' + # Priority: 2 + # SortPriority: 0 + # - Regex: '^(<|"(gtest|gmock|isl|json)/)' + # Priority: 3 + # SortPriority: 0 + # - Regex: '.*' + # Priority: 1 + # SortPriority: 0 +# IncludeIsMainRegex: '(Test)?$' +# IncludeIsMainSourceRegex: '' +# IndentCaseLabels: false +# IndentGotoLabels: true +# IndentPPDirectives: None +# IndentWidth: 4 +# IndentWrappedFunctionNames: false +# JavaScriptQuotes: Leave +# JavaScriptWrapImports: true +# KeepEmptyLinesAtTheStartOfBlocks: true +# MacroBlockBegin: '' +# MacroBlockEnd: '' +# MaxEmptyLinesToKeep: 1 +# NamespaceIndentation: None +# ObjCBinPackProtocolList: Auto +# ObjCBlockIndentWidth: 2 +# ObjCSpaceAfterProperty: false +# ObjCSpaceBeforeProtocolList: true +# PenaltyBreakAssignment: 2 +# PenaltyBreakBeforeFirstCallParameter: 19 +# PenaltyBreakComment: 300 +# PenaltyBreakFirstLessLess: 120 +# PenaltyBreakString: 1000 +# PenaltyBreakTemplateDeclaration: 10 +# PenaltyExcessCharacter: 1000000 +# PenaltyReturnTypeOnItsOwnLine: 1000 +# PointerAlignment: Right +# ReflowComments: true +# SortIncludes: true +# SortUsingDeclarations: true +# SpaceAfterCStyleCast: false +# SpaceAfterLogicalNot: false +# SpaceAfterTemplateKeyword: true +# SpaceBeforeAssignmentOperators: true +# SpaceBeforeCpp11BracedList: false +# SpaceBeforeCtorInitializerColon: true +# SpaceBeforeInheritanceColon: true +# SpaceBeforeParens: ControlStatements +# SpaceBeforeRangeBasedForLoopColon: true +# SpaceInEmptyBlock: false +# SpaceInEmptyParentheses: false +# SpacesBeforeTrailingComments: 1 +# SpacesInAngles: false +# SpacesInConditionalStatement: false +# SpacesInContainerLiterals: true +# SpacesInCStyleCastParentheses: false +# SpacesInParentheses: false +# SpacesInSquareBrackets: false +# SpaceBeforeSquareBrackets: false +# Standard: Latest +# StatementMacros: + # - Q_UNUSED + # - QT_REQUIRE_VERSION +# TabWidth: 4 +# UseCRLF: false +# UseTab: Never +# ... + From f0d7814808d3ea6cb3bc2d7a149fc3db3b1d6568 Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Fri, 21 Oct 2022 16:13:14 +0300 Subject: [PATCH 03/55] cmake: fill 3 vars CMAKE_RUNTIME_OUTPUT_DIRECTORY* --- CMakeLists.txt | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/CMakeLists.txt b/CMakeLists.txt index 7c3183a7..a4fa3bb8 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -6,4 +6,9 @@ project(rrr3d VERSION ${RRR3D_VERSION} LANGUAGES CXX) include(${PROJECT_SOURCE_DIR}/cmake/utils.cmake) +### Set up output paths +set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}) +set(CMAKE_RUNTIME_OUTPUT_DIRECTORY_RELEASE ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/Release) +set(CMAKE_RUNTIME_OUTPUT_DIRECTORY_DEBUG ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/Debug) + add_subdirectory(src) From f50332422a761823546b65eb02fe5079ee2e8278 Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Fri, 3 Jun 2022 08:24:59 +0300 Subject: [PATCH 04/55] Add dxvk as ExternalProject. Replace d3d/d3dx9math.h with d3dx9math.cpp --- CMakeLists.txt | 33 +- src/CMakeLists.txt | 3 + src/MathLib/header/MathCommon.h | 2 +- src/MathLib/header/d3d/d3dx9math.h | 1801 --------------------- src/MathLib/header/d3d/d3dx9math.inl | 2251 -------------------------- src/Platform/CMakeLists.txt | 6 + src/Platform/d3dx9math.cpp | 217 +++ src/Platform/d3dx9math.h | 30 + src/RRR3d/CMakeLists.txt | 1 - 9 files changed, 289 insertions(+), 4055 deletions(-) delete mode 100644 src/MathLib/header/d3d/d3dx9math.h delete mode 100644 src/MathLib/header/d3d/d3dx9math.inl create mode 100644 src/Platform/CMakeLists.txt create mode 100644 src/Platform/d3dx9math.cpp create mode 100644 src/Platform/d3dx9math.h diff --git a/CMakeLists.txt b/CMakeLists.txt index a4fa3bb8..e78d2f21 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.12 FATAL_ERROR) +cmake_minimum_required(VERSION 3.16.0 FATAL_ERROR) cmake_policy(VERSION 3.12) set(RRR3D_VERSION "1.3.1") @@ -11,4 +11,35 @@ set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}) set(CMAKE_RUNTIME_OUTPUT_DIRECTORY_RELEASE ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/Release) set(CMAKE_RUNTIME_OUTPUT_DIRECTORY_DEBUG ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/Debug) +if (MSVC) + # DirectX SDK libs + include_directories("${CMAKE_SOURCE_DIR}/extern/directx/include") +else() + # Non Windows target specifics + + include(ExternalProject) + + # DXVK-native wrapper lib retrieval and building + ExternalProject_Add(dxvk-native + GIT_REPOSITORY https://github.com/Joshua-Ashton/dxvk-native + GIT_TAG origin/master + GIT_SHALLOW ON + BUILD_ALWAYS OFF + CONFIGURE_COMMAND meson ../dxvk-native + BUILD_COMMAND ninja + INSTALL_COMMAND "" + ) + ExternalProject_Get_property(dxvk-native SOURCE_DIR BINARY_DIR) + set(DXVK_NATIVE_INCLUDE_DIRS + "${SOURCE_DIR}/include/native/directx" + "${SOURCE_DIR}/include/native/windows" + ) + set(DXVK_NATIVE_D3D9_LIB ${BINARY_DIR}/src/d3d9/libdxvk_d3d9.so) + include_directories( + "${CMAKE_SOURCE_DIR}/src/Platform" + "${DXVK_NATIVE_INCLUDE_DIRS}" + ) + ADD_CUSTOM_TARGET(dependencies ALL DEPENDS dxvk-native) +endif() + add_subdirectory(src) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 0c233ebf..69d7ae2a 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -11,6 +11,9 @@ endif() add_subdirectory(LexStd) add_subdirectory(MathLib) add_subdirectory(NetLib) +#if (NOT MSVC) +# add_subdirectory(Platform) +#endif() add_subdirectory(Rock3dEngine) add_subdirectory(Rock3dGame) add_subdirectory(RRR3d) diff --git a/src/MathLib/header/MathCommon.h b/src/MathLib/header/MathCommon.h index 60568bb9..6bf8c516 100644 --- a/src/MathLib/header/MathCommon.h +++ b/src/MathLib/header/MathCommon.h @@ -1,3 +1,3 @@ #pragma once -#include "d3d\d3dx9math.h" +#include "d3dx9math.h" diff --git a/src/MathLib/header/d3d/d3dx9math.h b/src/MathLib/header/d3d/d3dx9math.h deleted file mode 100644 index e57f96d7..00000000 --- a/src/MathLib/header/d3d/d3dx9math.h +++ /dev/null @@ -1,1801 +0,0 @@ -////////////////////////////////////////////////////////////////////////////// -// -// Copyright (C) Microsoft Corporation. All Rights Reserved. -// -// File: d3dx9math.h -// Content: D3DX math types and functions -// -////////////////////////////////////////////////////////////////////////////// - -#include "d3dx9.h" - -#ifndef __D3DX9MATH_H__ -#define __D3DX9MATH_H__ - -#include -#if _MSC_VER >= 1200 -#pragma warning(push) -#endif -#pragma warning(disable:4201) // anonymous unions warning - - - -//=========================================================================== -// -// General purpose utilities -// -//=========================================================================== -#define D3DX_PI ((FLOAT) 3.141592654f) -#define D3DX_1BYPI ((FLOAT) 0.318309886f) - -#define D3DXToRadian( degree ) ((degree) * (D3DX_PI / 180.0f)) -#define D3DXToDegree( radian ) ((radian) * (180.0f / D3DX_PI)) - - - -//=========================================================================== -// -// 16 bit floating point numbers -// -//=========================================================================== - -#define D3DX_16F_DIG 3 // # of decimal digits of precision -#define D3DX_16F_EPSILON 4.8875809e-4f // smallest such that 1.0 + epsilon != 1.0 -#define D3DX_16F_MANT_DIG 11 // # of bits in mantissa -#define D3DX_16F_MAX 6.550400e+004 // max value -#define D3DX_16F_MAX_10_EXP 4 // max decimal exponent -#define D3DX_16F_MAX_EXP 15 // max binary exponent -#define D3DX_16F_MIN 6.1035156e-5f // min positive value -#define D3DX_16F_MIN_10_EXP (-4) // min decimal exponent -#define D3DX_16F_MIN_EXP (-14) // min binary exponent -#define D3DX_16F_RADIX 2 // exponent radix -#define D3DX_16F_ROUNDS 1 // addition rounding: near - - -typedef struct D3DXFLOAT16 -{ -#ifdef __cplusplus -public: - D3DXFLOAT16() {}; - D3DXFLOAT16( FLOAT ); - D3DXFLOAT16( CONST D3DXFLOAT16& ); - - // casting - operator FLOAT (); - - // binary operators - BOOL operator == ( CONST D3DXFLOAT16& ) const; - BOOL operator != ( CONST D3DXFLOAT16& ) const; - -protected: -#endif //__cplusplus - WORD value; -} D3DXFLOAT16, *LPD3DXFLOAT16; - - - -//=========================================================================== -// -// Vectors -// -//=========================================================================== - - -//-------------------------- -// 2D Vector -//-------------------------- -typedef struct D3DXVECTOR2 -{ -#ifdef __cplusplus -public: - D3DXVECTOR2() {}; - D3DXVECTOR2( CONST FLOAT * ); - D3DXVECTOR2( CONST D3DXFLOAT16 * ); - D3DXVECTOR2( FLOAT x, FLOAT y ); - - // casting - operator FLOAT* (); - operator CONST FLOAT* () const; - - // assignment operators - D3DXVECTOR2& operator += ( CONST D3DXVECTOR2& ); - D3DXVECTOR2& operator -= ( CONST D3DXVECTOR2& ); - D3DXVECTOR2& operator *= ( FLOAT ); - D3DXVECTOR2& operator /= ( FLOAT ); - - // unary operators - D3DXVECTOR2 operator + () const; - D3DXVECTOR2 operator - () const; - - // binary operators - D3DXVECTOR2 operator + ( CONST D3DXVECTOR2& ) const; - D3DXVECTOR2 operator - ( CONST D3DXVECTOR2& ) const; - D3DXVECTOR2 operator * ( FLOAT ) const; - D3DXVECTOR2 operator / ( FLOAT ) const; - - friend D3DXVECTOR2 operator * ( FLOAT, CONST D3DXVECTOR2& ); - - BOOL operator == ( CONST D3DXVECTOR2& ) const; - BOOL operator != ( CONST D3DXVECTOR2& ) const; - - -public: -#endif //__cplusplus - FLOAT x, y; -} D3DXVECTOR2, *LPD3DXVECTOR2; - - - -//-------------------------- -// 2D Vector (16 bit) -//-------------------------- - -typedef struct D3DXVECTOR2_16F -{ -#ifdef __cplusplus -public: - D3DXVECTOR2_16F() {}; - D3DXVECTOR2_16F( CONST FLOAT * ); - D3DXVECTOR2_16F( CONST D3DXFLOAT16 * ); - D3DXVECTOR2_16F( CONST D3DXFLOAT16 &x, CONST D3DXFLOAT16 &y ); - - // casting - operator D3DXFLOAT16* (); - operator CONST D3DXFLOAT16* () const; - - // binary operators - BOOL operator == ( CONST D3DXVECTOR2_16F& ) const; - BOOL operator != ( CONST D3DXVECTOR2_16F& ) const; - -public: -#endif //__cplusplus - D3DXFLOAT16 x, y; - -} D3DXVECTOR2_16F, *LPD3DXVECTOR2_16F; - - - -//-------------------------- -// 3D Vector -//-------------------------- -#ifdef __cplusplus -typedef struct D3DXVECTOR3 : public D3DVECTOR -{ -public: - D3DXVECTOR3() {}; - D3DXVECTOR3( CONST FLOAT * ); - D3DXVECTOR3( CONST D3DVECTOR& ); - D3DXVECTOR3( CONST D3DXFLOAT16 * ); - D3DXVECTOR3( FLOAT x, FLOAT y, FLOAT z ); - - D3DXVECTOR3(const D3DXVECTOR2& ref); - - // casting - operator FLOAT* (); - operator CONST FLOAT* () const; - - // assignment operators - D3DXVECTOR3& operator += ( CONST D3DXVECTOR3& ); - D3DXVECTOR3& operator -= ( CONST D3DXVECTOR3& ); - D3DXVECTOR3& operator *= ( FLOAT ); - D3DXVECTOR3& operator /= ( FLOAT ); - - // unary operators - D3DXVECTOR3 operator + () const; - D3DXVECTOR3 operator - () const; - - // binary operators - D3DXVECTOR3 operator + ( CONST D3DXVECTOR3& ) const; - D3DXVECTOR3 operator - ( CONST D3DXVECTOR3& ) const; - D3DXVECTOR3 operator * ( FLOAT ) const; - D3DXVECTOR3 operator / ( FLOAT ) const; - - friend D3DXVECTOR3 operator * ( FLOAT, CONST struct D3DXVECTOR3& ); - - BOOL operator == ( CONST D3DXVECTOR3& ) const; - BOOL operator != ( CONST D3DXVECTOR3& ) const; - -} D3DXVECTOR3, *LPD3DXVECTOR3; - -#else //!__cplusplus -typedef struct _D3DVECTOR D3DXVECTOR3, *LPD3DXVECTOR3; -#endif //!__cplusplus - - - -//-------------------------- -// 3D Vector (16 bit) -//-------------------------- -typedef struct D3DXVECTOR3_16F -{ -#ifdef __cplusplus -public: - D3DXVECTOR3_16F() {}; - D3DXVECTOR3_16F( CONST FLOAT * ); - D3DXVECTOR3_16F( CONST D3DVECTOR& ); - D3DXVECTOR3_16F( CONST D3DXFLOAT16 * ); - D3DXVECTOR3_16F( CONST D3DXFLOAT16 &x, CONST D3DXFLOAT16 &y, CONST D3DXFLOAT16 &z ); - - // casting - operator D3DXFLOAT16* (); - operator CONST D3DXFLOAT16* () const; - - // binary operators - BOOL operator == ( CONST D3DXVECTOR3_16F& ) const; - BOOL operator != ( CONST D3DXVECTOR3_16F& ) const; - -public: -#endif //__cplusplus - D3DXFLOAT16 x, y, z; - -} D3DXVECTOR3_16F, *LPD3DXVECTOR3_16F; - - - -//-------------------------- -// 4D Vector -//-------------------------- -typedef struct D3DXVECTOR4 -{ -#ifdef __cplusplus -public: - D3DXVECTOR4() {}; - D3DXVECTOR4( CONST FLOAT* ); - D3DXVECTOR4( CONST D3DXFLOAT16* ); - D3DXVECTOR4( CONST D3DVECTOR& xyz, FLOAT w ); - D3DXVECTOR4( FLOAT x, FLOAT y, FLOAT z, FLOAT w ); - - D3DXVECTOR4(const D3DXVECTOR2& ref); - D3DXVECTOR4(const D3DXVECTOR3& ref); - - // casting - operator FLOAT* (); - operator CONST FLOAT* () const; - - // assignment operators - D3DXVECTOR4& operator += ( CONST D3DXVECTOR4& ); - D3DXVECTOR4& operator -= ( CONST D3DXVECTOR4& ); - D3DXVECTOR4& operator *= ( FLOAT ); - D3DXVECTOR4& operator /= ( FLOAT ); - - // unary operators - D3DXVECTOR4 operator + () const; - D3DXVECTOR4 operator - () const; - - // binary operators - D3DXVECTOR4 operator + ( CONST D3DXVECTOR4& ) const; - D3DXVECTOR4 operator - ( CONST D3DXVECTOR4& ) const; - D3DXVECTOR4 operator * ( FLOAT ) const; - D3DXVECTOR4 operator / ( FLOAT ) const; - - friend D3DXVECTOR4 operator * ( FLOAT, CONST D3DXVECTOR4& ); - - BOOL operator == ( CONST D3DXVECTOR4& ) const; - BOOL operator != ( CONST D3DXVECTOR4& ) const; - -public: -#endif //__cplusplus - FLOAT x, y, z, w; -} D3DXVECTOR4, *LPD3DXVECTOR4; - - -//-------------------------- -// 4D Vector (16 bit) -//-------------------------- -typedef struct D3DXVECTOR4_16F -{ -#ifdef __cplusplus -public: - D3DXVECTOR4_16F() {}; - D3DXVECTOR4_16F( CONST FLOAT * ); - D3DXVECTOR4_16F( CONST D3DXFLOAT16* ); - D3DXVECTOR4_16F( CONST D3DXVECTOR3_16F& xyz, CONST D3DXFLOAT16& w ); - D3DXVECTOR4_16F( CONST D3DXFLOAT16& x, CONST D3DXFLOAT16& y, CONST D3DXFLOAT16& z, CONST D3DXFLOAT16& w ); - - // casting - operator D3DXFLOAT16* (); - operator CONST D3DXFLOAT16* () const; - - // binary operators - BOOL operator == ( CONST D3DXVECTOR4_16F& ) const; - BOOL operator != ( CONST D3DXVECTOR4_16F& ) const; - -public: -#endif //__cplusplus - D3DXFLOAT16 x, y, z, w; - -} D3DXVECTOR4_16F, *LPD3DXVECTOR4_16F; - - - -//=========================================================================== -// -// Matrices -// -//=========================================================================== -#ifdef __cplusplus -typedef struct D3DXMATRIX : public D3DMATRIX -{ -public: - D3DXMATRIX() {}; - D3DXMATRIX( CONST FLOAT * ); - D3DXMATRIX( CONST D3DMATRIX& ); - D3DXMATRIX( CONST D3DXFLOAT16 * ); - D3DXMATRIX( FLOAT _11, FLOAT _12, FLOAT _13, FLOAT _14, - FLOAT _21, FLOAT _22, FLOAT _23, FLOAT _24, - FLOAT _31, FLOAT _32, FLOAT _33, FLOAT _34, - FLOAT _41, FLOAT _42, FLOAT _43, FLOAT _44 ); - - - // access grants - FLOAT& operator () ( UINT Row, UINT Col ); - FLOAT operator () ( UINT Row, UINT Col ) const; - - // casting operators - operator FLOAT* (); - operator CONST FLOAT* () const; - - // assignment operators - D3DXMATRIX& operator *= ( CONST D3DXMATRIX& ); - D3DXMATRIX& operator += ( CONST D3DXMATRIX& ); - D3DXMATRIX& operator -= ( CONST D3DXMATRIX& ); - D3DXMATRIX& operator *= ( FLOAT ); - D3DXMATRIX& operator /= ( FLOAT ); - - // unary operators - D3DXMATRIX operator + () const; - D3DXMATRIX operator - () const; - - // binary operators - D3DXMATRIX operator * ( CONST D3DXMATRIX& ) const; - D3DXMATRIX operator + ( CONST D3DXMATRIX& ) const; - D3DXMATRIX operator - ( CONST D3DXMATRIX& ) const; - D3DXMATRIX operator * ( FLOAT ) const; - D3DXMATRIX operator / ( FLOAT ) const; - - friend D3DXMATRIX operator * ( FLOAT, CONST D3DXMATRIX& ); - - BOOL operator == ( CONST D3DXMATRIX& ) const; - BOOL operator != ( CONST D3DXMATRIX& ) const; - -} D3DXMATRIX, *LPD3DXMATRIX; - -#else //!__cplusplus -typedef struct _D3DMATRIX D3DXMATRIX, *LPD3DXMATRIX; -#endif //!__cplusplus - - -//--------------------------------------------------------------------------- -// Aligned Matrices -// -// This class helps keep matrices 16-byte aligned as preferred by P4 cpus. -// It aligns matrices on the stack and on the heap or in global scope. -// It does this using __declspec(align(16)) which works on VC7 and on VC 6 -// with the processor pack. Unfortunately there is no way to detect the -// latter so this is turned on only on VC7. On other compilers this is the -// the same as D3DXMATRIX. -// -// Using this class on a compiler that does not actually do the alignment -// can be dangerous since it will not expose bugs that ignore alignment. -// E.g if an object of this class in inside a struct or class, and some code -// memcopys data in it assuming tight packing. This could break on a compiler -// that eventually start aligning the matrix. -//--------------------------------------------------------------------------- -#ifdef __cplusplus -typedef struct _D3DXMATRIXA16 : public D3DXMATRIX -{ - _D3DXMATRIXA16() {} - _D3DXMATRIXA16( CONST FLOAT * ); - _D3DXMATRIXA16( CONST D3DMATRIX& ); - _D3DXMATRIXA16( CONST D3DXFLOAT16 * ); - _D3DXMATRIXA16( FLOAT _11, FLOAT _12, FLOAT _13, FLOAT _14, - FLOAT _21, FLOAT _22, FLOAT _23, FLOAT _24, - FLOAT _31, FLOAT _32, FLOAT _33, FLOAT _34, - FLOAT _41, FLOAT _42, FLOAT _43, FLOAT _44 ); - - // new operators - void* operator new ( size_t ); - void* operator new[] ( size_t ); - - // delete operators - void operator delete ( void* ); // These are NOT virtual; Do not - void operator delete[] ( void* ); // cast to D3DXMATRIX and delete. - - // assignment operators - _D3DXMATRIXA16& operator = ( CONST D3DXMATRIX& ); - -} _D3DXMATRIXA16; - -#else //!__cplusplus -typedef D3DXMATRIX _D3DXMATRIXA16; -#endif //!__cplusplus - - - -#if _MSC_VER >= 1300 // VC7 -#define D3DX_ALIGN16 __declspec(align(16)) -#else -#define D3DX_ALIGN16 // Earlier compiler may not understand this, do nothing. -#endif - -typedef D3DX_ALIGN16 _D3DXMATRIXA16 D3DXMATRIXA16, *LPD3DXMATRIXA16; - - - -//=========================================================================== -// -// Quaternions -// -//=========================================================================== -typedef struct D3DXQUATERNION -{ -#ifdef __cplusplus -public: - D3DXQUATERNION() {} - D3DXQUATERNION( CONST FLOAT * ); - D3DXQUATERNION( CONST D3DXFLOAT16 * ); - D3DXQUATERNION( FLOAT x, FLOAT y, FLOAT z, FLOAT w ); - - // casting - operator FLOAT* (); - operator CONST FLOAT* () const; - - // assignment operators - D3DXQUATERNION& operator += ( CONST D3DXQUATERNION& ); - D3DXQUATERNION& operator -= ( CONST D3DXQUATERNION& ); - D3DXQUATERNION& operator *= ( CONST D3DXQUATERNION& ); - D3DXQUATERNION& operator *= ( FLOAT ); - D3DXQUATERNION& operator /= ( FLOAT ); - - // unary operators - D3DXQUATERNION operator + () const; - D3DXQUATERNION operator - () const; - - // binary operators - D3DXQUATERNION operator + ( CONST D3DXQUATERNION& ) const; - D3DXQUATERNION operator - ( CONST D3DXQUATERNION& ) const; - D3DXQUATERNION operator * ( CONST D3DXQUATERNION& ) const; - D3DXQUATERNION operator * ( FLOAT ) const; - D3DXQUATERNION operator / ( FLOAT ) const; - - friend D3DXQUATERNION operator * (FLOAT, CONST D3DXQUATERNION& ); - - BOOL operator == ( CONST D3DXQUATERNION& ) const; - BOOL operator != ( CONST D3DXQUATERNION& ) const; - -#endif //__cplusplus - FLOAT x, y, z, w; -} D3DXQUATERNION, *LPD3DXQUATERNION; - - -//=========================================================================== -// -// Planes -// -//=========================================================================== -typedef struct D3DXPLANE -{ -#ifdef __cplusplus -public: - D3DXPLANE() {} - D3DXPLANE( CONST FLOAT* ); - D3DXPLANE( CONST D3DXFLOAT16* ); - D3DXPLANE( FLOAT a, FLOAT b, FLOAT c, FLOAT d ); - - // casting - operator FLOAT* (); - operator CONST FLOAT* () const; - - // assignment operators - D3DXPLANE& operator *= ( FLOAT ); - D3DXPLANE& operator /= ( FLOAT ); - - // unary operators - D3DXPLANE operator + () const; - D3DXPLANE operator - () const; - - // binary operators - D3DXPLANE operator * ( FLOAT ) const; - D3DXPLANE operator / ( FLOAT ) const; - - friend D3DXPLANE operator * ( FLOAT, CONST D3DXPLANE& ); - - BOOL operator == ( CONST D3DXPLANE& ) const; - BOOL operator != ( CONST D3DXPLANE& ) const; - -#endif //__cplusplus - FLOAT a, b, c, d; -} D3DXPLANE, *LPD3DXPLANE; - - -//=========================================================================== -// -// Colors -// -//=========================================================================== - -typedef struct D3DXCOLOR -{ -#ifdef __cplusplus -public: - D3DXCOLOR() {} - D3DXCOLOR( DWORD argb ); - D3DXCOLOR( CONST FLOAT * ); - D3DXCOLOR( CONST D3DXFLOAT16 * ); - D3DXCOLOR( CONST D3DCOLORVALUE& ); - D3DXCOLOR( FLOAT r, FLOAT g, FLOAT b, FLOAT a ); - - // casting - operator DWORD () const; - - operator FLOAT* (); - operator CONST FLOAT* () const; - - operator D3DCOLORVALUE* (); - operator CONST D3DCOLORVALUE* () const; - - operator D3DCOLORVALUE& (); - operator CONST D3DCOLORVALUE& () const; - - // assignment operators - D3DXCOLOR& operator += ( CONST D3DXCOLOR& ); - D3DXCOLOR& operator -= ( CONST D3DXCOLOR& ); - D3DXCOLOR& operator *= ( FLOAT ); - D3DXCOLOR& operator /= ( FLOAT ); - - // unary operators - D3DXCOLOR operator + () const; - D3DXCOLOR operator - () const; - - // binary operators - D3DXCOLOR operator + ( CONST D3DXCOLOR& ) const; - D3DXCOLOR operator - ( CONST D3DXCOLOR& ) const; - D3DXCOLOR operator * ( FLOAT ) const; - D3DXCOLOR operator / ( FLOAT ) const; - - friend D3DXCOLOR operator * ( FLOAT, CONST D3DXCOLOR& ); - - BOOL operator == ( CONST D3DXCOLOR& ) const; - BOOL operator != ( CONST D3DXCOLOR& ) const; - -#endif //__cplusplus - FLOAT r, g, b, a; -} D3DXCOLOR, *LPD3DXCOLOR; - - - -//=========================================================================== -// -// D3DX math functions: -// -// NOTE: -// * All these functions can take the same object as in and out parameters. -// -// * Out parameters are typically also returned as return values, so that -// the output of one function may be used as a parameter to another. -// -//=========================================================================== - -//-------------------------- -// Float16 -//-------------------------- - -// non-inline -#ifdef __cplusplus -extern "C" { -#endif - -// Converts an array 32-bit floats to 16-bit floats -D3DXFLOAT16* WINAPI D3DXFloat32To16Array - ( D3DXFLOAT16 *pOut, CONST FLOAT *pIn, UINT n ); - -// Converts an array 16-bit floats to 32-bit floats -FLOAT* WINAPI D3DXFloat16To32Array - ( FLOAT *pOut, CONST D3DXFLOAT16 *pIn, UINT n ); - -#ifdef __cplusplus -} -#endif - - -//-------------------------- -// 2D Vector -//-------------------------- - -// inline - -FLOAT D3DXVec2Length - ( CONST D3DXVECTOR2 *pV ); - -FLOAT D3DXVec2LengthSq - ( CONST D3DXVECTOR2 *pV ); - -FLOAT D3DXVec2Dot - ( CONST D3DXVECTOR2 *pV1, CONST D3DXVECTOR2 *pV2 ); - -// Z component of ((x1,y1,0) cross (x2,y2,0)) -FLOAT D3DXVec2CCW - ( CONST D3DXVECTOR2 *pV1, CONST D3DXVECTOR2 *pV2 ); - -D3DXVECTOR2* D3DXVec2Add - ( D3DXVECTOR2 *pOut, CONST D3DXVECTOR2 *pV1, CONST D3DXVECTOR2 *pV2 ); - -D3DXVECTOR2* D3DXVec2Subtract - ( D3DXVECTOR2 *pOut, CONST D3DXVECTOR2 *pV1, CONST D3DXVECTOR2 *pV2 ); - -// Minimize each component. x = min(x1, x2), y = min(y1, y2) -D3DXVECTOR2* D3DXVec2Minimize - ( D3DXVECTOR2 *pOut, CONST D3DXVECTOR2 *pV1, CONST D3DXVECTOR2 *pV2 ); - -// Maximize each component. x = max(x1, x2), y = max(y1, y2) -D3DXVECTOR2* D3DXVec2Maximize - ( D3DXVECTOR2 *pOut, CONST D3DXVECTOR2 *pV1, CONST D3DXVECTOR2 *pV2 ); - -D3DXVECTOR2* D3DXVec2Scale - ( D3DXVECTOR2 *pOut, CONST D3DXVECTOR2 *pV, FLOAT s ); - -// Linear interpolation. V1 + s(V2-V1) -D3DXVECTOR2* D3DXVec2Lerp - ( D3DXVECTOR2 *pOut, CONST D3DXVECTOR2 *pV1, CONST D3DXVECTOR2 *pV2, - FLOAT s ); - -// non-inline -#ifdef __cplusplus -extern "C" { -#endif - -D3DXVECTOR2* WINAPI D3DXVec2Normalize - ( D3DXVECTOR2 *pOut, CONST D3DXVECTOR2 *pV ); - -// Hermite interpolation between position V1, tangent T1 (when s == 0) -// and position V2, tangent T2 (when s == 1). -D3DXVECTOR2* WINAPI D3DXVec2Hermite - ( D3DXVECTOR2 *pOut, CONST D3DXVECTOR2 *pV1, CONST D3DXVECTOR2 *pT1, - CONST D3DXVECTOR2 *pV2, CONST D3DXVECTOR2 *pT2, FLOAT s ); - -// CatmullRom interpolation between V1 (when s == 0) and V2 (when s == 1) -D3DXVECTOR2* WINAPI D3DXVec2CatmullRom - ( D3DXVECTOR2 *pOut, CONST D3DXVECTOR2 *pV0, CONST D3DXVECTOR2 *pV1, - CONST D3DXVECTOR2 *pV2, CONST D3DXVECTOR2 *pV3, FLOAT s ); - -// Barycentric coordinates. V1 + f(V2-V1) + g(V3-V1) -D3DXVECTOR2* WINAPI D3DXVec2BaryCentric - ( D3DXVECTOR2 *pOut, CONST D3DXVECTOR2 *pV1, CONST D3DXVECTOR2 *pV2, - CONST D3DXVECTOR2 *pV3, FLOAT f, FLOAT g); - -// Transform (x, y, 0, 1) by matrix. -D3DXVECTOR4* WINAPI D3DXVec2Transform - ( D3DXVECTOR4 *pOut, CONST D3DXVECTOR2 *pV, CONST D3DXMATRIX *pM ); - -// Transform (x, y, 0, 1) by matrix, project result back into w=1. -D3DXVECTOR2* WINAPI D3DXVec2TransformCoord - ( D3DXVECTOR2 *pOut, CONST D3DXVECTOR2 *pV, CONST D3DXMATRIX *pM ); - -// Transform (x, y, 0, 0) by matrix. -D3DXVECTOR2* WINAPI D3DXVec2TransformNormal - ( D3DXVECTOR2 *pOut, CONST D3DXVECTOR2 *pV, CONST D3DXMATRIX *pM ); - -// Transform Array (x, y, 0, 1) by matrix. -D3DXVECTOR4* WINAPI D3DXVec2TransformArray - ( D3DXVECTOR4 *pOut, UINT OutStride, CONST D3DXVECTOR2 *pV, UINT VStride, CONST D3DXMATRIX *pM, UINT n); - -// Transform Array (x, y, 0, 1) by matrix, project result back into w=1. -D3DXVECTOR2* WINAPI D3DXVec2TransformCoordArray - ( D3DXVECTOR2 *pOut, UINT OutStride, CONST D3DXVECTOR2 *pV, UINT VStride, CONST D3DXMATRIX *pM, UINT n ); - -// Transform Array (x, y, 0, 0) by matrix. -D3DXVECTOR2* WINAPI D3DXVec2TransformNormalArray - ( D3DXVECTOR2 *pOut, UINT OutStride, CONST D3DXVECTOR2 *pV, UINT VStride, CONST D3DXMATRIX *pM, UINT n ); - - - -#ifdef __cplusplus -} -#endif - - -//-------------------------- -// 3D Vector -//-------------------------- - -// inline - -FLOAT D3DXVec3Length - ( CONST D3DXVECTOR3 *pV ); - -FLOAT D3DXVec3LengthSq - ( CONST D3DXVECTOR3 *pV ); - -FLOAT D3DXVec3Dot - ( CONST D3DXVECTOR3 *pV1, CONST D3DXVECTOR3 *pV2 ); - -D3DXVECTOR3* D3DXVec3Cross - ( D3DXVECTOR3 *pOut, CONST D3DXVECTOR3 *pV1, CONST D3DXVECTOR3 *pV2 ); - -D3DXVECTOR3* D3DXVec3Add - ( D3DXVECTOR3 *pOut, CONST D3DXVECTOR3 *pV1, CONST D3DXVECTOR3 *pV2 ); - -D3DXVECTOR3* D3DXVec3Subtract - ( D3DXVECTOR3 *pOut, CONST D3DXVECTOR3 *pV1, CONST D3DXVECTOR3 *pV2 ); - -// Minimize each component. x = min(x1, x2), y = min(y1, y2), ... -D3DXVECTOR3* D3DXVec3Minimize - ( D3DXVECTOR3 *pOut, CONST D3DXVECTOR3 *pV1, CONST D3DXVECTOR3 *pV2 ); - -// Maximize each component. x = max(x1, x2), y = max(y1, y2), ... -D3DXVECTOR3* D3DXVec3Maximize - ( D3DXVECTOR3 *pOut, CONST D3DXVECTOR3 *pV1, CONST D3DXVECTOR3 *pV2 ); - -D3DXVECTOR3* D3DXVec3Scale - ( D3DXVECTOR3 *pOut, CONST D3DXVECTOR3 *pV, FLOAT s); - -// Linear interpolation. V1 + s(V2-V1) -D3DXVECTOR3* D3DXVec3Lerp - ( D3DXVECTOR3 *pOut, CONST D3DXVECTOR3 *pV1, CONST D3DXVECTOR3 *pV2, - FLOAT s ); - -// non-inline -#ifdef __cplusplus -extern "C" { -#endif - -D3DXVECTOR3* WINAPI D3DXVec3Normalize - ( D3DXVECTOR3 *pOut, CONST D3DXVECTOR3 *pV ); - -// Hermite interpolation between position V1, tangent T1 (when s == 0) -// and position V2, tangent T2 (when s == 1). -D3DXVECTOR3* WINAPI D3DXVec3Hermite - ( D3DXVECTOR3 *pOut, CONST D3DXVECTOR3 *pV1, CONST D3DXVECTOR3 *pT1, - CONST D3DXVECTOR3 *pV2, CONST D3DXVECTOR3 *pT2, FLOAT s ); - -// CatmullRom interpolation between V1 (when s == 0) and V2 (when s == 1) -D3DXVECTOR3* WINAPI D3DXVec3CatmullRom - ( D3DXVECTOR3 *pOut, CONST D3DXVECTOR3 *pV0, CONST D3DXVECTOR3 *pV1, - CONST D3DXVECTOR3 *pV2, CONST D3DXVECTOR3 *pV3, FLOAT s ); - -// Barycentric coordinates. V1 + f(V2-V1) + g(V3-V1) -D3DXVECTOR3* WINAPI D3DXVec3BaryCentric - ( D3DXVECTOR3 *pOut, CONST D3DXVECTOR3 *pV1, CONST D3DXVECTOR3 *pV2, - CONST D3DXVECTOR3 *pV3, FLOAT f, FLOAT g); - -// Transform (x, y, z, 1) by matrix. -D3DXVECTOR4* WINAPI D3DXVec3Transform - ( D3DXVECTOR4 *pOut, CONST D3DXVECTOR3 *pV, CONST D3DXMATRIX *pM ); - -// Transform (x, y, z, 1) by matrix, project result back into w=1. -D3DXVECTOR3* WINAPI D3DXVec3TransformCoord - ( D3DXVECTOR3 *pOut, CONST D3DXVECTOR3 *pV, CONST D3DXMATRIX *pM ); - -// Transform (x, y, z, 0) by matrix. If you transforming a normal by a -// non-affine matrix, the matrix you pass to this function should be the -// transpose of the inverse of the matrix you would use to transform a coord. -D3DXVECTOR3* WINAPI D3DXVec3TransformNormal - ( D3DXVECTOR3 *pOut, CONST D3DXVECTOR3 *pV, CONST D3DXMATRIX *pM ); - - -// Transform Array (x, y, z, 1) by matrix. -D3DXVECTOR4* WINAPI D3DXVec3TransformArray - ( D3DXVECTOR4 *pOut, UINT OutStride, CONST D3DXVECTOR3 *pV, UINT VStride, CONST D3DXMATRIX *pM, UINT n ); - -// Transform Array (x, y, z, 1) by matrix, project result back into w=1. -D3DXVECTOR3* WINAPI D3DXVec3TransformCoordArray - ( D3DXVECTOR3 *pOut, UINT OutStride, CONST D3DXVECTOR3 *pV, UINT VStride, CONST D3DXMATRIX *pM, UINT n ); - -// Transform (x, y, z, 0) by matrix. If you transforming a normal by a -// non-affine matrix, the matrix you pass to this function should be the -// transpose of the inverse of the matrix you would use to transform a coord. -D3DXVECTOR3* WINAPI D3DXVec3TransformNormalArray - ( D3DXVECTOR3 *pOut, UINT OutStride, CONST D3DXVECTOR3 *pV, UINT VStride, CONST D3DXMATRIX *pM, UINT n ); - -// Project vector from object space into screen space -D3DXVECTOR3* WINAPI D3DXVec3Project - ( D3DXVECTOR3 *pOut, CONST D3DXVECTOR3 *pV, CONST D3DVIEWPORT9 *pViewport, - CONST D3DXMATRIX *pProjection, CONST D3DXMATRIX *pView, CONST D3DXMATRIX *pWorld); - -// Project vector from screen space into object space -D3DXVECTOR3* WINAPI D3DXVec3Unproject - ( D3DXVECTOR3 *pOut, CONST D3DXVECTOR3 *pV, CONST D3DVIEWPORT9 *pViewport, - CONST D3DXMATRIX *pProjection, CONST D3DXMATRIX *pView, CONST D3DXMATRIX *pWorld); - -// Project vector Array from object space into screen space -D3DXVECTOR3* WINAPI D3DXVec3ProjectArray - ( D3DXVECTOR3 *pOut, UINT OutStride,CONST D3DXVECTOR3 *pV, UINT VStride,CONST D3DVIEWPORT9 *pViewport, - CONST D3DXMATRIX *pProjection, CONST D3DXMATRIX *pView, CONST D3DXMATRIX *pWorld, UINT n); - -// Project vector Array from screen space into object space -D3DXVECTOR3* WINAPI D3DXVec3UnprojectArray - ( D3DXVECTOR3 *pOut, UINT OutStride, CONST D3DXVECTOR3 *pV, UINT VStride, CONST D3DVIEWPORT9 *pViewport, - CONST D3DXMATRIX *pProjection, CONST D3DXMATRIX *pView, CONST D3DXMATRIX *pWorld, UINT n); - - -#ifdef __cplusplus -} -#endif - - - -//-------------------------- -// 4D Vector -//-------------------------- - -// inline - -FLOAT D3DXVec4Length - ( CONST D3DXVECTOR4 *pV ); - -FLOAT D3DXVec4LengthSq - ( CONST D3DXVECTOR4 *pV ); - -FLOAT D3DXVec4Dot - ( CONST D3DXVECTOR4 *pV1, CONST D3DXVECTOR4 *pV2 ); - -D3DXVECTOR4* D3DXVec4Add - ( D3DXVECTOR4 *pOut, CONST D3DXVECTOR4 *pV1, CONST D3DXVECTOR4 *pV2); - -D3DXVECTOR4* D3DXVec4Subtract - ( D3DXVECTOR4 *pOut, CONST D3DXVECTOR4 *pV1, CONST D3DXVECTOR4 *pV2); - -// Minimize each component. x = min(x1, x2), y = min(y1, y2), ... -D3DXVECTOR4* D3DXVec4Minimize - ( D3DXVECTOR4 *pOut, CONST D3DXVECTOR4 *pV1, CONST D3DXVECTOR4 *pV2); - -// Maximize each component. x = max(x1, x2), y = max(y1, y2), ... -D3DXVECTOR4* D3DXVec4Maximize - ( D3DXVECTOR4 *pOut, CONST D3DXVECTOR4 *pV1, CONST D3DXVECTOR4 *pV2); - -D3DXVECTOR4* D3DXVec4Scale - ( D3DXVECTOR4 *pOut, CONST D3DXVECTOR4 *pV, FLOAT s); - -// Linear interpolation. V1 + s(V2-V1) -D3DXVECTOR4* D3DXVec4Lerp - ( D3DXVECTOR4 *pOut, CONST D3DXVECTOR4 *pV1, CONST D3DXVECTOR4 *pV2, - FLOAT s ); - -// non-inline -#ifdef __cplusplus -extern "C" { -#endif - -// Cross-product in 4 dimensions. -D3DXVECTOR4* WINAPI D3DXVec4Cross - ( D3DXVECTOR4 *pOut, CONST D3DXVECTOR4 *pV1, CONST D3DXVECTOR4 *pV2, - CONST D3DXVECTOR4 *pV3); - -D3DXVECTOR4* WINAPI D3DXVec4Normalize - ( D3DXVECTOR4 *pOut, CONST D3DXVECTOR4 *pV ); - -// Hermite interpolation between position V1, tangent T1 (when s == 0) -// and position V2, tangent T2 (when s == 1). -D3DXVECTOR4* WINAPI D3DXVec4Hermite - ( D3DXVECTOR4 *pOut, CONST D3DXVECTOR4 *pV1, CONST D3DXVECTOR4 *pT1, - CONST D3DXVECTOR4 *pV2, CONST D3DXVECTOR4 *pT2, FLOAT s ); - -// CatmullRom interpolation between V1 (when s == 0) and V2 (when s == 1) -D3DXVECTOR4* WINAPI D3DXVec4CatmullRom - ( D3DXVECTOR4 *pOut, CONST D3DXVECTOR4 *pV0, CONST D3DXVECTOR4 *pV1, - CONST D3DXVECTOR4 *pV2, CONST D3DXVECTOR4 *pV3, FLOAT s ); - -// Barycentric coordinates. V1 + f(V2-V1) + g(V3-V1) -D3DXVECTOR4* WINAPI D3DXVec4BaryCentric - ( D3DXVECTOR4 *pOut, CONST D3DXVECTOR4 *pV1, CONST D3DXVECTOR4 *pV2, - CONST D3DXVECTOR4 *pV3, FLOAT f, FLOAT g); - -// Transform vector by matrix. -D3DXVECTOR4* WINAPI D3DXVec4Transform - ( D3DXVECTOR4 *pOut, CONST D3DXVECTOR4 *pV, CONST D3DXMATRIX *pM ); - -// Transform vector array by matrix. -D3DXVECTOR4* WINAPI D3DXVec4TransformArray - ( D3DXVECTOR4 *pOut, UINT OutStride, CONST D3DXVECTOR4 *pV, UINT VStride, CONST D3DXMATRIX *pM, UINT n ); - -#ifdef __cplusplus -} -#endif - - -//-------------------------- -// 4D Matrix -//-------------------------- - -// inline - -D3DXMATRIX* D3DXMatrixIdentity - ( D3DXMATRIX *pOut ); - -BOOL D3DXMatrixIsIdentity - ( CONST D3DXMATRIX *pM ); - - -// non-inline -#ifdef __cplusplus -extern "C" { -#endif - -FLOAT WINAPI D3DXMatrixDeterminant - ( CONST D3DXMATRIX *pM ); - -HRESULT WINAPI D3DXMatrixDecompose - ( D3DXVECTOR3 *pOutScale, D3DXQUATERNION *pOutRotation, - D3DXVECTOR3 *pOutTranslation, CONST D3DXMATRIX *pM ); - -D3DXMATRIX* WINAPI D3DXMatrixTranspose - ( D3DXMATRIX *pOut, CONST D3DXMATRIX *pM ); - -// Matrix multiplication. The result represents the transformation M2 -// followed by the transformation M1. (Out = M1 * M2) -D3DXMATRIX* WINAPI D3DXMatrixMultiply - ( D3DXMATRIX *pOut, CONST D3DXMATRIX *pM1, CONST D3DXMATRIX *pM2 ); - -// Matrix multiplication, followed by a transpose. (Out = T(M1 * M2)) -D3DXMATRIX* WINAPI D3DXMatrixMultiplyTranspose - ( D3DXMATRIX *pOut, CONST D3DXMATRIX *pM1, CONST D3DXMATRIX *pM2 ); - -// Calculate inverse of matrix. Inversion my fail, in which case NULL will -// be returned. The determinant of pM is also returned it pfDeterminant -// is non-NULL. -D3DXMATRIX* WINAPI D3DXMatrixInverse - ( D3DXMATRIX *pOut, FLOAT *pDeterminant, CONST D3DXMATRIX *pM ); - -// Build a matrix which scales by (sx, sy, sz) -D3DXMATRIX* WINAPI D3DXMatrixScaling - ( D3DXMATRIX *pOut, FLOAT sx, FLOAT sy, FLOAT sz ); - -// Build a matrix which translates by (x, y, z) -D3DXMATRIX* WINAPI D3DXMatrixTranslation - ( D3DXMATRIX *pOut, FLOAT x, FLOAT y, FLOAT z ); - -// Build a matrix which rotates around the X axis -D3DXMATRIX* WINAPI D3DXMatrixRotationX - ( D3DXMATRIX *pOut, FLOAT Angle ); - -// Build a matrix which rotates around the Y axis -D3DXMATRIX* WINAPI D3DXMatrixRotationY - ( D3DXMATRIX *pOut, FLOAT Angle ); - -// Build a matrix which rotates around the Z axis -D3DXMATRIX* WINAPI D3DXMatrixRotationZ - ( D3DXMATRIX *pOut, FLOAT Angle ); - -// Build a matrix which rotates around an arbitrary axis -D3DXMATRIX* WINAPI D3DXMatrixRotationAxis - ( D3DXMATRIX *pOut, CONST D3DXVECTOR3 *pV, FLOAT Angle ); - -// Build a matrix from a quaternion -D3DXMATRIX* WINAPI D3DXMatrixRotationQuaternion - ( D3DXMATRIX *pOut, CONST D3DXQUATERNION *pQ); - -// Yaw around the Y axis, a pitch around the X axis, -// and a roll around the Z axis. -D3DXMATRIX* WINAPI D3DXMatrixRotationYawPitchRoll - ( D3DXMATRIX *pOut, FLOAT Yaw, FLOAT Pitch, FLOAT Roll ); - -// Build transformation matrix. NULL arguments are treated as identity. -// Mout = Msc-1 * Msr-1 * Ms * Msr * Msc * Mrc-1 * Mr * Mrc * Mt -D3DXMATRIX* WINAPI D3DXMatrixTransformation - ( D3DXMATRIX *pOut, CONST D3DXVECTOR3 *pScalingCenter, - CONST D3DXQUATERNION *pScalingRotation, CONST D3DXVECTOR3 *pScaling, - CONST D3DXVECTOR3 *pRotationCenter, CONST D3DXQUATERNION *pRotation, - CONST D3DXVECTOR3 *pTranslation); - -// Build 2D transformation matrix in XY plane. NULL arguments are treated as identity. -// Mout = Msc-1 * Msr-1 * Ms * Msr * Msc * Mrc-1 * Mr * Mrc * Mt -D3DXMATRIX* WINAPI D3DXMatrixTransformation2D - ( D3DXMATRIX *pOut, CONST D3DXVECTOR2* pScalingCenter, - FLOAT ScalingRotation, CONST D3DXVECTOR2* pScaling, - CONST D3DXVECTOR2* pRotationCenter, FLOAT Rotation, - CONST D3DXVECTOR2* pTranslation); - -// Build affine transformation matrix. NULL arguments are treated as identity. -// Mout = Ms * Mrc-1 * Mr * Mrc * Mt -D3DXMATRIX* WINAPI D3DXMatrixAffineTransformation - ( D3DXMATRIX *pOut, FLOAT Scaling, CONST D3DXVECTOR3 *pRotationCenter, - CONST D3DXQUATERNION *pRotation, CONST D3DXVECTOR3 *pTranslation); - -// Build 2D affine transformation matrix in XY plane. NULL arguments are treated as identity. -// Mout = Ms * Mrc-1 * Mr * Mrc * Mt -D3DXMATRIX* WINAPI D3DXMatrixAffineTransformation2D - ( D3DXMATRIX *pOut, FLOAT Scaling, CONST D3DXVECTOR2* pRotationCenter, - FLOAT Rotation, CONST D3DXVECTOR2* pTranslation); - -// Build a lookat matrix. (right-handed) -D3DXMATRIX* WINAPI D3DXMatrixLookAtRH - ( D3DXMATRIX *pOut, CONST D3DXVECTOR3 *pEye, CONST D3DXVECTOR3 *pAt, - CONST D3DXVECTOR3 *pUp ); - -// Build a lookat matrix. (left-handed) -D3DXMATRIX* WINAPI D3DXMatrixLookAtLH - ( D3DXMATRIX *pOut, CONST D3DXVECTOR3 *pEye, CONST D3DXVECTOR3 *pAt, - CONST D3DXVECTOR3 *pUp ); - -// Build a perspective projection matrix. (right-handed) -D3DXMATRIX* WINAPI D3DXMatrixPerspectiveRH - ( D3DXMATRIX *pOut, FLOAT w, FLOAT h, FLOAT zn, FLOAT zf ); - -// Build a perspective projection matrix. (left-handed) -D3DXMATRIX* WINAPI D3DXMatrixPerspectiveLH - ( D3DXMATRIX *pOut, FLOAT w, FLOAT h, FLOAT zn, FLOAT zf ); - -// Build a perspective projection matrix. (right-handed) -D3DXMATRIX* WINAPI D3DXMatrixPerspectiveFovRH - ( D3DXMATRIX *pOut, FLOAT fovy, FLOAT Aspect, FLOAT zn, FLOAT zf ); - -// Build a perspective projection matrix. (left-handed) -D3DXMATRIX* WINAPI D3DXMatrixPerspectiveFovLH - ( D3DXMATRIX *pOut, FLOAT fovy, FLOAT Aspect, FLOAT zn, FLOAT zf ); - -// Build a perspective projection matrix. (right-handed) -D3DXMATRIX* WINAPI D3DXMatrixPerspectiveOffCenterRH - ( D3DXMATRIX *pOut, FLOAT l, FLOAT r, FLOAT b, FLOAT t, FLOAT zn, - FLOAT zf ); - -// Build a perspective projection matrix. (left-handed) -D3DXMATRIX* WINAPI D3DXMatrixPerspectiveOffCenterLH - ( D3DXMATRIX *pOut, FLOAT l, FLOAT r, FLOAT b, FLOAT t, FLOAT zn, - FLOAT zf ); - -// Build an ortho projection matrix. (right-handed) -D3DXMATRIX* WINAPI D3DXMatrixOrthoRH - ( D3DXMATRIX *pOut, FLOAT w, FLOAT h, FLOAT zn, FLOAT zf ); - -// Build an ortho projection matrix. (left-handed) -D3DXMATRIX* WINAPI D3DXMatrixOrthoLH - ( D3DXMATRIX *pOut, FLOAT w, FLOAT h, FLOAT zn, FLOAT zf ); - -// Build an ortho projection matrix. (right-handed) -D3DXMATRIX* WINAPI D3DXMatrixOrthoOffCenterRH - ( D3DXMATRIX *pOut, FLOAT l, FLOAT r, FLOAT b, FLOAT t, FLOAT zn, - FLOAT zf ); - -// Build an ortho projection matrix. (left-handed) -D3DXMATRIX* WINAPI D3DXMatrixOrthoOffCenterLH - ( D3DXMATRIX *pOut, FLOAT l, FLOAT r, FLOAT b, FLOAT t, FLOAT zn, - FLOAT zf ); - -// Build a matrix which flattens geometry into a plane, as if casting -// a shadow from a light. -D3DXMATRIX* WINAPI D3DXMatrixShadow - ( D3DXMATRIX *pOut, CONST D3DXVECTOR4 *pLight, - CONST D3DXPLANE *pPlane ); - -// Build a matrix which reflects the coordinate system about a plane -D3DXMATRIX* WINAPI D3DXMatrixReflect - ( D3DXMATRIX *pOut, CONST D3DXPLANE *pPlane ); - -#ifdef __cplusplus -} -#endif - - -//-------------------------- -// Quaternion -//-------------------------- - -// inline - -FLOAT D3DXQuaternionLength - ( CONST D3DXQUATERNION *pQ ); - -// Length squared, or "norm" -FLOAT D3DXQuaternionLengthSq - ( CONST D3DXQUATERNION *pQ ); - -FLOAT D3DXQuaternionDot - ( CONST D3DXQUATERNION *pQ1, CONST D3DXQUATERNION *pQ2 ); - -// (0, 0, 0, 1) -D3DXQUATERNION* D3DXQuaternionIdentity - ( D3DXQUATERNION *pOut ); - -BOOL D3DXQuaternionIsIdentity - ( CONST D3DXQUATERNION *pQ ); - -// (-x, -y, -z, w) -D3DXQUATERNION* D3DXQuaternionConjugate - ( D3DXQUATERNION *pOut, CONST D3DXQUATERNION *pQ ); - - -// non-inline -#ifdef __cplusplus -extern "C" { -#endif - -// Compute a quaternin's axis and angle of rotation. Expects unit quaternions. -void WINAPI D3DXQuaternionToAxisAngle - ( CONST D3DXQUATERNION *pQ, D3DXVECTOR3 *pAxis, FLOAT *pAngle ); - -// Build a quaternion from a rotation matrix. -D3DXQUATERNION* WINAPI D3DXQuaternionRotationMatrix - ( D3DXQUATERNION *pOut, CONST D3DXMATRIX *pM); - -// Rotation about arbitrary axis. -D3DXQUATERNION* WINAPI D3DXQuaternionRotationAxis - ( D3DXQUATERNION *pOut, CONST D3DXVECTOR3 *pV, FLOAT Angle ); - -// Yaw around the Y axis, a pitch around the X axis, -// and a roll around the Z axis. -D3DXQUATERNION* WINAPI D3DXQuaternionRotationYawPitchRoll - ( D3DXQUATERNION *pOut, FLOAT Yaw, FLOAT Pitch, FLOAT Roll ); - -// Quaternion multiplication. The result represents the rotation Q2 -// followed by the rotation Q1. (Out = Q2 * Q1) -D3DXQUATERNION* WINAPI D3DXQuaternionMultiply - ( D3DXQUATERNION *pOut, CONST D3DXQUATERNION *pQ1, - CONST D3DXQUATERNION *pQ2 ); - -D3DXQUATERNION* WINAPI D3DXQuaternionNormalize - ( D3DXQUATERNION *pOut, CONST D3DXQUATERNION *pQ ); - -// Conjugate and re-norm -D3DXQUATERNION* WINAPI D3DXQuaternionInverse - ( D3DXQUATERNION *pOut, CONST D3DXQUATERNION *pQ ); - -// Expects unit quaternions. -// if q = (cos(theta), sin(theta) * v); ln(q) = (0, theta * v) -D3DXQUATERNION* WINAPI D3DXQuaternionLn - ( D3DXQUATERNION *pOut, CONST D3DXQUATERNION *pQ ); - -// Expects pure quaternions. (w == 0) w is ignored in calculation. -// if q = (0, theta * v); exp(q) = (cos(theta), sin(theta) * v) -D3DXQUATERNION* WINAPI D3DXQuaternionExp - ( D3DXQUATERNION *pOut, CONST D3DXQUATERNION *pQ ); - -// Spherical linear interpolation between Q1 (t == 0) and Q2 (t == 1). -// Expects unit quaternions. -D3DXQUATERNION* WINAPI D3DXQuaternionSlerp - ( D3DXQUATERNION *pOut, CONST D3DXQUATERNION *pQ1, - CONST D3DXQUATERNION *pQ2, FLOAT t ); - -// Spherical quadrangle interpolation. -// Slerp(Slerp(Q1, C, t), Slerp(A, B, t), 2t(1-t)) -D3DXQUATERNION* WINAPI D3DXQuaternionSquad - ( D3DXQUATERNION *pOut, CONST D3DXQUATERNION *pQ1, - CONST D3DXQUATERNION *pA, CONST D3DXQUATERNION *pB, - CONST D3DXQUATERNION *pC, FLOAT t ); - -// Setup control points for spherical quadrangle interpolation -// from Q1 to Q2. The control points are chosen in such a way -// to ensure the continuity of tangents with adjacent segments. -void WINAPI D3DXQuaternionSquadSetup - ( D3DXQUATERNION *pAOut, D3DXQUATERNION *pBOut, D3DXQUATERNION *pCOut, - CONST D3DXQUATERNION *pQ0, CONST D3DXQUATERNION *pQ1, - CONST D3DXQUATERNION *pQ2, CONST D3DXQUATERNION *pQ3 ); - -// Barycentric interpolation. -// Slerp(Slerp(Q1, Q2, f+g), Slerp(Q1, Q3, f+g), g/(f+g)) -D3DXQUATERNION* WINAPI D3DXQuaternionBaryCentric - ( D3DXQUATERNION *pOut, CONST D3DXQUATERNION *pQ1, - CONST D3DXQUATERNION *pQ2, CONST D3DXQUATERNION *pQ3, - FLOAT f, FLOAT g ); - -#ifdef __cplusplus -} -#endif - - -//-------------------------- -// Plane -//-------------------------- - -// inline - -// ax + by + cz + dw -FLOAT D3DXPlaneDot - ( CONST D3DXPLANE *pP, CONST D3DXVECTOR4 *pV); - -// ax + by + cz + d -FLOAT D3DXPlaneDotCoord - ( CONST D3DXPLANE *pP, CONST D3DXVECTOR3 *pV); - -// ax + by + cz -FLOAT D3DXPlaneDotNormal - ( CONST D3DXPLANE *pP, CONST D3DXVECTOR3 *pV); - -D3DXPLANE* D3DXPlaneScale - (D3DXPLANE *pOut, CONST D3DXPLANE *pP, FLOAT s); - -// non-inline -#ifdef __cplusplus -extern "C" { -#endif - -// Normalize plane (so that |a,b,c| == 1) -D3DXPLANE* WINAPI D3DXPlaneNormalize - ( D3DXPLANE *pOut, CONST D3DXPLANE *pP); - -// Find the intersection between a plane and a line. If the line is -// parallel to the plane, NULL is returned. -D3DXVECTOR3* WINAPI D3DXPlaneIntersectLine - ( D3DXVECTOR3 *pOut, CONST D3DXPLANE *pP, CONST D3DXVECTOR3 *pV1, - CONST D3DXVECTOR3 *pV2); - -// Construct a plane from a point and a normal -D3DXPLANE* WINAPI D3DXPlaneFromPointNormal - ( D3DXPLANE *pOut, CONST D3DXVECTOR3 *pPoint, CONST D3DXVECTOR3 *pNormal); - -// Construct a plane from 3 points -D3DXPLANE* WINAPI D3DXPlaneFromPoints - ( D3DXPLANE *pOut, CONST D3DXVECTOR3 *pV1, CONST D3DXVECTOR3 *pV2, - CONST D3DXVECTOR3 *pV3); - -// Transform a plane by a matrix. The vector (a,b,c) must be normal. -// M should be the inverse transpose of the transformation desired. -D3DXPLANE* WINAPI D3DXPlaneTransform - ( D3DXPLANE *pOut, CONST D3DXPLANE *pP, CONST D3DXMATRIX *pM ); - -// Transform an array of planes by a matrix. The vectors (a,b,c) must be normal. -// M should be the inverse transpose of the transformation desired. -D3DXPLANE* WINAPI D3DXPlaneTransformArray - ( D3DXPLANE *pOut, UINT OutStride, CONST D3DXPLANE *pP, UINT PStride, CONST D3DXMATRIX *pM, UINT n ); - -#ifdef __cplusplus -} -#endif - - -//-------------------------- -// Color -//-------------------------- - -// inline - -// (1-r, 1-g, 1-b, a) -D3DXCOLOR* D3DXColorNegative - (D3DXCOLOR *pOut, CONST D3DXCOLOR *pC); - -D3DXCOLOR* D3DXColorAdd - (D3DXCOLOR *pOut, CONST D3DXCOLOR *pC1, CONST D3DXCOLOR *pC2); - -D3DXCOLOR* D3DXColorSubtract - (D3DXCOLOR *pOut, CONST D3DXCOLOR *pC1, CONST D3DXCOLOR *pC2); - -D3DXCOLOR* D3DXColorScale - (D3DXCOLOR *pOut, CONST D3DXCOLOR *pC, FLOAT s); - -// (r1*r2, g1*g2, b1*b2, a1*a2) -D3DXCOLOR* D3DXColorModulate - (D3DXCOLOR *pOut, CONST D3DXCOLOR *pC1, CONST D3DXCOLOR *pC2); - -// Linear interpolation of r,g,b, and a. C1 + s(C2-C1) -D3DXCOLOR* D3DXColorLerp - (D3DXCOLOR *pOut, CONST D3DXCOLOR *pC1, CONST D3DXCOLOR *pC2, FLOAT s); - -// non-inline -#ifdef __cplusplus -extern "C" { -#endif - -// Interpolate r,g,b between desaturated color and color. -// DesaturatedColor + s(Color - DesaturatedColor) -D3DXCOLOR* WINAPI D3DXColorAdjustSaturation - (D3DXCOLOR *pOut, CONST D3DXCOLOR *pC, FLOAT s); - -// Interpolate r,g,b between 50% grey and color. Grey + s(Color - Grey) -D3DXCOLOR* WINAPI D3DXColorAdjustContrast - (D3DXCOLOR *pOut, CONST D3DXCOLOR *pC, FLOAT c); - -#ifdef __cplusplus -} -#endif - - - - -//-------------------------- -// Misc -//-------------------------- - -#ifdef __cplusplus -extern "C" { -#endif - -// Calculate Fresnel term given the cosine of theta (likely obtained by -// taking the dot of two normals), and the refraction index of the material. -FLOAT WINAPI D3DXFresnelTerm - (FLOAT CosTheta, FLOAT RefractionIndex); - -#ifdef __cplusplus -} -#endif - - - -//=========================================================================== -// -// Matrix Stack -// -//=========================================================================== - -typedef interface ID3DXMatrixStack ID3DXMatrixStack; -typedef interface ID3DXMatrixStack *LPD3DXMATRIXSTACK; - -// {C7885BA7-F990-4fe7-922D-8515E477DD85} -DEFINE_GUID(IID_ID3DXMatrixStack, -0xc7885ba7, 0xf990, 0x4fe7, 0x92, 0x2d, 0x85, 0x15, 0xe4, 0x77, 0xdd, 0x85); - - -#undef INTERFACE -#define INTERFACE ID3DXMatrixStack - -DECLARE_INTERFACE_(ID3DXMatrixStack, IUnknown) -{ - // - // IUnknown methods - // - STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID * ppvObj) PURE; - STDMETHOD_(ULONG,AddRef)(THIS) PURE; - STDMETHOD_(ULONG,Release)(THIS) PURE; - - // - // ID3DXMatrixStack methods - // - - // Pops the top of the stack, returns the current top - // *after* popping the top. - STDMETHOD(Pop)(THIS) PURE; - - // Pushes the stack by one, duplicating the current matrix. - STDMETHOD(Push)(THIS) PURE; - - // Loads identity in the current matrix. - STDMETHOD(LoadIdentity)(THIS) PURE; - - // Loads the given matrix into the current matrix - STDMETHOD(LoadMatrix)(THIS_ CONST D3DXMATRIX* pM ) PURE; - - // Right-Multiplies the given matrix to the current matrix. - // (transformation is about the current world origin) - STDMETHOD(MultMatrix)(THIS_ CONST D3DXMATRIX* pM ) PURE; - - // Left-Multiplies the given matrix to the current matrix - // (transformation is about the local origin of the object) - STDMETHOD(MultMatrixLocal)(THIS_ CONST D3DXMATRIX* pM ) PURE; - - // Right multiply the current matrix with the computed rotation - // matrix, counterclockwise about the given axis with the given angle. - // (rotation is about the current world origin) - STDMETHOD(RotateAxis) - (THIS_ CONST D3DXVECTOR3* pV, FLOAT Angle) PURE; - - // Left multiply the current matrix with the computed rotation - // matrix, counterclockwise about the given axis with the given angle. - // (rotation is about the local origin of the object) - STDMETHOD(RotateAxisLocal) - (THIS_ CONST D3DXVECTOR3* pV, FLOAT Angle) PURE; - - // Right multiply the current matrix with the computed rotation - // matrix. All angles are counterclockwise. (rotation is about the - // current world origin) - - // The rotation is composed of a yaw around the Y axis, a pitch around - // the X axis, and a roll around the Z axis. - STDMETHOD(RotateYawPitchRoll) - (THIS_ FLOAT Yaw, FLOAT Pitch, FLOAT Roll) PURE; - - // Left multiply the current matrix with the computed rotation - // matrix. All angles are counterclockwise. (rotation is about the - // local origin of the object) - - // The rotation is composed of a yaw around the Y axis, a pitch around - // the X axis, and a roll around the Z axis. - STDMETHOD(RotateYawPitchRollLocal) - (THIS_ FLOAT Yaw, FLOAT Pitch, FLOAT Roll) PURE; - - // Right multiply the current matrix with the computed scale - // matrix. (transformation is about the current world origin) - STDMETHOD(Scale)(THIS_ FLOAT x, FLOAT y, FLOAT z) PURE; - - // Left multiply the current matrix with the computed scale - // matrix. (transformation is about the local origin of the object) - STDMETHOD(ScaleLocal)(THIS_ FLOAT x, FLOAT y, FLOAT z) PURE; - - // Right multiply the current matrix with the computed translation - // matrix. (transformation is about the current world origin) - STDMETHOD(Translate)(THIS_ FLOAT x, FLOAT y, FLOAT z ) PURE; - - // Left multiply the current matrix with the computed translation - // matrix. (transformation is about the local origin of the object) - STDMETHOD(TranslateLocal)(THIS_ FLOAT x, FLOAT y, FLOAT z) PURE; - - // Obtain the current matrix at the top of the stack - STDMETHOD_(D3DXMATRIX*, GetTop)(THIS) PURE; -}; - -#ifdef __cplusplus -extern "C" { -#endif - -HRESULT WINAPI - D3DXCreateMatrixStack( - DWORD Flags, - LPD3DXMATRIXSTACK* ppStack); - -#ifdef __cplusplus -} -#endif - -//=========================================================================== -// -// Spherical Harmonic Runtime Routines -// -// NOTE: -// * Most of these functions can take the same object as in and out parameters. -// The exceptions are the rotation functions. -// -// * Out parameters are typically also returned as return values, so that -// the output of one function may be used as a parameter to another. -// -//============================================================================ - - -// non-inline -#ifdef __cplusplus -extern "C" { -#endif - -//============================================================================ -// -// Basic Spherical Harmonic math routines -// -//============================================================================ - -#define D3DXSH_MINORDER 2 -#define D3DXSH_MAXORDER 6 - -//============================================================================ -// -// D3DXSHEvalDirection: -// -------------------- -// Evaluates the Spherical Harmonic basis functions -// -// Parameters: -// pOut -// Output SH coefficients - basis function Ylm is stored at l*l + m+l -// This is the pointer that is returned. -// Order -// Order of the SH evaluation, generates Order^2 coefs, degree is Order-1 -// pDir -// Direction to evaluate in - assumed to be normalized -// -//============================================================================ - -FLOAT* WINAPI D3DXSHEvalDirection - ( FLOAT *pOut, UINT Order, CONST D3DXVECTOR3 *pDir ); - -//============================================================================ -// -// D3DXSHRotate: -// -------------------- -// Rotates SH vector by a rotation matrix -// -// Parameters: -// pOut -// Output SH coefficients - basis function Ylm is stored at l*l + m+l -// This is the pointer that is returned (should not alias with pIn.) -// Order -// Order of the SH evaluation, generates Order^2 coefs, degree is Order-1 -// pMatrix -// Matrix used for rotation - rotation sub matrix should be orthogonal -// and have a unit determinant. -// pIn -// Input SH coeffs (rotated), incorect results if this is also output. -// -//============================================================================ - -FLOAT* WINAPI D3DXSHRotate - ( FLOAT *pOut, UINT Order, CONST D3DXMATRIX *pMatrix, CONST FLOAT *pIn ); - -//============================================================================ -// -// D3DXSHRotateZ: -// -------------------- -// Rotates the SH vector in the Z axis by an angle -// -// Parameters: -// pOut -// Output SH coefficients - basis function Ylm is stored at l*l + m+l -// This is the pointer that is returned (should not alias with pIn.) -// Order -// Order of the SH evaluation, generates Order^2 coefs, degree is Order-1 -// Angle -// Angle in radians to rotate around the Z axis. -// pIn -// Input SH coeffs (rotated), incorect results if this is also output. -// -//============================================================================ - - -FLOAT* WINAPI D3DXSHRotateZ - ( FLOAT *pOut, UINT Order, FLOAT Angle, CONST FLOAT *pIn ); - -//============================================================================ -// -// D3DXSHAdd: -// -------------------- -// Adds two SH vectors, pOut[i] = pA[i] + pB[i]; -// -// Parameters: -// pOut -// Output SH coefficients - basis function Ylm is stored at l*l + m+l -// This is the pointer that is returned. -// Order -// Order of the SH evaluation, generates Order^2 coefs, degree is Order-1 -// pA -// Input SH coeffs. -// pB -// Input SH coeffs (second vector.) -// -//============================================================================ - -FLOAT* WINAPI D3DXSHAdd - ( FLOAT *pOut, UINT Order, CONST FLOAT *pA, CONST FLOAT *pB ); - -//============================================================================ -// -// D3DXSHScale: -// -------------------- -// Adds two SH vectors, pOut[i] = pA[i]*Scale; -// -// Parameters: -// pOut -// Output SH coefficients - basis function Ylm is stored at l*l + m+l -// This is the pointer that is returned. -// Order -// Order of the SH evaluation, generates Order^2 coefs, degree is Order-1 -// pIn -// Input SH coeffs. -// Scale -// Scale factor. -// -//============================================================================ - -FLOAT* WINAPI D3DXSHScale - ( FLOAT *pOut, UINT Order, CONST FLOAT *pIn, CONST FLOAT Scale ); - -//============================================================================ -// -// D3DXSHDot: -// -------------------- -// Computes the dot product of two SH vectors -// -// Parameters: -// Order -// Order of the SH evaluation, generates Order^2 coefs, degree is Order-1 -// pA -// Input SH coeffs. -// pB -// Second set of input SH coeffs. -// -//============================================================================ - -FLOAT WINAPI D3DXSHDot - ( UINT Order, CONST FLOAT *pA, CONST FLOAT *pB ); - -//============================================================================ -// -// D3DXSHMultiply[O]: -// -------------------- -// Computes the product of two functions represented using SH (f and g), where: -// pOut[i] = int(y_i(s) * f(s) * g(s)), where y_i(s) is the ith SH basis -// function, f(s) and g(s) are SH functions (sum_i(y_i(s)*c_i)). The order O -// determines the lengths of the arrays, where there should always be O^2 -// coefficients. In general the product of two SH functions of order O generates -// and SH function of order 2*O - 1, but we truncate the result. This means -// that the product commutes (f*g == g*f) but doesn't associate -// (f*(g*h) != (f*g)*h. -// -// Parameters: -// pOut -// Output SH coefficients - basis function Ylm is stored at l*l + m+l -// This is the pointer that is returned. -// pF -// Input SH coeffs for first function. -// pG -// Second set of input SH coeffs. -// -//============================================================================ - -FLOAT* WINAPI D3DXSHMultiply2( FLOAT *pOut, CONST FLOAT *pF, CONST FLOAT *pG); -FLOAT* WINAPI D3DXSHMultiply3( FLOAT *pOut, CONST FLOAT *pF, CONST FLOAT *pG); -FLOAT* WINAPI D3DXSHMultiply4( FLOAT *pOut, CONST FLOAT *pF, CONST FLOAT *pG); -FLOAT* WINAPI D3DXSHMultiply5( FLOAT *pOut, CONST FLOAT *pF, CONST FLOAT *pG); -FLOAT* WINAPI D3DXSHMultiply6( FLOAT *pOut, CONST FLOAT *pF, CONST FLOAT *pG); - - -//============================================================================ -// -// Basic Spherical Harmonic lighting routines -// -//============================================================================ - -//============================================================================ -// -// D3DXSHEvalDirectionalLight: -// -------------------- -// Evaluates a directional light and returns spectral SH data. The output -// vector is computed so that if the intensity of R/G/B is unit the resulting -// exit radiance of a point directly under the light on a diffuse object with -// an albedo of 1 would be 1.0. This will compute 3 spectral samples, pROut -// has to be specified, while pGout and pBout are optional. -// -// Parameters: -// Order -// Order of the SH evaluation, generates Order^2 coefs, degree is Order-1 -// pDir -// Direction light is coming from (assumed to be normalized.) -// RIntensity -// Red intensity of light. -// GIntensity -// Green intensity of light. -// BIntensity -// Blue intensity of light. -// pROut -// Output SH vector for Red. -// pGOut -// Output SH vector for Green (optional.) -// pBOut -// Output SH vector for Blue (optional.) -// -//============================================================================ - -HRESULT WINAPI D3DXSHEvalDirectionalLight - ( UINT Order, CONST D3DXVECTOR3 *pDir, - FLOAT RIntensity, FLOAT GIntensity, FLOAT BIntensity, - FLOAT *pROut, FLOAT *pGOut, FLOAT *pBOut ); - -//============================================================================ -// -// D3DXSHEvalSphericalLight: -// -------------------- -// Evaluates a spherical light and returns spectral SH data. There is no -// normalization of the intensity of the light like there is for directional -// lights, care has to be taken when specifiying the intensities. This will -// compute 3 spectral samples, pROut has to be specified, while pGout and -// pBout are optional. -// -// Parameters: -// Order -// Order of the SH evaluation, generates Order^2 coefs, degree is Order-1 -// pPos -// Position of light - reciever is assumed to be at the origin. -// Radius -// Radius of the spherical light source. -// RIntensity -// Red intensity of light. -// GIntensity -// Green intensity of light. -// BIntensity -// Blue intensity of light. -// pROut -// Output SH vector for Red. -// pGOut -// Output SH vector for Green (optional.) -// pBOut -// Output SH vector for Blue (optional.) -// -//============================================================================ - -HRESULT WINAPI D3DXSHEvalSphericalLight - ( UINT Order, CONST D3DXVECTOR3 *pPos, FLOAT Radius, - FLOAT RIntensity, FLOAT GIntensity, FLOAT BIntensity, - FLOAT *pROut, FLOAT *pGOut, FLOAT *pBOut ); - -//============================================================================ -// -// D3DXSHEvalConeLight: -// -------------------- -// Evaluates a light that is a cone of constant intensity and returns spectral -// SH data. The output vector is computed so that if the intensity of R/G/B is -// unit the resulting exit radiance of a point directly under the light oriented -// in the cone direction on a diffuse object with an albedo of 1 would be 1.0. -// This will compute 3 spectral samples, pROut has to be specified, while pGout -// and pBout are optional. -// -// Parameters: -// Order -// Order of the SH evaluation, generates Order^2 coefs, degree is Order-1 -// pDir -// Direction light is coming from (assumed to be normalized.) -// Radius -// Radius of cone in radians. -// RIntensity -// Red intensity of light. -// GIntensity -// Green intensity of light. -// BIntensity -// Blue intensity of light. -// pROut -// Output SH vector for Red. -// pGOut -// Output SH vector for Green (optional.) -// pBOut -// Output SH vector for Blue (optional.) -// -//============================================================================ - -HRESULT WINAPI D3DXSHEvalConeLight - ( UINT Order, CONST D3DXVECTOR3 *pDir, FLOAT Radius, - FLOAT RIntensity, FLOAT GIntensity, FLOAT BIntensity, - FLOAT *pROut, FLOAT *pGOut, FLOAT *pBOut ); - -//============================================================================ -// -// D3DXSHEvalHemisphereLight: -// -------------------- -// Evaluates a light that is a linear interpolant between two colors over the -// sphere. The interpolant is linear along the axis of the two points, not -// over the surface of the sphere (ie: if the axis was (0,0,1) it is linear in -// Z, not in the azimuthal angle.) The resulting spherical lighting function -// is normalized so that a point on a perfectly diffuse surface with no -// shadowing and a normal pointed in the direction pDir would result in exit -// radiance with a value of 1 if the top color was white and the bottom color -// was black. This is a very simple model where Top represents the intensity -// of the "sky" and Bottom represents the intensity of the "ground". -// -// Parameters: -// Order -// Order of the SH evaluation, generates Order^2 coefs, degree is Order-1 -// pDir -// Axis of the hemisphere. -// Top -// Color of the upper hemisphere. -// Bottom -// Color of the lower hemisphere. -// pROut -// Output SH vector for Red. -// pGOut -// Output SH vector for Green -// pBOut -// Output SH vector for Blue -// -//============================================================================ - -HRESULT WINAPI D3DXSHEvalHemisphereLight - ( UINT Order, CONST D3DXVECTOR3 *pDir, D3DXCOLOR Top, D3DXCOLOR Bottom, - FLOAT *pROut, FLOAT *pGOut, FLOAT *pBOut ); - -//============================================================================ -// -// Basic Spherical Harmonic projection routines -// -//============================================================================ - -//============================================================================ -// -// D3DXSHProjectCubeMap: -// -------------------- -// Projects a function represented on a cube map into spherical harmonics. -// -// Parameters: -// Order -// Order of the SH evaluation, generates Order^2 coefs, degree is Order-1 -// pCubeMap -// CubeMap that is going to be projected into spherical harmonics -// pROut -// Output SH vector for Red. -// pGOut -// Output SH vector for Green -// pBOut -// Output SH vector for Blue -// -//============================================================================ - -HRESULT WINAPI D3DXSHProjectCubeMap - ( UINT uOrder, LPDIRECT3DCUBETEXTURE9 pCubeMap, - FLOAT *pROut, FLOAT *pGOut, FLOAT *pBOut ); - - -#ifdef __cplusplus -} -#endif - - -#include "d3dx9math.inl" - -#if _MSC_VER >= 1200 -#pragma warning(pop) -#else -#pragma warning(default:4201) -#endif - -#endif // __D3DX9MATH_H__ - diff --git a/src/MathLib/header/d3d/d3dx9math.inl b/src/MathLib/header/d3d/d3dx9math.inl deleted file mode 100644 index a3652ed4..00000000 --- a/src/MathLib/header/d3d/d3dx9math.inl +++ /dev/null @@ -1,2251 +0,0 @@ -////////////////////////////////////////////////////////////////////////////// -// -// Copyright (C) Microsoft Corporation. All Rights Reserved. -// -// File: d3dx9math.inl -// Content: D3DX math inline functions -// -////////////////////////////////////////////////////////////////////////////// - -#ifndef __D3DX9MATH_INL__ -#define __D3DX9MATH_INL__ - -//=========================================================================== -// -// Inline Class Methods -// -//=========================================================================== - -#ifdef __cplusplus - -//-------------------------- -// Float16 -//-------------------------- - -D3DXINLINE -D3DXFLOAT16::D3DXFLOAT16( FLOAT f ) -{ - D3DXFloat32To16Array(this, &f, 1); -} - -D3DXINLINE -D3DXFLOAT16::D3DXFLOAT16( CONST D3DXFLOAT16& f ) -{ - value = f.value; -} - -// casting -D3DXINLINE -D3DXFLOAT16::operator FLOAT () -{ - FLOAT f; - D3DXFloat16To32Array(&f, this, 1); - return f; -} - -// binary operators -D3DXINLINE BOOL -D3DXFLOAT16::operator == ( CONST D3DXFLOAT16& f ) const -{ - return value == f.value; -} - -D3DXINLINE BOOL -D3DXFLOAT16::operator != ( CONST D3DXFLOAT16& f ) const -{ - return value != f.value; -} - - -//-------------------------- -// 2D Vector -//-------------------------- - -D3DXINLINE -D3DXVECTOR2::D3DXVECTOR2( CONST FLOAT *pf ) -{ -#ifdef D3DX_DEBUG - if(!pf) - return; -#endif - - x = pf[0]; - y = pf[1]; -} - -D3DXINLINE -D3DXVECTOR2::D3DXVECTOR2( CONST D3DXFLOAT16 *pf ) -{ -#ifdef D3DX_DEBUG - if(!pf) - return; -#endif - - D3DXFloat16To32Array(&x, pf, 2); -} - -D3DXINLINE -D3DXVECTOR2::D3DXVECTOR2( FLOAT fx, FLOAT fy ) -{ - x = fx; - y = fy; -} - - -// casting -D3DXINLINE -D3DXVECTOR2::operator FLOAT* () -{ - return (FLOAT *) &x; -} - -D3DXINLINE -D3DXVECTOR2::operator CONST FLOAT* () const -{ - return (CONST FLOAT *) &x; -} - - -// assignment operators -D3DXINLINE D3DXVECTOR2& -D3DXVECTOR2::operator += ( CONST D3DXVECTOR2& v ) -{ - x += v.x; - y += v.y; - return *this; -} - -D3DXINLINE D3DXVECTOR2& -D3DXVECTOR2::operator -= ( CONST D3DXVECTOR2& v ) -{ - x -= v.x; - y -= v.y; - return *this; -} - -D3DXINLINE D3DXVECTOR2& -D3DXVECTOR2::operator *= ( FLOAT f ) -{ - x *= f; - y *= f; - return *this; -} - -D3DXINLINE D3DXVECTOR2& -D3DXVECTOR2::operator /= ( FLOAT f ) -{ - FLOAT fInv = 1.0f / f; - x *= fInv; - y *= fInv; - return *this; -} - - -// unary operators -D3DXINLINE D3DXVECTOR2 -D3DXVECTOR2::operator + () const -{ - return *this; -} - -D3DXINLINE D3DXVECTOR2 -D3DXVECTOR2::operator - () const -{ - return D3DXVECTOR2(-x, -y); -} - - -// binary operators -D3DXINLINE D3DXVECTOR2 -D3DXVECTOR2::operator + ( CONST D3DXVECTOR2& v ) const -{ - return D3DXVECTOR2(x + v.x, y + v.y); -} - -D3DXINLINE D3DXVECTOR2 -D3DXVECTOR2::operator - ( CONST D3DXVECTOR2& v ) const -{ - return D3DXVECTOR2(x - v.x, y - v.y); -} - -D3DXINLINE D3DXVECTOR2 -D3DXVECTOR2::operator * ( FLOAT f ) const -{ - return D3DXVECTOR2(x * f, y * f); -} - -D3DXINLINE D3DXVECTOR2 -D3DXVECTOR2::operator / ( FLOAT f ) const -{ - FLOAT fInv = 1.0f / f; - return D3DXVECTOR2(x * fInv, y * fInv); -} - -D3DXINLINE D3DXVECTOR2 -operator * ( FLOAT f, CONST D3DXVECTOR2& v ) -{ - return D3DXVECTOR2(f * v.x, f * v.y); -} - -D3DXINLINE BOOL -D3DXVECTOR2::operator == ( CONST D3DXVECTOR2& v ) const -{ - return x == v.x && y == v.y; -} - -D3DXINLINE BOOL -D3DXVECTOR2::operator != ( CONST D3DXVECTOR2& v ) const -{ - return x != v.x || y != v.y; -} - - - -//-------------------------- -// 2D Vector (16 bit) -//-------------------------- - -D3DXINLINE -D3DXVECTOR2_16F::D3DXVECTOR2_16F( CONST FLOAT *pf ) -{ -#ifdef D3DX_DEBUG - if(!pf) - return; -#endif - - D3DXFloat32To16Array(&x, pf, 2); -} - -D3DXINLINE -D3DXVECTOR2_16F::D3DXVECTOR2_16F( CONST D3DXFLOAT16 *pf ) -{ -#ifdef D3DX_DEBUG - if(!pf) - return; -#endif - - *((DWORD *) &x) = *((DWORD *) &pf[0]); -} - -D3DXINLINE -D3DXVECTOR2_16F::D3DXVECTOR2_16F( CONST D3DXFLOAT16 &fx, CONST D3DXFLOAT16 &fy ) -{ - x = fx; - y = fy; -} - - -// casting -D3DXINLINE -D3DXVECTOR2_16F::operator D3DXFLOAT16* () -{ - return (D3DXFLOAT16*) &x; -} - -D3DXINLINE -D3DXVECTOR2_16F::operator CONST D3DXFLOAT16* () const -{ - return (CONST D3DXFLOAT16*) &x; -} - - -// binary operators -D3DXINLINE BOOL -D3DXVECTOR2_16F::operator == ( CONST D3DXVECTOR2_16F &v ) const -{ - return *((DWORD *) &x) == *((DWORD *) &v.x); -} - -D3DXINLINE BOOL -D3DXVECTOR2_16F::operator != ( CONST D3DXVECTOR2_16F &v ) const -{ - return *((DWORD *) &x) != *((DWORD *) &v.x); -} - - -//-------------------------- -// 3D Vector -//-------------------------- -D3DXINLINE -D3DXVECTOR3::D3DXVECTOR3( CONST FLOAT *pf ) -{ -#ifdef D3DX_DEBUG - if(!pf) - return; -#endif - - x = pf[0]; - y = pf[1]; - z = pf[2]; -} - -D3DXINLINE -D3DXVECTOR3::D3DXVECTOR3( CONST D3DVECTOR& v ) -{ - x = v.x; - y = v.y; - z = v.z; -} - -D3DXINLINE -D3DXVECTOR3::D3DXVECTOR3( CONST D3DXFLOAT16 *pf ) -{ -#ifdef D3DX_DEBUG - if(!pf) - return; -#endif - - D3DXFloat16To32Array(&x, pf, 3); -} - -D3DXINLINE -D3DXVECTOR3::D3DXVECTOR3( FLOAT fx, FLOAT fy, FLOAT fz ) -{ - x = fx; - y = fy; - z = fz; -} - - -// casting -D3DXINLINE -D3DXVECTOR3::operator FLOAT* () -{ - return (FLOAT *) &x; -} - -D3DXINLINE -D3DXVECTOR3::operator CONST FLOAT* () const -{ - return (CONST FLOAT *) &x; -} - - -// assignment operators -D3DXINLINE D3DXVECTOR3& -D3DXVECTOR3::operator += ( CONST D3DXVECTOR3& v ) -{ - x += v.x; - y += v.y; - z += v.z; - return *this; -} - -D3DXINLINE D3DXVECTOR3& -D3DXVECTOR3::operator -= ( CONST D3DXVECTOR3& v ) -{ - x -= v.x; - y -= v.y; - z -= v.z; - return *this; -} - -D3DXINLINE D3DXVECTOR3& -D3DXVECTOR3::operator *= ( FLOAT f ) -{ - x *= f; - y *= f; - z *= f; - return *this; -} - -D3DXINLINE D3DXVECTOR3& -D3DXVECTOR3::operator /= ( FLOAT f ) -{ - FLOAT fInv = 1.0f / f; - x *= fInv; - y *= fInv; - z *= fInv; - return *this; -} - - -// unary operators -D3DXINLINE D3DXVECTOR3 -D3DXVECTOR3::operator + () const -{ - return *this; -} - -D3DXINLINE D3DXVECTOR3 -D3DXVECTOR3::operator - () const -{ - return D3DXVECTOR3(-x, -y, -z); -} - - -// binary operators -D3DXINLINE D3DXVECTOR3 -D3DXVECTOR3::operator + ( CONST D3DXVECTOR3& v ) const -{ - return D3DXVECTOR3(x + v.x, y + v.y, z + v.z); -} - -D3DXINLINE D3DXVECTOR3 -D3DXVECTOR3::operator - ( CONST D3DXVECTOR3& v ) const -{ - return D3DXVECTOR3(x - v.x, y - v.y, z - v.z); -} - -D3DXINLINE D3DXVECTOR3 -D3DXVECTOR3::operator * ( FLOAT f ) const -{ - return D3DXVECTOR3(x * f, y * f, z * f); -} - -D3DXINLINE D3DXVECTOR3 -D3DXVECTOR3::operator / ( FLOAT f ) const -{ - FLOAT fInv = 1.0f / f; - return D3DXVECTOR3(x * fInv, y * fInv, z * fInv); -} - - -D3DXINLINE D3DXVECTOR3 -operator * ( FLOAT f, CONST struct D3DXVECTOR3& v ) -{ - return D3DXVECTOR3(f * v.x, f * v.y, f * v.z); -} - - -D3DXINLINE BOOL -D3DXVECTOR3::operator == ( CONST D3DXVECTOR3& v ) const -{ - return x == v.x && y == v.y && z == v.z; -} - -D3DXINLINE BOOL -D3DXVECTOR3::operator != ( CONST D3DXVECTOR3& v ) const -{ - return x != v.x || y != v.y || z != v.z; -} - - - -//-------------------------- -// 3D Vector (16 bit) -//-------------------------- - -D3DXINLINE -D3DXVECTOR3_16F::D3DXVECTOR3_16F( CONST FLOAT *pf ) -{ -#ifdef D3DX_DEBUG - if(!pf) - return; -#endif - - D3DXFloat32To16Array(&x, pf, 3); -} - -D3DXINLINE -D3DXVECTOR3_16F::D3DXVECTOR3_16F( CONST D3DVECTOR& v ) -{ - D3DXFloat32To16Array(&x, &v.x, 1); - D3DXFloat32To16Array(&y, &v.y, 1); - D3DXFloat32To16Array(&z, &v.z, 1); -} - -D3DXINLINE -D3DXVECTOR3_16F::D3DXVECTOR3_16F( CONST D3DXFLOAT16 *pf ) -{ -#ifdef D3DX_DEBUG - if(!pf) - return; -#endif - - *((DWORD *) &x) = *((DWORD *) &pf[0]); - *((WORD *) &z) = *((WORD *) &pf[2]); -} - -D3DXINLINE -D3DXVECTOR3_16F::D3DXVECTOR3_16F( CONST D3DXFLOAT16 &fx, CONST D3DXFLOAT16 &fy, CONST D3DXFLOAT16 &fz ) -{ - x = fx; - y = fy; - z = fz; -} - - -// casting -D3DXINLINE -D3DXVECTOR3_16F::operator D3DXFLOAT16* () -{ - return (D3DXFLOAT16*) &x; -} - -D3DXINLINE -D3DXVECTOR3_16F::operator CONST D3DXFLOAT16* () const -{ - return (CONST D3DXFLOAT16*) &x; -} - - -// binary operators -D3DXINLINE BOOL -D3DXVECTOR3_16F::operator == ( CONST D3DXVECTOR3_16F &v ) const -{ - return *((DWORD *) &x) == *((DWORD *) &v.x) && - *((WORD *) &z) == *((WORD *) &v.z); -} - -D3DXINLINE BOOL -D3DXVECTOR3_16F::operator != ( CONST D3DXVECTOR3_16F &v ) const -{ - return *((DWORD *) &x) != *((DWORD *) &v.x) || - *((WORD *) &z) != *((WORD *) &v.z); -} - - -//-------------------------- -// 4D Vector -//-------------------------- -D3DXINLINE -D3DXVECTOR4::D3DXVECTOR4( CONST FLOAT *pf ) -{ -#ifdef D3DX_DEBUG - if(!pf) - return; -#endif - - x = pf[0]; - y = pf[1]; - z = pf[2]; - w = pf[3]; -} - -D3DXINLINE -D3DXVECTOR4::D3DXVECTOR4( CONST D3DXFLOAT16 *pf ) -{ -#ifdef D3DX_DEBUG - if(!pf) - return; -#endif - - D3DXFloat16To32Array(&x, pf, 4); -} - -D3DXINLINE -D3DXVECTOR4::D3DXVECTOR4( CONST D3DVECTOR& v, FLOAT f ) -{ - x = v.x; - y = v.y; - z = v.z; - w = f; -} - -D3DXINLINE -D3DXVECTOR4::D3DXVECTOR4( FLOAT fx, FLOAT fy, FLOAT fz, FLOAT fw ) -{ - x = fx; - y = fy; - z = fz; - w = fw; -} - - -// casting -D3DXINLINE -D3DXVECTOR4::operator FLOAT* () -{ - return (FLOAT *) &x; -} - -D3DXINLINE -D3DXVECTOR4::operator CONST FLOAT* () const -{ - return (CONST FLOAT *) &x; -} - - -// assignment operators -D3DXINLINE D3DXVECTOR4& -D3DXVECTOR4::operator += ( CONST D3DXVECTOR4& v ) -{ - x += v.x; - y += v.y; - z += v.z; - w += v.w; - return *this; -} - -D3DXINLINE D3DXVECTOR4& -D3DXVECTOR4::operator -= ( CONST D3DXVECTOR4& v ) -{ - x -= v.x; - y -= v.y; - z -= v.z; - w -= v.w; - return *this; -} - -D3DXINLINE D3DXVECTOR4& -D3DXVECTOR4::operator *= ( FLOAT f ) -{ - x *= f; - y *= f; - z *= f; - w *= f; - return *this; -} - -D3DXINLINE D3DXVECTOR4& -D3DXVECTOR4::operator /= ( FLOAT f ) -{ - FLOAT fInv = 1.0f / f; - x *= fInv; - y *= fInv; - z *= fInv; - w *= fInv; - return *this; -} - - -// unary operators -D3DXINLINE D3DXVECTOR4 -D3DXVECTOR4::operator + () const -{ - return *this; -} - -D3DXINLINE D3DXVECTOR4 -D3DXVECTOR4::operator - () const -{ - return D3DXVECTOR4(-x, -y, -z, -w); -} - - -// binary operators -D3DXINLINE D3DXVECTOR4 -D3DXVECTOR4::operator + ( CONST D3DXVECTOR4& v ) const -{ - return D3DXVECTOR4(x + v.x, y + v.y, z + v.z, w + v.w); -} - -D3DXINLINE D3DXVECTOR4 -D3DXVECTOR4::operator - ( CONST D3DXVECTOR4& v ) const -{ - return D3DXVECTOR4(x - v.x, y - v.y, z - v.z, w - v.w); -} - -D3DXINLINE D3DXVECTOR4 -D3DXVECTOR4::operator * ( FLOAT f ) const -{ - return D3DXVECTOR4(x * f, y * f, z * f, w * f); -} - -D3DXINLINE D3DXVECTOR4 -D3DXVECTOR4::operator / ( FLOAT f ) const -{ - FLOAT fInv = 1.0f / f; - return D3DXVECTOR4(x * fInv, y * fInv, z * fInv, w * fInv); -} - -D3DXINLINE D3DXVECTOR4 -operator * ( FLOAT f, CONST D3DXVECTOR4& v ) -{ - return D3DXVECTOR4(f * v.x, f * v.y, f * v.z, f * v.w); -} - - -D3DXINLINE BOOL -D3DXVECTOR4::operator == ( CONST D3DXVECTOR4& v ) const -{ - return x == v.x && y == v.y && z == v.z && w == v.w; -} - -D3DXINLINE BOOL -D3DXVECTOR4::operator != ( CONST D3DXVECTOR4& v ) const -{ - return x != v.x || y != v.y || z != v.z || w != v.w; -} - - - -//-------------------------- -// 4D Vector (16 bit) -//-------------------------- - -D3DXINLINE -D3DXVECTOR4_16F::D3DXVECTOR4_16F( CONST FLOAT *pf ) -{ -#ifdef D3DX_DEBUG - if(!pf) - return; -#endif - - D3DXFloat32To16Array(&x, pf, 4); -} - -D3DXINLINE -D3DXVECTOR4_16F::D3DXVECTOR4_16F( CONST D3DXFLOAT16 *pf ) -{ -#ifdef D3DX_DEBUG - if(!pf) - return; -#endif - - *((DWORD *) &x) = *((DWORD *) &pf[0]); - *((DWORD *) &z) = *((DWORD *) &pf[2]); -} - -D3DXINLINE -D3DXVECTOR4_16F::D3DXVECTOR4_16F( CONST D3DXVECTOR3_16F& v, CONST D3DXFLOAT16& f ) -{ - x = v.x; - y = v.y; - z = v.z; - w = f; -} - -D3DXINLINE -D3DXVECTOR4_16F::D3DXVECTOR4_16F( CONST D3DXFLOAT16 &fx, CONST D3DXFLOAT16 &fy, CONST D3DXFLOAT16 &fz, CONST D3DXFLOAT16 &fw ) -{ - x = fx; - y = fy; - z = fz; - w = fw; -} - - -// casting -D3DXINLINE -D3DXVECTOR4_16F::operator D3DXFLOAT16* () -{ - return (D3DXFLOAT16*) &x; -} - -D3DXINLINE -D3DXVECTOR4_16F::operator CONST D3DXFLOAT16* () const -{ - return (CONST D3DXFLOAT16*) &x; -} - - -// binary operators -D3DXINLINE BOOL -D3DXVECTOR4_16F::operator == ( CONST D3DXVECTOR4_16F &v ) const -{ - return *((DWORD *) &x) == *((DWORD *) &v.x) && - *((DWORD *) &z) == *((DWORD *) &v.z); -} - -D3DXINLINE BOOL -D3DXVECTOR4_16F::operator != ( CONST D3DXVECTOR4_16F &v ) const -{ - return *((DWORD *) &x) != *((DWORD *) &v.x) || - *((DWORD *) &z) != *((DWORD *) &v.z); -} - - -//-------------------------- -// Matrix -//-------------------------- -D3DXINLINE -D3DXMATRIX::D3DXMATRIX( CONST FLOAT* pf ) -{ -#ifdef D3DX_DEBUG - if(!pf) - return; -#endif - - memcpy(&_11, pf, sizeof(D3DXMATRIX)); -} - -D3DXINLINE -D3DXMATRIX::D3DXMATRIX( CONST D3DMATRIX& mat ) -{ - memcpy(&_11, &mat, sizeof(D3DXMATRIX)); -} - -D3DXINLINE -D3DXMATRIX::D3DXMATRIX( CONST D3DXFLOAT16* pf ) -{ -#ifdef D3DX_DEBUG - if(!pf) - return; -#endif - - D3DXFloat16To32Array(&_11, pf, 16); -} - -D3DXINLINE -D3DXMATRIX::D3DXMATRIX( FLOAT f11, FLOAT f12, FLOAT f13, FLOAT f14, - FLOAT f21, FLOAT f22, FLOAT f23, FLOAT f24, - FLOAT f31, FLOAT f32, FLOAT f33, FLOAT f34, - FLOAT f41, FLOAT f42, FLOAT f43, FLOAT f44 ) -{ - _11 = f11; _12 = f12; _13 = f13; _14 = f14; - _21 = f21; _22 = f22; _23 = f23; _24 = f24; - _31 = f31; _32 = f32; _33 = f33; _34 = f34; - _41 = f41; _42 = f42; _43 = f43; _44 = f44; -} - - - -// access grants -D3DXINLINE FLOAT& -D3DXMATRIX::operator () ( UINT iRow, UINT iCol ) -{ - return m[iRow][iCol]; -} - -D3DXINLINE FLOAT -D3DXMATRIX::operator () ( UINT iRow, UINT iCol ) const -{ - return m[iRow][iCol]; -} - - -// casting operators -D3DXINLINE -D3DXMATRIX::operator FLOAT* () -{ - return (FLOAT *) &_11; -} - -D3DXINLINE -D3DXMATRIX::operator CONST FLOAT* () const -{ - return (CONST FLOAT *) &_11; -} - - -// assignment operators -D3DXINLINE D3DXMATRIX& -D3DXMATRIX::operator *= ( CONST D3DXMATRIX& mat ) -{ - D3DXMatrixMultiply(this, this, &mat); - return *this; -} - -D3DXINLINE D3DXMATRIX& -D3DXMATRIX::operator += ( CONST D3DXMATRIX& mat ) -{ - _11 += mat._11; _12 += mat._12; _13 += mat._13; _14 += mat._14; - _21 += mat._21; _22 += mat._22; _23 += mat._23; _24 += mat._24; - _31 += mat._31; _32 += mat._32; _33 += mat._33; _34 += mat._34; - _41 += mat._41; _42 += mat._42; _43 += mat._43; _44 += mat._44; - return *this; -} - -D3DXINLINE D3DXMATRIX& -D3DXMATRIX::operator -= ( CONST D3DXMATRIX& mat ) -{ - _11 -= mat._11; _12 -= mat._12; _13 -= mat._13; _14 -= mat._14; - _21 -= mat._21; _22 -= mat._22; _23 -= mat._23; _24 -= mat._24; - _31 -= mat._31; _32 -= mat._32; _33 -= mat._33; _34 -= mat._34; - _41 -= mat._41; _42 -= mat._42; _43 -= mat._43; _44 -= mat._44; - return *this; -} - -D3DXINLINE D3DXMATRIX& -D3DXMATRIX::operator *= ( FLOAT f ) -{ - _11 *= f; _12 *= f; _13 *= f; _14 *= f; - _21 *= f; _22 *= f; _23 *= f; _24 *= f; - _31 *= f; _32 *= f; _33 *= f; _34 *= f; - _41 *= f; _42 *= f; _43 *= f; _44 *= f; - return *this; -} - -D3DXINLINE D3DXMATRIX& -D3DXMATRIX::operator /= ( FLOAT f ) -{ - FLOAT fInv = 1.0f / f; - _11 *= fInv; _12 *= fInv; _13 *= fInv; _14 *= fInv; - _21 *= fInv; _22 *= fInv; _23 *= fInv; _24 *= fInv; - _31 *= fInv; _32 *= fInv; _33 *= fInv; _34 *= fInv; - _41 *= fInv; _42 *= fInv; _43 *= fInv; _44 *= fInv; - return *this; -} - - -// unary operators -D3DXINLINE D3DXMATRIX -D3DXMATRIX::operator + () const -{ - return *this; -} - -D3DXINLINE D3DXMATRIX -D3DXMATRIX::operator - () const -{ - return D3DXMATRIX(-_11, -_12, -_13, -_14, - -_21, -_22, -_23, -_24, - -_31, -_32, -_33, -_34, - -_41, -_42, -_43, -_44); -} - - -// binary operators -D3DXINLINE D3DXMATRIX -D3DXMATRIX::operator * ( CONST D3DXMATRIX& mat ) const -{ - D3DXMATRIX matT; - D3DXMatrixMultiply(&matT, this, &mat); - return matT; -} - -D3DXINLINE D3DXMATRIX -D3DXMATRIX::operator + ( CONST D3DXMATRIX& mat ) const -{ - return D3DXMATRIX(_11 + mat._11, _12 + mat._12, _13 + mat._13, _14 + mat._14, - _21 + mat._21, _22 + mat._22, _23 + mat._23, _24 + mat._24, - _31 + mat._31, _32 + mat._32, _33 + mat._33, _34 + mat._34, - _41 + mat._41, _42 + mat._42, _43 + mat._43, _44 + mat._44); -} - -D3DXINLINE D3DXMATRIX -D3DXMATRIX::operator - ( CONST D3DXMATRIX& mat ) const -{ - return D3DXMATRIX(_11 - mat._11, _12 - mat._12, _13 - mat._13, _14 - mat._14, - _21 - mat._21, _22 - mat._22, _23 - mat._23, _24 - mat._24, - _31 - mat._31, _32 - mat._32, _33 - mat._33, _34 - mat._34, - _41 - mat._41, _42 - mat._42, _43 - mat._43, _44 - mat._44); -} - -D3DXINLINE D3DXMATRIX -D3DXMATRIX::operator * ( FLOAT f ) const -{ - return D3DXMATRIX(_11 * f, _12 * f, _13 * f, _14 * f, - _21 * f, _22 * f, _23 * f, _24 * f, - _31 * f, _32 * f, _33 * f, _34 * f, - _41 * f, _42 * f, _43 * f, _44 * f); -} - -D3DXINLINE D3DXMATRIX -D3DXMATRIX::operator / ( FLOAT f ) const -{ - FLOAT fInv = 1.0f / f; - return D3DXMATRIX(_11 * fInv, _12 * fInv, _13 * fInv, _14 * fInv, - _21 * fInv, _22 * fInv, _23 * fInv, _24 * fInv, - _31 * fInv, _32 * fInv, _33 * fInv, _34 * fInv, - _41 * fInv, _42 * fInv, _43 * fInv, _44 * fInv); -} - - -D3DXINLINE D3DXMATRIX -operator * ( FLOAT f, CONST D3DXMATRIX& mat ) -{ - return D3DXMATRIX(f * mat._11, f * mat._12, f * mat._13, f * mat._14, - f * mat._21, f * mat._22, f * mat._23, f * mat._24, - f * mat._31, f * mat._32, f * mat._33, f * mat._34, - f * mat._41, f * mat._42, f * mat._43, f * mat._44); -} - - -D3DXINLINE BOOL -D3DXMATRIX::operator == ( CONST D3DXMATRIX& mat ) const -{ - return 0 == memcmp(this, &mat, sizeof(D3DXMATRIX)); -} - -D3DXINLINE BOOL -D3DXMATRIX::operator != ( CONST D3DXMATRIX& mat ) const -{ - return 0 != memcmp(this, &mat, sizeof(D3DXMATRIX)); -} - - - -//-------------------------- -// Aligned Matrices -//-------------------------- - -D3DXINLINE -_D3DXMATRIXA16::_D3DXMATRIXA16( CONST FLOAT* f ) : - D3DXMATRIX( f ) -{ -} - -D3DXINLINE -_D3DXMATRIXA16::_D3DXMATRIXA16( CONST D3DMATRIX& m ) : - D3DXMATRIX( m ) -{ -} - -D3DXINLINE -_D3DXMATRIXA16::_D3DXMATRIXA16( CONST D3DXFLOAT16* f ) : - D3DXMATRIX( f ) -{ -} - -D3DXINLINE -_D3DXMATRIXA16::_D3DXMATRIXA16( FLOAT _11, FLOAT _12, FLOAT _13, FLOAT _14, - FLOAT _21, FLOAT _22, FLOAT _23, FLOAT _24, - FLOAT _31, FLOAT _32, FLOAT _33, FLOAT _34, - FLOAT _41, FLOAT _42, FLOAT _43, FLOAT _44 ) : - D3DXMATRIX(_11, _12, _13, _14, - _21, _22, _23, _24, - _31, _32, _33, _34, - _41, _42, _43, _44) -{ -} - -#ifndef SIZE_MAX -#define SIZE_MAX ((SIZE_T)-1) -#endif - -D3DXINLINE void* -_D3DXMATRIXA16::operator new( size_t s ) -{ - if (s > (SIZE_MAX-16)) - return NULL; - LPBYTE p = ::new BYTE[s + 16]; - if (p) - { - BYTE offset = (BYTE)(16 - ((UINT_PTR)p & 15)); - p += offset; - p[-1] = offset; - } - return p; -} - -D3DXINLINE void* -_D3DXMATRIXA16::operator new[]( size_t s ) -{ - if (s > (SIZE_MAX-16)) - return NULL; - LPBYTE p = ::new BYTE[s + 16]; - if (p) - { - BYTE offset = (BYTE)(16 - ((UINT_PTR)p & 15)); - p += offset; - p[-1] = offset; - } - return p; -} - -D3DXINLINE void -_D3DXMATRIXA16::operator delete(void* p) -{ - if(p) - { - BYTE* pb = static_cast(p); - pb -= pb[-1]; - ::delete [] pb; - } -} - -D3DXINLINE void -_D3DXMATRIXA16::operator delete[](void* p) -{ - if(p) - { - BYTE* pb = static_cast(p); - pb -= pb[-1]; - ::delete [] pb; - } -} - -D3DXINLINE _D3DXMATRIXA16& -_D3DXMATRIXA16::operator=(CONST D3DXMATRIX& rhs) -{ - memcpy(&_11, &rhs, sizeof(D3DXMATRIX)); - return *this; -} - - -//-------------------------- -// Quaternion -//-------------------------- - -D3DXINLINE -D3DXQUATERNION::D3DXQUATERNION( CONST FLOAT* pf ) -{ -#ifdef D3DX_DEBUG - if(!pf) - return; -#endif - - x = pf[0]; - y = pf[1]; - z = pf[2]; - w = pf[3]; -} - -D3DXINLINE -D3DXQUATERNION::D3DXQUATERNION( CONST D3DXFLOAT16* pf ) -{ -#ifdef D3DX_DEBUG - if(!pf) - return; -#endif - - D3DXFloat16To32Array(&x, pf, 4); -} - -D3DXINLINE -D3DXQUATERNION::D3DXQUATERNION( FLOAT fx, FLOAT fy, FLOAT fz, FLOAT fw ) -{ - x = fx; - y = fy; - z = fz; - w = fw; -} - - -// casting -D3DXINLINE -D3DXQUATERNION::operator FLOAT* () -{ - return (FLOAT *) &x; -} - -D3DXINLINE -D3DXQUATERNION::operator CONST FLOAT* () const -{ - return (CONST FLOAT *) &x; -} - - -// assignment operators -D3DXINLINE D3DXQUATERNION& -D3DXQUATERNION::operator += ( CONST D3DXQUATERNION& q ) -{ - x += q.x; - y += q.y; - z += q.z; - w += q.w; - return *this; -} - -D3DXINLINE D3DXQUATERNION& -D3DXQUATERNION::operator -= ( CONST D3DXQUATERNION& q ) -{ - x -= q.x; - y -= q.y; - z -= q.z; - w -= q.w; - return *this; -} - -D3DXINLINE D3DXQUATERNION& -D3DXQUATERNION::operator *= ( CONST D3DXQUATERNION& q ) -{ - D3DXQuaternionMultiply(this, this, &q); - return *this; -} - -D3DXINLINE D3DXQUATERNION& -D3DXQUATERNION::operator *= ( FLOAT f ) -{ - x *= f; - y *= f; - z *= f; - w *= f; - return *this; -} - -D3DXINLINE D3DXQUATERNION& -D3DXQUATERNION::operator /= ( FLOAT f ) -{ - FLOAT fInv = 1.0f / f; - x *= fInv; - y *= fInv; - z *= fInv; - w *= fInv; - return *this; -} - - -// unary operators -D3DXINLINE D3DXQUATERNION -D3DXQUATERNION::operator + () const -{ - return *this; -} - -D3DXINLINE D3DXQUATERNION -D3DXQUATERNION::operator - () const -{ - return D3DXQUATERNION(-x, -y, -z, -w); -} - - -// binary operators -D3DXINLINE D3DXQUATERNION -D3DXQUATERNION::operator + ( CONST D3DXQUATERNION& q ) const -{ - return D3DXQUATERNION(x + q.x, y + q.y, z + q.z, w + q.w); -} - -D3DXINLINE D3DXQUATERNION -D3DXQUATERNION::operator - ( CONST D3DXQUATERNION& q ) const -{ - return D3DXQUATERNION(x - q.x, y - q.y, z - q.z, w - q.w); -} - -D3DXINLINE D3DXQUATERNION -D3DXQUATERNION::operator * ( CONST D3DXQUATERNION& q ) const -{ - D3DXQUATERNION qT; - D3DXQuaternionMultiply(&qT, this, &q); - return qT; -} - -D3DXINLINE D3DXQUATERNION -D3DXQUATERNION::operator * ( FLOAT f ) const -{ - return D3DXQUATERNION(x * f, y * f, z * f, w * f); -} - -D3DXINLINE D3DXQUATERNION -D3DXQUATERNION::operator / ( FLOAT f ) const -{ - FLOAT fInv = 1.0f / f; - return D3DXQUATERNION(x * fInv, y * fInv, z * fInv, w * fInv); -} - - -D3DXINLINE D3DXQUATERNION -operator * (FLOAT f, CONST D3DXQUATERNION& q ) -{ - return D3DXQUATERNION(f * q.x, f * q.y, f * q.z, f * q.w); -} - - -D3DXINLINE BOOL -D3DXQUATERNION::operator == ( CONST D3DXQUATERNION& q ) const -{ - return x == q.x && y == q.y && z == q.z && w == q.w; -} - -D3DXINLINE BOOL -D3DXQUATERNION::operator != ( CONST D3DXQUATERNION& q ) const -{ - return x != q.x || y != q.y || z != q.z || w != q.w; -} - - - -//-------------------------- -// Plane -//-------------------------- - -D3DXINLINE -D3DXPLANE::D3DXPLANE( CONST FLOAT* pf ) -{ -#ifdef D3DX_DEBUG - if(!pf) - return; -#endif - - a = pf[0]; - b = pf[1]; - c = pf[2]; - d = pf[3]; -} - -D3DXINLINE -D3DXPLANE::D3DXPLANE( CONST D3DXFLOAT16* pf ) -{ -#ifdef D3DX_DEBUG - if(!pf) - return; -#endif - - D3DXFloat16To32Array(&a, pf, 4); -} - -D3DXINLINE -D3DXPLANE::D3DXPLANE( FLOAT fa, FLOAT fb, FLOAT fc, FLOAT fd ) -{ - a = fa; - b = fb; - c = fc; - d = fd; -} - - -// casting -D3DXINLINE -D3DXPLANE::operator FLOAT* () -{ - return (FLOAT *) &a; -} - -D3DXINLINE -D3DXPLANE::operator CONST FLOAT* () const -{ - return (CONST FLOAT *) &a; -} - - -// assignment operators -D3DXINLINE D3DXPLANE& -D3DXPLANE::operator *= ( FLOAT f ) -{ - a *= f; - b *= f; - c *= f; - d *= f; - return *this; -} - -D3DXINLINE D3DXPLANE& -D3DXPLANE::operator /= ( FLOAT f ) -{ - FLOAT fInv = 1.0f / f; - a *= fInv; - b *= fInv; - c *= fInv; - d *= fInv; - return *this; -} - - -// unary operators -D3DXINLINE D3DXPLANE -D3DXPLANE::operator + () const -{ - return *this; -} - -D3DXINLINE D3DXPLANE -D3DXPLANE::operator - () const -{ - return D3DXPLANE(-a, -b, -c, -d); -} - - -// binary operators -D3DXINLINE D3DXPLANE -D3DXPLANE::operator * ( FLOAT f ) const -{ - return D3DXPLANE(a * f, b * f, c * f, d * f); -} - -D3DXINLINE D3DXPLANE -D3DXPLANE::operator / ( FLOAT f ) const -{ - FLOAT fInv = 1.0f / f; - return D3DXPLANE(a * fInv, b * fInv, c * fInv, d * fInv); -} - -D3DXINLINE D3DXPLANE -operator * (FLOAT f, CONST D3DXPLANE& p ) -{ - return D3DXPLANE(f * p.a, f * p.b, f * p.c, f * p.d); -} - -D3DXINLINE BOOL -D3DXPLANE::operator == ( CONST D3DXPLANE& p ) const -{ - return a == p.a && b == p.b && c == p.c && d == p.d; -} - -D3DXINLINE BOOL -D3DXPLANE::operator != ( CONST D3DXPLANE& p ) const -{ - return a != p.a || b != p.b || c != p.c || d != p.d; -} - - - - -//-------------------------- -// Color -//-------------------------- - -D3DXINLINE -D3DXCOLOR::D3DXCOLOR( DWORD dw ) -{ - CONST FLOAT f = 1.0f / 255.0f; - r = f * (FLOAT) (unsigned char) (dw >> 16); - g = f * (FLOAT) (unsigned char) (dw >> 8); - b = f * (FLOAT) (unsigned char) (dw >> 0); - a = f * (FLOAT) (unsigned char) (dw >> 24); -} - -D3DXINLINE -D3DXCOLOR::D3DXCOLOR( CONST FLOAT* pf ) -{ -#ifdef D3DX_DEBUG - if(!pf) - return; -#endif - - r = pf[0]; - g = pf[1]; - b = pf[2]; - a = pf[3]; -} - -D3DXINLINE -D3DXCOLOR::D3DXCOLOR( CONST D3DXFLOAT16* pf ) -{ -#ifdef D3DX_DEBUG - if(!pf) - return; -#endif - - D3DXFloat16To32Array(&r, pf, 4); -} - -D3DXINLINE -D3DXCOLOR::D3DXCOLOR( CONST D3DCOLORVALUE& c ) -{ - r = c.r; - g = c.g; - b = c.b; - a = c.a; -} - -D3DXINLINE -D3DXCOLOR::D3DXCOLOR( FLOAT fr, FLOAT fg, FLOAT fb, FLOAT fa ) -{ - r = fr; - g = fg; - b = fb; - a = fa; -} - - -// casting -D3DXINLINE -D3DXCOLOR::operator DWORD () const -{ - DWORD dwR = r >= 1.0f ? 0xff : r <= 0.0f ? 0x00 : (DWORD) (r * 255.0f + 0.5f); - DWORD dwG = g >= 1.0f ? 0xff : g <= 0.0f ? 0x00 : (DWORD) (g * 255.0f + 0.5f); - DWORD dwB = b >= 1.0f ? 0xff : b <= 0.0f ? 0x00 : (DWORD) (b * 255.0f + 0.5f); - DWORD dwA = a >= 1.0f ? 0xff : a <= 0.0f ? 0x00 : (DWORD) (a * 255.0f + 0.5f); - - return (dwA << 24) | (dwR << 16) | (dwG << 8) | dwB; -} - - -D3DXINLINE -D3DXCOLOR::operator FLOAT * () -{ - return (FLOAT *) &r; -} - -D3DXINLINE -D3DXCOLOR::operator CONST FLOAT * () const -{ - return (CONST FLOAT *) &r; -} - - -D3DXINLINE -D3DXCOLOR::operator D3DCOLORVALUE * () -{ - return (D3DCOLORVALUE *) &r; -} - -D3DXINLINE -D3DXCOLOR::operator CONST D3DCOLORVALUE * () const -{ - return (CONST D3DCOLORVALUE *) &r; -} - - -D3DXINLINE -D3DXCOLOR::operator D3DCOLORVALUE& () -{ - return *((D3DCOLORVALUE *) &r); -} - -D3DXINLINE -D3DXCOLOR::operator CONST D3DCOLORVALUE& () const -{ - return *((CONST D3DCOLORVALUE *) &r); -} - - -// assignment operators -D3DXINLINE D3DXCOLOR& -D3DXCOLOR::operator += ( CONST D3DXCOLOR& c ) -{ - r += c.r; - g += c.g; - b += c.b; - a += c.a; - return *this; -} - -D3DXINLINE D3DXCOLOR& -D3DXCOLOR::operator -= ( CONST D3DXCOLOR& c ) -{ - r -= c.r; - g -= c.g; - b -= c.b; - a -= c.a; - return *this; -} - -D3DXINLINE D3DXCOLOR& -D3DXCOLOR::operator *= ( FLOAT f ) -{ - r *= f; - g *= f; - b *= f; - a *= f; - return *this; -} - -D3DXINLINE D3DXCOLOR& -D3DXCOLOR::operator /= ( FLOAT f ) -{ - FLOAT fInv = 1.0f / f; - r *= fInv; - g *= fInv; - b *= fInv; - a *= fInv; - return *this; -} - - -// unary operators -D3DXINLINE D3DXCOLOR -D3DXCOLOR::operator + () const -{ - return *this; -} - -D3DXINLINE D3DXCOLOR -D3DXCOLOR::operator - () const -{ - return D3DXCOLOR(-r, -g, -b, -a); -} - - -// binary operators -D3DXINLINE D3DXCOLOR -D3DXCOLOR::operator + ( CONST D3DXCOLOR& c ) const -{ - return D3DXCOLOR(r + c.r, g + c.g, b + c.b, a + c.a); -} - -D3DXINLINE D3DXCOLOR -D3DXCOLOR::operator - ( CONST D3DXCOLOR& c ) const -{ - return D3DXCOLOR(r - c.r, g - c.g, b - c.b, a - c.a); -} - -D3DXINLINE D3DXCOLOR -D3DXCOLOR::operator * ( FLOAT f ) const -{ - return D3DXCOLOR(r * f, g * f, b * f, a * f); -} - -D3DXINLINE D3DXCOLOR -D3DXCOLOR::operator / ( FLOAT f ) const -{ - FLOAT fInv = 1.0f / f; - return D3DXCOLOR(r * fInv, g * fInv, b * fInv, a * fInv); -} - - -D3DXINLINE D3DXCOLOR -operator * (FLOAT f, CONST D3DXCOLOR& c ) -{ - return D3DXCOLOR(f * c.r, f * c.g, f * c.b, f * c.a); -} - - -D3DXINLINE BOOL -D3DXCOLOR::operator == ( CONST D3DXCOLOR& c ) const -{ - return r == c.r && g == c.g && b == c.b && a == c.a; -} - -D3DXINLINE BOOL -D3DXCOLOR::operator != ( CONST D3DXCOLOR& c ) const -{ - return r != c.r || g != c.g || b != c.b || a != c.a; -} - - -#endif //__cplusplus - - - -//=========================================================================== -// -// Inline functions -// -//=========================================================================== - - -//-------------------------- -// 2D Vector -//-------------------------- - -D3DXINLINE FLOAT D3DXVec2Length - ( CONST D3DXVECTOR2 *pV ) -{ -#ifdef D3DX_DEBUG - if(!pV) - return 0.0f; -#endif - -#ifdef __cplusplus - return sqrtf(pV->x * pV->x + pV->y * pV->y); -#else - return (FLOAT) sqrt(pV->x * pV->x + pV->y * pV->y); -#endif -} - -D3DXINLINE FLOAT D3DXVec2LengthSq - ( CONST D3DXVECTOR2 *pV ) -{ -#ifdef D3DX_DEBUG - if(!pV) - return 0.0f; -#endif - - return pV->x * pV->x + pV->y * pV->y; -} - -D3DXINLINE FLOAT D3DXVec2Dot - ( CONST D3DXVECTOR2 *pV1, CONST D3DXVECTOR2 *pV2 ) -{ -#ifdef D3DX_DEBUG - if(!pV1 || !pV2) - return 0.0f; -#endif - - return pV1->x * pV2->x + pV1->y * pV2->y; -} - -D3DXINLINE FLOAT D3DXVec2CCW - ( CONST D3DXVECTOR2 *pV1, CONST D3DXVECTOR2 *pV2 ) -{ -#ifdef D3DX_DEBUG - if(!pV1 || !pV2) - return 0.0f; -#endif - - return pV1->x * pV2->y - pV1->y * pV2->x; -} - -D3DXINLINE D3DXVECTOR2* D3DXVec2Add - ( D3DXVECTOR2 *pOut, CONST D3DXVECTOR2 *pV1, CONST D3DXVECTOR2 *pV2 ) -{ -#ifdef D3DX_DEBUG - if(!pOut || !pV1 || !pV2) - return NULL; -#endif - - pOut->x = pV1->x + pV2->x; - pOut->y = pV1->y + pV2->y; - return pOut; -} - -D3DXINLINE D3DXVECTOR2* D3DXVec2Subtract - ( D3DXVECTOR2 *pOut, CONST D3DXVECTOR2 *pV1, CONST D3DXVECTOR2 *pV2 ) -{ -#ifdef D3DX_DEBUG - if(!pOut || !pV1 || !pV2) - return NULL; -#endif - - pOut->x = pV1->x - pV2->x; - pOut->y = pV1->y - pV2->y; - return pOut; -} - -D3DXINLINE D3DXVECTOR2* D3DXVec2Minimize - ( D3DXVECTOR2 *pOut, CONST D3DXVECTOR2 *pV1, CONST D3DXVECTOR2 *pV2 ) -{ -#ifdef D3DX_DEBUG - if(!pOut || !pV1 || !pV2) - return NULL; -#endif - - pOut->x = pV1->x < pV2->x ? pV1->x : pV2->x; - pOut->y = pV1->y < pV2->y ? pV1->y : pV2->y; - return pOut; -} - -D3DXINLINE D3DXVECTOR2* D3DXVec2Maximize - ( D3DXVECTOR2 *pOut, CONST D3DXVECTOR2 *pV1, CONST D3DXVECTOR2 *pV2 ) -{ -#ifdef D3DX_DEBUG - if(!pOut || !pV1 || !pV2) - return NULL; -#endif - - pOut->x = pV1->x > pV2->x ? pV1->x : pV2->x; - pOut->y = pV1->y > pV2->y ? pV1->y : pV2->y; - return pOut; -} - -D3DXINLINE D3DXVECTOR2* D3DXVec2Scale - ( D3DXVECTOR2 *pOut, CONST D3DXVECTOR2 *pV, FLOAT s ) -{ -#ifdef D3DX_DEBUG - if(!pOut || !pV) - return NULL; -#endif - - pOut->x = pV->x * s; - pOut->y = pV->y * s; - return pOut; -} - -D3DXINLINE D3DXVECTOR2* D3DXVec2Lerp - ( D3DXVECTOR2 *pOut, CONST D3DXVECTOR2 *pV1, CONST D3DXVECTOR2 *pV2, - FLOAT s ) -{ -#ifdef D3DX_DEBUG - if(!pOut || !pV1 || !pV2) - return NULL; -#endif - - pOut->x = pV1->x + s * (pV2->x - pV1->x); - pOut->y = pV1->y + s * (pV2->y - pV1->y); - return pOut; -} - - -//-------------------------- -// 3D Vector -//-------------------------- - -D3DXINLINE FLOAT D3DXVec3Length - ( CONST D3DXVECTOR3 *pV ) -{ -#ifdef D3DX_DEBUG - if(!pV) - return 0.0f; -#endif - -#ifdef __cplusplus - return sqrtf(pV->x * pV->x + pV->y * pV->y + pV->z * pV->z); -#else - return (FLOAT) sqrt(pV->x * pV->x + pV->y * pV->y + pV->z * pV->z); -#endif -} - -D3DXINLINE FLOAT D3DXVec3LengthSq - ( CONST D3DXVECTOR3 *pV ) -{ -#ifdef D3DX_DEBUG - if(!pV) - return 0.0f; -#endif - - return pV->x * pV->x + pV->y * pV->y + pV->z * pV->z; -} - -D3DXINLINE FLOAT D3DXVec3Dot - ( CONST D3DXVECTOR3 *pV1, CONST D3DXVECTOR3 *pV2 ) -{ -#ifdef D3DX_DEBUG - if(!pV1 || !pV2) - return 0.0f; -#endif - - return pV1->x * pV2->x + pV1->y * pV2->y + pV1->z * pV2->z; -} - -D3DXINLINE D3DXVECTOR3* D3DXVec3Cross - ( D3DXVECTOR3 *pOut, CONST D3DXVECTOR3 *pV1, CONST D3DXVECTOR3 *pV2 ) -{ - D3DXVECTOR3 v; - -#ifdef D3DX_DEBUG - if(!pOut || !pV1 || !pV2) - return NULL; -#endif - - v.x = pV1->y * pV2->z - pV1->z * pV2->y; - v.y = pV1->z * pV2->x - pV1->x * pV2->z; - v.z = pV1->x * pV2->y - pV1->y * pV2->x; - - *pOut = v; - return pOut; -} - -D3DXINLINE D3DXVECTOR3* D3DXVec3Add - ( D3DXVECTOR3 *pOut, CONST D3DXVECTOR3 *pV1, CONST D3DXVECTOR3 *pV2 ) -{ -#ifdef D3DX_DEBUG - if(!pOut || !pV1 || !pV2) - return NULL; -#endif - - pOut->x = pV1->x + pV2->x; - pOut->y = pV1->y + pV2->y; - pOut->z = pV1->z + pV2->z; - return pOut; -} - -D3DXINLINE D3DXVECTOR3* D3DXVec3Subtract - ( D3DXVECTOR3 *pOut, CONST D3DXVECTOR3 *pV1, CONST D3DXVECTOR3 *pV2 ) -{ -#ifdef D3DX_DEBUG - if(!pOut || !pV1 || !pV2) - return NULL; -#endif - - pOut->x = pV1->x - pV2->x; - pOut->y = pV1->y - pV2->y; - pOut->z = pV1->z - pV2->z; - return pOut; -} - -D3DXINLINE D3DXVECTOR3* D3DXVec3Minimize - ( D3DXVECTOR3 *pOut, CONST D3DXVECTOR3 *pV1, CONST D3DXVECTOR3 *pV2 ) -{ -#ifdef D3DX_DEBUG - if(!pOut || !pV1 || !pV2) - return NULL; -#endif - - pOut->x = pV1->x < pV2->x ? pV1->x : pV2->x; - pOut->y = pV1->y < pV2->y ? pV1->y : pV2->y; - pOut->z = pV1->z < pV2->z ? pV1->z : pV2->z; - return pOut; -} - -D3DXINLINE D3DXVECTOR3* D3DXVec3Maximize - ( D3DXVECTOR3 *pOut, CONST D3DXVECTOR3 *pV1, CONST D3DXVECTOR3 *pV2 ) -{ -#ifdef D3DX_DEBUG - if(!pOut || !pV1 || !pV2) - return NULL; -#endif - - pOut->x = pV1->x > pV2->x ? pV1->x : pV2->x; - pOut->y = pV1->y > pV2->y ? pV1->y : pV2->y; - pOut->z = pV1->z > pV2->z ? pV1->z : pV2->z; - return pOut; -} - -D3DXINLINE D3DXVECTOR3* D3DXVec3Scale - ( D3DXVECTOR3 *pOut, CONST D3DXVECTOR3 *pV, FLOAT s) -{ -#ifdef D3DX_DEBUG - if(!pOut || !pV) - return NULL; -#endif - - pOut->x = pV->x * s; - pOut->y = pV->y * s; - pOut->z = pV->z * s; - return pOut; -} - -D3DXINLINE D3DXVECTOR3* D3DXVec3Lerp - ( D3DXVECTOR3 *pOut, CONST D3DXVECTOR3 *pV1, CONST D3DXVECTOR3 *pV2, - FLOAT s ) -{ -#ifdef D3DX_DEBUG - if(!pOut || !pV1 || !pV2) - return NULL; -#endif - - pOut->x = pV1->x + s * (pV2->x - pV1->x); - pOut->y = pV1->y + s * (pV2->y - pV1->y); - pOut->z = pV1->z + s * (pV2->z - pV1->z); - return pOut; -} - - -//-------------------------- -// 4D Vector -//-------------------------- - -D3DXINLINE FLOAT D3DXVec4Length - ( CONST D3DXVECTOR4 *pV ) -{ -#ifdef D3DX_DEBUG - if(!pV) - return 0.0f; -#endif - -#ifdef __cplusplus - return sqrtf(pV->x * pV->x + pV->y * pV->y + pV->z * pV->z + pV->w * pV->w); -#else - return (FLOAT) sqrt(pV->x * pV->x + pV->y * pV->y + pV->z * pV->z + pV->w * pV->w); -#endif -} - -D3DXINLINE FLOAT D3DXVec4LengthSq - ( CONST D3DXVECTOR4 *pV ) -{ -#ifdef D3DX_DEBUG - if(!pV) - return 0.0f; -#endif - - return pV->x * pV->x + pV->y * pV->y + pV->z * pV->z + pV->w * pV->w; -} - -D3DXINLINE FLOAT D3DXVec4Dot - ( CONST D3DXVECTOR4 *pV1, CONST D3DXVECTOR4 *pV2 ) -{ -#ifdef D3DX_DEBUG - if(!pV1 || !pV2) - return 0.0f; -#endif - - return pV1->x * pV2->x + pV1->y * pV2->y + pV1->z * pV2->z + pV1->w * pV2->w; -} - -D3DXINLINE D3DXVECTOR4* D3DXVec4Add - ( D3DXVECTOR4 *pOut, CONST D3DXVECTOR4 *pV1, CONST D3DXVECTOR4 *pV2) -{ -#ifdef D3DX_DEBUG - if(!pOut || !pV1 || !pV2) - return NULL; -#endif - - pOut->x = pV1->x + pV2->x; - pOut->y = pV1->y + pV2->y; - pOut->z = pV1->z + pV2->z; - pOut->w = pV1->w + pV2->w; - return pOut; -} - -D3DXINLINE D3DXVECTOR4* D3DXVec4Subtract - ( D3DXVECTOR4 *pOut, CONST D3DXVECTOR4 *pV1, CONST D3DXVECTOR4 *pV2) -{ -#ifdef D3DX_DEBUG - if(!pOut || !pV1 || !pV2) - return NULL; -#endif - - pOut->x = pV1->x - pV2->x; - pOut->y = pV1->y - pV2->y; - pOut->z = pV1->z - pV2->z; - pOut->w = pV1->w - pV2->w; - return pOut; -} - -D3DXINLINE D3DXVECTOR4* D3DXVec4Minimize - ( D3DXVECTOR4 *pOut, CONST D3DXVECTOR4 *pV1, CONST D3DXVECTOR4 *pV2) -{ -#ifdef D3DX_DEBUG - if(!pOut || !pV1 || !pV2) - return NULL; -#endif - - pOut->x = pV1->x < pV2->x ? pV1->x : pV2->x; - pOut->y = pV1->y < pV2->y ? pV1->y : pV2->y; - pOut->z = pV1->z < pV2->z ? pV1->z : pV2->z; - pOut->w = pV1->w < pV2->w ? pV1->w : pV2->w; - return pOut; -} - -D3DXINLINE D3DXVECTOR4* D3DXVec4Maximize - ( D3DXVECTOR4 *pOut, CONST D3DXVECTOR4 *pV1, CONST D3DXVECTOR4 *pV2) -{ -#ifdef D3DX_DEBUG - if(!pOut || !pV1 || !pV2) - return NULL; -#endif - - pOut->x = pV1->x > pV2->x ? pV1->x : pV2->x; - pOut->y = pV1->y > pV2->y ? pV1->y : pV2->y; - pOut->z = pV1->z > pV2->z ? pV1->z : pV2->z; - pOut->w = pV1->w > pV2->w ? pV1->w : pV2->w; - return pOut; -} - -D3DXINLINE D3DXVECTOR4* D3DXVec4Scale - ( D3DXVECTOR4 *pOut, CONST D3DXVECTOR4 *pV, FLOAT s) -{ -#ifdef D3DX_DEBUG - if(!pOut || !pV) - return NULL; -#endif - - pOut->x = pV->x * s; - pOut->y = pV->y * s; - pOut->z = pV->z * s; - pOut->w = pV->w * s; - return pOut; -} - -D3DXINLINE D3DXVECTOR4* D3DXVec4Lerp - ( D3DXVECTOR4 *pOut, CONST D3DXVECTOR4 *pV1, CONST D3DXVECTOR4 *pV2, - FLOAT s ) -{ -#ifdef D3DX_DEBUG - if(!pOut || !pV1 || !pV2) - return NULL; -#endif - - pOut->x = pV1->x + s * (pV2->x - pV1->x); - pOut->y = pV1->y + s * (pV2->y - pV1->y); - pOut->z = pV1->z + s * (pV2->z - pV1->z); - pOut->w = pV1->w + s * (pV2->w - pV1->w); - return pOut; -} - - -//-------------------------- -// 4D Matrix -//-------------------------- - -D3DXINLINE D3DXMATRIX* D3DXMatrixIdentity - ( D3DXMATRIX *pOut ) -{ -#ifdef D3DX_DEBUG - if(!pOut) - return NULL; -#endif - - pOut->m[0][1] = pOut->m[0][2] = pOut->m[0][3] = - pOut->m[1][0] = pOut->m[1][2] = pOut->m[1][3] = - pOut->m[2][0] = pOut->m[2][1] = pOut->m[2][3] = - pOut->m[3][0] = pOut->m[3][1] = pOut->m[3][2] = 0.0f; - - pOut->m[0][0] = pOut->m[1][1] = pOut->m[2][2] = pOut->m[3][3] = 1.0f; - return pOut; -} - - -D3DXINLINE BOOL D3DXMatrixIsIdentity - ( CONST D3DXMATRIX *pM ) -{ -#ifdef D3DX_DEBUG - if(!pM) - return FALSE; -#endif - - return pM->m[0][0] == 1.0f && pM->m[0][1] == 0.0f && pM->m[0][2] == 0.0f && pM->m[0][3] == 0.0f && - pM->m[1][0] == 0.0f && pM->m[1][1] == 1.0f && pM->m[1][2] == 0.0f && pM->m[1][3] == 0.0f && - pM->m[2][0] == 0.0f && pM->m[2][1] == 0.0f && pM->m[2][2] == 1.0f && pM->m[2][3] == 0.0f && - pM->m[3][0] == 0.0f && pM->m[3][1] == 0.0f && pM->m[3][2] == 0.0f && pM->m[3][3] == 1.0f; -} - - -//-------------------------- -// Quaternion -//-------------------------- - -D3DXINLINE FLOAT D3DXQuaternionLength - ( CONST D3DXQUATERNION *pQ ) -{ -#ifdef D3DX_DEBUG - if(!pQ) - return 0.0f; -#endif - -#ifdef __cplusplus - return sqrtf(pQ->x * pQ->x + pQ->y * pQ->y + pQ->z * pQ->z + pQ->w * pQ->w); -#else - return (FLOAT) sqrt(pQ->x * pQ->x + pQ->y * pQ->y + pQ->z * pQ->z + pQ->w * pQ->w); -#endif -} - -D3DXINLINE FLOAT D3DXQuaternionLengthSq - ( CONST D3DXQUATERNION *pQ ) -{ -#ifdef D3DX_DEBUG - if(!pQ) - return 0.0f; -#endif - - return pQ->x * pQ->x + pQ->y * pQ->y + pQ->z * pQ->z + pQ->w * pQ->w; -} - -D3DXINLINE FLOAT D3DXQuaternionDot - ( CONST D3DXQUATERNION *pQ1, CONST D3DXQUATERNION *pQ2 ) -{ -#ifdef D3DX_DEBUG - if(!pQ1 || !pQ2) - return 0.0f; -#endif - - return pQ1->x * pQ2->x + pQ1->y * pQ2->y + pQ1->z * pQ2->z + pQ1->w * pQ2->w; -} - - -D3DXINLINE D3DXQUATERNION* D3DXQuaternionIdentity - ( D3DXQUATERNION *pOut ) -{ -#ifdef D3DX_DEBUG - if(!pOut) - return NULL; -#endif - - pOut->x = pOut->y = pOut->z = 0.0f; - pOut->w = 1.0f; - return pOut; -} - -D3DXINLINE BOOL D3DXQuaternionIsIdentity - ( CONST D3DXQUATERNION *pQ ) -{ -#ifdef D3DX_DEBUG - if(!pQ) - return FALSE; -#endif - - return pQ->x == 0.0f && pQ->y == 0.0f && pQ->z == 0.0f && pQ->w == 1.0f; -} - - -D3DXINLINE D3DXQUATERNION* D3DXQuaternionConjugate - ( D3DXQUATERNION *pOut, CONST D3DXQUATERNION *pQ ) -{ -#ifdef D3DX_DEBUG - if(!pOut || !pQ) - return NULL; -#endif - - pOut->x = -pQ->x; - pOut->y = -pQ->y; - pOut->z = -pQ->z; - pOut->w = pQ->w; - return pOut; -} - - -//-------------------------- -// Plane -//-------------------------- - -D3DXINLINE FLOAT D3DXPlaneDot - ( CONST D3DXPLANE *pP, CONST D3DXVECTOR4 *pV) -{ -#ifdef D3DX_DEBUG - if(!pP || !pV) - return 0.0f; -#endif - - return pP->a * pV->x + pP->b * pV->y + pP->c * pV->z + pP->d * pV->w; -} - -D3DXINLINE FLOAT D3DXPlaneDotCoord - ( CONST D3DXPLANE *pP, CONST D3DXVECTOR3 *pV) -{ -#ifdef D3DX_DEBUG - if(!pP || !pV) - return 0.0f; -#endif - - return pP->a * pV->x + pP->b * pV->y + pP->c * pV->z + pP->d; -} - -D3DXINLINE FLOAT D3DXPlaneDotNormal - ( CONST D3DXPLANE *pP, CONST D3DXVECTOR3 *pV) -{ -#ifdef D3DX_DEBUG - if(!pP || !pV) - return 0.0f; -#endif - - return pP->a * pV->x + pP->b * pV->y + pP->c * pV->z; -} - -D3DXINLINE D3DXPLANE* D3DXPlaneScale - (D3DXPLANE *pOut, CONST D3DXPLANE *pP, FLOAT s) -{ -#ifdef D3DX_DEBUG - if(!pOut || !pP) - return NULL; -#endif - - pOut->a = pP->a * s; - pOut->b = pP->b * s; - pOut->c = pP->c * s; - pOut->d = pP->d * s; - return pOut; -} - - -//-------------------------- -// Color -//-------------------------- - -D3DXINLINE D3DXCOLOR* D3DXColorNegative - (D3DXCOLOR *pOut, CONST D3DXCOLOR *pC) -{ -#ifdef D3DX_DEBUG - if(!pOut || !pC) - return NULL; -#endif - - pOut->r = 1.0f - pC->r; - pOut->g = 1.0f - pC->g; - pOut->b = 1.0f - pC->b; - pOut->a = pC->a; - return pOut; -} - -D3DXINLINE D3DXCOLOR* D3DXColorAdd - (D3DXCOLOR *pOut, CONST D3DXCOLOR *pC1, CONST D3DXCOLOR *pC2) -{ -#ifdef D3DX_DEBUG - if(!pOut || !pC1 || !pC2) - return NULL; -#endif - - pOut->r = pC1->r + pC2->r; - pOut->g = pC1->g + pC2->g; - pOut->b = pC1->b + pC2->b; - pOut->a = pC1->a + pC2->a; - return pOut; -} - -D3DXINLINE D3DXCOLOR* D3DXColorSubtract - (D3DXCOLOR *pOut, CONST D3DXCOLOR *pC1, CONST D3DXCOLOR *pC2) -{ -#ifdef D3DX_DEBUG - if(!pOut || !pC1 || !pC2) - return NULL; -#endif - - pOut->r = pC1->r - pC2->r; - pOut->g = pC1->g - pC2->g; - pOut->b = pC1->b - pC2->b; - pOut->a = pC1->a - pC2->a; - return pOut; -} - -D3DXINLINE D3DXCOLOR* D3DXColorScale - (D3DXCOLOR *pOut, CONST D3DXCOLOR *pC, FLOAT s) -{ -#ifdef D3DX_DEBUG - if(!pOut || !pC) - return NULL; -#endif - - pOut->r = pC->r * s; - pOut->g = pC->g * s; - pOut->b = pC->b * s; - pOut->a = pC->a * s; - return pOut; -} - -D3DXINLINE D3DXCOLOR* D3DXColorModulate - (D3DXCOLOR *pOut, CONST D3DXCOLOR *pC1, CONST D3DXCOLOR *pC2) -{ -#ifdef D3DX_DEBUG - if(!pOut || !pC1 || !pC2) - return NULL; -#endif - - pOut->r = pC1->r * pC2->r; - pOut->g = pC1->g * pC2->g; - pOut->b = pC1->b * pC2->b; - pOut->a = pC1->a * pC2->a; - return pOut; -} - -D3DXINLINE D3DXCOLOR* D3DXColorLerp - (D3DXCOLOR *pOut, CONST D3DXCOLOR *pC1, CONST D3DXCOLOR *pC2, FLOAT s) -{ -#ifdef D3DX_DEBUG - if(!pOut || !pC1 || !pC2) - return NULL; -#endif - - pOut->r = pC1->r + s * (pC2->r - pC1->r); - pOut->g = pC1->g + s * (pC2->g - pC1->g); - pOut->b = pC1->b + s * (pC2->b - pC1->b); - pOut->a = pC1->a + s * (pC2->a - pC1->a); - return pOut; -} - - -#endif // __D3DX9MATH_INL__ - diff --git a/src/Platform/CMakeLists.txt b/src/Platform/CMakeLists.txt new file mode 100644 index 00000000..1b9f8ddc --- /dev/null +++ b/src/Platform/CMakeLists.txt @@ -0,0 +1,6 @@ + +SET(Platform_src + d3dx9math.cpp +) + +ADD_LIBRARY(Exodus STATIC ${Platform_src}) diff --git a/src/Platform/d3dx9math.cpp b/src/Platform/d3dx9math.cpp new file mode 100644 index 00000000..9f2cd64c --- /dev/null +++ b/src/Platform/d3dx9math.cpp @@ -0,0 +1,217 @@ +#include +#include +#include +#include "d3dx9math.h" + +//This file contains parts of WINE project source code for d3dx9math licensed under GPLv2 + +//Implementation copied from WINE project d3dx9_36/math.c +D3DXVECTOR3* D3DXVec3Normalize(D3DXVECTOR3* out, const D3DXVECTOR3* pv) { + FLOAT norm = pv->norm(); + if (!norm) { + out->x = 0.0f; + out->y = 0.0f; + out->z = 0.0f; + } else { + out->x = pv->x / norm; + out->y = pv->y / norm; + out->z = pv->z / norm; + } + + return out; +} + +//Implementation copied from WINE project d3dx9_36/math.c +D3DXVECTOR4* D3DXVec3Transform(D3DXVECTOR4* out, const D3DXVECTOR3* pv, const D3DXMATRIX* pm) { + D3DXVECTOR4 result; + + result.x = pm->m[0][0] * pv->x + pm->m[1][0] * pv->y + pm->m[2][0] * pv->z + pm->m[3][0]; + result.y = pm->m[0][1] * pv->x + pm->m[1][1] * pv->y + pm->m[2][1] * pv->z + pm->m[3][1]; + result.z = pm->m[0][2] * pv->x + pm->m[1][2] * pv->y + pm->m[2][2] * pv->z + pm->m[3][2]; + result.w = pm->m[0][3] * pv->x + pm->m[1][3] * pv->y + pm->m[2][3] * pv->z + pm->m[3][3]; + *out = result; + return out; +} + +//Implementation copied from WINE project d3dx9_36/math.c +D3DXVECTOR3* D3DXVec3TransformNormal(D3DXVECTOR3* out, const D3DXVECTOR3* pv, const D3DXMATRIX* pm) { + const D3DXVECTOR3 v = *pv; + + out->x = pm->m[0][0] * v.x + pm->m[1][0] * v.y + pm->m[2][0] * v.z; + out->y = pm->m[0][1] * v.x + pm->m[1][1] * v.y + pm->m[2][1] * v.z; + out->z = pm->m[0][2] * v.x + pm->m[1][2] * v.y + pm->m[2][2] * v.z; + + return out; +} + +//Implementation copied from WINE project d3dx9_36/math.c +D3DXVECTOR4* D3DXVec4Transform(D3DXVECTOR4 *out, const D3DXVECTOR4 *pv, const D3DXMATRIX *pm) { + D3DXVECTOR4 result; + + result.x = pm->m[0][0] * pv->x + pm->m[1][0] * pv->y + pm->m[2][0] * pv->z + pm->m[3][0] * pv->w; + result.y = pm->m[0][1] * pv->x + pm->m[1][1] * pv->y + pm->m[2][1] * pv->z + pm->m[3][1] * pv->w; + result.z = pm->m[0][2] * pv->x + pm->m[1][2] * pv->y + pm->m[2][2] * pv->z + pm->m[3][2] * pv->w; + result.w = pm->m[0][3] * pv->x + pm->m[1][3] * pv->y + pm->m[2][3] * pv->z + pm->m[3][3] * pv->w; + + *out = result; + return out; +} + +float D3DXVec4Length(D3DXVECTOR4* v) { + return (float) sqrt(v->x * v->x + v->y * v->y + v->z * v->z + v->w * v->w); +} + + +void D3DXMatrixIdentity(D3DXMATRIX* mat) { + mat->identity(); +} + +//Implementation copied from WINE project d3dx9_36/math.c +float D3DXMatrixDeterminant(const D3DXMATRIX *pm) { + FLOAT t[3], v[4]; + + t[0] = pm->m[2][2] * pm->m[3][3] - pm->m[2][3] * pm->m[3][2]; + t[1] = pm->m[1][2] * pm->m[3][3] - pm->m[1][3] * pm->m[3][2]; + t[2] = pm->m[1][2] * pm->m[2][3] - pm->m[1][3] * pm->m[2][2]; + v[0] = pm->m[1][1] * t[0] - pm->m[2][1] * t[1] + pm->m[3][1] * t[2]; + v[1] = -pm->m[1][0] * t[0] + pm->m[2][0] * t[1] - pm->m[3][0] * t[2]; + + t[0] = pm->m[1][0] * pm->m[2][1] - pm->m[2][0] * pm->m[1][1]; + t[1] = pm->m[1][0] * pm->m[3][1] - pm->m[3][0] * pm->m[1][1]; + t[2] = pm->m[2][0] * pm->m[3][1] - pm->m[3][0] * pm->m[2][1]; + v[2] = pm->m[3][3] * t[0] - pm->m[2][3] * t[1] + pm->m[1][3] * t[2]; + v[3] = -pm->m[3][2] * t[0] + pm->m[2][2] * t[1] - pm->m[1][2] * t[2]; + + return pm->m[0][0] * v[0] + pm->m[0][1] * v[1] + + pm->m[0][2] * v[2] + pm->m[0][3] * v[3]; +} + +D3DXMATRIX* D3DXMatrixMultiply(D3DXMATRIX *out, const D3DXMATRIX *m1, const D3DXMATRIX *m2) { + *out = *m1 * *m2; + return out; +} + +//Implementation copied from WINE project d3dx9_36/math.c +D3DXMATRIX* D3DXMatrixInverse(D3DXMATRIX *out, FLOAT *pdeterminant, const D3DXMATRIX *pm) { + FLOAT det, t[3], v[16]; + UINT i, j; + + t[0] = pm->m[2][2] * pm->m[3][3] - pm->m[2][3] * pm->m[3][2]; + t[1] = pm->m[1][2] * pm->m[3][3] - pm->m[1][3] * pm->m[3][2]; + t[2] = pm->m[1][2] * pm->m[2][3] - pm->m[1][3] * pm->m[2][2]; + v[0] = pm->m[1][1] * t[0] - pm->m[2][1] * t[1] + pm->m[3][1] * t[2]; + v[4] = -pm->m[1][0] * t[0] + pm->m[2][0] * t[1] - pm->m[3][0] * t[2]; + + t[0] = pm->m[1][0] * pm->m[2][1] - pm->m[2][0] * pm->m[1][1]; + t[1] = pm->m[1][0] * pm->m[3][1] - pm->m[3][0] * pm->m[1][1]; + t[2] = pm->m[2][0] * pm->m[3][1] - pm->m[3][0] * pm->m[2][1]; + v[8] = pm->m[3][3] * t[0] - pm->m[2][3] * t[1] + pm->m[1][3] * t[2]; + v[12] = -pm->m[3][2] * t[0] + pm->m[2][2] * t[1] - pm->m[1][2] * t[2]; + + det = pm->m[0][0] * v[0] + pm->m[0][1] * v[4] + + pm->m[0][2] * v[8] + pm->m[0][3] * v[12]; + + if (det == 0.0f) + return nullptr; + if (pdeterminant) + *pdeterminant = det; + + t[0] = pm->m[2][2] * pm->m[3][3] - pm->m[2][3] * pm->m[3][2]; + t[1] = pm->m[0][2] * pm->m[3][3] - pm->m[0][3] * pm->m[3][2]; + t[2] = pm->m[0][2] * pm->m[2][3] - pm->m[0][3] * pm->m[2][2]; + v[1] = -pm->m[0][1] * t[0] + pm->m[2][1] * t[1] - pm->m[3][1] * t[2]; + v[5] = pm->m[0][0] * t[0] - pm->m[2][0] * t[1] + pm->m[3][0] * t[2]; + + t[0] = pm->m[0][0] * pm->m[2][1] - pm->m[2][0] * pm->m[0][1]; + t[1] = pm->m[3][0] * pm->m[0][1] - pm->m[0][0] * pm->m[3][1]; + t[2] = pm->m[2][0] * pm->m[3][1] - pm->m[3][0] * pm->m[2][1]; + v[9] = -pm->m[3][3] * t[0] - pm->m[2][3] * t[1]- pm->m[0][3] * t[2]; + v[13] = pm->m[3][2] * t[0] + pm->m[2][2] * t[1] + pm->m[0][2] * t[2]; + + t[0] = pm->m[1][2] * pm->m[3][3] - pm->m[1][3] * pm->m[3][2]; + t[1] = pm->m[0][2] * pm->m[3][3] - pm->m[0][3] * pm->m[3][2]; + t[2] = pm->m[0][2] * pm->m[1][3] - pm->m[0][3] * pm->m[1][2]; + v[2] = pm->m[0][1] * t[0] - pm->m[1][1] * t[1] + pm->m[3][1] * t[2]; + v[6] = -pm->m[0][0] * t[0] + pm->m[1][0] * t[1] - pm->m[3][0] * t[2]; + + t[0] = pm->m[0][0] * pm->m[1][1] - pm->m[1][0] * pm->m[0][1]; + t[1] = pm->m[3][0] * pm->m[0][1] - pm->m[0][0] * pm->m[3][1]; + t[2] = pm->m[1][0] * pm->m[3][1] - pm->m[3][0] * pm->m[1][1]; + v[10] = pm->m[3][3] * t[0] + pm->m[1][3] * t[1] + pm->m[0][3] * t[2]; + v[14] = -pm->m[3][2] * t[0] - pm->m[1][2] * t[1] - pm->m[0][2] * t[2]; + + t[0] = pm->m[1][2] * pm->m[2][3] - pm->m[1][3] * pm->m[2][2]; + t[1] = pm->m[0][2] * pm->m[2][3] - pm->m[0][3] * pm->m[2][2]; + t[2] = pm->m[0][2] * pm->m[1][3] - pm->m[0][3] * pm->m[1][2]; + v[3] = -pm->m[0][1] * t[0] + pm->m[1][1] * t[1] - pm->m[2][1] * t[2]; + v[7] = pm->m[0][0] * t[0] - pm->m[1][0] * t[1] + pm->m[2][0] * t[2]; + + v[11] = -pm->m[0][0] * (pm->m[1][1] * pm->m[2][3] - pm->m[1][3] * pm->m[2][1]) + + pm->m[1][0] * (pm->m[0][1] * pm->m[2][3] - pm->m[0][3] * pm->m[2][1]) - + pm->m[2][0] * (pm->m[0][1] * pm->m[1][3] - pm->m[0][3] * pm->m[1][1]); + + v[15] = pm->m[0][0] * (pm->m[1][1] * pm->m[2][2] - pm->m[1][2] * pm->m[2][1]) - + pm->m[1][0] * (pm->m[0][1] * pm->m[2][2] - pm->m[0][2] * pm->m[2][1]) + + pm->m[2][0] * (pm->m[0][1] * pm->m[1][2] - pm->m[0][2] * pm->m[1][1]); + + det = 1.0f / det; + + for (i = 0; i < 4; i++) + for (j = 0; j < 4; j++) + out->m[i][j] = v[4 * i + j] * det; + + return out; +} + +//Implementation copied from WINE project d3dx9_36/math.c +D3DXMATRIX* D3DXMatrixTranspose(D3DXMATRIX* out, const D3DXMATRIX* pm) { + const D3DXMATRIX m = *pm; + int i,j; + + for (i=0; i<4; i++) + for (j=0; j<4; j++) out->m[i][j] = m.m[j][i]; + + return out; +} + +//Implementation copied from WINE project d3dx9_36/math.c +D3DXMATRIX * D3DXMatrixLookAtLH(D3DXMATRIX *out, const D3DXVECTOR3 *eye, const D3DXVECTOR3 *at, const D3DXVECTOR3 *up) { + D3DXVECTOR3 right, upn, vec; + + vec = *at - *eye; + D3DXVec3Normalize(&vec, &vec); + right.cross(*up, vec); + upn.cross(vec, right); + D3DXVec3Normalize(&right, &right); + D3DXVec3Normalize(&upn, &upn); + out->m[0][0] = right.x; + out->m[1][0] = right.y; + out->m[2][0] = right.z; + out->m[3][0] = -right.dot(*eye); + out->m[0][1] = upn.x; + out->m[1][1] = upn.y; + out->m[2][1] = upn.z; + out->m[3][1] = -upn.dot(*eye); + out->m[0][2] = vec.x; + out->m[1][2] = vec.y; + out->m[2][2] = vec.z; + out->m[3][2] = -vec.dot(*eye); + out->m[0][3] = 0.0f; + out->m[1][3] = 0.0f; + out->m[2][3] = 0.0f; + out->m[3][3] = 1.0f; + + return out; +} + +//Implementation copied from WINE project d3dx9_36/math.c +D3DXMATRIX* D3DXMatrixPerspectiveFovLH(D3DXMATRIX *pout, float fovy, float aspect, float zn, float zf) { + D3DXMatrixIdentity(pout); + pout->m[0][0] = 1.0f / (aspect * tanf(fovy/2.0f)); + pout->m[1][1] = 1.0f / tanf(fovy/2.0f); + pout->m[2][2] = zf / (zf - zn); + pout->m[2][3] = 1.0f; + pout->m[3][2] = (zf * zn) / (zn - zf); + pout->m[3][3] = 0.0f; + return pout; +} diff --git a/src/Platform/d3dx9math.h b/src/Platform/d3dx9math.h new file mode 100644 index 00000000..48518994 --- /dev/null +++ b/src/Platform/d3dx9math.h @@ -0,0 +1,30 @@ +#ifndef PERIMETER_D3DX9MATH_H +#define PERIMETER_D3DX9MATH_H + +//Attempt to wrap legacy D3DX9 stuff with what we got + +#include +#include "xmath.h" +#include "../Render/inc/Umath.h" + +//Type mapping + +typedef Vect3f D3DXVECTOR3; +typedef Vect4f D3DXVECTOR4; +typedef CMatrix D3DXMATRIX; + +D3DXVECTOR3* D3DXVec3Normalize(D3DXVECTOR3* out, const D3DXVECTOR3* pv); +D3DXVECTOR4* D3DXVec3Transform(D3DXVECTOR4* out, const D3DXVECTOR3* pv, const D3DXMATRIX* pm); +D3DXVECTOR3* D3DXVec3TransformNormal(D3DXVECTOR3* out, const D3DXVECTOR3* pv, const D3DXMATRIX* pm); +D3DXVECTOR4* D3DXVec4Transform(D3DXVECTOR4 *pout, const D3DXVECTOR4 *pv, const D3DXMATRIX *pm); +float D3DXVec4Length(D3DXVECTOR4* v); + +void D3DXMatrixIdentity(D3DXMATRIX* mat); +float D3DXMatrixDeterminant(const D3DXMATRIX *m); +D3DXMATRIX* D3DXMatrixMultiply(D3DXMATRIX* out, const D3DXMATRIX* m1, const D3DXMATRIX* m2); +D3DXMATRIX* D3DXMatrixInverse(D3DXMATRIX* out, float* determinant, const D3DXMATRIX* mp); +D3DXMATRIX* D3DXMatrixTranspose(D3DXMATRIX* out, const D3DXMATRIX *pm); +D3DXMATRIX* D3DXMatrixLookAtLH(D3DXMATRIX *out, const D3DXVECTOR3 *eye, const D3DXVECTOR3 *at, const D3DXVECTOR3 *up); +D3DXMATRIX* D3DXMatrixPerspectiveFovLH(D3DXMATRIX *pout, float fovy, float aspect, float zn, float zf); + +#endif //PERIMETER_D3DX9MATH_H diff --git a/src/RRR3d/CMakeLists.txt b/src/RRR3d/CMakeLists.txt index e5d47493..70c1fcf1 100644 --- a/src/RRR3d/CMakeLists.txt +++ b/src/RRR3d/CMakeLists.txt @@ -14,7 +14,6 @@ target_include_directories(${PROJECT_NAME} PRIVATE ${CMAKE_SOURCE_DIR}/src/LexStd/header ${CMAKE_SOURCE_DIR}/src/MathLib/header ${CMAKE_SOURCE_DIR}/src/Rock3dGame/include - ${CMAKE_SOURCE_DIR}/extern/directx/include ) target_link_libraries(${PROJECT_NAME} PRIVATE From aa54ee9ab47b7bc941a39ed8d803638c47efd8e3 Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Fri, 21 Oct 2022 17:03:06 +0300 Subject: [PATCH 05/55] gitignore: add cmake-build-* --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index 360a5c97..6d619c45 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,5 @@ build* +cmake-build-* bin extern .vs From 7bac5100e353b44560c4c881b845021ee320e219 Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Sat, 22 Oct 2022 14:28:50 +0300 Subject: [PATCH 06/55] clang-format: UseTab ForIndentation --- .clang-format | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.clang-format b/.clang-format index f45344a1..c41f35e5 100644 --- a/.clang-format +++ b/.clang-format @@ -138,6 +138,6 @@ BasedOnStyle: Microsoft # - QT_REQUIRE_VERSION # TabWidth: 4 # UseCRLF: false -# UseTab: Never +UseTab: ForIndentation # ... From 3685f892a44014c654c1d152f832ff79acce41a8 Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Sat, 22 Oct 2022 14:31:54 +0300 Subject: [PATCH 07/55] linux: move platform files to XPlatform and fix building lslCollectionItem.cpp on Linux --- src/CMakeLists.txt | 4 +- src/LexStd/CMakeLists.txt | 1 + src/LexStd/header/lslAutoRef.h | 2 +- src/LexStd/header/lslCollectionItem.h | 2 + src/LexStd/header/lslContainer.h | 5 +++ src/LexStd/header/lslSafeContainer.h | 2 +- src/LexStd/header/lslUtility.h | 41 +++++++++++++++---- src/MapEditor/CMakeLists.txt | 1 + src/NetLib/CMakeLists.txt | 1 + src/Platform/CMakeLists.txt | 6 --- src/RRR3d/CMakeLists.txt | 1 + src/Rock3dEngine/CMakeLists.txt | 1 + src/Rock3dGame/CMakeLists.txt | 1 + src/XPlatform/CMakeLists.txt | 19 +++++++++ .../header}/d3dx9math.h | 5 +-- src/XPlatform/header/xplatform.h | 13 ++++++ .../source}/d3dx9math.cpp | 0 17 files changed, 85 insertions(+), 20 deletions(-) delete mode 100644 src/Platform/CMakeLists.txt create mode 100644 src/XPlatform/CMakeLists.txt rename src/{Platform => XPlatform/header}/d3dx9math.h (92%) create mode 100644 src/XPlatform/header/xplatform.h rename src/{Platform => XPlatform/source}/d3dx9math.cpp (100%) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 69d7ae2a..433e8261 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -6,13 +6,15 @@ if (MSVC) add_compile_options(/W3) # Warning level add_compile_options("$<$:/Gy>") # Enable Function-Level Linking +else() + add_compile_options(-fpermissive) endif() add_subdirectory(LexStd) add_subdirectory(MathLib) add_subdirectory(NetLib) #if (NOT MSVC) -# add_subdirectory(Platform) +# add_subdirectory(XPlatform) #endif() add_subdirectory(Rock3dEngine) add_subdirectory(Rock3dGame) diff --git a/src/LexStd/CMakeLists.txt b/src/LexStd/CMakeLists.txt index 14241670..9418a1fa 100644 --- a/src/LexStd/CMakeLists.txt +++ b/src/LexStd/CMakeLists.txt @@ -16,6 +16,7 @@ add_library(${PROJECT_NAME} STATIC target_include_directories(${PROJECT_NAME} PRIVATE header + ${CMAKE_SOURCE_DIR}/src/XPlatform/header ${CMAKE_SOURCE_DIR}/extern/tinyxml/include ) diff --git a/src/LexStd/header/lslAutoRef.h b/src/LexStd/header/lslAutoRef.h index 1360caa1..b4391d4e 100644 --- a/src/LexStd/header/lslAutoRef.h +++ b/src/LexStd/header/lslAutoRef.h @@ -64,7 +64,7 @@ class BaseAutoRef //В качестве owner-a может задаваться сам арuумент ссылка (Ref), тогда будет происходить самоудаление объекта template class AutoRef: public BaseAutoRef { - template friend class AutoRef; + template friend class AutoRef; private: typedef AutoRef<_Ref> _MyClass; typedef BaseAutoRef _MyBase; diff --git a/src/LexStd/header/lslCollectionItem.h b/src/LexStd/header/lslCollectionItem.h index d75793c1..00ace1dd 100644 --- a/src/LexStd/header/lslCollectionItem.h +++ b/src/LexStd/header/lslCollectionItem.h @@ -8,6 +8,8 @@ namespace lsl { +class CollectionTraits; + class CollectionItem: public virtual Object { public: diff --git a/src/LexStd/header/lslContainer.h b/src/LexStd/header/lslContainer.h index d8fbfe88..a251dbc2 100644 --- a/src/LexStd/header/lslContainer.h +++ b/src/LexStd/header/lslContainer.h @@ -8,6 +8,7 @@ namespace lsl { +template inline void SafeDelete(_Pnt &pnt); typedef std::vector BoolVec; typedef std::map BoolMap; @@ -19,6 +20,8 @@ template class List: public std::list<_Item> using _MyBase::remove; using _MyBase::remove_if; public: + typedef typename std::list<_Item>::iterator iterator; + typedef typename std::list<_Item>::const_iterator const_iterator; //Удаляет один элемент с таким значением iterator Remove(const _Item& item) { @@ -60,6 +63,8 @@ template class Vector: public std::vector<_Item> private: typedef std::vector<_Item> _MyBase; public: + typedef typename std::vector<_Item>::iterator iterator; + typedef typename std::vector<_Item>::const_iterator const_iterator; //Удаляет один элемент с таким значением iterator Remove(const _Item& item) { diff --git a/src/LexStd/header/lslSafeContainer.h b/src/LexStd/header/lslSafeContainer.h index 73070a2c..eaef0558 100644 --- a/src/LexStd/header/lslSafeContainer.h +++ b/src/LexStd/header/lslSafeContainer.h @@ -114,7 +114,7 @@ template class SafeContainer: public lsl::Object iterator nextIter = valIter; ++nextIter; - for (_PosList::iterator posIter = _posList.begin(); posIter != _posList.end(); ++posIter) + for (typename _PosList::iterator posIter = _posList.begin(); posIter != _posList.end(); ++posIter) if ((*posIter)->_myIter == valIter) { (*posIter)->_myIter = nextIter; diff --git a/src/LexStd/header/lslUtility.h b/src/LexStd/header/lslUtility.h index c2cdddb0..4a545530 100644 --- a/src/LexStd/header/lslUtility.h +++ b/src/LexStd/header/lslUtility.h @@ -1,11 +1,14 @@ #ifndef LSL_UTILITY #define LSL_UTILITY +#include + #include "lslCommon.h" #include "lslObject.h" #include "lslException.h" #include "lslContainer.h" #include "lslContainer.h" +#include "xplatform.h" #include namespace lsl @@ -109,10 +112,12 @@ class ExternInterf: public virtual Object { return GetImpl()->CastTo<_Class>(); } + /* template const _Class* GetImpl() const { return GetImpl()->CastTo<_Class>(); } + */ //Сравнивание интерфейсов. На практике реалзиация этих интерфейсов определяется результат bool Equal(const ExternInterf* value) const @@ -311,7 +316,7 @@ template inline _Value ClampValue(const _Value& value, const _Valu template inline void ExtractFilePathBase(std::basic_string<_T>& filePath, const std::basic_string<_T>& fileName, _T del) { - std::basic_string<_T>::size_type posName = fileName.rfind(del) + 1; + typename std::basic_string<_T>::size_type posName = fileName.rfind(del) + 1; filePath = fileName; filePath.erase(posName, fileName.size() - posName); } @@ -396,8 +401,8 @@ template template void ClassMapList< template void ClassMapList<_Key, _BaseClass>::Delete(const _Key& key) { - _Map::iterator ter = _map.find(key); - if (ter == _map.end()) + typename _Map::iterator iter = _map.find(key); + if (iter == _map.end()) { throw lsl::Error("template void ClassMapList<_Key, _BaseClass>::Delete(const _Key& key)"); } @@ -407,14 +412,14 @@ template void ClassMapList<_Key, _BaseClass>::Dele template void ClassMapList<_Key, _BaseClass>::Clear() { - for (_Map::iterator iter = _map.begin(); iter != _map.end(); ++iter) + for (typename _Map::iterator iter = _map.begin(); iter != _map.end(); ++iter) delete iter->second; _map.clear(); } template _BaseClass& ClassMapList<_Key, _BaseClass>::GetInstance(const _Key& key) const { - _Map::const_iterator iter = _map.find(key); + typename _Map::const_iterator iter = _map.find(key); if ( iter != _map.end()) return *iter->second; else @@ -426,7 +431,7 @@ template _BaseClass& ClassMapList<_Key, _BaseClass template RegisterMapClass<_Class, _ClassMapList>::RegisterMapClass(_ClassMapList& mapList, typename _ClassMapList::Key key) { - mapList.Add<_Class>(key); + mapList.Add(key); } template void RegisterMapClass<_Class, _ClassMapList>::Test() @@ -455,11 +460,15 @@ static Point& operator-(const Point& value1, const Point& value2) inline double GetTimeDbl() { +#ifdef _WIN32 // FIX_LINUX GetTickCount __int64 gTime, freq; QueryPerformanceCounter((LARGE_INTEGER*)&gTime); // Get current count QueryPerformanceFrequency((LARGE_INTEGER*)&freq); // Get processor freq return gTime/static_cast(freq); +#else + return 0.0; +#endif } @@ -489,7 +498,7 @@ inline string StrFmt(const TCHAR* value, ...) buf = new TCHAR[(++bufSize) * cBufSize]; } - res = _vsnprintf(buf, bufSize * cBufSize, value, arglist); + res = vsnprintf(buf, bufSize * cBufSize, value, arglist); } string ret(buf, res); @@ -499,6 +508,7 @@ inline string StrFmt(const TCHAR* value, ...) return ret; } +#ifdef _WIN32 inline stringW StrFmtW(const wchar_t* value, ...) { va_list arglist; @@ -530,6 +540,7 @@ inline stringW StrFmtW(const wchar_t* value, ...) return ret; } +#endif #pragma warning(default:4996) @@ -593,10 +604,18 @@ inline string ExtractFileDir(const string& str, const TCHAR del = cStrLev) inline lsl::stringW ConvertStrAToW(const char* str, unsigned length, UINT codePage = CP_ACP) { +#ifdef _WIN32 // FIX_LINUX MultiByteToWideChar int num = MultiByteToWideChar(codePage, MB_PRECOMPOSED, str, length, 0, 0); +#else + int num = mbstowcs(nullptr, str, length); +#endif lsl::stringW::value_type* resStr = new lsl::stringW::value_type[num]; +#ifdef _WIN32 // FIX_LINUX MultiByteToWideChar MultiByteToWideChar(codePage, MB_PRECOMPOSED, str, length, resStr, num); +#else + mbstowcs(resStr, str, length); +#endif lsl::stringW outStr(resStr, num); delete[] resStr; @@ -610,10 +629,18 @@ inline lsl::stringW ConvertStrAToW(const lsl::stringA& str, UINT codePage = CP_A inline lsl::stringA ConvertStrWToA(const wchar_t* str, unsigned length, UINT codePage = CP_ACP) { +#ifdef _WIN32 // FIX_LINUX WideCharToMultiByte int num = WideCharToMultiByte(codePage, WC_NO_BEST_FIT_CHARS, str, length, 0, 0, 0, 0); +#else + int num = wcstombs(nullptr, str, length); +#endif lsl::stringA::value_type* resStr = new lsl::stringA::value_type[num]; +#ifdef _WIN32 // FIX_LINUX WideCharToMultiByte WideCharToMultiByte(codePage, WC_NO_BEST_FIT_CHARS, str, length, resStr, num, 0, 0); +#else + wcstombs(resStr, str, length); +#endif lsl::stringA outStr(resStr, num); delete[] resStr; diff --git a/src/MapEditor/CMakeLists.txt b/src/MapEditor/CMakeLists.txt index 1c5dbfb5..5349de79 100644 --- a/src/MapEditor/CMakeLists.txt +++ b/src/MapEditor/CMakeLists.txt @@ -21,6 +21,7 @@ target_include_directories(${PROJECT_NAME} PRIVATE ${CMAKE_SOURCE_DIR}/src/LexStd/header ${CMAKE_SOURCE_DIR}/src/MathLib/header ${CMAKE_SOURCE_DIR}/src/Rock3dGame/include + ${CMAKE_SOURCE_DIR}/src/XPlatform/header ${CMAKE_SOURCE_DIR}/extern/directx/include ) diff --git a/src/NetLib/CMakeLists.txt b/src/NetLib/CMakeLists.txt index 95978a67..88386622 100644 --- a/src/NetLib/CMakeLists.txt +++ b/src/NetLib/CMakeLists.txt @@ -22,6 +22,7 @@ target_include_directories(${PROJECT_NAME} PRIVATE include ${CMAKE_SOURCE_DIR}/src/LexStd/header ${CMAKE_SOURCE_DIR}/src/MathLib/header + ${CMAKE_SOURCE_DIR}/src/XPlatform/header ${CMAKE_SOURCE_DIR}/extern/boost/include ${CMAKE_SOURCE_DIR}/extern/directx/include ) diff --git a/src/Platform/CMakeLists.txt b/src/Platform/CMakeLists.txt deleted file mode 100644 index 1b9f8ddc..00000000 --- a/src/Platform/CMakeLists.txt +++ /dev/null @@ -1,6 +0,0 @@ - -SET(Platform_src - d3dx9math.cpp -) - -ADD_LIBRARY(Exodus STATIC ${Platform_src}) diff --git a/src/RRR3d/CMakeLists.txt b/src/RRR3d/CMakeLists.txt index 70c1fcf1..c76b5eaf 100644 --- a/src/RRR3d/CMakeLists.txt +++ b/src/RRR3d/CMakeLists.txt @@ -14,6 +14,7 @@ target_include_directories(${PROJECT_NAME} PRIVATE ${CMAKE_SOURCE_DIR}/src/LexStd/header ${CMAKE_SOURCE_DIR}/src/MathLib/header ${CMAKE_SOURCE_DIR}/src/Rock3dGame/include + ${CMAKE_SOURCE_DIR}/src/XPlatform/header ) target_link_libraries(${PROJECT_NAME} PRIVATE diff --git a/src/Rock3dEngine/CMakeLists.txt b/src/Rock3dEngine/CMakeLists.txt index ff991e47..050ab19e 100644 --- a/src/Rock3dEngine/CMakeLists.txt +++ b/src/Rock3dEngine/CMakeLists.txt @@ -33,6 +33,7 @@ target_include_directories(${PROJECT_NAME} PRIVATE header ${CMAKE_SOURCE_DIR}/src/LexStd/header ${CMAKE_SOURCE_DIR}/src/MathLib/header + ${CMAKE_SOURCE_DIR}/src/XPlatform/header ${CMAKE_SOURCE_DIR}/extern/physx/include/Cooking ${CMAKE_SOURCE_DIR}/extern/physx/include/Foundation ${CMAKE_SOURCE_DIR}/extern/physx/include/Physics diff --git a/src/Rock3dGame/CMakeLists.txt b/src/Rock3dGame/CMakeLists.txt index 04e120db..5fc17b61 100644 --- a/src/Rock3dGame/CMakeLists.txt +++ b/src/Rock3dGame/CMakeLists.txt @@ -33,6 +33,7 @@ target_include_directories(${PROJECT_NAME} PRIVATE ${CMAKE_SOURCE_DIR}/src/MathLib/header ${CMAKE_SOURCE_DIR}/src/NetLib/include ${CMAKE_SOURCE_DIR}/src/Rock3dEngine/header + ${CMAKE_SOURCE_DIR}/src/XPlatform/header ${CMAKE_SOURCE_DIR}/extern/ogg/include ${CMAKE_SOURCE_DIR}/extern/physx/include/Cooking ${CMAKE_SOURCE_DIR}/extern/physx/include/Foundation diff --git a/src/XPlatform/CMakeLists.txt b/src/XPlatform/CMakeLists.txt new file mode 100644 index 00000000..758d4afe --- /dev/null +++ b/src/XPlatform/CMakeLists.txt @@ -0,0 +1,19 @@ +project(XPlatform) + +list(APPEND PROJECT_DIRS + "header" + "source" + ) +add_dir("${PROJECT_DIRS}" "${PROJECT_NAME}") + +add_library(${PROJECT_NAME} STATIC + ${${PROJECT_NAME}_SOURCE} + ${${PROJECT_NAME}_INLINE} + ${${PROJECT_NAME}_HEADER} +) + +target_include_directories(${PROJECT_NAME} PRIVATE + header +) + +target_link_libraries(${PROJECT_NAME}) diff --git a/src/Platform/d3dx9math.h b/src/XPlatform/header/d3dx9math.h similarity index 92% rename from src/Platform/d3dx9math.h rename to src/XPlatform/header/d3dx9math.h index 48518994..fca2674b 100644 --- a/src/Platform/d3dx9math.h +++ b/src/XPlatform/header/d3dx9math.h @@ -1,5 +1,4 @@ -#ifndef PERIMETER_D3DX9MATH_H -#define PERIMETER_D3DX9MATH_H +#pragma once //Attempt to wrap legacy D3DX9 stuff with what we got @@ -26,5 +25,3 @@ D3DXMATRIX* D3DXMatrixInverse(D3DXMATRIX* out, float* determinant, const D3DXMAT D3DXMATRIX* D3DXMatrixTranspose(D3DXMATRIX* out, const D3DXMATRIX *pm); D3DXMATRIX* D3DXMatrixLookAtLH(D3DXMATRIX *out, const D3DXVECTOR3 *eye, const D3DXVECTOR3 *at, const D3DXVECTOR3 *up); D3DXMATRIX* D3DXMatrixPerspectiveFovLH(D3DXMATRIX *pout, float fovy, float aspect, float zn, float zf); - -#endif //PERIMETER_D3DX9MATH_H diff --git a/src/XPlatform/header/xplatform.h b/src/XPlatform/header/xplatform.h new file mode 100644 index 00000000..11a5f8c4 --- /dev/null +++ b/src/XPlatform/header/xplatform.h @@ -0,0 +1,13 @@ +#pragma once +#ifdef _WIN32 + +#define PATH_SEP '\\' + +#else // NOT _WIN32 + +#define PATH_SEP '/' + +#define CP_ACP 0 // Windows ANSI code page +#define CP_THREAD_ACP 3 // ANSI code page of the current thread + +#endif diff --git a/src/Platform/d3dx9math.cpp b/src/XPlatform/source/d3dx9math.cpp similarity index 100% rename from src/Platform/d3dx9math.cpp rename to src/XPlatform/source/d3dx9math.cpp From 1c7d22a17791f2347c3bf86db61f7c4aca07a14f Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Sat, 22 Oct 2022 19:13:37 +0300 Subject: [PATCH 08/55] linux: fix build lslSerializable.cpp, add sprintf_s, replace auto_ptr --- src/LexStd/header/lslBaseCollection.h | 17 +++++++++++------ src/LexStd/header/lslClassList.h | 17 +++++++++-------- src/LexStd/header/lslCollection.h | 22 +++++++++++----------- src/LexStd/header/lslContainer.h | 10 +++++++--- src/LexStd/header/lslResource.h | 5 ++++- src/LexStd/header/lslSerialization.h | 4 +++- src/LexStd/source/lslResource.cpp | 2 +- src/XPlatform/header/xplatform.h | 18 ++++++++++++++++++ 8 files changed, 64 insertions(+), 31 deletions(-) diff --git a/src/LexStd/header/lslBaseCollection.h b/src/LexStd/header/lslBaseCollection.h index 52a7fb60..5a606748 100644 --- a/src/LexStd/header/lslBaseCollection.h +++ b/src/LexStd/header/lslBaseCollection.h @@ -7,6 +7,7 @@ #include "lslException.h" #include "lslClassList.h" #include "lslUtility.h" +#include "xplatform.h" namespace lsl { @@ -181,7 +182,9 @@ template class BaseCollectionCL: public private: typedef BaseCollection<_Item, _IdType> _MyBase; public: - typedef ClassList<_IdType, _Item, _Arg> ClassList; + typedef ClassList<_IdType, _Item, _Arg> ClassList; + typedef CollectionValue<_Item, _IdType> Value; + typedef typename std::list::iterator iterator; private: ClassList* _classList; bool _createClassList; @@ -233,6 +236,8 @@ template class ComCollec typedef ComCollection<_Item, _IdType, _Arg, _ArgThis> _MyClass; public: static const char* const cDefItemName; + typedef CollectionValue<_Item, _IdType> Value; + typedef typename std::list::iterator iterator; private: virtual CollectionItem* FindItem(const std::string& name); protected: @@ -617,12 +622,12 @@ template void BaseCollectionCL<_Item, _I template Collection<_Item, _IdType, _Arg, _ArgThis>::~Collection() { - Clear(); + this->Clear(); } template _Item* Collection<_Item, _IdType, _Arg, _ArgThis>::CreateItem(const _IdType& key) { - return GetClassList()->CreateInst(key, static_cast<_ArgThis>(this)); + return this->GetClassList()->CreateInst(key, static_cast<_ArgThis>(this)); } template void Collection<_Item, _IdType, _Arg, _ArgThis>::DestroyItem(_Item* value) @@ -632,7 +637,7 @@ template void Collection template void Collection<_Item, _IdType, _Arg, _ArgThis>::LoadItem(SReader* reader) { - ReadItem(reader, &Add(LoadType(reader))); + ReadItem(reader, &Add(this->LoadType(reader))); } template _Item& Collection<_Item, _IdType, _Arg, _ArgThis>::Add(_IdType key) @@ -642,7 +647,7 @@ template _Item& Collecti template template _Type& Collection<_Item, _IdType, _Arg, _ArgThis>::Add() { - ClassList::MyClassInst* classInst = GetClassList()->FindByClass<_Type>(); + auto classInst = this->GetClassList()->template FindByClass<_Type>(); if (!classInst) throw lsl::Error("_Type& Collection::Add()"); @@ -682,7 +687,7 @@ template void ComCollect template _Item* ComCollection<_Item, _IdType, _Arg, _ArgThis>::Find(const std::string& name) { - for (iterator iter = begin(); iter != end(); ++iter) + for (iterator iter = this->begin(); iter != this->end(); ++iter) if ((*iter)->GetName() == name) return *iter; diff --git a/src/LexStd/header/lslClassList.h b/src/LexStd/header/lslClassList.h index 24a322bd..0824ef52 100644 --- a/src/LexStd/header/lslClassList.h +++ b/src/LexStd/header/lslClassList.h @@ -23,7 +23,7 @@ template class BaseClassInst virtual ~BaseClassInst() {} virtual _BaseClass* CreateInst(const _Arg& arg) = 0; - virtual const type_info& GetTypeInfo() const = 0; + virtual const std::type_info& GetTypeInfo() const = 0; const _Key& GetKey() const { @@ -39,7 +39,7 @@ template class BaseClassInst<_Key, _BaseClass, voi BaseClassInst(const _Key& key): _key(key) {} virtual _BaseClass* CreateInst() = 0; - virtual const type_info& GetTypeInfo() const = 0; + virtual const std::type_info& GetTypeInfo() const = 0; const _Key& GetKey() const { @@ -56,7 +56,7 @@ template class ClassInst { return new _Class(arg); } - virtual const type_info& GetTypeInfo() const + virtual const std::type_info& GetTypeInfo() const { return typeid(_Class); } @@ -71,7 +71,7 @@ template class ClassInst<_Key, _Clas { return new _Class(); } - virtual const type_info& GetTypeInfo() const + virtual const std::type_info& GetTypeInfo() const { return typeid(_Class); } @@ -159,7 +159,8 @@ template template void B template void BaseClassList<_Key, _BaseClass, _Arg>::Del(const _Key& key) { - if (!Find(key)) + auto iter = Find(key); + if (!iter) throw lsl::Error("class del not found"); delete (*iter); @@ -168,20 +169,20 @@ template void BaseClassList<_Key, _Bas template void BaseClassList<_Key, _BaseClass, _Arg>::Clear() { - for (_ClassList::iterator iter = _classList.begin(); iter != _classList.end(); ++iter) + for (typename _ClassList::iterator iter = _classList.begin(); iter != _classList.end(); ++iter) delete iter->second; _classList.clear(); } template typename BaseClassList<_Key, _BaseClass, _Arg>::MyClassInst* BaseClassList<_Key, _BaseClass, _Arg>::Find(const _Key& key) const { - _ClassList::const_iterator iter = _classList.find(key); + typename _ClassList::const_iterator iter = _classList.find(key); return iter == _classList.end() ? 0 : iter->second; } template template typename BaseClassList<_Key, _BaseClass, _Arg>::MyClassInst* BaseClassList<_Key, _BaseClass, _Arg>::FindByClass() const { - for (_ClassList::const_iterator iter = _classList.begin(); iter != _classList.end(); ++iter) + for (typename _ClassList::const_iterator iter = _classList.begin(); iter != _classList.end(); ++iter) if (iter->second->GetTypeInfo() == typeid(_Class)) return iter->second; diff --git a/src/LexStd/header/lslCollection.h b/src/LexStd/header/lslCollection.h index 5071645a..b88f0e90 100644 --- a/src/LexStd/header/lslCollection.h +++ b/src/LexStd/header/lslCollection.h @@ -98,12 +98,12 @@ template class Collection<_Item, void, void, void>: public BaseColl template Collection<_Item, _IdType, _Arg, void>::~Collection() { - Clear(); + this->Clear(); } template _Item* Collection<_Item, _IdType, _Arg, void>::CreateItem(const _IdType& key, const _Arg& arg) { - return GetClassList()->CreateInst(key, arg); + return this->GetClassList()->CreateInst(key, arg); } template void Collection<_Item, _IdType, _Arg, void>::DestroyItem(_Item* value) @@ -113,7 +113,7 @@ template void Collection<_Item, _IdType, template void Collection<_Item, _IdType, _Arg, void>::LoadItemFrom(SReader* reader, const _Arg& arg) { - ReadItem(reader, &Add(LoadType(reader), arg)); + ReadItem(reader, &Add(this->LoadType(reader), arg)); } template _Item& Collection<_Item, _IdType, _Arg, void>::Add(_IdType key, const _Arg& arg) @@ -123,7 +123,7 @@ template _Item& Collection<_Item, _IdTyp template template _Type& Collection<_Item, _IdType, _Arg, void>::Add(const _Arg& arg) { - ClassList::MyClassInst* classInst = GetClassList()->FindByClass<_Type>(); + auto classInst = this->GetClassList()->template FindByClass<_Type>(); if (!classInst) throw lsl::Error("_Type& Collection::Add()"); @@ -135,12 +135,12 @@ template template _Type& Co template Collection<_Item, _IdType, void, void>::~Collection() { - Clear(); + this->Clear(); } template _Item* Collection<_Item, _IdType, void, void>::CreateItem(const _IdType& key) { - return GetClassList()->CreateInst(key); + return this->GetClassList()->CreateInst(key); } template void Collection<_Item, _IdType, void, void>::DestroyItem(_Item* value) @@ -150,7 +150,7 @@ template void Collection<_Item, _IdType, void, void> template void Collection<_Item, _IdType, void, void>::LoadItem(SReader* reader) { - ReadItem(reader, &Add(LoadType(reader))); + ReadItem(reader, &Add(this->LoadType(reader))); } template _Item& Collection<_Item, _IdType, void, void>::Add(_IdType key) @@ -160,7 +160,7 @@ template _Item& Collection<_Item, _IdType, void, voi template template _Type& Collection<_Item, _IdType, void, void>::Add() { - ClassList::MyClassInst* classInst = GetClassList()->FindByClass<_Type>(); + auto classInst = this->GetClassList()->template FindByClass<_Type>(); if (!classInst) throw lsl::Error("_Type& Collection::Add()"); @@ -173,7 +173,7 @@ template template _Type& Collection<_It template Collection<_Item, void, _Arg, _ArgThis>::~Collection() { - Clear(); + this->Clear(); } template _Item* Collection<_Item, void, _Arg, _ArgThis>::CreateItem() @@ -201,7 +201,7 @@ template _Item& Collection<_Item, void, template Collection<_Item, void, _Arg, void>::~Collection() { - Clear(); + this->Clear(); } template _Item* Collection<_Item, void, _Arg, void>::CreateItem(const _Arg& arg) @@ -229,7 +229,7 @@ template _Item& Collection<_Item, void, _Arg, void>::Ad template Collection<_Item, void, void, void>::~Collection() { - Clear(); + this->Clear(); } template _Item* Collection<_Item, void, void, void>::CreateItem() diff --git a/src/LexStd/header/lslContainer.h b/src/LexStd/header/lslContainer.h index a251dbc2..2427e33a 100644 --- a/src/LexStd/header/lslContainer.h +++ b/src/LexStd/header/lslContainer.h @@ -22,6 +22,8 @@ template class List: public std::list<_Item> public: typedef typename std::list<_Item>::iterator iterator; typedef typename std::list<_Item>::const_iterator const_iterator; + using std::list<_Item>::begin; + using std::list<_Item>::end; //Удаляет один элемент с таким значением iterator Remove(const _Item& item) { @@ -65,6 +67,8 @@ template class Vector: public std::vector<_Item> public: typedef typename std::vector<_Item>::iterator iterator; typedef typename std::vector<_Item>::const_iterator const_iterator; + using std::vector<_Item>::begin; + using std::vector<_Item>::end; //Удаляет один элемент с таким значением iterator Remove(const _Item& item) { @@ -240,7 +244,7 @@ template void Container<_Item>::Insert(const _Item& item) bool safe = !(_safeCont && !_safeCont->SafeInsert(item)); if (safe && AddItem(item)) - InsertItem(_cont.back()); + this->InsertItem(_cont.back()); } template void Container<_Item>::Remove(iterator iter) @@ -249,7 +253,7 @@ template void Container<_Item>::Remove(iterator iter) if (safe) { - RemoveItem(*iter); + this->RemoveItem(*iter); DeleteItem(iter); } } @@ -273,7 +277,7 @@ template void Container<_Item>::Remove(iterator sIter, iterator eIt if (safe) { for (iterator iter = sIter; iter != eIter; ++iter) - RemoveItem(*iter); + this->RemoveItem(*iter); DeleteItem(sIter, eIter); } } diff --git a/src/LexStd/header/lslResource.h b/src/LexStd/header/lslResource.h index e743bb1f..6c9638d6 100644 --- a/src/LexStd/header/lslResource.h +++ b/src/LexStd/header/lslResource.h @@ -5,6 +5,7 @@ #include "lslCollection.h" #include "lslUtility.h" #include "lslObject.h" +#include namespace lsl { @@ -25,7 +26,7 @@ template class IOResource class FileSystem { private: - static std::auto_ptr _instance; + static std::unique_ptr _instance; public: enum OpenMode {omText, omBinary}; @@ -55,6 +56,8 @@ class FileSystem const std::wstring& appPath() const; }; +class Resource; + class ResourcesTraits { friend class Resource; diff --git a/src/LexStd/header/lslSerialization.h b/src/LexStd/header/lslSerialization.h index faa35db8..f8e67e8c 100644 --- a/src/LexStd/header/lslSerialization.h +++ b/src/LexStd/header/lslSerialization.h @@ -282,7 +282,7 @@ struct SIOTraits if (AnalizeStream(str)) type = vtChar; else - throw lsl::Error("Неизвестный тип данных"); + throw lsl::Error("Unknown data type"); } }; protected: @@ -390,6 +390,8 @@ class SReader: public virtual SIOTraits virtual SReader* NextValue() = 0; }; +class SerialNodes; + //Защищенное наследование, в котором октрывается доступ к ссылочному классу Object class SerialNode: protected Component, public virtual Object, public SWriter, public SReader { diff --git a/src/LexStd/source/lslResource.cpp b/src/LexStd/source/lslResource.cpp index fbe31752..d73ae7db 100644 --- a/src/LexStd/source/lslResource.cpp +++ b/src/LexStd/source/lslResource.cpp @@ -8,7 +8,7 @@ namespace lsl { -std::auto_ptr FileSystem::_instance; +std::unique_ptr FileSystem::_instance; diff --git a/src/XPlatform/header/xplatform.h b/src/XPlatform/header/xplatform.h index 11a5f8c4..014c1bff 100644 --- a/src/XPlatform/header/xplatform.h +++ b/src/XPlatform/header/xplatform.h @@ -10,4 +10,22 @@ #define CP_ACP 0 // Windows ANSI code page #define CP_THREAD_ACP 3 // ANSI code page of the current thread +template int sprintf_s(char (&buffer)[size], const char *format, ...) +{ + va_list args; + va_start(args, format); + int result = vsnprintf(buffer, size, format, args); + va_end(args); + return result; +} + +inline int sprintf_s(char *buffer, size_t size, const char *format, ...) +{ + va_list ap; + va_start(ap, format); + int result = vsnprintf(buffer, size, format, ap); + va_end(ap); + return result; +} + #endif From 2958ca6299e21209d6b55b8d958ee99f7d44ef78 Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Sun, 23 Oct 2022 12:55:11 +0300 Subject: [PATCH 09/55] linux: fix build all files from LexStd --- src/LexStd/header/lslException.h | 4 ++-- src/LexStd/header/lslResource.h | 11 +++++++-- src/LexStd/header/lslSDK.h | 7 ++++-- src/LexStd/header/lslUtility.h | 2 +- src/LexStd/source/lslException.cpp | 2 ++ src/LexStd/source/lslResource.cpp | 16 +++++++++++++ src/LexStd/source/lslSDK.cpp | 38 ++++++++++++++++++++++++++++-- src/XPlatform/header/xplatform.h | 4 ++++ 8 files changed, 75 insertions(+), 9 deletions(-) diff --git a/src/LexStd/header/lslException.h b/src/LexStd/header/lslException.h index f4fe0fc1..dcb9e250 100644 --- a/src/LexStd/header/lslException.h +++ b/src/LexStd/header/lslException.h @@ -24,10 +24,10 @@ class AppLog std::string fileName; }; -class Error: public std::exception +class Error: public std::runtime_error { private: - typedef std::exception _MyBase; + typedef std::runtime_error _MyBase; private: void PrintToLog(); public: diff --git a/src/LexStd/header/lslResource.h b/src/LexStd/header/lslResource.h index 6c9638d6..fa76f92c 100644 --- a/src/LexStd/header/lslResource.h +++ b/src/LexStd/header/lslResource.h @@ -44,7 +44,9 @@ class FileSystem FileSystem(const std::wstring& appPath); std::istream* NewInStream(const std::string& fileName, OpenMode openMode, DWORD flags); +#ifdef _WIN32 // Not used at all std::wistream* NewInStreamW(const std::string& fileName, OpenMode openMode, DWORD flags); +#endif std::ostream* NewOutStream(const std::string& fileName, OpenMode openMode, DWORD flags); std::wostream* NewOutStreamW(const std::string& fileName, OpenMode openMode, DWORD flags); @@ -177,13 +179,13 @@ template class Resou private: typedef ComCollection<_Resource, _IdType, _Arg, _ArgThis> _MyBase; protected: - virtual void InsertItem(const Value& value); + virtual void InsertItem(const typename _MyBase::Value &value); }; -template void ResourceCollection<_Resource, _IdType, _Arg, _ArgThis>::InsertItem(const Value& value) +template void ResourceCollection<_Resource, _IdType, _Arg, _ArgThis>::InsertItem(const typename _MyBase::Value& value) { _MyBase::InsertItem(value); @@ -195,6 +197,7 @@ template void Resour inline std::wstring GetAppPath() { +#ifdef _WIN32 // FIX_LINUX GetModuleFileNameW wchar_t buf[1024]; unsigned size = GetModuleFileNameW(NULL, buf, 1024); @@ -202,6 +205,10 @@ inline std::wstring GetAppPath() lsl::ExtractFilePath(res, res); return res; +#else + std::wstring res; + return res; +#endif } inline std::wstring GetAppFilePath(const std::string& localFileName) diff --git a/src/LexStd/header/lslSDK.h b/src/LexStd/header/lslSDK.h index f9baeed0..d81b88fd 100644 --- a/src/LexStd/header/lslSDK.h +++ b/src/LexStd/header/lslSDK.h @@ -3,6 +3,7 @@ #include "lslObject.h" #include "lslContainer.h" #include "lslUtility.h" +#include "xplatform.h" #include namespace lsl @@ -114,7 +115,7 @@ class Profiler float maxDt; unsigned frames; - __int64 time; + uint64_t time; bool updated; }; typedef std::stack SampleStack; @@ -123,7 +124,7 @@ class Profiler private: Samples _samples; SampleStack _stack; - __int64 _cpuFreq; + uint64_t _cpuFreq; void ResetSample(SampleData& data); public: @@ -170,6 +171,7 @@ void ReleaseSDK(); inline void SpinWait(DWORD time) { +#ifdef _WIN32 // FIX_LINUX GetTickCount DWORD tick = GetTickCount(); DWORD newTick = tick; @@ -177,6 +179,7 @@ inline void SpinWait(DWORD time) { newTick = GetTickCount(); } +#endif } } \ No newline at end of file diff --git a/src/LexStd/header/lslUtility.h b/src/LexStd/header/lslUtility.h index 4a545530..b009337e 100644 --- a/src/LexStd/header/lslUtility.h +++ b/src/LexStd/header/lslUtility.h @@ -508,7 +508,7 @@ inline string StrFmt(const TCHAR* value, ...) return ret; } -#ifdef _WIN32 +#ifdef _WIN32 // Not used at all inline stringW StrFmtW(const wchar_t* value, ...) { va_list arglist; diff --git a/src/LexStd/source/lslException.cpp b/src/LexStd/source/lslException.cpp index 12248ac0..b71211e9 100644 --- a/src/LexStd/source/lslException.cpp +++ b/src/LexStd/source/lslException.cpp @@ -72,6 +72,7 @@ void Assert(const char* expression, const char* filePath, int line) //appLog << "assError: " << expression << " File: " << filePath << " Line: " << line << '\n'; +#ifdef _WIN32 // FIX_LINUX MessageBox switch (::MessageBox(0, sText, "ASSERT ERROR", MB_ABORTRETRYIGNORE | MB_TASKMODAL)) { case IDIGNORE: @@ -84,6 +85,7 @@ void Assert(const char* expression, const char* filePath, int line) case IDRETRY: _CrtDbgBreak(); } +#endif } } \ No newline at end of file diff --git a/src/LexStd/source/lslResource.cpp b/src/LexStd/source/lslResource.cpp index d73ae7db..58e8d744 100644 --- a/src/LexStd/source/lslResource.cpp +++ b/src/LexStd/source/lslResource.cpp @@ -95,23 +95,35 @@ template std::basic_ostream<_T, std::char_traits<_T>>* FileSystem::New std::istream* FileSystem::NewInStream(const std::string& fileName, OpenMode openMode, DWORD flags) { +#ifdef _WIN32 // FIX_LINUX Rewrite FS return NewInStream(fileName, openMode, flags); +#else + return NewInStream(fileName, openMode, flags); +#endif } +#ifdef _WIN32 // Not used at all std::wistream* FileSystem::NewInStreamW(const std::string& fileName, OpenMode openMode, DWORD flags) { return NewInStream(fileName, openMode, flags); } +#endif std::ostream* FileSystem::NewOutStream(const std::string& fileName, OpenMode openMode, DWORD flags) { +#ifdef _WIN32 // FIX_LINUX Rewrite FS return NewOutStream(fileName, openMode, flags); +#else + return NewOutStream(fileName, openMode, flags); +#endif } +#ifdef _WIN32 // Not used at all std::wostream* FileSystem::NewOutStreamW(const std::string& fileName, OpenMode openMode, DWORD flags) { return NewOutStream(fileName, openMode, flags); } +#endif void FileSystem::FreeStream(std::ios_base* stream) { @@ -121,9 +133,13 @@ void FileSystem::FreeStream(std::ios_base* stream) bool FileSystem::FileExists(const std::string& fileName) { +#ifdef _WIN32 // FIX_LINUX Rewrite FS DWORD dwAttrib = GetFileAttributesW(GetAppFilePath(fileName).c_str()); return (dwAttrib != INVALID_FILE_ATTRIBUTES && (dwAttrib & FILE_ATTRIBUTE_DIRECTORY) == 0); +#else + return true; +#endif } const std::wstring& FileSystem::appPath() const diff --git a/src/LexStd/source/lslSDK.cpp b/src/LexStd/source/lslSDK.cpp index 552b603d..11068857 100644 --- a/src/LexStd/source/lslSDK.cpp +++ b/src/LexStd/source/lslSDK.cpp @@ -112,15 +112,19 @@ void Win32ThreadPool::QueueWork(UserWork* value, Object* arg, Flags flags) DWORD dwFlags = 0; //tfBackground эмулируется с помощью tfLongFunc +#ifdef _WIN32 // FIX_LINUX QueueUserWorkItem if (flags.test(tfLongFunc) || flags.test(tfBackground)) dwFlags |= WT_EXECUTELONGFUNCTION; +#endif value->AddRef(); ThreadParameter* param = new ThreadParameter; param->pool = this; param->work = value; param->arg = arg; +#ifdef _WIN32 // FIX_LINUX QueueUserWorkItem QueueUserWorkItem(&ThreadPoolStart, param, dwFlags); +#endif //::CreateThread(0, 0, &ThreadPoolStart, value, 0, 0); } @@ -160,27 +164,39 @@ void SDK::SetDataTo(LockedObj* obj, void* data) Win32ThreadEvent::Win32ThreadEvent(bool manualReset, bool open, const std::string& name) { +#ifdef _WIN32 // FIX_LINUX ThreadEvents _event = CreateEvent(0, manualReset, open, name.empty() ? 0 : name.c_str()); +#endif } Win32ThreadEvent::~Win32ThreadEvent() { +#ifdef _WIN32 // FIX_LINUX ThreadEvents CloseHandle(_event); +#endif } bool Win32ThreadEvent::WaitOne(unsigned mlsTimeOut) { +#ifdef _WIN32 // FIX_LINUX ThreadEvents return WaitForSingleObject(_event, mlsTimeOut) > 0; +#else + return false; +#endif } void Win32ThreadEvent::Set() { +#ifdef _WIN32 // FIX_LINUX ThreadEvents SetEvent(_event); +#endif } void Win32ThreadEvent::Reset() { +#ifdef _WIN32 // FIX_LINUX ThreadEvents ResetEvent(_event); +#endif } @@ -208,20 +224,24 @@ LockedObj* Win32SDK::CreateLockedObj() LockedObj* obj = new LockedObj(); obj->AddRef(); +#ifdef _WIN32 // FIX_LINUX RTL_CRITICAL_SECTION RTL_CRITICAL_SECTION* section = new RTL_CRITICAL_SECTION; InitializeCriticalSection(section); SetDataTo(obj, section); +#endif return obj; } void Win32SDK::DestroyLockedObj(LockedObj* value) { +#ifdef _WIN32 // FIX_LINUX RTL_CRITICAL_SECTION RTL_CRITICAL_SECTION* section = reinterpret_cast(GetDataFrom(value)); DeleteCriticalSection(section); delete section; +#endif value->Release(); delete value; @@ -229,12 +249,16 @@ void Win32SDK::DestroyLockedObj(LockedObj* value) void Win32SDK::Lock(LockedObj* obj) { +#ifdef _WIN32 // FIX_LINUX RTL_CRITICAL_SECTION EnterCriticalSection(reinterpret_cast(GetDataFrom(obj))); +#endif } void Win32SDK::Unlock(LockedObj* obj) { - LeaveCriticalSection(reinterpret_cast(GetDataFrom(obj))); +#ifdef _WIN32 // FIX_LINUX RTL_CRITICAL_SECTION + LeaveCriticalSection(reinterpret_cast(GetDataFrom(obj))); +#endif } ThreadEvent* Win32SDK::CreateThreadEvent(bool manualReset, bool open, const std::string& name) @@ -254,11 +278,15 @@ float Win32SDK::GetTime() double Win32SDK::GetTimeDbl() { +#ifdef _WIN32 // FIX_LINUX QueryPerformanceFrequency __int64 gTime, freq; QueryPerformanceCounter((LARGE_INTEGER*)&gTime); // Get current count QueryPerformanceFrequency((LARGE_INTEGER*)&freq); // Get processor freq return gTime/static_cast(freq); +#else + return 0; +#endif } @@ -266,7 +294,9 @@ double Win32SDK::GetTimeDbl() Profiler::Profiler() { +#ifdef _WIN32 // FIX_LINUX QueryPerformanceFrequency QueryPerformanceFrequency((LARGE_INTEGER*)&_cpuFreq); +#endif } void Profiler::ResetSample(SampleData& data) @@ -289,7 +319,9 @@ void Profiler::Begin(const lsl::string& name) ResetSample(iter->second); } +#ifdef _WIN32 // FIX_LINUX QueryPerformanceCounter QueryPerformanceCounter((LARGE_INTEGER*)&iter->second.time); +#endif _stack.push(name); } @@ -304,8 +336,10 @@ void Profiler::End() Samples::iterator iter = _samples.find(name); - __int64 time = iter->second.time; + uint64_t time = iter->second.time; +#ifdef _WIN32 // FIX_LINUX QueryPerformanceCounter QueryPerformanceCounter((LARGE_INTEGER*)&iter->second.time); +#endif float dt = 1000 * (iter->second.time - time) / static_cast(_cpuFreq); iter->second.updated = true; diff --git a/src/XPlatform/header/xplatform.h b/src/XPlatform/header/xplatform.h index 014c1bff..6c88a3b2 100644 --- a/src/XPlatform/header/xplatform.h +++ b/src/XPlatform/header/xplatform.h @@ -7,9 +7,13 @@ #define PATH_SEP '/' +#define FLT_MAX __FLT_MAX__ + #define CP_ACP 0 // Windows ANSI code page #define CP_THREAD_ACP 3 // ANSI code page of the current thread +#define INFINITE 0xFFFFFFFF // For timeout + template int sprintf_s(char (&buffer)[size], const char *format, ...) { va_list args; From 6bff74ab5c38db9544b0c249a4b694037305bd63 Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Tue, 15 Jun 2021 12:33:18 +0300 Subject: [PATCH 10/55] ci: save builded artifact --- .github/workflows/ci.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 85704745..ca4f8a3c 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -30,3 +30,8 @@ jobs: useVcpkgToolchainFile: false buildDirectory: '${{ github.workspace }}/build' configurationRegexFilter: '${{ matrix.configuration }}' + - name: Upload artifact + uses: actions/upload-artifact@v2 + with: + name: rrr3d.${{ matrix.configuration }} + path: bin From 3640acca2b789441bb090f55f8bd936bd11385cc Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Mon, 14 Jun 2021 23:05:23 +0300 Subject: [PATCH 11/55] math: replace D3DXVECTOR2 with glm::vec2 in LexStd, MathLib and Rock3dEngine --- src/CMakeLists.txt | 2 + src/LexStd/header/lslSerialValue.h | 8 +- src/MapEditor/CMakeLists.txt | 1 + src/MathLib/CMakeLists.txt | 1 + src/MathLib/header/MathCommon.h | 5 + src/MathLib/header/lslMath.h | 56 +-- src/MathLib/header/lslMath.inl | 99 +++-- src/MathLib/header/lslVariant.h | 12 +- src/MathLib/header/r3dMath.h | 31 +- src/MathLib/source/lslVariant.cpp | 2 +- src/MathLib/source/r3dMath.cpp | 50 +-- src/NetLib/CMakeLists.txt | 1 + src/RRR3d/CMakeLists.txt | 1 + src/Rock3dEngine/CMakeLists.txt | 1 + src/Rock3dEngine/header/GraphManager.h | 6 +- src/Rock3dEngine/header/graph/ContextInfo.h | 8 +- src/Rock3dEngine/header/graph/FogPlane.h | 4 +- .../header/graph/MaterialLibrary.h | 6 +- src/Rock3dEngine/header/graph/StdNode.h | 8 +- src/Rock3dEngine/header/graph/VideoResource.h | 20 +- src/Rock3dEngine/header/gui/GUI.h | 170 ++++---- src/Rock3dEngine/header/res/GraphResource.h | 16 +- src/Rock3dEngine/source/GraphManager.cpp | 47 ++- src/Rock3dEngine/source/graph/ContextInfo.cpp | 18 +- src/Rock3dEngine/source/graph/Engine.cpp | 16 +- src/Rock3dEngine/source/graph/FogPlane.cpp | 6 +- src/Rock3dEngine/source/graph/FxManager.cpp | 4 +- src/Rock3dEngine/source/graph/GrassField.cpp | 14 +- src/Rock3dEngine/source/graph/HDREffect.cpp | 4 +- .../source/graph/MaterialLibrary.cpp | 34 +- .../source/graph/ShadowMapRender.cpp | 2 +- src/Rock3dEngine/source/graph/StdNode.cpp | 30 +- .../source/graph/VideoResource.cpp | 16 +- src/Rock3dEngine/source/gui/GUI.cpp | 384 +++++++++--------- src/Rock3dEngine/source/res/GraphResource.cpp | 24 +- src/Rock3dGame/CMakeLists.txt | 1 + 36 files changed, 572 insertions(+), 536 deletions(-) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 433e8261..8007fdef 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -17,6 +17,8 @@ add_subdirectory(NetLib) # add_subdirectory(XPlatform) #endif() add_subdirectory(Rock3dEngine) +if (FALSE) add_subdirectory(Rock3dGame) add_subdirectory(RRR3d) add_subdirectory(MapEditor) +endif() diff --git a/src/LexStd/header/lslSerialValue.h b/src/LexStd/header/lslSerialValue.h index 8208f743..f7bea46a 100644 --- a/src/LexStd/header/lslSerialValue.h +++ b/src/LexStd/header/lslSerialValue.h @@ -23,17 +23,17 @@ template struct SerialValue } }; -template<> struct SerialValue +template<> struct SerialValue { - typedef D3DXVECTOR2 _Value; + typedef glm::vec2 _Value; static void Write(SWriter* writer, const char* name, const _Value& value) { - writer->WriteValue(name, value, 2); + writer->WriteValue(name, reinterpret_cast(&value.x), 2); } static SReader* Read(SReader* reader, const char* name, _Value& value) { - return reader->ReadValue(name, value, 2); + return reader->ReadValue(name, reinterpret_cast(&value.x), 2); } }; diff --git a/src/MapEditor/CMakeLists.txt b/src/MapEditor/CMakeLists.txt index 5349de79..98eb8243 100644 --- a/src/MapEditor/CMakeLists.txt +++ b/src/MapEditor/CMakeLists.txt @@ -22,6 +22,7 @@ target_include_directories(${PROJECT_NAME} PRIVATE ${CMAKE_SOURCE_DIR}/src/MathLib/header ${CMAKE_SOURCE_DIR}/src/Rock3dGame/include ${CMAKE_SOURCE_DIR}/src/XPlatform/header + ${CMAKE_SOURCE_DIR}/extern/glm/include ${CMAKE_SOURCE_DIR}/extern/directx/include ) diff --git a/src/MathLib/CMakeLists.txt b/src/MathLib/CMakeLists.txt index a9f2d1e2..e0980061 100644 --- a/src/MathLib/CMakeLists.txt +++ b/src/MathLib/CMakeLists.txt @@ -18,6 +18,7 @@ add_library(${PROJECT_NAME} STATIC target_include_directories(${PROJECT_NAME} PRIVATE header ${CMAKE_SOURCE_DIR}/src/LexStd/header + ${CMAKE_SOURCE_DIR}/extern/glm/include ${CMAKE_SOURCE_DIR}/extern/directx/include ) diff --git a/src/MathLib/header/MathCommon.h b/src/MathLib/header/MathCommon.h index 6bf8c516..a44c211b 100644 --- a/src/MathLib/header/MathCommon.h +++ b/src/MathLib/header/MathCommon.h @@ -1,3 +1,8 @@ #pragma once #include "d3dx9math.h" + +#include // glm::vec2 +#include // glm::vec3 +#include // glm::vec4 +#include // glm::mat4 diff --git a/src/MathLib/header/lslMath.h b/src/MathLib/header/lslMath.h index 3e6df483..ac5145d7 100644 --- a/src/MathLib/header/lslMath.h +++ b/src/MathLib/header/lslMath.h @@ -31,18 +31,18 @@ void MatGetPos(const D3DXMATRIX& mat, D3DXVECTOR3& outPos); D3DXVECTOR3 MatGetPos(const D3DXMATRIX& mat); // -D3DXVECTOR2 Vec2TransformCoord(const D3DXVECTOR2& vec, const D3DXMATRIX& mat); -void Vec2NormCCW(const D3DXVECTOR2& vec2, D3DXVECTOR2& outVec); -D3DXVECTOR2 Vec2NormCCW(const D3DXVECTOR2& vec2); -void Vec2NormCW(const D3DXVECTOR2& vec2, D3DXVECTOR2& outVec); +glm::vec2 Vec2TransformCoord(const glm::vec2 &vec, const glm::mat4 &mat); +void Vec2NormCCW(const glm::vec2& vec2, glm::vec2& outVec); +glm::vec2 Vec2NormCCW(const glm::vec2& vec2); +void Vec2NormCW(const glm::vec2& vec2, glm::vec2& outVec); //Длина проекции vec1 на vec2 -float Vec2Proj(const D3DXVECTOR2& vec1, const D3DXVECTOR2& vec2); -void operator*=(D3DXVECTOR2& vec1, const D3DXVECTOR2& vec2); -D3DXVECTOR2 operator*(const D3DXVECTOR2& vec1, const D3DXVECTOR2& vec2); -void operator/=(D3DXVECTOR2& vec1, const D3DXVECTOR2& vec2); -D3DXVECTOR2 operator/(const D3DXVECTOR2& vec1, const D3DXVECTOR2& vec2); +float Vec2Proj(const glm::vec2& vec1, const glm::vec2& vec2); +void operator*=(glm::vec2& vec1, const glm::vec2& vec2); +glm::vec2 operator*(const glm::vec2& vec1, const glm::vec2& vec2); +void operator/=(glm::vec2& vec1, const glm::vec2& vec2); +glm::vec2 operator/(const glm::vec2& vec1, const glm::vec2& vec2); -D3DXVECTOR3 Vec3FromVec2(const D3DXVECTOR2& vec); +D3DXVECTOR3 Vec3FromVec2(const glm::vec2& vec); void Vec3Invert(const D3DXVECTOR3& vec, D3DXVECTOR3& rOut); D3DXVECTOR3 Vec3Invert(const D3DXVECTOR3& vec); D3DXVECTOR3 Vec3TransformCoord(const D3DXVECTOR3& vec, const D3DXMATRIX& mat); @@ -58,25 +58,25 @@ bool operator<(const D3DXVECTOR3& vec1, float scalar); bool operator>(const D3DXVECTOR3& vec1, const D3DXVECTOR3& vec2); bool operator<(const D3DXVECTOR3& vec1, const D3DXVECTOR3& vec2); -D3DXVECTOR4 Vec4FromVec2(const D3DXVECTOR2& vec); +D3DXVECTOR4 Vec4FromVec2(const glm::vec2& vec); D3DXVECTOR4 Vec4FromVec3(const D3DXVECTOR3& vec); //Линия из нормали и точки -void Line2FromNorm(const D3DXVECTOR2& norm, const D3DXVECTOR2& point, D3DXVECTOR3& outLine); -D3DXVECTOR3 Line2FromNorm(const D3DXVECTOR2& norm, const D3DXVECTOR2& point); +void Line2FromNorm(const glm::vec2& norm, const glm::vec2& point, D3DXVECTOR3& outLine); +D3DXVECTOR3 Line2FromNorm(const glm::vec2& norm, const glm::vec2& point); //Линия из направляющей и точки -void Line2FromDir(const D3DXVECTOR2& dir, const D3DXVECTOR2& point, D3DXVECTOR3& outLine); -D3DXVECTOR3 Line2FromDir(const D3DXVECTOR2& dir, const D3DXVECTOR2& point); -void Line2GetNorm(const D3DXVECTOR3& line, D3DXVECTOR2& norm); -void Line2GetDir(const D3DXVECTOR3& line, D3DXVECTOR2& dir); -void Line2GetRadiusVec(const D3DXVECTOR3& line, D3DXVECTOR2& outVec); -D3DXVECTOR2 Line2GetRadiusVec(const D3DXVECTOR3& line); -D3DXVECTOR2 Line2GetNorm(const D3DXVECTOR3& line); +void Line2FromDir(const glm::vec2& dir, const glm::vec2& point, D3DXVECTOR3& outLine); +D3DXVECTOR3 Line2FromDir(const glm::vec2& dir, const glm::vec2& point); +void Line2GetNorm(const D3DXVECTOR3& line, glm::vec2& norm); +void Line2GetDir(const D3DXVECTOR3& line, glm::vec2& dir); +void Line2GetRadiusVec(const D3DXVECTOR3& line, glm::vec2& outVec); +glm::vec2 Line2GetRadiusVec(const D3DXVECTOR3& line); +glm::vec2 Line2GetNorm(const D3DXVECTOR3& line); //Расстояние от прямой до точки по направлению нормали. Если точка лежит за линией по направлению нормали то результат положительный, иначе отрицательный -float Line2DistToPoint(const D3DXVECTOR3& line, const D3DXVECTOR2& point); +float Line2DistToPoint(const D3DXVECTOR3& line, const glm::vec2& point); //Возвращает нормальный вектор до точки, этот вектор в общем случае неединичный -void Line2NormVecToPoint(const D3DXVECTOR3& line, const D3DXVECTOR2& point, D3DXVECTOR2& outNormVec); -D3DXVECTOR2 Line2NormVecToPoint(const D3DXVECTOR3& line, const D3DXVECTOR2& point); +void Line2NormVecToPoint(const D3DXVECTOR3& line, const glm::vec2& point, glm::vec2& outNormVec); +glm::vec2 Line2NormVecToPoint(const D3DXVECTOR3& line, const glm::vec2& point); bool RayCastIntersectSphere(const D3DXVECTOR3& rayPos, const D3DXVECTOR3& rayVec, const D3DXVECTOR3& spherePos, float sphereRadius, float* t = 0); float PlaneDistToPoint(const D3DXPLANE& plane, const D3DXVECTOR3& point); @@ -89,10 +89,10 @@ const D3DXMATRIX IdentityMatrix(1.0f, 0.0f, 0.0f, 0.0f, const D3DXVECTOR3 XVector(1.0f, 0.0f, 0.0f); const D3DXVECTOR3 YVector(0.0f, 1.0f, 0.0f); const D3DXVECTOR3 ZVector(0.0f, 0.0f, 1.0f); -const D3DXVECTOR2 NullVec2(0.0f, 0.0f); +const glm::vec2 NullVec2(0.0f, 0.0f); const D3DXVECTOR3 NullVector(0.0f, 0.0f, 0.0f); const D3DXVECTOR4 NullVec4(0.0f, 0.0f, 0.0f, 0.0f); -const D3DXVECTOR2 IdentityVec2(1.0f, 1.0f); +const glm::vec2 IdentityVec2(1.0f, 1.0f); const D3DXVECTOR3 IdentityVector(1.0f, 1.0f, 1.0f); const D3DXVECTOR4 IdentityVec4(1.0f, 1.0f, 1.0f, 1.0f); const D3DXVECTOR3 IdentityHalfVec (0.5f, 0.5f, 0.5f); @@ -400,7 +400,7 @@ template<> struct ValueRange //Объем фигуры unsigned _volume; //Шаг в интерполирвоанном значении относительно каждой ячейки - D3DXVECTOR2 _step; + glm::vec2 _step; // D3DXVECTOR3 _minAngle; D3DXVECTOR3 _maxAngle; @@ -413,7 +413,7 @@ template<> struct ValueRange LSL_ASSERT(_volume > 0); - D3DXVECTOR2 leng = _max - _min; + glm::vec2 leng(_max.x - _min.x, _max.y - _min.y); _step.x = _freq.x > 1 ? leng.x / (_freq.x - 1) : 0; _step.y = _freq.y > 1 ? leng.y / (_freq.y - 1) : 0; @@ -536,7 +536,7 @@ template<> struct ValueRange }; typedef ValueRange FloatRange; -typedef ValueRange Vec2Range; +typedef ValueRange Vec2Range; typedef ValueRange Vec4Range; typedef ValueRange QuatRange; typedef ValueRange ColorRange; diff --git a/src/MathLib/header/lslMath.inl b/src/MathLib/header/lslMath.inl index bc0ec059..3648af62 100644 --- a/src/MathLib/header/lslMath.inl +++ b/src/MathLib/header/lslMath.inl @@ -136,18 +136,45 @@ inline D3DXVECTOR3 MatGetPos(const D3DXMATRIX& mat) return res; } +inline glm::mat4 d3dMatrixToGLM(const D3DXMATRIX &mat) +{ + glm::mat4 mat4glm(mat._11, mat._21, mat._31, mat._41, + mat._12, mat._22, mat._32, mat._42, + mat._13, mat._23, mat._33, mat._43, + mat._14, mat._24, mat._34, mat._44); + return mat4glm; +} + +inline glm::vec2 Vec2Minimize(const glm::vec2 &vec1, const glm::vec2 &vec2) +{ + glm::vec2 pOut; + pOut.x = vec1.x < vec2.x ? vec1.x : vec2.x; + pOut.y = vec1.y < vec2.y ? vec1.y : vec2.y; + return pOut; +} +inline glm::vec2 Vec2Maximize(const glm::vec2 &vec1, const glm::vec2 &vec2) +{ + glm::vec2 pOut; + pOut.x = vec1.x > vec2.x ? vec1.x : vec2.x; + pOut.y = vec1.y > vec2.y ? vec1.y : vec2.y; + return pOut; +} +inline glm::vec2 Vec2TransformCoord(const glm::vec2 &vec, const glm::mat4 &mat) +{ + glm::vec4 res4 = glm::vec4(vec.x, vec.y, 0, 1) * mat; + return glm::vec2(res4.x, res4.y); +} -inline D3DXVECTOR2 Vec2TransformCoord(const D3DXVECTOR2& vec, const D3DXMATRIX& mat) +inline glm::vec2 Vec2TransformNormal(const glm::vec2 &vec, const glm::mat4 &mat) { - D3DXVECTOR2 res; - D3DXVec2TransformCoord(&res, &vec, &mat); - return res; + glm::vec4 res4 = glm::vec4(vec.x, vec.y, 0, 0) * mat; + return glm::vec2(res4.x, res4.y); } //Поворот вектора на 90 градуос против часовой стрелки, иначе говоря его нормаль -inline void Vec2NormCCW(const D3DXVECTOR2& vec, D3DXVECTOR2& outVec) +inline void Vec2NormCCW(const glm::vec2& vec, glm::vec2& outVec) { //На случай если &vec2 == &outVec float tmpX = vec.x; @@ -156,15 +183,15 @@ inline void Vec2NormCCW(const D3DXVECTOR2& vec, D3DXVECTOR2& outVec) outVec.y = tmpX; } -inline D3DXVECTOR2 Vec2NormCCW(const D3DXVECTOR2& vec2) +inline glm::vec2 Vec2NormCCW(const glm::vec2& vec2) { - D3DXVECTOR2 res; + glm::vec2 res; Vec2NormCCW(vec2, res); return res; } //Поворот вектора на 90 градуос по часовой стрелки, иначе говоря его нормаль -inline void Vec2NormCW(const D3DXVECTOR2& vec, D3DXVECTOR2& outVec) +inline void Vec2NormCW(const glm::vec2& vec, glm::vec2& outVec) { //На случай если &vec2 == &outVec float tmpX = vec.x; @@ -173,34 +200,34 @@ inline void Vec2NormCW(const D3DXVECTOR2& vec, D3DXVECTOR2& outVec) outVec.y = -tmpX; } -inline float Vec2Proj(const D3DXVECTOR2& vec1, const D3DXVECTOR2& vec2) +inline float Vec2Proj(const glm::vec2& vec1, const glm::vec2& vec2) { - return D3DXVec2Dot(&vec1, &vec2) / D3DXVec2Length(&vec2); + return (vec1.x * vec2.x + vec1.y * vec2.y) / glm::length(vec2); } -inline void operator*=(D3DXVECTOR2& vec1, const D3DXVECTOR2& vec2) +inline void operator*=(glm::vec2& vec1, const glm::vec2& vec2) { vec1.x *= vec2.x; vec1.y *= vec2.y; } -inline D3DXVECTOR2 operator*(const D3DXVECTOR2& vec1, const D3DXVECTOR2& vec2) +inline glm::vec2 operator*(const glm::vec2& vec1, const glm::vec2& vec2) { - D3DXVECTOR2 res = vec1; + glm::vec2 res = vec1; res *= vec2; return res; } -inline void operator/=(D3DXVECTOR2& vec1, const D3DXVECTOR2& vec2) +inline void operator/=(glm::vec2& vec1, const glm::vec2& vec2) { vec1.x /= vec2.x; vec1.y /= vec2.y; } -inline D3DXVECTOR2 operator/(const D3DXVECTOR2& vec1, const D3DXVECTOR2& vec2) +inline glm::vec2 operator/(const glm::vec2& vec1, const glm::vec2& vec2) { - D3DXVECTOR2 res = vec1; + glm::vec2 res = vec1; res /= vec2; return res; @@ -209,7 +236,7 @@ inline D3DXVECTOR2 operator/(const D3DXVECTOR2& vec1, const D3DXVECTOR2& vec2) -inline D3DXVECTOR3 Vec3FromVec2(const D3DXVECTOR2& vec) +inline D3DXVECTOR3 Vec3FromVec2(const glm::vec2& vec) { return D3DXVECTOR3(vec.x, vec.y, 0.0f); } @@ -324,7 +351,7 @@ inline bool operator<(const D3DXVECTOR3& vec1, const D3DXVECTOR3& vec2) -inline D3DXVECTOR4 Vec4FromVec2(const D3DXVECTOR2& vec) +inline D3DXVECTOR4 Vec4FromVec2(const glm::vec2& vec) { return D3DXVECTOR4(vec.x, vec.y, 0, 0); } @@ -431,85 +458,85 @@ inline const D3DXVECTOR3& QuatRotateVec3(D3DXVECTOR3& res, const D3DXVECTOR3& ve -inline void Line2FromNorm(const D3DXVECTOR2& norm, const D3DXVECTOR2& point, D3DXVECTOR3& outLine) +inline void Line2FromNorm(const glm::vec2& norm, const glm::vec2& point, D3DXVECTOR3& outLine) { //Уравнение разделяющей прямой через нормаль и точку //(N,X) + D = 0 //Нормаль outLine.x = norm.x; outLine.y = norm.y; - outLine.z = -D3DXVec2Dot(&norm, &point); + outLine.z = -(norm.x * point.x + norm.y * point.y); } -inline D3DXVECTOR3 Line2FromNorm(const D3DXVECTOR2& norm, const D3DXVECTOR2& point) +inline D3DXVECTOR3 Line2FromNorm(const glm::vec2& norm, const glm::vec2& point) { D3DXVECTOR3 res; Line2FromNorm(norm, point, res); return res; } -inline void Line2FromDir(const D3DXVECTOR2& dir, const D3DXVECTOR2& point, D3DXVECTOR3& outLine) +inline void Line2FromDir(const glm::vec2& dir, const glm::vec2& point, D3DXVECTOR3& outLine) { - D3DXVECTOR2 norm; + glm::vec2 norm; Vec2NormCW(dir, norm); Line2FromNorm(norm, point, outLine); } -inline D3DXVECTOR3 Line2FromDir(const D3DXVECTOR2& dir, const D3DXVECTOR2& point) +inline D3DXVECTOR3 Line2FromDir(const glm::vec2& dir, const glm::vec2& point) { D3DXVECTOR3 res; Line2FromDir(dir, point, res); return res; } -inline void Line2GetNorm(const D3DXVECTOR3& line, D3DXVECTOR2& norm) +inline void Line2GetNorm(const D3DXVECTOR3& line, glm::vec2& norm) { norm.x = line.x; norm.y = line.y; } -inline void Line2GetDir(const D3DXVECTOR3& line, D3DXVECTOR2& dir) +inline void Line2GetDir(const D3DXVECTOR3& line, glm::vec2& dir) { dir.x = line.x; dir.y = line.y; Vec2NormCCW(dir, dir); } -inline void Line2GetRadiusVec(const D3DXVECTOR3& line, D3DXVECTOR2& outVec) +inline void Line2GetRadiusVec(const D3DXVECTOR3& line, glm::vec2& outVec) { outVec.x = -line.z * line.x; outVec.y = -line.z * line.y; } -inline D3DXVECTOR2 Line2GetRadiusVec(const D3DXVECTOR3& line) +inline glm::vec2 Line2GetRadiusVec(const D3DXVECTOR3& line) { - D3DXVECTOR2 res; + glm::vec2 res; Line2GetRadiusVec(line, res); return res; } -inline D3DXVECTOR2 Line2GetNorm(const D3DXVECTOR3& line) +inline glm::vec2 Line2GetNorm(const D3DXVECTOR3& line) { - D3DXVECTOR2 res; + glm::vec2 res; Line2GetNorm(line, res); return res; } -inline float Line2DistToPoint(const D3DXVECTOR3& line, const D3DXVECTOR2& point) +inline float Line2DistToPoint(const D3DXVECTOR3& line, const glm::vec2& point) { return D3DXVec3Dot(&line, &D3DXVECTOR3(point.x, point.y, 1.0f)); } -inline void Line2NormVecToPoint(const D3DXVECTOR3& line, const D3DXVECTOR2& point, D3DXVECTOR2& outNormVec) +inline void Line2NormVecToPoint(const D3DXVECTOR3& line, const glm::vec2& point, glm::vec2& outNormVec) { - D3DXVECTOR2 lineNorm = Line2GetNorm(line); + glm::vec2 lineNorm = Line2GetNorm(line); float dist = Line2DistToPoint(line, point); outNormVec = lineNorm * dist; } -inline D3DXVECTOR2 Line2NormVecToPoint(const D3DXVECTOR3& line, const D3DXVECTOR2& point) +inline glm::vec2 Line2NormVecToPoint(const D3DXVECTOR3& line, const glm::vec2& point) { - D3DXVECTOR2 res; + glm::vec2 res; Line2NormVecToPoint(line, point, res); return res; } diff --git a/src/MathLib/header/lslVariant.h b/src/MathLib/header/lslVariant.h index d18ca246..d22605e3 100644 --- a/src/MathLib/header/lslVariant.h +++ b/src/MathLib/header/lslVariant.h @@ -112,7 +112,7 @@ class VariantVec: private Variant template void AssignData(const _Type* value, unsigned count); template Type GetTypeOf() const; - template<> Type GetTypeOf() const; + template<> Type GetTypeOf() const; template<> Type GetTypeOf() const; template<> Type GetTypeOf() const; template<> Type GetTypeOf() const; @@ -127,7 +127,7 @@ class VariantVec: private Variant VariantVec(const bool* value, unsigned count); VariantVec(const char* value, unsigned count); // - VariantVec(const D3DXVECTOR2* value, unsigned count); + VariantVec(const glm::vec2* value, unsigned count); VariantVec(const D3DXVECTOR3* value, unsigned count); VariantVec(const D3DXVECTOR4* value, unsigned count); VariantVec(const D3DXCOLOR* value, unsigned count); @@ -140,7 +140,7 @@ class VariantVec: private Variant VariantVec(const bool& value); VariantVec(const char& value); // - VariantVec(const D3DXVECTOR2& value); + VariantVec(const glm::vec2& value); VariantVec(const D3DXVECTOR3& value); VariantVec(const D3DXVECTOR4& value); VariantVec(const D3DXCOLOR& value); @@ -511,7 +511,7 @@ inline VariantVec::VariantVec(const char* value, unsigned count) AssignData(value, count); } -inline VariantVec::VariantVec(const D3DXVECTOR2* value, unsigned count) +inline VariantVec::VariantVec(const glm::vec2* value, unsigned count) { AssignData(value, count); } @@ -567,7 +567,7 @@ inline VariantVec::VariantVec(const char& value) AssignData(&value, 1); } -inline VariantVec::VariantVec(const D3DXVECTOR2& value) +inline VariantVec::VariantVec(const glm::vec2& value) { AssignData(&value, 1); } @@ -618,7 +618,7 @@ template inline VariantVec::Type VariantVec::GetTypeOf() const return _MyBase::GetTypeOf<_Type>(); } -template<> inline VariantVec::Type VariantVec::GetTypeOf() const +template<> inline VariantVec::Type VariantVec::GetTypeOf() const { return vtVec2; } diff --git a/src/MathLib/header/r3dMath.h b/src/MathLib/header/r3dMath.h index efa09e69..bed71e2f 100644 --- a/src/MathLib/header/r3dMath.h +++ b/src/MathLib/header/r3dMath.h @@ -13,27 +13,28 @@ struct AABB2 AABB2(); explicit AABB2(float size); - explicit AABB2(const D3DXVECTOR2& size); - AABB2(const D3DXVECTOR2& mMin, const D3DXVECTOR2& mMax); + explicit AABB2(const glm::vec2& size); + AABB2(const glm::vec2& mMin, const glm::vec2& mMax); - static void Transform(const AABB2& aabb, const D3DXMATRIX& m, AABB2& rOut); - static void Include(const AABB2& aabb, const D3DXVECTOR2& vec, AABB2& rOut); + //static void Transform(const AABB2 &aabb, const glm::mat4 &m, AABB2 &rOut); + static void Transform(const AABB2 &aabb, const D3DXMATRIX &m, AABB2 &rOut); + static void Include(const AABB2& aabb, const glm::vec2& vec, AABB2& rOut); static void Add(const AABB2& aabb1, const AABB2& aabb2, AABB2& rOut); - static void Offset(const AABB2& aabb, const D3DXVECTOR2& vec, AABB2& rOut); + static void Offset(const AABB2& aabb, const glm::vec2& vec, AABB2& rOut); - void Transform(const D3DXMATRIX& m); - void Include(const D3DXVECTOR2& vec); + void Transform(const D3DXMATRIX &m); + void Include(const glm::vec2& vec); void Add(const AABB2& aabb); - void Offset(const D3DXVECTOR2& vec); + void Offset(const glm::vec2& vec); - bool ContainsPoint(const D3DXVECTOR2& point) const; + bool ContainsPoint(const glm::vec2& point) const; SpaceContains ContainsAABB(const AABB2& test) const; - D3DXVECTOR2 GetCenter() const; - D3DXVECTOR2 GetSize() const; + glm::vec2 GetCenter() const; + glm::vec2 GetSize() const; - D3DXVECTOR2 min; - D3DXVECTOR2 max; + glm::vec2 min; + glm::vec2 max; }; struct BoundBox; @@ -199,8 +200,8 @@ bool RayCastIntersectPlane(const D3DXVECTOR3& rayStart, const D3DXVECTOR3& rayVe bool RayCastIntersectPlane(const D3DXVECTOR3& rayStart, const D3DXVECTOR3& rayVec, const D3DXPLANE& plane, D3DXVECTOR3& outVec); //Погрешность 10% bool RayCastIntersectSquare(const D3DXVECTOR3& rayStart, const D3DXVECTOR3& rayVec, const D3DXVECTOR3& min, const D3DXVECTOR3& max, const D3DXPLANE& plane, float* outT, D3DXVECTOR3* outVec, const float error = 0); -void GetSampleOffsetsDownScale3x3(DWORD dwWidth, DWORD dwHeight, D3DXVECTOR2 avSampleOffsets[9]); -void GetSampleOffsetsDownScale4x4(DWORD dwWidth, DWORD dwHeight, D3DXVECTOR2 avSampleOffsets[16]); +void GetSampleOffsetsDownScale3x3(DWORD dwWidth, DWORD dwHeight, glm::vec2 avSampleOffsets[9]); +void GetSampleOffsetsDownScale4x4(DWORD dwWidth, DWORD dwHeight, glm::vec2 avSampleOffsets[16]); const D3DXCOLOR clrBlack (0.0f, 0.0f, 0.0f , 1.0f); const D3DXCOLOR clrGray05 (0.05f, 0.05f, 0.05f, 1.0f); diff --git a/src/MathLib/source/lslVariant.cpp b/src/MathLib/source/lslVariant.cpp index 39b55cc0..ce8c49ba 100644 --- a/src/MathLib/source/lslVariant.cpp +++ b/src/MathLib/source/lslVariant.cpp @@ -7,6 +7,6 @@ const unsigned Variant::cTypeSize[cTypeEnd] = {1, sizeof(int), sizeof(unsigned), sizeof(float), sizeof(double), sizeof(bool), sizeof(char)}; -const unsigned VariantVec::cMyTypeSize[cMyTypeEnd] = {sizeof(D3DXVECTOR2), sizeof(D3DXVECTOR3), sizeof(D3DXVECTOR4), sizeof(D3DXMATRIX)}; +const unsigned VariantVec::cMyTypeSize[cMyTypeEnd] = {sizeof(glm::vec2), sizeof(D3DXVECTOR3), sizeof(D3DXVECTOR4), sizeof(D3DXMATRIX)}; //} \ No newline at end of file diff --git a/src/MathLib/source/r3dMath.cpp b/src/MathLib/source/r3dMath.cpp index b90df5f7..7c50219e 100644 --- a/src/MathLib/source/r3dMath.cpp +++ b/src/MathLib/source/r3dMath.cpp @@ -38,54 +38,56 @@ AABB2::AABB2(float size) min = -max; } -AABB2::AABB2(const D3DXVECTOR2& size) +AABB2::AABB2(const glm::vec2& size) { max = size/2.0f; min = -max; } -AABB2::AABB2(const D3DXVECTOR2& mMin, const D3DXVECTOR2& mMax): min(mMin), max(mMax) +AABB2::AABB2(const glm::vec2& mMin, const glm::vec2& mMax): min(mMin), max(mMax) { } -void AABB2::Transform(const AABB2& aabb, const D3DXMATRIX& m, AABB2& rOut) +//void AABB2::Transform(const AABB2 &aabb, const glm::mat4 &m, AABB2 &rOut) +void AABB2::Transform(const AABB2 &aabb, const D3DXMATRIX &mIn, AABB2 &rOut) { - D3DXVECTOR2 oldMin = aabb.min; - D3DXVECTOR2 oldMax = aabb.max; - D3DXVec2TransformCoord(&rOut.min, &oldMin, &m); + auto m = d3dMatrixToGLM(mIn); // remove after D3DXMATRIX replacement + glm::vec2 oldMin = aabb.min; + glm::vec2 oldMax = aabb.max; + rOut.min = Vec2TransformCoord(oldMin, m); rOut.max = rOut.min; - rOut.Include(Vec2TransformCoord(D3DXVECTOR2(oldMin.x, oldMin.y), m)); - rOut.Include(Vec2TransformCoord(D3DXVECTOR2(oldMin.x, oldMax.y), m)); - rOut.Include(Vec2TransformCoord(D3DXVECTOR2(oldMax.x, oldMin.y), m)); - rOut.Include(Vec2TransformCoord(D3DXVECTOR2(oldMax.x, oldMax.y), m)); + rOut.Include(Vec2TransformCoord(glm::vec2(oldMin.x, oldMin.y), m)); + rOut.Include(Vec2TransformCoord(glm::vec2(oldMin.x, oldMax.y), m)); + rOut.Include(Vec2TransformCoord(glm::vec2(oldMax.x, oldMin.y), m)); + rOut.Include(Vec2TransformCoord(glm::vec2(oldMax.x, oldMax.y), m)); rOut.Include(Vec2TransformCoord(oldMax, m)); } -void AABB2::Include(const AABB2& aabb, const D3DXVECTOR2& vec, AABB2& rOut) +void AABB2::Include(const AABB2& aabb, const glm::vec2& vec, AABB2& rOut) { - D3DXVec2Minimize(&rOut.min, &aabb.min, &vec); - D3DXVec2Maximize(&rOut.max, &aabb.max, &vec); + rOut.min = Vec2Minimize(aabb.min, vec); + rOut.max = Vec2Maximize(aabb.max, vec); } void AABB2::Add(const AABB2& aabb1, const AABB2& aabb2, AABB2& rOut) { - D3DXVec2Minimize(&rOut.min, &aabb1.min, &aabb2.min); - D3DXVec2Maximize(&rOut.max, &aabb1.max, &aabb2.max); + rOut.min = Vec2Minimize(aabb1.min, aabb2.min); + rOut.max = Vec2Maximize(aabb1.max, aabb2.max); } -void AABB2::Offset(const AABB2& aabb, const D3DXVECTOR2& vec, AABB2& rOut) +void AABB2::Offset(const AABB2& aabb, const glm::vec2& vec, AABB2& rOut) { rOut.min = aabb.min + vec; rOut.max = aabb.max + vec; } -void AABB2::Transform(const D3DXMATRIX& m) +void AABB2::Transform(const D3DXMATRIX &m) { Transform(*this, m, *this); } -void AABB2::Include(const D3DXVECTOR2& vec) +void AABB2::Include(const glm::vec2& vec) { Include(*this, vec, *this); } @@ -95,12 +97,12 @@ void AABB2::Add(const AABB2& aabb) Add(*this, aabb, *this); } -void AABB2::Offset(const D3DXVECTOR2& vec) +void AABB2::Offset(const glm::vec2& vec) { Offset(*this, vec, *this); } -bool AABB2::ContainsPoint(const D3DXVECTOR2& point) const +bool AABB2::ContainsPoint(const glm::vec2& point) const { return (point.x > min.x && point.y > min.y && point.x < max.x && point.y < max.y); @@ -127,12 +129,12 @@ AABB2::SpaceContains AABB2::ContainsAABB(const AABB2& test) const return scNoOverlap; } -D3DXVECTOR2 AABB2::GetCenter() const +glm::vec2 AABB2::GetCenter() const { return (min + max) / 2.0f; } -D3DXVECTOR2 AABB2::GetSize() const +glm::vec2 AABB2::GetSize() const { return max - min; } @@ -852,7 +854,7 @@ bool RayCastIntersectSquare(const D3DXVECTOR3& rayStart, const D3DXVECTOR3& rayV return false; } -void GetSampleOffsetsDownScale3x3(DWORD dwWidth, DWORD dwHeight, D3DXVECTOR2 avSampleOffsets[9]) +void GetSampleOffsetsDownScale3x3(DWORD dwWidth, DWORD dwHeight, glm::vec2 avSampleOffsets[9]) { float tU = 1.0f / dwWidth; float tV = 1.0f / dwHeight; @@ -869,7 +871,7 @@ void GetSampleOffsetsDownScale3x3(DWORD dwWidth, DWORD dwHeight, D3DXVECTOR2 avS } } -void GetSampleOffsetsDownScale4x4(DWORD dwWidth, DWORD dwHeight, D3DXVECTOR2 avSampleOffsets[16]) +void GetSampleOffsetsDownScale4x4(DWORD dwWidth, DWORD dwHeight, glm::vec2 avSampleOffsets[16]) { float tU = 1.0f / dwWidth; float tV = 1.0f / dwHeight; diff --git a/src/NetLib/CMakeLists.txt b/src/NetLib/CMakeLists.txt index 88386622..03c251fc 100644 --- a/src/NetLib/CMakeLists.txt +++ b/src/NetLib/CMakeLists.txt @@ -24,6 +24,7 @@ target_include_directories(${PROJECT_NAME} PRIVATE ${CMAKE_SOURCE_DIR}/src/MathLib/header ${CMAKE_SOURCE_DIR}/src/XPlatform/header ${CMAKE_SOURCE_DIR}/extern/boost/include + ${CMAKE_SOURCE_DIR}/extern/glm/include ${CMAKE_SOURCE_DIR}/extern/directx/include ) diff --git a/src/RRR3d/CMakeLists.txt b/src/RRR3d/CMakeLists.txt index c76b5eaf..c69c4a36 100644 --- a/src/RRR3d/CMakeLists.txt +++ b/src/RRR3d/CMakeLists.txt @@ -15,6 +15,7 @@ target_include_directories(${PROJECT_NAME} PRIVATE ${CMAKE_SOURCE_DIR}/src/MathLib/header ${CMAKE_SOURCE_DIR}/src/Rock3dGame/include ${CMAKE_SOURCE_DIR}/src/XPlatform/header + ${CMAKE_SOURCE_DIR}/extern/glm/include ) target_link_libraries(${PROJECT_NAME} PRIVATE diff --git a/src/Rock3dEngine/CMakeLists.txt b/src/Rock3dEngine/CMakeLists.txt index 050ab19e..3f5b6d0f 100644 --- a/src/Rock3dEngine/CMakeLists.txt +++ b/src/Rock3dEngine/CMakeLists.txt @@ -38,6 +38,7 @@ target_include_directories(${PROJECT_NAME} PRIVATE ${CMAKE_SOURCE_DIR}/extern/physx/include/Foundation ${CMAKE_SOURCE_DIR}/extern/physx/include/Physics ${CMAKE_SOURCE_DIR}/extern/physx/include/PhysXLoader + ${CMAKE_SOURCE_DIR}/extern/glm/include ${CMAKE_SOURCE_DIR}/extern/directx/include ) diff --git a/src/Rock3dEngine/header/GraphManager.h b/src/Rock3dEngine/header/GraphManager.h index f12fe57b..1acb7309 100644 --- a/src/Rock3dEngine/header/GraphManager.h +++ b/src/Rock3dEngine/header/GraphManager.h @@ -140,7 +140,7 @@ class GraphManager: public lsl::Component float brightThreshold; float gaussianScalar; float exposure; - D3DXVECTOR2 colorCorrection; + glm::vec2 colorCorrection; }; enum ReflMappMode { rmColorLayer, rmLackLayer }; @@ -243,7 +243,7 @@ class GraphManager: public lsl::Component graph::FogPlane* _fogPlane; graph::Tex2DResource* _cloudsTex; graph::LibMaterial* _cloudsMat; - D3DXVECTOR2 _tileScale; + glm::vec2 _tileScale; graph::Actor* _fogPlaneActor; D3DXCOLOR _sceneAmbient; @@ -326,7 +326,7 @@ class GraphManager: public lsl::Component void InitFog(); void FreeFog(); - void InitPlaneFog(lsl::string texture, const D3DXVECTOR2& tileScale, float speed, GraphQuality quality); + void InitPlaneFog(lsl::string texture, const glm::vec2& tileScale, float speed, GraphQuality quality); void FreePlaneFog(); void UpdateFogPlane(); diff --git a/src/Rock3dEngine/header/graph/ContextInfo.h b/src/Rock3dEngine/header/graph/ContextInfo.h index 32c1ad69..14116937 100644 --- a/src/Rock3dEngine/header/graph/ContextInfo.h +++ b/src/Rock3dEngine/header/graph/ContextInfo.h @@ -231,8 +231,8 @@ class CameraCI: public virtual lsl::Object public: enum Transform {ctView = 0, ctProj, ctWorldView, ctViewProj, ctWVP, cTransformEnd}; - static public D3DXVECTOR2 ViewToProj(const D3DXVECTOR2& coord, const D3DXVECTOR2& viewSize); - static public D3DXVECTOR2 ProjToView(const D3DXVECTOR2& coord, const D3DXVECTOR2& viewSize); + static public glm::vec2 ViewToProj(const glm::vec2& coord, const glm::vec2& viewSize); + static public glm::vec2 ProjToView(const glm::vec2& coord, const glm::vec2& viewSize); private: CameraDesc _desc; @@ -267,8 +267,8 @@ class CameraCI: public virtual lsl::Object void GetWVPPerspective(D3DXMATRIX& mat) const; void SetProjMat(const D3DXMATRIX& value); - D3DXVECTOR3 ScreenToWorld(const D3DXVECTOR2& coord, float z, const D3DXVECTOR2& viewSize) const; - D3DXVECTOR2 WorldToScreen(const D3DXVECTOR3& coord, const D3DXVECTOR2& viewSize) const; + D3DXVECTOR3 ScreenToWorld(const glm::vec2& coord, float z, const glm::vec2& viewSize) const; + glm::vec2 WorldToScreen(const D3DXVECTOR3& coord, const glm::vec2& viewSize) const; const CameraDesc& GetDesc() const; void SetDesc(const CameraDesc& value); diff --git a/src/Rock3dEngine/header/graph/FogPlane.h b/src/Rock3dEngine/header/graph/FogPlane.h index bbb69402..d7e0b5f8 100644 --- a/src/Rock3dEngine/header/graph/FogPlane.h +++ b/src/Rock3dEngine/header/graph/FogPlane.h @@ -42,8 +42,8 @@ class FogPlane: public BaseSceneNode float GetSpeed() const; void SetSpeed(float value); - const D3DXVECTOR2& GetSize() const; - void SetSize(const D3DXVECTOR2& value); + const glm::vec2& GetSize() const; + void SetSize(const glm::vec2& value); Shader shader; }; diff --git a/src/Rock3dEngine/header/graph/MaterialLibrary.h b/src/Rock3dEngine/header/graph/MaterialLibrary.h index 6b3cec02..f3b3042b 100644 --- a/src/Rock3dEngine/header/graph/MaterialLibrary.h +++ b/src/Rock3dEngine/header/graph/MaterialLibrary.h @@ -98,8 +98,8 @@ class Sampler2d: public Sampler public: Sampler2d(); - void BuildAnimByOff(const Vec2Range& texCoord, const Point2U& tileCnt, const D3DXVECTOR2& pixOff = D3DXVECTOR2(0.5f, 0.5f)); - void BuildAnimByTile(const Vec2Range& texCoord, const Point2U& tileCnt, const D3DXVECTOR2& tileSize); + void BuildAnimByOff(const Vec2Range& texCoord, const Point2U& tileCnt, const glm::vec2& pixOff = glm::vec2(0.5f, 0.5f)); + void BuildAnimByTile(const Vec2Range& texCoord, const Point2U& tileCnt, const glm::vec2& tileSize); IDirect3DTexture9* GetTexSrc(); @@ -107,7 +107,7 @@ class Sampler2d: public Sampler unsigned GetHeight() const; unsigned GetFormat() const; - D3DXVECTOR2 GetSize(); + glm::vec2 GetSize(); }; class SamplerCube: public Sampler diff --git a/src/Rock3dEngine/header/graph/StdNode.h b/src/Rock3dEngine/header/graph/StdNode.h index 5ff4aa2a..03808efe 100644 --- a/src/Rock3dEngine/header/graph/StdNode.h +++ b/src/Rock3dEngine/header/graph/StdNode.h @@ -155,7 +155,7 @@ class PlaneNode: public BaseSceneNode typedef BaseSceneNode _MyBase; private: graph::VBMesh _mesh; - D3DXVECTOR2 _size; + glm::vec2 _size; void DrawPlane(Engine& engine); void UpdateMesh(); @@ -170,8 +170,8 @@ class PlaneNode: public BaseSceneNode PlaneNode(); virtual ~PlaneNode(); - const D3DXVECTOR2& GetSize() const; - void SetSize(const D3DXVECTOR2& value); + const glm::vec2& GetSize() const; + void SetSize(const glm::vec2& value); MaterialNode material; }; @@ -231,7 +231,7 @@ class Sprite: public BaseSceneNode MaterialNode material; - D3DXVECTOR2 sizes; + glm::vec2 sizes; //Зафиксировать направление, по умолчанию false bool fixDirection; }; diff --git a/src/Rock3dEngine/header/graph/VideoResource.h b/src/Rock3dEngine/header/graph/VideoResource.h index 19e60fd6..ddbb69ca 100644 --- a/src/Rock3dEngine/header/graph/VideoResource.h +++ b/src/Rock3dEngine/header/graph/VideoResource.h @@ -188,7 +188,7 @@ class TexResource: public MemPoolResource { private: unsigned _levelCnt; - D3DXVECTOR2 _screenScale; + glm::vec2 _screenScale; protected: virtual IDirect3DBaseTexture9* GetBaseTex() = 0; public: @@ -200,8 +200,8 @@ class TexResource: public MemPoolResource //value = 0 - генерация последовательности mip уровней до 1x1 void SetLevelCnt(unsigned value); - const D3DXVECTOR2& GetScreenScale() const; - void SetScreenScale(D3DXVECTOR2 value); + const glm::vec2& GetScreenScale() const; + void SetScreenScale(glm::vec2 value); }; class Tex2DResource: public TexResource @@ -236,7 +236,7 @@ class Tex2DResource: public TexResource void SetData(res::ImageResource* value); IDirect3DTexture9* GetTex(); - D3DXVECTOR2 GetSize(); + glm::vec2 GetSize(); }; class TexCubeResource: public TexResource @@ -278,7 +278,7 @@ class RenderTargetResource: public VideoResource D3DMULTISAMPLE_TYPE _multisampleType; unsigned _multisampleQuality; - D3DXVECTOR2 _screenScale; + glm::vec2 _screenScale; protected: virtual void DoInit(); virtual void DoFree(); @@ -307,8 +307,8 @@ class RenderTargetResource: public VideoResource unsigned GetMultisampleQuality() const; void SetMultisampleQuality(unsigned value); - const D3DXVECTOR2& GetScreenScale() const; - void SetScreenScale(D3DXVECTOR2 value); + const glm::vec2& GetScreenScale() const; + void SetScreenScale(glm::vec2 value); }; class DepthStencilSurfaceResource: public VideoResource @@ -323,7 +323,7 @@ class DepthStencilSurfaceResource: public VideoResource D3DMULTISAMPLE_TYPE _multisampleType; unsigned _multisampleQuality; - D3DXVECTOR2 _screenScale; + glm::vec2 _screenScale; protected: virtual void DoInit(); virtual void DoFree(); @@ -352,8 +352,8 @@ class DepthStencilSurfaceResource: public VideoResource unsigned GetMultisampleQuality() const; void SetMultisampleQuality(unsigned value); - const D3DXVECTOR2& GetScreenScale() const; - void SetScreenScale(D3DXVECTOR2 value); + const glm::vec2& GetScreenScale() const; + void SetScreenScale(glm::vec2 value); }; class TextFont: public VideoResource diff --git a/src/Rock3dEngine/header/gui/GUI.h b/src/Rock3dEngine/header/gui/GUI.h index 0012d37b..3d0336b2 100644 --- a/src/Rock3dEngine/header/gui/GUI.h +++ b/src/Rock3dEngine/header/gui/GUI.h @@ -26,9 +26,9 @@ struct MouseClick bool shift1; //локальные координаты - D3DXVECTOR2 coord; + glm::vec2 coord; //мировые координаты - D3DXVECTOR2 worldCoord; + glm::vec2 worldCoord; }; struct MouseMove @@ -37,13 +37,13 @@ struct MouseMove bool shift1; //локальные координаты - D3DXVECTOR2 coord; + glm::vec2 coord; //Разность между текущим и предыдущим значением координаты - D3DXVECTOR2 dtCoord; + glm::vec2 dtCoord; //Разность между текущим значением координаты и координатой при клике - D3DXVECTOR2 offCoord; + glm::vec2 offCoord; //мировые координаты - D3DXVECTOR2 worldCoord; + glm::vec2 worldCoord; //Состояние последнего клика мыши MouseClick click; @@ -63,7 +63,7 @@ class Material: public Object public: Material(); - D3DXVECTOR2 GetImageSize(); + glm::vec2 GetImageSize(); const D3DXCOLOR& GetColor() const; void SetColor(const D3DXCOLOR& value); @@ -86,8 +86,8 @@ class Graphic: public Object friend Context; private: Context* _context; - D3DXVECTOR2 _pos; - D3DXVECTOR2 _size; + glm::vec2 _pos; + glm::vec2 _size; bool _active; float _alpha; @@ -103,11 +103,11 @@ class Graphic: public Object Context& GetContext(); - const D3DXVECTOR2& GetPos() const; - void SetPos(const D3DXVECTOR2& value); + const glm::vec2& GetPos() const; + void SetPos(const glm::vec2& value); // - const D3DXVECTOR2& GetSize() const; - void SetSize(const D3DXVECTOR2& value); + const glm::vec2& GetSize() const; + void SetSize(const glm::vec2& value); //Без материала Graphic не рисуется Material* GetOrCreateMaterial(); @@ -345,7 +345,7 @@ class Plane3d: public Graphic3d friend Context; typedef Graphic3d _MyBase; private: - D3DXVECTOR2 _size; + glm::vec2 _size; protected: Plane3d(Context* context); @@ -353,8 +353,8 @@ class Plane3d: public Graphic3d public: virtual void Draw(); - const D3DXVECTOR2& GetSize(); - void SetSize(const D3DXVECTOR2 value); + const glm::vec2& GetSize(); + void SetSize(const glm::vec2 value); }; class View3d: public Graphic @@ -391,7 +391,7 @@ class Context: public Object graph::CameraCI _camera; bool _invertY; - D3DXVECTOR2 _vpSize; + glm::vec2 _vpSize; void InsertGraphic(Graphic* value); void RemoveGraphic(Graphic* value); @@ -445,8 +445,8 @@ class Context: public Object bool GetInvertY() const; void SetInvertY(bool value); - const D3DXVECTOR2& GetVPSize(); - void SetVPSize(const D3DXVECTOR2& value); + const glm::vec2& GetVPSize(); + void SetVPSize(const glm::vec2& value); }; //элемент управления включающий контейнер Graphic, обработку событий, ввода, связь родитель-потомок @@ -530,9 +530,9 @@ class Widget: public Object, protected graph::IProgressUser Anchor _anchor; Anchor _align; - mutable D3DXVECTOR2 _anchorVP; - mutable D3DXVECTOR2 _pos; - D3DXVECTOR2 _scale; + mutable glm::vec2 _anchorVP; + mutable glm::vec2 _pos; + glm::vec2 _scale; float _rot; bool _coord3d; @@ -541,7 +541,7 @@ class Widget: public Object, protected graph::IProgressUser mutable D3DXMATRIX _matrix[cMatrixChangeEnd]; mutable MatrixChanges _matrixChanges; - D3DXVECTOR2 _size; + glm::vec2 _size; mutable AABB2 _localAABB; mutable AABB2 _worldAABB; mutable AABB2 _childAABB; @@ -627,11 +627,11 @@ class Widget: public Object, protected graph::IProgressUser void ClearGraphics(); void DeleteAllGraphics(); - D3DXVECTOR2 LocalToWorldCoord(const D3DXVECTOR2& value) const; - D3DXVECTOR2 WorldToLocalCoord(const D3DXVECTOR2& value) const; + glm::vec2 LocalToWorldCoord(const glm::vec2& value) const; + glm::vec2 WorldToLocalCoord(const glm::vec2& value) const; // - D3DXVECTOR2 LocalToWorldNorm(const D3DXVECTOR2& value) const; - D3DXVECTOR2 WorldToLocalNorm(const D3DXVECTOR2& value) const; + glm::vec2 LocalToWorldNorm(const glm::vec2& value) const; + glm::vec2 WorldToLocalNorm(const glm::vec2& value) const; Manager& GetManager(); Context& GetContext(); @@ -682,14 +682,14 @@ class Widget: public Object, protected graph::IProgressUser bool GetEnabled() const; void SetEnabled(bool value); - D3DXVECTOR2 GetAlignPos() const; + glm::vec2 GetAlignPos() const; - const D3DXVECTOR2& GetPos() const; - void SetPos(const D3DXVECTOR2& value); + const glm::vec2& GetPos() const; + void SetPos(const glm::vec2& value); void SetPos(float x, float y); - const D3DXVECTOR2& GetScale() const; - void SetScale(const D3DXVECTOR2& value); + const glm::vec2& GetScale() const; + void SetScale(const glm::vec2& value); void SetScale(float x, float y); float GetRot() const; @@ -701,8 +701,8 @@ class Widget: public Object, protected graph::IProgressUser const D3DXVECTOR3& GetPos3d() const; void SetPos3d(const D3DXVECTOR3& value); - D3DXVECTOR2 GetWorldPos() const; - void SetWorldPos(const D3DXVECTOR2& value); + glm::vec2 GetWorldPos() const; + void SetWorldPos(const glm::vec2& value); const D3DXMATRIX& GetMat() const; const D3DXMATRIX& GetWorldMat() const; @@ -710,8 +710,8 @@ class Widget: public Object, protected graph::IProgressUser const D3DXMATRIX& GetInvWorldMat() const; //размер относительно центра localAABB - const D3DXVECTOR2& GetSize() const; - void SetSize(const D3DXVECTOR2& value); + const glm::vec2& GetSize() const; + void SetSize(const glm::vec2& value); void SetSize(float szX, float szY); const AABB2& GetLocalAABB(bool includeChild) const; @@ -725,7 +725,7 @@ class Widget: public Object, protected graph::IProgressUser Object* GetData(); void SetData(Object* value); - static D3DXVECTOR2 GetAlignPos(const D3DXVECTOR2& size, Anchor align); + static glm::vec2 GetAlignPos(const glm::vec2& size, Anchor align); }; class Dummy: public Widget @@ -827,7 +827,7 @@ class Button: public Widget enum Style {bsSimple, bsSelAnim}; private: Style _style; - D3DXVECTOR2 _selSize; + glm::vec2 _selSize; bool _selected; Plane* _fon; @@ -881,8 +881,8 @@ class Button: public Widget const std::string& GetText() const; void SetText(const std::string& value); - const D3DXVECTOR2& GetSelSize() const; - void SetSelSize(const D3DXVECTOR2& value); + const glm::vec2& GetSelSize() const; + void SetSelSize(const glm::vec2& value); Style GetStyle() const; void SetStyle(Style value); @@ -995,7 +995,7 @@ class DropBox: public Widget void ShowItems(bool value); void SelectItem(const std::string& item); - Text* FindSelTextItem(const D3DXVECTOR2& point, bool deselect); + Text* FindSelTextItem(const glm::vec2& point, bool deselect); protected: DropBox(Manager* manager); virtual ~DropBox(); @@ -1033,7 +1033,7 @@ class TrackBar: public Widget bool _grag; float _dragOff; - float ComputeBarPos(const D3DXVECTOR2& point) const; + float ComputeBarPos(const glm::vec2& point) const; protected: TrackBar(Manager* manager); virtual ~TrackBar(); @@ -1112,9 +1112,9 @@ class ScrollBox: public Widget Dummy* _clip; Dummy* _box; - D3DXVECTOR2 _arrowSize; - D3DXVECTOR2 _arrowSpace; - D3DXVECTOR2 _arrowScrollStep; + glm::vec2 _arrowSize; + glm::vec2 _arrowSpace; + glm::vec2 _arrowScrollStep; Material* _arrowMat; Material* _arrowSelMat; Button* _scrollBut[cScrollDirEnd]; @@ -1138,19 +1138,19 @@ class ScrollBox: public Widget bool GetOption(Option option) const; void SetOption(Option option, bool value); - const D3DXVECTOR2& GetArrowSize() const; - void SetArrowSize(const D3DXVECTOR2& value); + const glm::vec2& GetArrowSize() const; + void SetArrowSize(const glm::vec2& value); - const D3DXVECTOR2& GetArrowSpace() const; - void SetArrowSpace(const D3DXVECTOR2& value); + const glm::vec2& GetArrowSpace() const; + void SetArrowSpace(const glm::vec2& value); - const D3DXVECTOR2& GetArrowScrollStep() const; - void SetArrowScrollStep(const D3DXVECTOR2& value); + const glm::vec2& GetArrowScrollStep() const; + void SetArrowScrollStep(const glm::vec2& value); - D3DXVECTOR2 GetMaxScroll() const; + glm::vec2 GetMaxScroll() const; - D3DXVECTOR2 GetScroll(); - void SetScroll(const D3DXVECTOR2& value); + glm::vec2 GetScroll(); + void SetScroll(const glm::vec2& value); Material& GetArrowMaterial(); Material& GetArrowSelMaterial(); @@ -1198,8 +1198,8 @@ class ListBox: public Widget Items _items; MyEvent* _event; - D3DXVECTOR2 _itemSize; - D3DXVECTOR2 _itemSpace; + glm::vec2 _itemSize; + glm::vec2 _itemSpace; Item* _selItem; Plane* _fon; @@ -1223,21 +1223,21 @@ class ListBox: public Widget void DelItem(Item* item); void ClearItems(); - Item* PickItem(const D3DXVECTOR2& worldCoord); - bool PickItems(const D3DXVECTOR2& worldCoord); + Item* PickItem(const glm::vec2& worldCoord); + bool PickItems(const glm::vec2& worldCoord); Item* FindItemByData(Widget* data); Item* GetSelItem(); void SelectItem(Item* item); - void AlignSizeByItems(const D3DXVECTOR2& size); + void AlignSizeByItems(const glm::vec2& size); const Items& GetItems() const; - const D3DXVECTOR2& GetItemSize() const; - void SetItemSize(const D3DXVECTOR2& value); + const glm::vec2& GetItemSize() const; + void SetItemSize(const glm::vec2& value); - const D3DXVECTOR2& GetItemSpace() const; - void SetItemSpace(const D3DXVECTOR2& value); + const glm::vec2& GetItemSpace() const; + void SetItemSpace(const glm::vec2& value); Material& GetOrCreateFon(); void FreeFon(); @@ -1248,16 +1248,16 @@ class ListBox: public Widget Material& GetArrowMaterial(); Material& GetArrowSelMaterial(); - const D3DXVECTOR2& GetArrowSize() const; - void SetArrowSize(const D3DXVECTOR2& value); + const glm::vec2& GetArrowSize() const; + void SetArrowSize(const glm::vec2& value); - D3DXVECTOR2 GetScroll() const; - void SetScroll(const D3DXVECTOR2& value); + glm::vec2 GetScroll() const; + void SetScroll(const glm::vec2& value); - D3DXVECTOR2 GetMaxScroll() const; + glm::vec2 GetMaxScroll() const; - D3DXVECTOR2 GetItemPlaceSize() const; - D3DXVECTOR2 GetScrollSpace() const; + glm::vec2 GetItemPlaceSize() const; + glm::vec2 GetScrollSpace() const; }; class ProgressBar: public Widget @@ -1349,7 +1349,7 @@ class ChargeBar: public Widget Button* _up; StreakBar* _bar; - D3DXVECTOR2 _space; + glm::vec2 _space; void AdjustLayout(); protected: @@ -1365,8 +1365,8 @@ class ChargeBar: public Widget Button* GetUpButton(); - const D3DXVECTOR2& GetSpace() const; - void SetSpace(const D3DXVECTOR2& value); + const glm::vec2& GetSpace() const; + void SetSpace(const glm::vec2& value); unsigned GetChargeMax(); void SetChargeMax(unsigned value); @@ -1451,7 +1451,7 @@ class ColorBox: public Widget D3DXCOLOR _color; bool _select; - D3DXVECTOR2 WinToLocal(const D3DXVECTOR2& vec) const; + glm::vec2 WinToLocal(const glm::vec2& vec) const; void ApplyColor(); void ApplySelect(); @@ -1474,7 +1474,7 @@ class ColorBox: public Widget bool GetSelect() const; void SetSelect(bool value); - D3DXVECTOR2 GetColorBoxSize() const; + glm::vec2 GetColorBoxSize() const; AABB2 GetBoxAABB() const; AABB2 GetCheckAABB() const; }; @@ -1513,7 +1513,7 @@ class ColorList: public Widget MyEvent* _myEvent; Colors _colors; MyCol _select; - D3DXVECTOR2 _space; + glm::vec2 _space; Material* _frame; Material* _box; @@ -1542,8 +1542,8 @@ class ColorList: public Widget const Colors& GetColors() const; - const D3DXVECTOR2& GetSpace() const; - void SetSpace(const D3DXVECTOR2& value); + const glm::vec2& GetSpace() const; + void SetSpace(const glm::vec2& value); }; class Grid: public Widget @@ -1554,7 +1554,7 @@ class Grid: public Widget enum Style {gsHorizontal, gsVertical}; private: Style _style; - D3DXVECTOR2 _cellSize; + glm::vec2 _cellSize; int _maxCellsOnLine; bool _hideInvisible; protected: @@ -1566,8 +1566,8 @@ class Grid: public Widget Style style() const; void style(Style value); - D3DXVECTOR2 cellSize() const; - void cellSize(const D3DXVECTOR2& value); + glm::vec2 cellSize() const; + void cellSize(const glm::vec2& value); int maxCellsOnLine() const; void maxCellsOnLine(int value); @@ -1628,8 +1628,8 @@ class Manager graph::Camera* GetCamera3d(); void SetCamera3d(graph::Camera* value); - D3DXVECTOR2 ScreenToView(const Point& point); - D3DXVECTOR2 WorldToView( const D3DXVECTOR3& coord); + glm::vec2 ScreenToView(const Point& point); + glm::vec2 WorldToView( const D3DXVECTOR3& coord); MouseClick GetMouseClick(Widget* widget) const; MouseMove GetMouseMove(Widget* widget) const; @@ -1661,8 +1661,8 @@ class Manager Context& GetContext(); Dummy* GetRoot(); - D3DXVECTOR2 GetVPSize(); - D3DXVECTOR2 GetMousePos(); + glm::vec2 GetVPSize(); + glm::vec2 GetMousePos(); }; } diff --git a/src/Rock3dEngine/header/res/GraphResource.h b/src/Rock3dEngine/header/res/GraphResource.h index 9d40a878..091ee06f 100644 --- a/src/Rock3dEngine/header/res/GraphResource.h +++ b/src/Rock3dEngine/header/res/GraphResource.h @@ -64,10 +64,10 @@ struct VertexPT static const DWORD fvf = D3DFVF_XYZ | D3DFVF_TEX1; D3DXVECTOR3 pos; - D3DXVECTOR2 tex; + glm::vec2 tex; VertexPT(); - VertexPT(D3DXVECTOR3 position, D3DXVECTOR2 texCoord); + VertexPT(D3DXVECTOR3 position, glm::vec2 texCoord); }; struct VertexPNT @@ -76,10 +76,10 @@ struct VertexPNT D3DVECTOR pos; D3DVECTOR norm; - D3DXVECTOR2 tex; + glm::vec2 tex; VertexPNT(); - VertexPNT(const D3DXVECTOR3& position, const D3DXVECTOR3& normal, const D3DXVECTOR2& texCoord); + VertexPNT(const D3DXVECTOR3& position, const D3DXVECTOR3& normal, const glm::vec2& texCoord); }; struct ScreenVertex @@ -87,10 +87,10 @@ struct ScreenVertex static const DWORD fvf = D3DFVF_XYZRHW | D3DFVF_TEX1; D3DXVECTOR4 pos; - D3DXVECTOR2 tex; + glm::vec2 tex; ScreenVertex(); - ScreenVertex(const D3DXVECTOR4& position, const D3DXVECTOR2& texCoord); + ScreenVertex(const D3DXVECTOR4& position, const glm::vec2& texCoord); }; struct VertexIter; @@ -169,8 +169,8 @@ struct VertexIter D3DXVECTOR3* Pos3(); D3DXVECTOR4* Pos4(); D3DCOLOR* Color(); - D3DXVECTOR2* Tex0(); - D3DXVECTOR2* Tex1(); + glm::vec2* Tex0(); + glm::vec2* Tex1(); D3DXVECTOR3* Normal(); D3DXVECTOR3* Tangent(); D3DXVECTOR3* Binormal(); diff --git a/src/Rock3dEngine/source/GraphManager.cpp b/src/Rock3dEngine/source/GraphManager.cpp index 369443d0..181b5fb1 100644 --- a/src/Rock3dEngine/source/GraphManager.cpp +++ b/src/Rock3dEngine/source/GraphManager.cpp @@ -440,7 +440,7 @@ void GraphManager::InitWaterPlane() _reflRender = new graph::ReflRender(); graph::Tex2DResource* reflTex = _reflRender->GetOrCreateRT(); reflTex->GetOrCreateData()->SetFormat(_engine->GetParams().BackBufferFormat); - reflTex->SetScreenScale(D3DXVECTOR2(1.0f, 1.0f)); + reflTex->SetScreenScale(glm::vec2(1.0f, 1.0f)); reflTex->Init(*_engine); _waterTexNorm = new graph::Tex2DResource(); @@ -521,14 +521,18 @@ void GraphManager::UpdateWaterPlane() { _waterPlaneActor->SetPos(_groundAABB.GetCenter()); _waterPlaneActor->SetScale(scale); - _waterNode->SetSize(D3DXVECTOR2(_groundAABB.GetSizes()) / scale); + //_waterNode->SetSize(glm::vec2(_groundAABB.GetSizes()) / scale); + _waterNode->SetSize(glm::vec2(_groundAABB.GetSizes().x, _groundAABB.GetSizes().y) / + scale); // remove after D3DXVECTOR3 replacement } if (_waterPlane) { _waterPlane->SetPos(_groundAABB.GetCenter()); _waterPlane->SetScale(scale); - _waterPlane->SetSize(D3DXVECTOR2(_groundAABB.GetSizes()) / scale); + //_waterPlane->SetSize(glm::vec2(_groundAABB.GetSizes()) / scale); + _waterPlane->SetSize(glm::vec2(_groundAABB.GetSizes().x, _groundAABB.GetSizes().y) / + scale); // remove after D3DXVECTOR3 replacement } } @@ -612,7 +616,9 @@ void GraphManager::UpdateGrassPlane() { D3DXVECTOR3 pos = _groundAABB.GetCenter(); pos.x = 0; - D3DXVECTOR2 size = D3DXVECTOR2(_groundAABB.GetSizes()); + //glm::vec2 size = glm::vec2(_groundAABB.GetSizes()); + glm::vec2 size = + glm::vec2(_groundAABB.GetSizes().x, _groundAABB.GetSizes().y); // remove after D3DXVECTOR3 replacement if (_grassPlane) { @@ -634,7 +640,7 @@ void GraphManager::InitDepthSurface() if (_depthSurfaceRef == 1) { _depthSurface = new graph::DepthStencilSurfaceResource(); - _depthSurface->SetScreenScale(D3DXVECTOR2(1.0f, 1.0f)); + _depthSurface->SetScreenScale(glm::vec2(1.0f, 1.0f)); _depthSurface->SetFormat(_engine->GetParams().AutoDepthStencilFormat); _depthSurface->Init(*_engine); } @@ -657,7 +663,7 @@ void GraphManager::InitScRenderTex() _scRenderTex = new graph::RenderToTexture(); graph::Tex2DResource* tex = _scRenderTex->GetOrCreateRT(); tex->GetOrCreateData()->SetFormat(D3DFMT_A16B16G16R16F); - tex->SetScreenScale(D3DXVECTOR2(1.0f, 1.0f)); + tex->SetScreenScale(glm::vec2(1.0f, 1.0f)); tex->Init(*_engine); ApplyMultisampling(); @@ -683,7 +689,7 @@ void GraphManager::InitCleanScTex() _cleanScTex = new graph::RenderToTexture(); graph::Tex2DResource* tex = _cleanScTex->GetOrCreateRT(); tex->GetOrCreateData()->SetFormat(D3DFMT_A16B16G16R16F); - tex->SetScreenScale(D3DXVECTOR2(1.0f, 1.0f)); + tex->SetScreenScale(glm::vec2(1.0f, 1.0f)); tex->Init(*_engine); } } @@ -727,7 +733,7 @@ void GraphManager::InitScDepthMap() _scDepthMap = new graph::DepthMapRender(); graph::Tex2DResource* tex = _scDepthMap->GetOrCreateRT(); tex->GetOrCreateData()->SetFormat(D3DFMT_R32F); - tex->SetScreenScale(D3DXVECTOR2(1.0f, 1.0f)); + tex->SetScreenScale(glm::vec2(1.0f, 1.0f)); tex->Init(*_engine); _scDepthMap->shader.GetOrCreateData()->LoadFromFile("Data\\Shaders\\sunDepthMap.fx"); @@ -937,7 +943,7 @@ void GraphManager::SetLightShadow(LightSrc* light) shadowMap = new graph::ShadowMapRender(); graph::Tex2DResource* tex = shadowMap->GetOrCreateRT(); - tex->SetScreenScale(D3DXVECTOR2(1.0f, 1.0f)); + tex->SetScreenScale(glm::vec2(1.0f, 1.0f)); tex->Init(*_engine); shadowMap->shader.GetOrCreateData()->LoadFromFile("Data\\Shaders\\ShadowMap.fx"); @@ -1104,7 +1110,7 @@ void GraphManager::InitPlanarRefl() _planarReflRender = new graph::ReflRender(); graph::Tex2DResource* reflTex = _planarReflRender->GetOrCreateRT(); reflTex->GetOrCreateData()->SetFormat(_engine->GetParams().BackBufferFormat); - reflTex->SetScreenScale(D3DXVECTOR2(1.0f, 1.0f)); + reflTex->SetScreenScale(glm::vec2(1.0f, 1.0f)); reflTex->Init(*_engine); _planarReflShader = new graph::PlanarReflMappShader(); @@ -1176,7 +1182,7 @@ void GraphManager::FreeFog() --_fogRef; } -void GraphManager::InitPlaneFog(lsl::string texture, const D3DXVECTOR2& tileScale, float speed, GraphQuality quality) +void GraphManager::InitPlaneFog(lsl::string texture, const glm::vec2& tileScale, float speed, GraphQuality quality) { if (_cloudsTex == NULL) { @@ -1272,7 +1278,9 @@ void GraphManager::UpdateFogPlane() { _fogPlane->SetPos(pos); _fogPlane->SetScale(D3DXVECTOR3(_tileScale.x, _tileScale.y, 1.0f)); - _fogPlane->SetSize(D3DXVECTOR2(_groundAABB.GetSizes()) / _tileScale); + //_fogPlane->SetSize(glm::vec2(_groundAABB.GetSizes()) / _tileScale); + _fogPlane->SetSize(glm::vec2(_groundAABB.GetSizes().x, _groundAABB.GetSizes().y) / + _tileScale); // remove after D3DXVECTOR3 replacement } if (_fogPlaneActor) @@ -1280,7 +1288,10 @@ void GraphManager::UpdateFogPlane() _fogPlaneActor->SetPos(_groundAABB.GetCenter()); _fogPlaneActor->SetScale(D3DXVECTOR3(_tileScale.x, _tileScale.y, 1)); - static_cast(_fogPlaneActor->GetNodes().front()).SetSize(D3DXVECTOR2(_groundAABB.GetSizes()) / _tileScale); + //static_cast(_fogPlaneActor->GetNodes().front()).SetSize(glm::vec2(_groundAABB.GetSizes()) / _tileScale); + static_cast(_fogPlaneActor->GetNodes().front()) + .SetSize(glm::vec2(_groundAABB.GetSizes().x, _groundAABB.GetSizes().y) / + _tileScale); // remove after D3DXVECTOR3 replacement } } @@ -1331,7 +1342,7 @@ void GraphManager::ApplyMultisampling() if (_msRT == NULL) { _msRT = new graph::RenderTargetResource(); - _msRT->SetScreenScale(D3DXVECTOR2(1.0f, 1.0f)); + _msRT->SetScreenScale(glm::vec2(1.0f, 1.0f)); _msRT->SetFormat(_scRenderTex->GetRT()->GetData()->GetFormat()); } _msRT->SetMultisampleType(msType); @@ -1343,7 +1354,7 @@ void GraphManager::ApplyMultisampling() InitDepthSurface(); _msDS = new graph::DepthStencilSurfaceResource(); - _msDS->SetScreenScale(D3DXVECTOR2(1.0f, 1.0f)); + _msDS->SetScreenScale(glm::vec2(1.0f, 1.0f)); _msDS->SetFormat(_engine->GetParams().AutoDepthStencilFormat); } _msDS->SetMultisampleType(msType); @@ -2450,7 +2461,7 @@ void GraphManager::BuildOctree() else aabb.Add((*iter)->GetAABB()); - D3DXVECTOR2 texDiffK = D3DXVECTOR2((*iter)->GetActor()->vec3().y, (*iter)->GetActor()->vec3().z); + glm::vec2 texDiffK = glm::vec2((*iter)->GetActor()->vec3().y, (*iter)->GetActor()->vec3().z); if ((abs(texDiffK.x) + abs(texDiffK.y)) > 0.0f && _lightList.size() > 0 && _lightList.front()->GetSource()->GetType() == D3DLIGHT_DIRECTIONAL) { @@ -2649,11 +2660,11 @@ void GraphManager::SetGraphOption(GraphOption option, bool value, GraphQuality q break; case goPlaneFog: - value ? InitPlaneFog("Data\\Effect\\clouds.dds", D3DXVECTOR2(50.0f, 50.0f), 0.02f, quality) : FreePlaneFog(); + value ? InitPlaneFog("Data\\Effect\\clouds.dds", glm::vec2(50.0f, 50.0f), 0.02f, quality) : FreePlaneFog(); break; case goMagma: - value ? InitPlaneFog("Data\\Effect\\magma.dds", D3DXVECTOR2(25.0f, 25.0f), 0.01f, quality) : FreePlaneFog(); + value ? InitPlaneFog("Data\\Effect\\magma.dds", glm::vec2(25.0f, 25.0f), 0.01f, quality) : FreePlaneFog(); break; } } diff --git a/src/Rock3dEngine/source/graph/ContextInfo.cpp b/src/Rock3dEngine/source/graph/ContextInfo.cpp index 59bdfe61..33cae806 100644 --- a/src/Rock3dEngine/source/graph/ContextInfo.cpp +++ b/src/Rock3dEngine/source/graph/ContextInfo.cpp @@ -76,9 +76,9 @@ CameraCI::CameraCI(): _idState(0), _frustChanged(true) _invMatChanged.set(); } -D3DXVECTOR2 CameraCI::ViewToProj(const D3DXVECTOR2& coord, const D3DXVECTOR2& viewSize) +glm::vec2 CameraCI::ViewToProj(const glm::vec2& coord, const glm::vec2& viewSize) { - D3DXVECTOR2 projVec(coord.x / viewSize.x, coord.y / viewSize.y); + glm::vec2 projVec(coord.x / viewSize.x, coord.y / viewSize.y); //Приводим к диапазону [-1, 1] projVec = projVec * 2.0f - IdentityVec2; //Ось Y у экрана и у заднего буфера(или иначе говоря экранной D3D поверхности) не совпадают @@ -99,9 +99,9 @@ D3DXVECTOR2 CameraCI::ViewToProj(const D3DXVECTOR2& coord, const D3DXVECTOR2& vi return screenVec;*/ } -D3DXVECTOR2 CameraCI::ProjToView(const D3DXVECTOR2& coord, const D3DXVECTOR2& viewSize) +glm::vec2 CameraCI::ProjToView(const glm::vec2& coord, const glm::vec2& viewSize) { - D3DXVECTOR2 projVec = coord; + glm::vec2 projVec = coord; projVec.y = -projVec.y; projVec = projVec * 0.5f + IdentityVec2 * 0.5f; @@ -431,9 +431,9 @@ void CameraCI::SetProjMat(const D3DXMATRIX& value) ProjMatChanged(); } -D3DXVECTOR3 CameraCI::ScreenToWorld(const D3DXVECTOR2& coord, float z, const D3DXVECTOR2& viewSize) const +D3DXVECTOR3 CameraCI::ScreenToWorld(const glm::vec2& coord, float z, const glm::vec2& viewSize) const { - D3DXVECTOR2 projCoord = ViewToProj(coord, viewSize); + glm::vec2 projCoord = ViewToProj(coord, viewSize); D3DXVECTOR3 screenVec(projCoord.x, projCoord.y, z); //Переводим в мировое пространство(домножая на инв. матрицу), что соотв. точке на near плоскости камеры D3DXVec3TransformCoord(&screenVec, &screenVec, &GetInvViewProj()); @@ -441,11 +441,11 @@ D3DXVECTOR3 CameraCI::ScreenToWorld(const D3DXVECTOR2& coord, float z, const D3D return screenVec; } -D3DXVECTOR2 CameraCI::WorldToScreen(const D3DXVECTOR3& coord, const D3DXVECTOR2& viewSize) const +glm::vec2 CameraCI::WorldToScreen(const D3DXVECTOR3& coord, const glm::vec2& viewSize) const { D3DXVECTOR3 screenVec; D3DXVec3TransformCoord(&screenVec, &coord, &GetViewProj()); - D3DXVECTOR2 vec = screenVec; + glm::vec2 vec(screenVec.x, screenVec.y); return ProjToView(vec, viewSize); } @@ -499,7 +499,7 @@ const D3DXMATRIX& CameraCI::GetTransform(Transform transform) const case csViewPort: case csViewPortInv: { - D3DXVECTOR2 viewSize = D3DXVECTOR2(_desc.width, _desc.width / _desc.aspect); + glm::vec2 viewSize = glm::vec2(_desc.width, _desc.width / _desc.aspect); D3DXMATRIX viewMat; D3DXMatrixTranslation(&viewMat, -1.0f, _desc.style == csViewPortInv ? -1.0f : 1.0f, 0.0f); D3DXMATRIX matScale; diff --git a/src/Rock3dEngine/source/graph/Engine.cpp b/src/Rock3dEngine/source/graph/Engine.cpp index b7b7a272..aa788890 100644 --- a/src/Rock3dEngine/source/graph/Engine.cpp +++ b/src/Rock3dEngine/source/graph/Engine.cpp @@ -181,10 +181,10 @@ void Engine::UpdateScreenQuad() res::ScreenVertex vertBuf[4] = { - res::ScreenVertex(D3DXVECTOR4(fPosX, fPosY, 0.5f, 1.0f), D3DXVECTOR2(fLeftU, fTopV)), - res::ScreenVertex(D3DXVECTOR4(fWidth5, fPosY, 0.5f, 1.0f), D3DXVECTOR2(fRightU, fTopV)), - res::ScreenVertex(D3DXVECTOR4(fPosX, fHeight5, 0.5f, 1.0f), D3DXVECTOR2(fLeftU, fBottomV)), - res::ScreenVertex(D3DXVECTOR4(fWidth5, fHeight5, 0.5f, 1.0f), D3DXVECTOR2(fRightU, fBottomV)) + res::ScreenVertex(D3DXVECTOR4(fPosX, fPosY, 0.5f, 1.0f), glm::vec2(fLeftU, fTopV)), + res::ScreenVertex(D3DXVECTOR4(fWidth5, fPosY, 0.5f, 1.0f), glm::vec2(fRightU, fTopV)), + res::ScreenVertex(D3DXVECTOR4(fPosX, fHeight5, 0.5f, 1.0f), glm::vec2(fLeftU, fBottomV)), + res::ScreenVertex(D3DXVECTOR4(fWidth5, fHeight5, 0.5f, 1.0f), glm::vec2(fRightU, fBottomV)) }; res::VertexData* data = _meshScreenQuad.GetOrCreateData(); @@ -203,10 +203,10 @@ void Engine::InitResources() { res::VertexPT vertBuf[4] = { - res::VertexPT(D3DXVECTOR3(0.5f, -0.5f, 0.0f), D3DXVECTOR2(1, 1)), - res::VertexPT(D3DXVECTOR3(0.5f, 0.5f, 0.0f), D3DXVECTOR2(1, 0)), - res::VertexPT(D3DXVECTOR3(-0.5f, -0.5f, 0.0f), D3DXVECTOR2(0, 1)), - res::VertexPT(D3DXVECTOR3(-0.5f, 0.5f, 0.0f), D3DXVECTOR2(0, 0)) + res::VertexPT(D3DXVECTOR3(0.5f, -0.5f, 0.0f), glm::vec2(1, 1)), + res::VertexPT(D3DXVECTOR3(0.5f, 0.5f, 0.0f), glm::vec2(1, 0)), + res::VertexPT(D3DXVECTOR3(-0.5f, -0.5f, 0.0f), glm::vec2(0, 1)), + res::VertexPT(D3DXVECTOR3(-0.5f, 0.5f, 0.0f), glm::vec2(0, 0)) }; res::VertexData* data = _meshPlanePT.GetOrCreateData(); diff --git a/src/Rock3dEngine/source/graph/FogPlane.cpp b/src/Rock3dEngine/source/graph/FogPlane.cpp index 1f8fbda0..e57be2d9 100644 --- a/src/Rock3dEngine/source/graph/FogPlane.cpp +++ b/src/Rock3dEngine/source/graph/FogPlane.cpp @@ -11,7 +11,7 @@ namespace graph FogPlane::FogPlane(): _depthTex(0), _cloudsMat(0), _color(clrWhite), _cloudIntens(0.1f), _speed(0.02f), _curTime(0) { _plane.SetParent(this); - SetSize(D3DXVECTOR2(4.0f, 4.0f)); + SetSize(glm::vec2(4.0f, 4.0f)); SetScale(100.0f); shader.SetTech("techVolumeFog"); @@ -118,12 +118,12 @@ void FogPlane::SetSpeed(float value) _speed = value; } -const D3DXVECTOR2& FogPlane::GetSize() const +const glm::vec2& FogPlane::GetSize() const { return _plane.GetSize(); } -void FogPlane::SetSize(const D3DXVECTOR2& value) +void FogPlane::SetSize(const glm::vec2& value) { _plane.SetSize(value); } diff --git a/src/Rock3dEngine/source/graph/FxManager.cpp b/src/Rock3dEngine/source/graph/FxManager.cpp index 9e4fde84..c59f3ce1 100644 --- a/src/Rock3dEngine/source/graph/FxManager.cpp +++ b/src/Rock3dEngine/source/graph/FxManager.cpp @@ -1160,9 +1160,9 @@ void FxTrailManager::BuildVertexLine(res::VertexPT* vertex, const D3DXVECTOR3& p } vertex[0].pos = yVec * _trailWidth + pos; - vertex[0].tex = D3DXVECTOR2(xTex, 0); + vertex[0].tex = glm::vec2(xTex, 0); vertex[1].pos = -yVec * _trailWidth + pos; - vertex[1].tex = D3DXVECTOR2(xTex, 1.0f); + vertex[1].tex = glm::vec2(xTex, 1.0f); } void FxTrailManager::DrawPath(graph::Engine& engine, FxParticleSystem* system, FxParticleGroup* group, res::VertexPT* vBuf, unsigned primCnt, unsigned sPrim) diff --git a/src/Rock3dEngine/source/graph/GrassField.cpp b/src/Rock3dEngine/source/graph/GrassField.cpp index cc1a1f4b..af4ccf8c 100644 --- a/src/Rock3dEngine/source/graph/GrassField.cpp +++ b/src/Rock3dEngine/source/graph/GrassField.cpp @@ -83,23 +83,23 @@ void GrassField::BuildField() pos.y += _disp * Random(); *data[vert + 0].Pos4() = D3DXVECTOR4(pos, 0); - *data[vert + 0].Tex0() = D3DXVECTOR2(tex[0], tex[1]); + *data[vert + 0].Tex0() = glm::vec2(tex[0], tex[1]); *data[vert + 1].Pos4() = D3DXVECTOR4(pos, 1); - *data[vert + 1].Tex0() = D3DXVECTOR2(tex[2], tex[1]); + *data[vert + 1].Tex0() = glm::vec2(tex[2], tex[1]); *data[vert + 2].Pos4() = D3DXVECTOR4(pos, 2); - *data[vert + 2].Tex0() = D3DXVECTOR2(tex[2], tex[3]); + *data[vert + 2].Tex0() = glm::vec2(tex[2], tex[3]); // *data[vert + 3].Pos4() = D3DXVECTOR4(pos, 0); - *data[vert + 3].Tex0() = D3DXVECTOR2(tex[0], tex[1]); + *data[vert + 3].Tex0() = glm::vec2(tex[0], tex[1]); *data[vert + 4].Pos4() = D3DXVECTOR4(pos, 2); - *data[vert + 4].Tex0() = D3DXVECTOR2(tex[2], tex[3]); + *data[vert + 4].Tex0() = glm::vec2(tex[2], tex[3]); *data[vert + 5].Pos4() = D3DXVECTOR4(pos, 3); - *data[vert + 5].Tex0() = D3DXVECTOR2(tex[0], tex[3]); + *data[vert + 5].Tex0() = glm::vec2(tex[0], tex[3]); } spriteOff += numSprites; @@ -147,7 +147,7 @@ void GrassField::Rebuild() float square = _width * _height; float aspect = _width / _height; - int grassSz = sizeof(D3DXVECTOR4) * sizeof(D3DXVECTOR2); + int grassSz = sizeof(D3DXVECTOR4) * sizeof(glm::vec2); float grassCnt = square * _density; float fieldSz = cMaxBufSize / static_cast(grassSz); float fieldCnt = grassCnt / fieldSz; diff --git a/src/Rock3dEngine/source/graph/HDREffect.cpp b/src/Rock3dEngine/source/graph/HDREffect.cpp index 7853c982..5fbe9238 100644 --- a/src/Rock3dEngine/source/graph/HDREffect.cpp +++ b/src/Rock3dEngine/source/graph/HDREffect.cpp @@ -48,8 +48,8 @@ void HDRRender::MeasureLuminance(Engine& engine) { LSL_ASSERT(_colorTex); - D3DXVECTOR2 sampleOffsets3x3[9]; - D3DXVECTOR2 sampleOffsets4x4[16]; + glm::vec2 sampleOffsets3x3[9]; + glm::vec2 sampleOffsets4x4[16]; GetSampleOffsetsDownScale3x3(_colorTex->GetData()->GetWidth(), _colorTex->GetData()->GetHeight(), sampleOffsets3x3); shader.SetTextureDir("lumTex", _colorTex); diff --git a/src/Rock3dEngine/source/graph/MaterialLibrary.cpp b/src/Rock3dEngine/source/graph/MaterialLibrary.cpp index 62fa95d3..127c778f 100644 --- a/src/Rock3dEngine/source/graph/MaterialLibrary.cpp +++ b/src/Rock3dEngine/source/graph/MaterialLibrary.cpp @@ -290,29 +290,29 @@ Sampler2d::Sampler2d(): _MyBase(st2d) { } -void Sampler2d::BuildAnimByOff(const Vec2Range& texCoord, const Point2U& tileCnt, const D3DXVECTOR2& pixOff) +void Sampler2d::BuildAnimByOff(const Vec2Range& texCoord, const Point2U& tileCnt, const glm::vec2& pixOff) { - D3DXVECTOR2 fTileCnt(static_cast(tileCnt.x), static_cast(tileCnt.y)); + glm::vec2 fTileCnt(static_cast(tileCnt.x), static_cast(tileCnt.y)); - D3DXVECTOR2 coordOff(pixOff.x / GetWidth(), pixOff.y / GetHeight()); - D3DXVECTOR2 coordLen(texCoord.GetMax() - texCoord.GetMin()); - D3DXVECTOR2 tileSize((coordLen - 2 * coordOff) / fTileCnt); + glm::vec2 coordOff(pixOff.x / GetWidth(), pixOff.y / GetHeight()); + glm::vec2 coordLen(texCoord.GetMax() - texCoord.GetMin()); + glm::vec2 tileSize((coordLen - coordOff * 2.0f) / fTileCnt); - D3DXVECTOR2 stTile(texCoord.GetMin() + coordOff); - D3DXVECTOR2 endTile(tileSize * (fTileCnt - IdentityVec2) + stTile); + glm::vec2 stTile(texCoord.GetMin() + coordOff); + glm::vec2 endTile(tileSize * (fTileCnt - IdentityVec2) + stTile); SetScale(D3DXVECTOR3(tileSize.x, tileSize.y, 1.0f)); SetOffset(Vec3Range(D3DXVECTOR3(stTile.x, stTile.y, 0), D3DXVECTOR3(endTile.x, endTile.y, 0), Vec3Range::vdVolume, Point3U(tileCnt.x, tileCnt.y, 1))); } -void Sampler2d::BuildAnimByTile(const Vec2Range& texCoord, const Point2U& tileCnt, const D3DXVECTOR2& tileSize) +void Sampler2d::BuildAnimByTile(const Vec2Range& texCoord, const Point2U& tileCnt, const glm::vec2& tileSize) { - D3DXVECTOR2 fTileCnt(static_cast(tileCnt.x), static_cast(tileCnt.y)); + glm::vec2 fTileCnt(static_cast(tileCnt.x), static_cast(tileCnt.y)); - D3DXVECTOR2 coordLen(texCoord.GetMax() - texCoord.GetMin()); - D3DXVECTOR2 imgSize(coordLen.x * GetWidth(), coordLen.y * GetHeight()); + glm::vec2 coordLen(texCoord.GetMax() - texCoord.GetMin()); + glm::vec2 imgSize(coordLen.x * GetWidth(), coordLen.y * GetHeight()); - D3DXVECTOR2 pixOff = tileSize/2 - ((fTileCnt + IdentityVec2) * tileSize - imgSize) / 2; + glm::vec2 pixOff = tileSize / 2.0f - ((fTileCnt + IdentityVec2) * tileSize - imgSize) / 2.0f; BuildAnimByOff(texCoord, tileCnt, pixOff); } @@ -337,7 +337,7 @@ unsigned Sampler2d::GetFormat() const return GetTex() ? GetTex()->GetData()->GetFormat() : 0; } -D3DXVECTOR2 Sampler2d::GetSize() +glm::vec2 Sampler2d::GetSize() { return GetTex() ? GetTex()->GetSize() : NullVec2; } @@ -919,16 +919,16 @@ void DrawScreenQuad(Engine& engine, const D3DXVECTOR4& quadVert, float fLeftU, f res::ScreenVertex svQuad[4]; svQuad[0].pos = D3DXVECTOR4(fPosX, fPosY, 0.5f, 1.0f); - svQuad[0].tex = D3DXVECTOR2(fLeftU, fTopV); + svQuad[0].tex = glm::vec2(fLeftU, fTopV); svQuad[1].pos = D3DXVECTOR4(fWidth5, fPosY, 0.5f, 1.0f); - svQuad[1].tex = D3DXVECTOR2(fRightU, fTopV); + svQuad[1].tex = glm::vec2(fRightU, fTopV); svQuad[2].pos = D3DXVECTOR4(fPosX, fHeight5, 0.5f, 1.0f); - svQuad[2].tex = D3DXVECTOR2(fLeftU, fBottomV); + svQuad[2].tex = glm::vec2(fLeftU, fBottomV); svQuad[3].pos = D3DXVECTOR4(fWidth5, fHeight5, 0.5f, 1.0f); - svQuad[3].tex = D3DXVECTOR2(fRightU, fBottomV); + svQuad[3].tex = glm::vec2(fRightU, fBottomV); if (!disableZBuf) { diff --git a/src/Rock3dEngine/source/graph/ShadowMapRender.cpp b/src/Rock3dEngine/source/graph/ShadowMapRender.cpp index 1953f8ee..8c34ad4a 100644 --- a/src/Rock3dEngine/source/graph/ShadowMapRender.cpp +++ b/src/Rock3dEngine/source/graph/ShadowMapRender.cpp @@ -260,7 +260,7 @@ void ShadowMapRender::BeginShadowMapp(Engine& engine) 0.0f, 0.0f, 1.0f, 0.0f, fTexOffset, fTexOffset, 0.0f, 1.0f); - shader.SetValue("sizeShadow", D3DXVECTOR2(mapSz, 1.0f / mapSz)); + shader.SetValue("sizeShadow", glm::vec2(mapSz, 1.0f / mapSz)); ApplyRT(engine, _beginFlags); engine.GetDriver().GetDevice()->GetViewport(&_oldViewPort); diff --git a/src/Rock3dEngine/source/graph/StdNode.cpp b/src/Rock3dEngine/source/graph/StdNode.cpp index accc0743..02d31ce1 100644 --- a/src/Rock3dEngine/source/graph/StdNode.cpp +++ b/src/Rock3dEngine/source/graph/StdNode.cpp @@ -805,7 +805,7 @@ void PlaneNode::Load(lsl::SReader* reader) { _MyBase::Load(reader); - D3DXVECTOR2 size; + glm::vec2 size; lsl::SReadValue(reader, "size", size); SetSize(size); @@ -819,12 +819,12 @@ void PlaneNode::OnFixUp(const FixUpNames& fixUpNames) material.OnFixUp(fixUpNames, this); } -const D3DXVECTOR2& PlaneNode::GetSize() const +const glm::vec2& PlaneNode::GetSize() const { return _size; } -void PlaneNode::SetSize(const D3DXVECTOR2& value) +void PlaneNode::SetSize(const glm::vec2& value) { if (_size != value) { @@ -981,9 +981,6 @@ void Cylinder::SetColor(const D3DXCOLOR& value) UpdateMesh(); } - - - Sprite::Sprite(): sizes(IdentityVec2), fixDirection(false) { } @@ -1009,14 +1006,14 @@ AABB Sprite::LocalDimensions() const return AABB(-max, max); } else - return AABB(1.0f * D3DXVec2Length(&sizes)); + return AABB(1.0f * glm::length(sizes)); } void Sprite::Save(lsl::SWriter* writer) { _MyBase::Save(writer); - writer->WriteValue("sizes", sizes, 2); + writer->WriteValue("sizes", reinterpret_cast(&sizes.x), 2); writer->WriteValue("fixDirection", fixDirection); material.Save(writer, this); @@ -1026,7 +1023,7 @@ void Sprite::Load(lsl::SReader* reader) { _MyBase::Load(reader); - reader->ReadValue("sizes", sizes, 2); + reader->ReadValue("sizes", reinterpret_cast(&sizes.x), 2); reader->ReadValue("fixDirection", fixDirection); material.Load(reader, this); @@ -1037,9 +1034,6 @@ void Sprite::OnFixUp(const FixUpNames& fixUpNames) material.OnFixUp(fixUpNames, this); } - - - ScreenSprite::ScreenSprite(): quadVertex(0, 0, 1, 1), uvVertex(0, 0, 1, 1) { } @@ -1426,12 +1420,12 @@ void FillDataPlane(res::VertexData& vb, float width, float height, float u, floa float y = height / 2.0f; res::VertexPNT* vertex = reinterpret_cast(vb.GetData()); - vertex[0] = res::VertexPNT(D3DXVECTOR3(-x, -y, 0.0f), ZVector, D3DXVECTOR2(0.0f, 0.0f)); - vertex[1] = res::VertexPNT(D3DXVECTOR3( x, -y, 0.0f), ZVector, D3DXVECTOR2(u, 0.0f)); - vertex[2] = res::VertexPNT(D3DXVECTOR3( x, y, 0.0f), ZVector, D3DXVECTOR2(u, v)); - vertex[3] = res::VertexPNT(D3DXVECTOR3(-x, -y, 0.0f), ZVector, D3DXVECTOR2(0.0f, 0.0f)); - vertex[4] = res::VertexPNT(D3DXVECTOR3( x, y, 0.0f), ZVector, D3DXVECTOR2(u, v)); - vertex[5] = res::VertexPNT(D3DXVECTOR3(-x, y, 0.0f), ZVector, D3DXVECTOR2(0.0f, v)); + vertex[0] = res::VertexPNT(D3DXVECTOR3(-x, -y, 0.0f), ZVector, glm::vec2(0.0f, 0.0f)); + vertex[1] = res::VertexPNT(D3DXVECTOR3( x, -y, 0.0f), ZVector, glm::vec2(u, 0.0f)); + vertex[2] = res::VertexPNT(D3DXVECTOR3( x, y, 0.0f), ZVector, glm::vec2(u, v)); + vertex[3] = res::VertexPNT(D3DXVECTOR3(-x, -y, 0.0f), ZVector, glm::vec2(0.0f, 0.0f)); + vertex[4] = res::VertexPNT(D3DXVECTOR3( x, y, 0.0f), ZVector, glm::vec2(u, v)); + vertex[5] = res::VertexPNT(D3DXVECTOR3(-x, y, 0.0f), ZVector, glm::vec2(0.0f, v)); vb.Update(); } diff --git a/src/Rock3dEngine/source/graph/VideoResource.cpp b/src/Rock3dEngine/source/graph/VideoResource.cpp index 3125146a..b687118a 100644 --- a/src/Rock3dEngine/source/graph/VideoResource.cpp +++ b/src/Rock3dEngine/source/graph/VideoResource.cpp @@ -601,12 +601,12 @@ void TexResource::SetLevelCnt(unsigned value) } } -const D3DXVECTOR2& TexResource::GetScreenScale() const +const glm::vec2& TexResource::GetScreenScale() const { return _screenScale; } -void TexResource::SetScreenScale(D3DXVECTOR2 value) +void TexResource::SetScreenScale(glm::vec2 value) { if (_screenScale != value) { @@ -837,13 +837,13 @@ IDirect3DTexture9* Tex2DResource::GetTex() return _texture; } -D3DXVECTOR2 Tex2DResource::GetSize() +glm::vec2 Tex2DResource::GetSize() { LSL_ASSERT(_data); LoadData(); - return D3DXVECTOR2(static_cast(_data->GetWidth()), static_cast(_data->GetHeight())); + return glm::vec2(static_cast(_data->GetWidth()), static_cast(_data->GetHeight())); } @@ -1146,12 +1146,12 @@ void RenderTargetResource::SetMultisampleQuality(unsigned value) } } -const D3DXVECTOR2& RenderTargetResource::GetScreenScale() const +const glm::vec2& RenderTargetResource::GetScreenScale() const { return _screenScale; } -void RenderTargetResource::SetScreenScale(D3DXVECTOR2 value) +void RenderTargetResource::SetScreenScale(glm::vec2 value) { if (_screenScale != value) { @@ -1265,12 +1265,12 @@ void DepthStencilSurfaceResource::SetMultisampleQuality(unsigned value) } } -const D3DXVECTOR2& DepthStencilSurfaceResource::GetScreenScale() const +const glm::vec2& DepthStencilSurfaceResource::GetScreenScale() const { return _screenScale; } -void DepthStencilSurfaceResource::SetScreenScale(D3DXVECTOR2 value) +void DepthStencilSurfaceResource::SetScreenScale(glm::vec2 value) { if (_screenScale != value) { diff --git a/src/Rock3dEngine/source/gui/GUI.cpp b/src/Rock3dEngine/source/gui/GUI.cpp index 58a6b90e..305082f0 100644 --- a/src/Rock3dEngine/source/gui/GUI.cpp +++ b/src/Rock3dEngine/source/gui/GUI.cpp @@ -21,7 +21,7 @@ Material::Material(): _color(clrWhite), _blending(bmOpaque), _alphaTest(asNone) _sampler.SetAlphaMode(graph::Sampler2d::tmModulate); } -D3DXVECTOR2 Material::GetImageSize() +glm::vec2 Material::GetImageSize() { return GetSampler().GetSize(); } @@ -89,23 +89,23 @@ Context& Graphic::GetContext() return *_context; } -const D3DXVECTOR2& Graphic::GetPos() const +const glm::vec2& Graphic::GetPos() const { return _pos; } -void Graphic::SetPos(const D3DXVECTOR2& value) +void Graphic::SetPos(const glm::vec2& value) { _pos = value; TransformChanged(); } -const D3DXVECTOR2& Graphic::GetSize() const +const glm::vec2& Graphic::GetSize() const { return _size; } -void Graphic::SetSize(const D3DXVECTOR2& value) +void Graphic::SetSize(const glm::vec2& value) { _size = value; TransformChanged(); @@ -606,9 +606,6 @@ void VBuf3d::SetMesh(graph::VBMesh* value) } } - - - Mesh3d::Mesh3d(Context* context): _MyBase(context), _mesh(0), _meshId(-1) { } @@ -658,7 +655,7 @@ void Mesh3d::SetMeshId(int value) -Plane3d::Plane3d(Context* context): _MyBase(context), _size(IdentityVector) +Plane3d::Plane3d(Context *context) : _MyBase(context), _size(IdentityVector.x, IdentityVector.y) { } @@ -672,12 +669,12 @@ void Plane3d::Draw() GetContext().DrawPlane3d(*this); } -const D3DXVECTOR2& Plane3d::GetSize() +const glm::vec2& Plane3d::GetSize() { return _size; } -void Plane3d::SetSize(const D3DXVECTOR2 value) +void Plane3d::SetSize(const glm::vec2 value) { _size = value; StructureChanged(); @@ -881,14 +878,16 @@ template void Context::DrawBaseText(_Text& text, AABB2* aabb) format |= text.GetWordWrap() ? DT_WORDBREAK : 0; format |= text.GetClipEnable() ? 0 : DT_NOCLIP; - D3DXVECTOR2 pos = text.GetPos(); + glm::vec2 pos = text.GetPos(); if (aabb) { pos += NullVec2; } else { - pos += D3DXVECTOR2(MatGetPos(GetCI().GetWorldMat())); + //pos += glm::vec2(MatGetPos(GetCI().GetWorldMat())); + pos += glm::vec2(MatGetPos(GetCI().GetWorldMat()).x, + MatGetPos(GetCI().GetWorldMat()).y); // remove after D3DXVECTOR3 replacement //Оси y не совпадают if (_invertY) pos.y = GetVPSize().y - (pos.y + text.GetVScroll()); @@ -896,8 +895,8 @@ template void Context::DrawBaseText(_Text& text, AABB2* aabb) pos.y = pos.y + text.GetVScroll(); } - D3DXVECTOR2 size = text.GetSize(); - size = size / 2; + glm::vec2 size = text.GetSize(); + size = size / 2.0f; Point left(Floor(pos.x - size.x - 0.5f), Floor(pos.y - size.y - 0.5f)); Point right(Ceil(pos.x + size.x + 0.5f), Ceil(pos.y + size.y + 0.5f)); Rect rect(left.x, left.y, right.x, right.y); @@ -905,8 +904,8 @@ template void Context::DrawBaseText(_Text& text, AABB2* aabb) if (aabb) { text.GetFont()->DrawText(text.GetText(), rect, format | DT_CALCRECT, 0); - aabb->min = D3DXVECTOR2(static_cast(rect.left), static_cast(rect.top)); - aabb->max = D3DXVECTOR2(static_cast(rect.right), static_cast(rect.bottom)); + aabb->min = glm::vec2(static_cast(rect.left), static_cast(rect.top)); + aabb->max = glm::vec2(static_cast(rect.right), static_cast(rect.bottom)); } else { @@ -933,7 +932,7 @@ graph::ContextInfo& Context::GetCI() void Context::BeginDraw() { - D3DXVECTOR2 vpSize = GetVPSize(); + glm::vec2 vpSize = GetVPSize(); graph::CameraDesc desc; desc.style = _invertY ? graph::csViewPortInv : graph::csViewPort; @@ -968,22 +967,22 @@ void Context::SetTransform(const D3DXMATRIX& value) void Context::DrawPlane(Plane& plane) { D3DXVECTOR3 pos3(Vec3FromVec2(plane.GetPos())); - D3DXVECTOR2 size = plane.GetSize()/2.0f; + glm::vec2 size = plane.GetSize()/2.0f; res::VertexPT planeBuf[4]; if (_invertY) { - planeBuf[0] = res::VertexPT(D3DXVECTOR3(Ceil(size.x + pos3.x) - 0.5f, Floor(-size.y + pos3.y) - 0.5f, 0), D3DXVECTOR2(1.0f, 1.0f)); - planeBuf[1] = res::VertexPT(D3DXVECTOR3(Ceil(size.x + pos3.x) - 0.5f, Ceil(size.y + pos3.y) - 0.5f, 0), D3DXVECTOR2(1.0f, 0.0f)); - planeBuf[2] = res::VertexPT(D3DXVECTOR3(Floor(-size.x + pos3.x) - 0.5f, Floor(-size.y + pos3.y) - 0.5f, 0), D3DXVECTOR2(0.0f, 1.0f)); - planeBuf[3] = res::VertexPT(D3DXVECTOR3(Floor(-size.x + pos3.x) - 0.5f, Ceil(size.y + pos3.y) - 0.5f, 0), D3DXVECTOR2(0.0f, 0.0f)); + planeBuf[0] = res::VertexPT(D3DXVECTOR3(Ceil(size.x + pos3.x) - 0.5f, Floor(-size.y + pos3.y) - 0.5f, 0), glm::vec2(1.0f, 1.0f)); + planeBuf[1] = res::VertexPT(D3DXVECTOR3(Ceil(size.x + pos3.x) - 0.5f, Ceil(size.y + pos3.y) - 0.5f, 0), glm::vec2(1.0f, 0.0f)); + planeBuf[2] = res::VertexPT(D3DXVECTOR3(Floor(-size.x + pos3.x) - 0.5f, Floor(-size.y + pos3.y) - 0.5f, 0), glm::vec2(0.0f, 1.0f)); + planeBuf[3] = res::VertexPT(D3DXVECTOR3(Floor(-size.x + pos3.x) - 0.5f, Ceil(size.y + pos3.y) - 0.5f, 0), glm::vec2(0.0f, 0.0f)); } else { - planeBuf[0] = res::VertexPT(D3DXVECTOR3(Ceil(size.x + pos3.x) - 0.5f, Floor(-size.y + pos3.y) - 0.5f, 0), D3DXVECTOR2(1.0f, 0.0f)); - planeBuf[1] = res::VertexPT(D3DXVECTOR3(Floor(-size.x + pos3.x) - 0.5f, Floor(-size.y + pos3.y) - 0.5f, 0), D3DXVECTOR2(0.0f, 0.0f)); - planeBuf[2] = res::VertexPT(D3DXVECTOR3(Ceil(size.x + pos3.x) - 0.5f, Ceil(size.y + pos3.y) - 0.5f, 0), D3DXVECTOR2(1.0f, 1.0f)); - planeBuf[3] = res::VertexPT(D3DXVECTOR3(Floor(-size.x + pos3.x) - 0.5f, Ceil(size.y + pos3.y) - 0.5f, 0), D3DXVECTOR2(0.0f, 1.0f)); + planeBuf[0] = res::VertexPT(D3DXVECTOR3(Ceil(size.x + pos3.x) - 0.5f, Floor(-size.y + pos3.y) - 0.5f, 0), glm::vec2(1.0f, 0.0f)); + planeBuf[1] = res::VertexPT(D3DXVECTOR3(Floor(-size.x + pos3.x) - 0.5f, Floor(-size.y + pos3.y) - 0.5f, 0), glm::vec2(0.0f, 0.0f)); + planeBuf[2] = res::VertexPT(D3DXVECTOR3(Ceil(size.x + pos3.x) - 0.5f, Ceil(size.y + pos3.y) - 0.5f, 0), glm::vec2(1.0f, 1.0f)); + planeBuf[3] = res::VertexPT(D3DXVECTOR3(Floor(-size.x + pos3.x) - 0.5f, Ceil(size.y + pos3.y) - 0.5f, 0), glm::vec2(0.0f, 1.0f)); }; BeginDrawGraphic(plane); @@ -1030,14 +1029,14 @@ void Context::DrawMesh3d(Mesh3d& mesh3d) void Context::DrawPlane3d(Plane3d& plane3d) { - D3DXVECTOR2 size = plane3d.GetSize(); + glm::vec2 size = plane3d.GetSize(); const res::VertexPT planeBuf[4] = { - res::VertexPT(D3DXVECTOR3(size.x, -size.y, 0), D3DXVECTOR2(1.0f, 1.0f)), - res::VertexPT(D3DXVECTOR3(size.x, size.y, 0), D3DXVECTOR2(1.0f, 0.0f)), - res::VertexPT(D3DXVECTOR3(-size.x, -size.y, 0), D3DXVECTOR2(0.0f, 1.0f)), - res::VertexPT(D3DXVECTOR3(-size.x, size.y, 0), D3DXVECTOR2(0.0f, 0.0f)) + res::VertexPT(D3DXVECTOR3(size.x, -size.y, 0), glm::vec2(1.0f, 1.0f)), + res::VertexPT(D3DXVECTOR3(size.x, size.y, 0), glm::vec2(1.0f, 0.0f)), + res::VertexPT(D3DXVECTOR3(-size.x, -size.y, 0), glm::vec2(0.0f, 1.0f)), + res::VertexPT(D3DXVECTOR3(-size.x, size.y, 0), glm::vec2(0.0f, 0.0f)) }; GetDriver().GetDevice()->SetFVF(D3DFVF_XYZ | D3DFVF_TEX1); @@ -1172,12 +1171,12 @@ void Context::SetInvertY(bool value) _invertY = value; } -const D3DXVECTOR2& Context::GetVPSize() +const glm::vec2& Context::GetVPSize() { return _vpSize; } -void Context::SetVPSize(const D3DXVECTOR2& value) +void Context::SetVPSize(const glm::vec2& value) { _vpSize = value; } @@ -1323,9 +1322,9 @@ void Widget::BuildLocalAABB() const { _aabbChanges.reset(acLocalAABB); - D3DXVECTOR2 center = GetAlignPos(); - D3DXVECTOR2 size = GetSize(); - _localAABB = AABB2(center - size/2, center + size/2); + glm::vec2 center = GetAlignPos(); + glm::vec2 size = GetSize(); + _localAABB = AABB2(center - size / 2.0f, center + size / 2.0f); } } @@ -1440,7 +1439,7 @@ void Widget::ApplyAlign() const localRect.Transform(GetMat()); AABB2 newRect = localRect; - D3DXVECTOR2 newSize = newRect.GetSize(); + glm::vec2 newSize = newRect.GetSize(); if (_flags[wfAlignLeft]) { newRect.min.x = rect.min.x; @@ -1464,8 +1463,8 @@ void Widget::ApplyAlign() const newRect.max.y = newRect.min.y + newSize.y; } - D3DXVECTOR2 size = newRect.GetSize(); - D3DXVECTOR2 pos = newRect.GetCenter(); + glm::vec2 size = newRect.GetSize(); + glm::vec2 pos = newRect.GetCenter(); //В виде исключения Widget* mThis = const_cast(this); @@ -1718,36 +1717,24 @@ void Widget::DeleteAllGraphics() _graphics.clear(); } -D3DXVECTOR2 Widget::LocalToWorldCoord(const D3DXVECTOR2& value) const +glm::vec2 Widget::LocalToWorldCoord(const glm::vec2& value) const { - D3DXVECTOR2 res; - D3DXVec2TransformCoord(&res, &value, &GetWorldMat()); - - return res; + return Vec2TransformCoord(value, d3dMatrixToGLM(GetWorldMat())); } -D3DXVECTOR2 Widget::WorldToLocalCoord(const D3DXVECTOR2& value) const +glm::vec2 Widget::WorldToLocalCoord(const glm::vec2& value) const { - D3DXVECTOR2 res; - D3DXVec2TransformCoord(&res, &value, &GetInvWorldMat()); - - return res; + return Vec2TransformCoord(value, d3dMatrixToGLM(GetInvWorldMat())); } -D3DXVECTOR2 Widget::LocalToWorldNorm(const D3DXVECTOR2& value) const +glm::vec2 Widget::LocalToWorldNorm(const glm::vec2& value) const { - D3DXVECTOR2 res; - D3DXVec2TransformNormal(&res, &value, &GetWorldMat()); - - return res; + return Vec2TransformNormal(value, d3dMatrixToGLM(GetWorldMat())); } -D3DXVECTOR2 Widget::WorldToLocalNorm(const D3DXVECTOR2& value) const +glm::vec2 Widget::WorldToLocalNorm(const glm::vec2& value) const { - D3DXVECTOR2 res; - D3DXVec2TransformNormal(&res, &value, &GetInvWorldMat()); - - return res; + return Vec2TransformNormal(value, d3dMatrixToGLM(GetInvWorldMat())); } Manager& Widget::GetManager() @@ -2030,19 +2017,19 @@ void Widget::SetEnabled(bool value) OnEnabled(value); } -D3DXVECTOR2 Widget::GetAlignPos() const +glm::vec2 Widget::GetAlignPos() const { return GetAlignPos(_size, _align); } -const D3DXVECTOR2& Widget::GetPos() const +const glm::vec2& Widget::GetPos() const { ApplyAlign(); return _pos; } -void Widget::SetPos(const D3DXVECTOR2& value) +void Widget::SetPos(const glm::vec2& value) { _pos = value; @@ -2051,15 +2038,15 @@ void Widget::SetPos(const D3DXVECTOR2& value) void Widget::SetPos(float x, float y) { - SetPos(D3DXVECTOR2(x, y)); + SetPos(glm::vec2(x, y)); } -const D3DXVECTOR2& Widget::GetScale() const +const glm::vec2& Widget::GetScale() const { return _scale; } -void Widget::SetScale(const D3DXVECTOR2& value) +void Widget::SetScale(const glm::vec2& value) { _scale = value; @@ -2068,7 +2055,7 @@ void Widget::SetScale(const D3DXVECTOR2& value) void Widget::SetScale(float x, float y) { - SetScale(D3DXVECTOR2(x, y)); + SetScale(glm::vec2(x, y)); } float Widget::GetRot() const @@ -2106,12 +2093,13 @@ void Widget::SetPos3d(const D3DXVECTOR3& value) TransformChanged(); } -D3DXVECTOR2 Widget::GetWorldPos() const +glm::vec2 Widget::GetWorldPos() const { - return D3DXVECTOR2(GetWorldMat().m[3]); + //return glm::vec2(GetWorldMat().m[3]); // TTEST: m[3] - matrix replacement + return glm::vec2(GetWorldMat()._41, GetWorldMat()._42); // remove after D3DXMATRIX replacement } -void Widget::SetWorldPos(const D3DXVECTOR2& value) +void Widget::SetWorldPos(const glm::vec2& value) { SetPos(_parent ? _parent->WorldToLocalCoord(value) : value); } @@ -2146,14 +2134,14 @@ const D3DXMATRIX& Widget::GetInvWorldMat() const return _matrix[mcInvWorld]; } -const D3DXVECTOR2& Widget::GetSize() const +const glm::vec2& Widget::GetSize() const { ApplyAlign(); return _size; } -void Widget::SetSize(const D3DXVECTOR2& value) +void Widget::SetSize(const glm::vec2& value) { _size = value; StructureChanged(scLocal); @@ -2161,7 +2149,7 @@ void Widget::SetSize(const D3DXVECTOR2& value) void Widget::SetSize(float szX, float szY) { - SetSize(D3DXVECTOR2(szX, szY)); + SetSize(glm::vec2(szX, szY)); } const AABB2& Widget::GetLocalAABB(bool includeChild) const @@ -2220,29 +2208,29 @@ void Widget::SetData(Object* value) _data = value; } -D3DXVECTOR2 Widget::GetAlignPos(const D3DXVECTOR2& size, Anchor align) +glm::vec2 Widget::GetAlignPos(const glm::vec2& size, Anchor align) { - D3DXVECTOR2 half = size/2; + glm::vec2 half = size / 2.0f; switch (align) { case waLeft: - return D3DXVECTOR2(half.x, 0); + return glm::vec2(half.x, 0); case waRight: - return D3DXVECTOR2(-half.x, 0); + return glm::vec2(-half.x, 0); case waTop: - return D3DXVECTOR2(0, half.y); + return glm::vec2(0, half.y); case waBottom: - return D3DXVECTOR2(0, -half.y); + return glm::vec2(0, -half.y); case waLeftTop: - return D3DXVECTOR2(half.x, half.y); + return glm::vec2(half.x, half.y); case waLeftBottom: - return D3DXVECTOR2(half.x, -half.y); + return glm::vec2(half.x, -half.y); case waRightTop: - return D3DXVECTOR2(-half.x, half.y); + return glm::vec2(-half.x, half.y); case waRightBottom: - return D3DXVECTOR2(-half.x, -half.y); + return glm::vec2(-half.x, -half.y); default: return NullVec2; @@ -2571,7 +2559,7 @@ Button::Button(Manager* manager): _MyBase(manager), _style(bsSimple), _selSize(0 _text->AddRef(); InsertGraphic(_text); - SetSize(D3DXVECTOR2(100.0f, 25.0f)); + SetSize(glm::vec2(100.0f, 25.0f)); RegProgress(); } @@ -2855,12 +2843,12 @@ void Button::SetText(const std::string& value) StructureChanged(); } -const D3DXVECTOR2& Button::GetSelSize() const +const glm::vec2& Button::GetSelSize() const { return _selSize; } -void Button::SetSelSize(const D3DXVECTOR2& value) +void Button::SetSelSize(const glm::vec2& value) { _selSize = value; StructureChanged(); @@ -2993,7 +2981,7 @@ void StepperBox::StructureChanged(StructChange change) if (change == scLocal) { - D3DXVECTOR2 pos = GetAlignPos(); + glm::vec2 pos = GetAlignPos(); _planeBg->SetSize(GetSize()); _planeBg->SetPos(pos); @@ -3010,10 +2998,10 @@ void StepperBox::StructureChanged(StructChange change) _right->SetSelSize(_left->GetSelSize()); } - _left->SetPos(D3DXVECTOR2(-GetSize().x/2, 0.0f) + pos); - _right->SetPos(D3DXVECTOR2(GetSize().x/2, 0.0f) + pos); + _left->SetPos(glm::vec2(-GetSize().x/2, 0.0f) + pos); + _right->SetPos(glm::vec2(GetSize().x/2, 0.0f) + pos); - _textField->SetSize(D3DXVECTOR2(GetSize().x - _left->GetSize().x - _right->GetSize().x, GetSize().y)); + _textField->SetSize(glm::vec2(GetSize().x - _left->GetSize().x - _right->GetSize().x, GetSize().y)); _textField->SetPos(pos); } } @@ -3211,7 +3199,7 @@ bool DropBox::ItemsEvent::OnMouseDown(Widget* sender, const MouseClick& mClick) { if (sender == _dropBox->_itemsFon && mClick.key == mkLeft && mClick.state == ksUp) { - D3DXVECTOR2 localCoord = _dropBox->_itemsFon->WorldToLocalCoord(mClick.worldCoord); + glm::vec2 localCoord = _dropBox->_itemsFon->WorldToLocalCoord(mClick.worldCoord); if (Text* text = _dropBox->FindSelTextItem(localCoord, false)) { _dropBox->SetSelItem(text->GetText()); @@ -3230,7 +3218,7 @@ void DropBox::ShowItems(bool value) { if (_showItems != value) { - D3DXVECTOR2 size = GetSize(); + glm::vec2 size = GetSize(); if (_showItems) { @@ -3257,7 +3245,7 @@ void DropBox::ShowItems(bool value) item->SetText(*iter); item->SetFont(_selItem->GetFont()); item->SetSize(_selItem->GetSize()); - item->SetPos(D3DXVECTOR2(size.y/2.0f, -(i - _items.size()/2.0f + 0.5f) * size.y)); + item->SetPos(glm::vec2(size.y/2.0f, -(i - _items.size()/2.0f + 0.5f) * size.y)); item->SetHorAlign(Text::haLeft); item->SetMaterial(_textMaterial); @@ -3283,7 +3271,7 @@ void DropBox::SelectItem(const std::string& item) _selInd = -1; } -Text* DropBox::FindSelTextItem(const D3DXVECTOR2& point, bool deselect) +Text* DropBox::FindSelTextItem(const glm::vec2& point, bool deselect) { Text* res = 0; @@ -3315,17 +3303,17 @@ void DropBox::StructureChanged(StructChange change) if (change == scLocal) { - D3DXVECTOR2 size = GetSize(); + glm::vec2 size = GetSize(); _fon->SetSize(size); - D3DXVECTOR2 itemsSize = D3DXVECTOR2(size.x - size.y, size.y * _items.size()); + glm::vec2 itemsSize = glm::vec2(size.x - size.y, size.y * _items.size()); _itemsFon->SetSize(itemsSize); - _itemsFon->SetPos(D3DXVECTOR2(-size.y/2.0f, -itemsSize.y/2.0f - size.y/2.0f)); + _itemsFon->SetPos(glm::vec2(-size.y/2.0f, -itemsSize.y/2.0f - size.y/2.0f)); - _button->SetPos(D3DXVECTOR2(size.x/2.0f - size.y/2.0f, 0.0f)); - _button->SetSize(D3DXVECTOR2(size.y, size.y)); + _button->SetPos(glm::vec2(size.x/2.0f - size.y/2.0f, 0.0f)); + _button->SetSize(glm::vec2(size.y, size.y)); - _selItem->SetSize(D3DXVECTOR2(size.x - size.y, size.y)); + _selItem->SetSize(glm::vec2(size.x - size.y, size.y)); ShowItems(false); } @@ -3445,7 +3433,7 @@ TrackBar::~TrackBar() _bar->Release(); } -float TrackBar::ComputeBarPos(const D3DXVECTOR2& point) const +float TrackBar::ComputeBarPos(const glm::vec2& point) const { return point.x/GetSize().x + 0.5f; } @@ -3456,10 +3444,10 @@ void TrackBar::StructureChanged(StructChange change) if (change == scLocal) { - D3DXVECTOR2 size = GetSize(); + glm::vec2 size = GetSize(); _bar->SetSize(size); - _button->SetSize(D3DXVECTOR2(size.y, size.y)); + _button->SetSize(glm::vec2(size.y, size.y)); } } @@ -3469,7 +3457,7 @@ bool TrackBar::OnMouseDown(const MouseClick& mClick) if (mClick.state == ksDown) { - D3DXVECTOR2 localCoord = WorldToLocalCoord(mClick.worldCoord); + glm::vec2 localCoord = WorldToLocalCoord(mClick.worldCoord); AABB2 aabb(_button->GetSize()); aabb.Offset(_button->GetPos()); @@ -3490,7 +3478,7 @@ bool TrackBar::OnMouseMove(const MouseMove& mMove) if (_grag) { - D3DXVECTOR2 localCoord = WorldToLocalCoord(mMove.worldCoord); + glm::vec2 localCoord = WorldToLocalCoord(mMove.worldCoord); SetBarPos(ComputeBarPos(localCoord) + _dragOff); OnDrag(mMove); @@ -3506,7 +3494,7 @@ float TrackBar::GetBarPos() const void TrackBar::SetBarPos(float value) { - _button->SetPos(D3DXVECTOR2((ClampValue(value, 0.0f, 1.0f) - 0.5f) * GetSize().x, 0.0f)); + _button->SetPos(glm::vec2((ClampValue(value, 0.0f, 1.0f) - 0.5f) * GetSize().x, 0.0f)); } Material& TrackBar::GetBarMaterial() @@ -3703,13 +3691,13 @@ void ScrollBox::MyEvent::OnStructureChanged(Widget* sender, StructChange change) bool ScrollBox::MyEvent::OnClick(Widget* sender, const MouseClick& mClick) { - D3DXVECTOR2 scrollUp = _scrollBox->GetScroll() - _scrollBox->_arrowScrollStep; + glm::vec2 scrollUp = _scrollBox->GetScroll() - _scrollBox->_arrowScrollStep; scrollUp /= _scrollBox->_arrowScrollStep; scrollUp.x = Round(scrollUp.x); scrollUp.y = Round(scrollUp.y); scrollUp *= _scrollBox->_arrowScrollStep; - D3DXVECTOR2 scrollDown = _scrollBox->GetScroll() + _scrollBox->_arrowScrollStep; + glm::vec2 scrollDown = _scrollBox->GetScroll() + _scrollBox->_arrowScrollStep; scrollDown /= _scrollBox->_arrowScrollStep; scrollDown.x = Round(scrollDown.x); scrollDown.y = Round(scrollDown.y); @@ -3723,14 +3711,14 @@ bool ScrollBox::MyEvent::OnClick(Widget* sender, const MouseClick& mClick) return true; case sdDown: - _scrollBox->SetScroll(D3DXVECTOR2(_scrollBox->GetScroll().x, scrollDown.y)); + _scrollBox->SetScroll(glm::vec2(_scrollBox->GetScroll().x, scrollDown.y)); return true; case sdRight: return true; case sdUp: - _scrollBox->SetScroll(D3DXVECTOR2(_scrollBox->GetScroll().x, scrollUp.y)); + _scrollBox->SetScroll(glm::vec2(_scrollBox->GetScroll().x, scrollUp.y)); return true; } @@ -3786,8 +3774,8 @@ void ScrollBox::ApplyOptions() void ScrollBox::AdjustLayout() { - const D3DXVECTOR2 dim = GetSize()/2.0f - _arrowSize/2.0f; - const D3DXVECTOR2 arrowPos[cScrollDirEnd] = {D3DXVECTOR2(-dim.x, 0.0f), D3DXVECTOR2(0, -dim.y), D3DXVECTOR2(dim.x, 0.0f), D3DXVECTOR2(0, dim.y)}; + const glm::vec2 dim = GetSize()/2.0f - _arrowSize/2.0f; + const glm::vec2 arrowPos[cScrollDirEnd] = {glm::vec2(-dim.x, 0.0f), glm::vec2(0, -dim.y), glm::vec2(dim.x, 0.0f), glm::vec2(0, dim.y)}; for (int i = 0; i < cScrollDirEnd; ++i) if (_scrollBut[i]) @@ -3796,7 +3784,7 @@ void ScrollBox::AdjustLayout() _scrollBut[i]->SetPos(arrowPos[i]); } - D3DXVECTOR2 scrollSz = GetSize(); + glm::vec2 scrollSz = GetSize(); if (_options[soHor]) scrollSz.x -= 2.0f * _arrowSize.x + _arrowSpace.x; if (_options[soVert]) @@ -3842,59 +3830,59 @@ void ScrollBox::SetOption(Option option, bool value) ApplyOptions(); } -const D3DXVECTOR2& ScrollBox::GetArrowSize() const +const glm::vec2& ScrollBox::GetArrowSize() const { return _arrowSize; } -void ScrollBox::SetArrowSize(const D3DXVECTOR2& value) +void ScrollBox::SetArrowSize(const glm::vec2& value) { _arrowSize = value; StructureChanged(); } -const D3DXVECTOR2& ScrollBox::GetArrowSpace() const +const glm::vec2& ScrollBox::GetArrowSpace() const { return _arrowSpace; } -void ScrollBox::SetArrowSpace(const D3DXVECTOR2& value) +void ScrollBox::SetArrowSpace(const glm::vec2& value) { _arrowSpace = value; StructureChanged(); } -const D3DXVECTOR2& ScrollBox::GetArrowScrollStep() const +const glm::vec2& ScrollBox::GetArrowScrollStep() const { return _arrowScrollStep; } -void ScrollBox::SetArrowScrollStep(const D3DXVECTOR2& value) +void ScrollBox::SetArrowScrollStep(const glm::vec2& value) { _arrowScrollStep = value; } -D3DXVECTOR2 ScrollBox::GetMaxScroll() const +glm::vec2 ScrollBox::GetMaxScroll() const { return _box->GetChildAABB().GetSize(); } -D3DXVECTOR2 ScrollBox::GetScroll() +glm::vec2 ScrollBox::GetScroll() { return _box->GetPos() - _box->GetChildAABB().max + _box->GetSize()/2.0f; } -void ScrollBox::SetScroll(const D3DXVECTOR2& value) +void ScrollBox::SetScroll(const glm::vec2& value) { - D3DXVECTOR2 boxSize = _box->GetChildAABB().GetSize(); + glm::vec2 boxSize = _box->GetChildAABB().GetSize(); //корректируем чтобы максимальной прокруткой был размер страницы - D3DXVECTOR2 clampSize(boxSize.x, std::max(boxSize.y - _clip->GetSize().y, 0.0f)); - D3DXVECTOR2 scroll = value; - D3DXVec2Maximize(&scroll, &scroll, &NullVec2); - D3DXVec2Minimize(&scroll, &scroll, &clampSize); + glm::vec2 clampSize(boxSize.x, std::max(boxSize.y - _clip->GetSize().y, 0.0f)); + glm::vec2 scroll = value; + scroll = Vec2Maximize(scroll, NullVec2); + scroll = Vec2Minimize(scroll, clampSize); - D3DXVECTOR2 pos = scroll + _box->GetChildAABB().max - _box->GetSize()/2.0f; + glm::vec2 pos = scroll + _box->GetChildAABB().max - _box->GetSize()/2.0f; if (_box->GetSize().x > boxSize.x) pos.x = 0; if (_box->GetSize().y > boxSize.y) @@ -4081,21 +4069,21 @@ void ListBox::FreeItem(Item* item) void ListBox::AlignItems() { - D3DXVECTOR2 size = _scrollBox->GetBox()->GetSize(); + glm::vec2 size = _scrollBox->GetBox()->GetSize(); int i = 0; for (Items::iterator iter = _items.begin(); iter != _items.end(); ++iter, ++i) { - D3DXVECTOR2 itemStep = _itemSize + _itemSpace; + glm::vec2 itemStep = _itemSize + _itemSpace; float stripLen = itemStep.x * i; - D3DXVECTOR2 clientSize = size / itemStep; + glm::vec2 clientSize = size / itemStep; clientSize.x = floor(clientSize.x); clientSize.y = floor(clientSize.y); clientSize *= itemStep; //необходимо учитывать дополнительный пробел _itemSpace - D3DXVECTOR2 fracSize = size - clientSize + _itemSpace; + glm::vec2 fracSize = size - clientSize + _itemSpace; - D3DXVECTOR2 index(0, 0); + glm::vec2 index(0, 0); if (abs(clientSize.x > 0.001f) && abs(itemStep.x > 0.001f)) index.x = floor(fmod(stripLen, clientSize.x) / itemStep.x); if (abs(clientSize.x > 0.001f)) @@ -4111,7 +4099,7 @@ void ListBox::AlignItems() frame->SetPos(data->GetLocalAABB(true).GetCenter()); } - D3DXVECTOR2 pos = -size/2.0f + D3DXVECTOR2(fracSize.x/2.0f, 0) + index * itemStep + _itemSize/2.0f; + glm::vec2 pos = -size/2.0f + glm::vec2(fracSize.x/2.0f, 0) + index * itemStep + _itemSize/2.0f; pos.y = -pos.y; data->SetPos(pos); @@ -4125,7 +4113,7 @@ void ListBox::StructureChanged(StructChange change) if (change == scLocal) { - D3DXVECTOR2 size = GetSize(); + glm::vec2 size = GetSize(); if (_fon) _fon->SetSize(size); _scrollBox->SetSize(size - IdentityVec2 * 10.0f); @@ -4191,7 +4179,7 @@ void ListBox::ClearItems() DelItem(_items.begin(), _items.end()); } -ListBox::Item* ListBox::PickItem(const D3DXVECTOR2& worldCoord) +ListBox::Item* ListBox::PickItem(const glm::vec2& worldCoord) { if (!_scrollBox->GetClip()->GetWorldAABB(false).ContainsPoint(worldCoord)) return 0; @@ -4203,7 +4191,7 @@ ListBox::Item* ListBox::PickItem(const D3DXVECTOR2& worldCoord) return 0; } -bool ListBox::PickItems(const D3DXVECTOR2& worldCoord) +bool ListBox::PickItems(const glm::vec2& worldCoord) { return _scrollBox->GetClip()->GetWorldAABB(false).ContainsPoint(worldCoord); } @@ -4230,9 +4218,9 @@ void ListBox::SelectItem(Item* item) } } -void ListBox::AlignSizeByItems(const D3DXVECTOR2& size) +void ListBox::AlignSizeByItems(const glm::vec2& size) { - D3DXVECTOR2 newSize = size; + glm::vec2 newSize = size; newSize = (newSize - GetScrollSpace()) / GetItemPlaceSize(); //Пои оси X не зачем выравнивать, поскольку прокрутка только вертикальная (и может привести к погрешности) //newSize.x = floor(newSize.x); @@ -4248,23 +4236,23 @@ const ListBox::Items& ListBox::GetItems() const return _items; } -const D3DXVECTOR2& ListBox::GetItemSize() const +const glm::vec2& ListBox::GetItemSize() const { return _itemSize; } -void ListBox::SetItemSize(const D3DXVECTOR2& value) +void ListBox::SetItemSize(const glm::vec2& value) { _itemSize = value; StructureChanged(); } -const D3DXVECTOR2& ListBox::GetItemSpace() const +const glm::vec2& ListBox::GetItemSpace() const { return _itemSpace; } -void ListBox::SetItemSpace(const D3DXVECTOR2& value) +void ListBox::SetItemSpace(const glm::vec2& value) { _itemSpace = value; StructureChanged(); @@ -4333,37 +4321,37 @@ Material& ListBox::GetArrowSelMaterial() return _scrollBox->GetArrowSelMaterial(); } -const D3DXVECTOR2& ListBox::GetArrowSize() const +const glm::vec2& ListBox::GetArrowSize() const { return _scrollBox->GetArrowSize(); } -void ListBox::SetArrowSize(const D3DXVECTOR2& value) +void ListBox::SetArrowSize(const glm::vec2& value) { _scrollBox->SetArrowSize(value); } -D3DXVECTOR2 ListBox::GetScroll() const +glm::vec2 ListBox::GetScroll() const { return _scrollBox->GetScroll(); } -void ListBox::SetScroll(const D3DXVECTOR2& value) +void ListBox::SetScroll(const glm::vec2& value) { _scrollBox->SetScroll(value); } -D3DXVECTOR2 ListBox::GetMaxScroll() const +glm::vec2 ListBox::GetMaxScroll() const { return _scrollBox->GetMaxScroll(); } -D3DXVECTOR2 ListBox::GetItemPlaceSize() const +glm::vec2 ListBox::GetItemPlaceSize() const { return _itemSize + _itemSpace; } -D3DXVECTOR2 ListBox::GetScrollSpace() const +glm::vec2 ListBox::GetScrollSpace() const { return 2.0f * GetArrowSize() + _itemSpace; } @@ -4397,7 +4385,7 @@ void ProgressBar::StructureChanged(StructChange change) if (change == scLocal) { - D3DXVECTOR2 pos = GetAlignPos(); + glm::vec2 pos = GetAlignPos(); _back->SetSize(GetSize()); _back->SetPos(pos); @@ -4407,16 +4395,16 @@ void ProgressBar::StructureChanged(StructChange change) case psHorizontal: { float barSize = GetSize().x * _progress; - _front->SetSize(D3DXVECTOR2(barSize, GetSize().y)); - _front->SetPos(pos + D3DXVECTOR2(-GetSize().x/2.0f + barSize/2.0f, 0)); + _front->SetSize(glm::vec2(barSize, GetSize().y)); + _front->SetPos(pos + glm::vec2(-GetSize().x/2.0f + barSize/2.0f, 0)); _front->GetMaterial()->GetSampler().SetScale(D3DXVECTOR3(_progress, 1, 1)); break; } case psVertical: { float barSize = GetSize().y * _progress; - _front->SetSize(D3DXVECTOR2(GetSize().x, barSize)); - _front->SetPos(pos + D3DXVECTOR2(0, GetSize().y/2.0f - barSize/2.0f)); + _front->SetSize(glm::vec2(GetSize().x, barSize)); + _front->SetPos(pos + glm::vec2(0, GetSize().y/2.0f - barSize/2.0f)); _front->GetMaterial()->GetSampler().SetScale(D3DXVECTOR3(1, _progress, 1)); break; } @@ -4503,8 +4491,8 @@ void StreakBar::UpdateStreaks() { ClearStreaks(); - D3DXVECTOR2 size = GetSize(); - D3DXVECTOR2 streakSize(size.x / _streakMax, size.y); + glm::vec2 size = GetSize(); + glm::vec2 streakSize(size.x / _streakMax, size.y); for (unsigned i = 0; i < _streakCount; ++i) { @@ -4512,7 +4500,7 @@ void StreakBar::UpdateStreaks() plane->AddRef(); plane->SetMaterial(_streak); plane->SetSize(streakSize); - plane->SetPos(D3DXVECTOR2(-size.x/2.0f + (i + 0.5f) * streakSize.x, 0.0f)); + plane->SetPos(glm::vec2(-size.x/2.0f + (i + 0.5f) * streakSize.x, 0.0f)); InsertGraphic(plane); _streaks.push_back(plane); @@ -4643,15 +4631,15 @@ bool ChargeBar::MyEvent::OnClick(Widget* sender, const MouseClick& mClick) void ChargeBar::AdjustLayout() { - D3DXVECTOR2 size = GetSize(); + glm::vec2 size = GetSize(); _frame->SetSize(size); _up->SetSize(size.y, size.y); - _up->SetPos(D3DXVECTOR2(size.x/2.0f - size.y/2.0f, 0.0f)); + _up->SetPos(glm::vec2(size.x/2.0f - size.y/2.0f, 0.0f)); _bar->SetSize(size.x - size.y - _space.x/2.0f, size.y - _space.y); - _bar->SetPos(D3DXVECTOR2((-size.y + _space.x/2.0f)/2.0f, 0.0f)); + _bar->SetPos(glm::vec2((-size.y + _space.x/2.0f)/2.0f, 0.0f)); } void ChargeBar::StructureChanged(StructChange change) @@ -4687,12 +4675,12 @@ Button* ChargeBar::GetUpButton() return _up; } -const D3DXVECTOR2& ChargeBar::GetSpace() const +const glm::vec2& ChargeBar::GetSpace() const { return _space; } -void ChargeBar::SetSpace(const D3DXVECTOR2& value) +void ChargeBar::SetSpace(const glm::vec2& value) { _space = value; } @@ -4790,7 +4778,7 @@ void VolumeBar::StructureChanged(StructChange change) if (change == scLocal) { - D3DXVECTOR2 pos = GetAlignPos(); + glm::vec2 pos = GetAlignPos(); _planeBg->SetSize(GetSize()); _planeBg->SetPos(pos); @@ -4807,10 +4795,10 @@ void VolumeBar::StructureChanged(StructChange change) _right->SetSelSize(_left->GetSelSize()); } - _left->SetPos(D3DXVECTOR2(-GetSize().x/2, 0.0f) + pos); - _right->SetPos(D3DXVECTOR2(GetSize().x/2, 0.0f) + pos); + _left->SetPos(glm::vec2(-GetSize().x/2, 0.0f) + pos); + _right->SetPos(glm::vec2(GetSize().x/2, 0.0f) + pos); - //_bar->SetSize(D3DXVECTOR2(GetSize().x - _left->GetSize().x - _right->GetSize().x - 30.0f, GetSize().y)); + //_bar->SetSize(glm::vec2(GetSize().x - _left->GetSize().x - _right->GetSize().x - 30.0f, GetSize().y)); _bar->SetSize(_bar->GetFront().GetImageSize()); _bar->SetPos(pos); } @@ -4970,10 +4958,10 @@ ColorBox::~ColorBox() _frame->Release(); } -D3DXVECTOR2 ColorBox::WinToLocal(const D3DXVECTOR2& vec) const +glm::vec2 ColorBox::WinToLocal(const glm::vec2& vec) const { - D3DXVECTOR2 size = GetColorBoxSize(); - D3DXVECTOR2 newSize = GetSize(); + glm::vec2 size = GetColorBoxSize(); + glm::vec2 newSize = GetSize(); float wScale = newSize.x / size.x; float hScale = newSize.y / size.y; @@ -5003,7 +4991,7 @@ void ColorBox::ApplySelect() void ColorBox::AdjustLayout() { - D3DXVECTOR2 size = GetSize(); + glm::vec2 size = GetSize(); AABB2 boxAABB = GetBoxAABB(); AABB2 checkAABB = GetCheckAABB(); @@ -5069,17 +5057,17 @@ void ColorBox::SetSelect(bool value) ApplySelect(); } -D3DXVECTOR2 ColorBox::GetColorBoxSize() const +glm::vec2 ColorBox::GetColorBoxSize() const { - D3DXVECTOR2 size(190.0f, 40.0f); + glm::vec2 size(190.0f, 40.0f); return size; } AABB2 ColorBox::GetBoxAABB() const { - D3DXVECTOR2 size(90.0f, 33.0f); - D3DXVECTOR2 pos(-25.0f, 0.0f); + glm::vec2 size(90.0f, 33.0f); + glm::vec2 pos(-25.0f, 0.0f); AABB2 aabb(size); aabb.Offset(pos); @@ -5089,8 +5077,8 @@ AABB2 ColorBox::GetBoxAABB() const AABB2 ColorBox::GetCheckAABB() const { - D3DXVECTOR2 size(34.0f, 34.0f); - D3DXVECTOR2 pos(75.0f, 0.0f); + glm::vec2 size(34.0f, 34.0f); + glm::vec2 pos(75.0f, 0.0f); AABB2 aabb(size); aabb.Offset(pos); @@ -5143,14 +5131,14 @@ bool ColorList::MyEvent::OnClick(Widget* sender, const MouseClick& mClick) void ColorList::ApplyChanges() { - D3DXVECTOR2 size = GetSize(); - D3DXVECTOR2 boxSize = D3DXVECTOR2(size.x, size.y / _colors.size()); + glm::vec2 size = GetSize(); + glm::vec2 boxSize = glm::vec2(size.x, size.y / _colors.size()); int i = 0; for (Colors::iterator iter = _colors.begin(); iter != _colors.end(); ++iter, ++i) { iter->box->SetSize(boxSize - _space); - iter->box->SetPos(D3DXVECTOR2(0.0f, size.y/2.0f - (i + 0.5f) * boxSize.y)); + iter->box->SetPos(glm::vec2(0.0f, size.y/2.0f - (i + 0.5f) * boxSize.y)); iter->box->SetFrame(_frame); @@ -5286,12 +5274,12 @@ const ColorList::Colors& ColorList::GetColors() const return _colors; } -const D3DXVECTOR2& ColorList::GetSpace() const +const glm::vec2& ColorList::GetSpace() const { return _space; } -void ColorList::SetSpace(const D3DXVECTOR2& value) +void ColorList::SetSpace(const glm::vec2& value) { _space = value; ApplyChanges(); @@ -5320,7 +5308,7 @@ void Grid::Reposition() ++childCount; } - D3DXVECTOR2 size = D3DXVECTOR2(_maxCellsOnLine != 0 ? std::min(childCount, _maxCellsOnLine) : (float)childCount, + glm::vec2 size = glm::vec2(_maxCellsOnLine != 0 ? std::min(childCount, _maxCellsOnLine) : (float)childCount, _maxCellsOnLine != 0 ? ceil(childCount / (float)_maxCellsOnLine) : std::min(childCount, 1)); switch (_style) @@ -5345,7 +5333,7 @@ void Grid::Reposition() int x = _maxCellsOnLine != 0 ? i % _maxCellsOnLine : i; int y = _maxCellsOnLine != 0 ? i / _maxCellsOnLine : 0; - D3DXVECTOR2 pos = NullVec2; + glm::vec2 pos = NullVec2; switch (_style) { @@ -5359,7 +5347,7 @@ void Grid::Reposition() break; } - child->SetPos(-size/2 + _cellSize/2 + pos + GetAlignPos()); + child->SetPos(-size/2.0f + _cellSize/2.0f + pos + GetAlignPos()); ++i; } } @@ -5374,12 +5362,12 @@ void Grid::style(Style value) _style = value; } -D3DXVECTOR2 Grid::cellSize() const +glm::vec2 Grid::cellSize() const { return _cellSize; } -void Grid::cellSize(const D3DXVECTOR2& value) +void Grid::cellSize(const glm::vec2& value) { _cellSize = value; } @@ -5680,20 +5668,20 @@ void Manager::SetCamera3d(graph::Camera* value) _camera3d = value; } -D3DXVECTOR2 Manager::ScreenToView(const Point& point) +glm::vec2 Manager::ScreenToView(const Point& point) { if (_invertY) - return D3DXVECTOR2(static_cast(point.x), static_cast(GetVPSize().y - point.y)); + return glm::vec2(static_cast(point.x), static_cast(GetVPSize().y - point.y)); else - return D3DXVECTOR2(static_cast(point.x), static_cast(point.y)); + return glm::vec2(static_cast(point.x), static_cast(point.y)); } -D3DXVECTOR2 Manager::WorldToView(const D3DXVECTOR3& coord) +glm::vec2 Manager::WorldToView(const D3DXVECTOR3& coord) { if (_camera3d == NULL) return NullVec2; - D3DXVECTOR2 vec = GetVPSize(); + glm::vec2 vec = GetVPSize(); vec = _camera3d->GetContextInfo().WorldToScreen(coord, vec); if (_invertY) @@ -5725,7 +5713,7 @@ bool Manager::OnMouseClickEvent(MouseKey key, KeyState state, const Point& coord BeginSafeMode(); try { - D3DXVECTOR2 vpSize = GetVPSize(); + glm::vec2 vpSize = GetVPSize(); _mClick.key = key; _mClick.state = state; @@ -5762,8 +5750,8 @@ bool Manager::OnMouseMoveEvent(const Point& coord, bool shift, bool ctrl) BeginSafeMode(); try { - D3DXVECTOR2 vpSize = GetVPSize(); - D3DXVECTOR2 fCoord = ScreenToView(coord); + glm::vec2 vpSize = GetVPSize(); + glm::vec2 fCoord = ScreenToView(coord); _mMove.shift1 = shift; _mMove.dtCoord = fCoord - _mMove.coord; @@ -5948,12 +5936,12 @@ Dummy* Manager::GetRoot() return _root; } -D3DXVECTOR2 Manager::GetVPSize() +glm::vec2 Manager::GetVPSize() { - return D3DXVECTOR2(static_cast(_engine->GetParams().BackBufferWidth), static_cast(_engine->GetParams().BackBufferHeight)); + return glm::vec2(static_cast(_engine->GetParams().BackBufferWidth), static_cast(_engine->GetParams().BackBufferHeight)); } -D3DXVECTOR2 Manager::GetMousePos() +glm::vec2 Manager::GetMousePos() { return _mMove.coord; } diff --git a/src/Rock3dEngine/source/res/GraphResource.cpp b/src/Rock3dEngine/source/res/GraphResource.cpp index edd2a8c9..66beae48 100644 --- a/src/Rock3dEngine/source/res/GraphResource.cpp +++ b/src/Rock3dEngine/source/res/GraphResource.cpp @@ -14,8 +14,8 @@ const int VertexData::cElementSize[cElementEnd] = sizeof(D3DXVECTOR4), sizeof(D3DXVECTOR3), sizeof(D3DCOLOR), - sizeof(D3DXVECTOR2), - sizeof(D3DXVECTOR2), + sizeof(glm::vec2), + sizeof(glm::vec2), sizeof(D3DXVECTOR3), sizeof(D3DXVECTOR3) }; @@ -64,7 +64,7 @@ VertexPT::VertexPT() { } -VertexPT::VertexPT(D3DXVECTOR3 position, D3DXVECTOR2 texCoord): pos(position), tex(texCoord) +VertexPT::VertexPT(D3DXVECTOR3 position, glm::vec2 texCoord): pos(position), tex(texCoord) { } @@ -75,7 +75,7 @@ VertexPNT::VertexPNT() { } -VertexPNT::VertexPNT(const D3DXVECTOR3& position, const D3DXVECTOR3& normal, const D3DXVECTOR2& texCoord): pos(position), norm(normal), tex(texCoord) +VertexPNT::VertexPNT(const D3DXVECTOR3& position, const D3DXVECTOR3& normal, const glm::vec2& texCoord): pos(position), norm(normal), tex(texCoord) { } @@ -86,7 +86,7 @@ ScreenVertex::ScreenVertex() { } -ScreenVertex::ScreenVertex(const D3DXVECTOR4& position, const D3DXVECTOR2& texCoord): pos(position), tex(texCoord) +ScreenVertex::ScreenVertex(const D3DXVECTOR4& position, const glm::vec2& texCoord): pos(position), tex(texCoord) { } @@ -362,14 +362,14 @@ D3DCOLOR* VertexIter::Color() return reinterpret_cast(_owner->GetVertex(_index, VertexData::vtColor)); } -D3DXVECTOR2* VertexIter::Tex0() +glm::vec2* VertexIter::Tex0() { - return reinterpret_cast(_owner->GetVertex(_index, VertexData::vtTex0)); + return reinterpret_cast(_owner->GetVertex(_index, VertexData::vtTex0)); } -D3DXVECTOR2* VertexIter::Tex1() +glm::vec2* VertexIter::Tex1() { - return reinterpret_cast(_owner->GetVertex(_index, VertexData::vtTex1)); + return reinterpret_cast(_owner->GetVertex(_index, VertexData::vtTex1)); } D3DXVECTOR3* VertexIter::Normal() @@ -557,12 +557,12 @@ MeshData::~MeshData() Free(); } -void CalcTangentBasis(const D3DXVECTOR3 &p1, const D3DXVECTOR3 &p2, const D3DXVECTOR3 &p3, const D3DXVECTOR2 &t1, const D3DXVECTOR2 &t2, const D3DXVECTOR2 &t3, D3DXVECTOR3& tangent, D3DXVECTOR3& binormal) +void CalcTangentBasis(const D3DXVECTOR3 &p1, const D3DXVECTOR3 &p2, const D3DXVECTOR3 &p3, const glm::vec2 &t1, const glm::vec2 &t2, const glm::vec2 &t3, D3DXVECTOR3& tangent, D3DXVECTOR3& binormal) { D3DXVECTOR3 e1 = p2 - p1; D3DXVECTOR3 e2 = p3 - p1; - D3DXVECTOR2 et1 = t2 - t1; - D3DXVECTOR2 et2 = t3 - t1; + glm::vec2 et1 = t2 - t1; + glm::vec2 et2 = t3 - t1; float tmp = 0.0; if (fabsf(et1.x*et2.y - et1.y*et2.x)<0.0001f) diff --git a/src/Rock3dGame/CMakeLists.txt b/src/Rock3dGame/CMakeLists.txt index 5fc17b61..8eb062c8 100644 --- a/src/Rock3dGame/CMakeLists.txt +++ b/src/Rock3dGame/CMakeLists.txt @@ -40,6 +40,7 @@ target_include_directories(${PROJECT_NAME} PRIVATE ${CMAKE_SOURCE_DIR}/extern/physx/include/Physics ${CMAKE_SOURCE_DIR}/extern/physx/include/PhysXLoader ${CMAKE_SOURCE_DIR}/extern/vorbis/include + ${CMAKE_SOURCE_DIR}/extern/glm/include ${CMAKE_SOURCE_DIR}/extern/directx/include ) From 0b870c8cd6511a8ad00c8b80e569279ec59d819d Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Mon, 14 Jun 2021 23:09:26 +0300 Subject: [PATCH 12/55] ci: fix build with cmake+glm --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ca4f8a3c..579e66cb 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -16,7 +16,7 @@ jobs: - name: Install Windows libs shell: cmd run: | - curl -LJO https://github.com/q4a/rrr3d/releases/download/1.3.1-dev2/extern.7z + curl -LJO https://github.com/q4a/rrr3d/releases/download/1.3.1-dev3/extern.7z 7z x extern.7z dir - uses: ilammy/msvc-dev-cmd@v1 From 5f58ca671b400f7d802681d494402f8d5f12320f Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Tue, 15 Jun 2021 00:02:25 +0300 Subject: [PATCH 13/55] math: replace D3DXVECTOR2 with glm::vec2 in Rock3dEngine part2 and NetLib --- src/NetLib/include/net/BitStream.h | 2 +- src/NetLib/include/net/NetCommon.h | 8 ++++---- src/NetLib/source/net/BitStream.cpp | 6 +++--- src/Rock3dEngine/header/r3dGraphTypes.h | 8 ++++---- src/Rock3dEngine/source/graph/BloomEffect.cpp | 16 ++++++++-------- src/Rock3dEngine/source/graph/GaussianBlur.cpp | 2 +- 6 files changed, 21 insertions(+), 21 deletions(-) diff --git a/src/NetLib/include/net/BitStream.h b/src/NetLib/include/net/BitStream.h index c3d949f8..ff1bec54 100644 --- a/src/NetLib/include/net/BitStream.h +++ b/src/NetLib/include/net/BitStream.h @@ -195,7 +195,7 @@ class BitStream NETLIB_API void Serialize(double& value, float err = cFloatErr); NETLIB_API void Serialize(float value[], int count, float err = cFloatErr); - NETLIB_API void Serialize(D3DXVECTOR2& value, float err = cFloatErr); + NETLIB_API void Serialize(glm::vec2& value, float err = cFloatErr); NETLIB_API void Serialize(D3DXVECTOR3& value, float err = cFloatErr); NETLIB_API void Serialize(D3DXVECTOR4& value, float err = cFloatErr); NETLIB_API void Serialize(D3DXQUATERNION& value, float err = cFloatErr); diff --git a/src/NetLib/include/net/NetCommon.h b/src/NetLib/include/net/NetCommon.h index 9974b149..43041037 100644 --- a/src/NetLib/include/net/NetCommon.h +++ b/src/NetLib/include/net/NetCommon.h @@ -154,8 +154,8 @@ unsigned Read(std::istream& stream, double& value); unsigned Write(std::ostream& stream, bool value); unsigned Read(std::istream& stream, bool& value); -unsigned Write(std::ostream& stream, const D3DXVECTOR2& value); -unsigned Read(std::istream& stream, D3DXVECTOR2& value); +unsigned Write(std::ostream& stream, const glm::vec2& value); +unsigned Read(std::istream& stream, glm::vec2& value); unsigned Write(std::ostream& stream, const D3DXVECTOR3& value); unsigned Read(std::istream& stream, D3DXVECTOR3& value); @@ -277,13 +277,13 @@ inline unsigned Read(std::istream& stream, bool& value) return sizeof(value); } -inline unsigned Write(std::ostream& stream, const D3DXVECTOR2& value) +inline unsigned Write(std::ostream& stream, const glm::vec2& value) { Write(stream, &value, sizeof(value)); return sizeof(value); } -inline unsigned Read(std::istream& stream, D3DXVECTOR2& value) +inline unsigned Read(std::istream& stream, glm::vec2& value) { Read(stream, &value, sizeof(value)); return sizeof(value); diff --git a/src/NetLib/source/net/BitStream.cpp b/src/NetLib/source/net/BitStream.cpp index c9572b11..595c4789 100644 --- a/src/NetLib/source/net/BitStream.cpp +++ b/src/NetLib/source/net/BitStream.cpp @@ -295,7 +295,7 @@ void BitStream::Serialize(float value[], int count, float err) break; case 2: type = btVec2; - Serialize((D3DXVECTOR2&)*value, type, eq); + Serialize((glm::vec2&)*value, type, eq); break; case 3: type = btVec3; @@ -310,9 +310,9 @@ void BitStream::Serialize(float value[], int count, float err) } } -void BitStream::Serialize(D3DXVECTOR2& value, float err) +void BitStream::Serialize(glm::vec2& value, float err) { - Serialize(value, 2, err); + Serialize((float *)(&value), 2, err); } void BitStream::Serialize(D3DXVECTOR3& value, float err) diff --git a/src/Rock3dEngine/header/r3dGraphTypes.h b/src/Rock3dEngine/header/r3dGraphTypes.h index 2604ac5e..df263e88 100644 --- a/src/Rock3dEngine/header/r3dGraphTypes.h +++ b/src/Rock3dEngine/header/r3dGraphTypes.h @@ -7,10 +7,10 @@ namespace r3d { -const VertexPNT PlanePNT[4] = {VertexPNT(D3DXVECTOR3(-0.5f, -0.5f, 0.0f), ZVector, D3DXVECTOR2(0.0f, 0.0f)), - VertexPNT(D3DXVECTOR3(0.5f, -0.5f, 0.0f), ZVector, D3DXVECTOR2(1.0f, 0.0f)), - VertexPNT(D3DXVECTOR3(0.5f, 0.5f, 0.0f), ZVector, D3DXVECTOR2(1.0f, 1.0f)), - VertexPNT(D3DXVECTOR3(-0.5f, 0.5f, 0.0f), ZVector, D3DXVECTOR2(0.0f, 1.0f))}; +const VertexPNT PlanePNT[4] = {VertexPNT(D3DXVECTOR3(-0.5f, -0.5f, 0.0f), ZVector, glm::vec2(0.0f, 0.0f)), + VertexPNT(D3DXVECTOR3(0.5f, -0.5f, 0.0f), ZVector, glm::vec2(1.0f, 0.0f)), + VertexPNT(D3DXVECTOR3(0.5f, 0.5f, 0.0f), ZVector, glm::vec2(1.0f, 1.0f)), + VertexPNT(D3DXVECTOR3(-0.5f, 0.5f, 0.0f), ZVector, glm::vec2(0.0f, 1.0f))}; } diff --git a/src/Rock3dEngine/source/graph/BloomEffect.cpp b/src/Rock3dEngine/source/graph/BloomEffect.cpp index abcfec21..bf49bd5c 100644 --- a/src/Rock3dEngine/source/graph/BloomEffect.cpp +++ b/src/Rock3dEngine/source/graph/BloomEffect.cpp @@ -8,7 +8,7 @@ namespace r3d namespace graph { -void GetSamplesDownScale4x4(DWORD dwWidth, DWORD dwHeight, D3DXVECTOR2 avSampleOffsets[16]) +void GetSamplesDownScale4x4(DWORD dwWidth, DWORD dwHeight, glm::vec2 avSampleOffsets[16]) { float tU = 1.0f / dwWidth; float tV = 1.0f / dwHeight; @@ -35,7 +35,7 @@ inline float GaussianDistribution( float x, float y, float rho ) return g; } -void CompGaussianHorizVertBlur(D3DXVECTOR2 texSize, D3DXVECTOR2 texOffsets[16], D3DXVECTOR2 colorWeights[16], float fDeviation, float fMultiplier) +void CompGaussianHorizVertBlur(glm::vec2 texSize, glm::vec2 texOffsets[16], glm::vec2 colorWeights[16], float fDeviation, float fMultiplier) { //Horizontal float tu = 1.0f / texSize.x; @@ -99,7 +99,7 @@ Tex2DResource* BloomRender::CreateRT() void BloomRender::Render(Engine& engine) { - D3DXVECTOR2 samplerOffsets4x4[16]; + glm::vec2 samplerOffsets4x4[16]; float samplerWeights4x4[16]; //Синхонизация c RT @@ -125,15 +125,15 @@ void BloomRender::Render(Engine& engine) //Blur pass - D3DXVECTOR2 offsets4x4[16]; - D3DXVECTOR2 weights4x4[16]; + glm::vec2 offsets4x4[16]; + glm::vec2 weights4x4[16]; - CompGaussianHorizVertBlur(D3DXVECTOR2((float)GetRT()->GetData()->GetWidth(), (float)GetRT()->GetData()->GetHeight()), offsets4x4, weights4x4, 3.0f, 1.25f); + CompGaussianHorizVertBlur(glm::vec2((float)GetRT()->GetData()->GetWidth(), (float)GetRT()->GetData()->GetHeight()), offsets4x4, weights4x4, 3.0f, 1.25f); //Horizontal for (int i = 0; i < 16; ++i) { - samplerOffsets4x4[i] = D3DXVECTOR2(offsets4x4[i].x, 0); + samplerOffsets4x4[i] = glm::vec2(offsets4x4[i].x, 0); samplerWeights4x4[i] = weights4x4[i].x; } shader.SetValueDir("sampleOffsets4x4", samplerOffsets4x4, sizeof(samplerOffsets4x4)); @@ -153,7 +153,7 @@ void BloomRender::Render(Engine& engine) //Vertical for (int i = 0; i < 16; ++i) { - samplerOffsets4x4[i] = D3DXVECTOR2(0.0f, offsets4x4[i].y); + samplerOffsets4x4[i] = glm::vec2(0.0f, offsets4x4[i].y); samplerWeights4x4[i] = weights4x4[i].y; } shader.SetValueDir("sampleOffsets4x4", samplerOffsets4x4, sizeof(samplerOffsets4x4)); diff --git a/src/Rock3dEngine/source/graph/GaussianBlur.cpp b/src/Rock3dEngine/source/graph/GaussianBlur.cpp index 100c8cd9..3111ff43 100644 --- a/src/Rock3dEngine/source/graph/GaussianBlur.cpp +++ b/src/Rock3dEngine/source/graph/GaussianBlur.cpp @@ -48,7 +48,7 @@ void GaussianBlurShader::DoApplyTech(Engine& engine) } GetEffect()->SetTexture(_colorTex, engine.GetTexture(0)); - GetEffect()->SetFloatArray(_colorTexSizes, D3DXVECTOR2(fWidth, fHeight), 2); + GetEffect()->SetFloatArray(_colorTexSizes, glm::vec2(fWidth, fHeight), 2); GetEffect()->SetTechnique(_techGaussianBlur); GetEffect()->Begin(&_cntPass, 0); } From 3ada20c69744b48fd0395488c2502cfabd0d4cf6 Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Tue, 15 Jun 2021 00:08:17 +0300 Subject: [PATCH 14/55] math: auto replace D3DXVECTOR2 with glm::vec2 in Rock3dGame --- src/Rock3dGame/header/game/AICar.h | 2 +- src/Rock3dGame/header/game/CameraManager.h | 4 +- src/Rock3dGame/header/game/ControlManager.h | 6 +- src/Rock3dGame/header/game/DataBase.h | 16 +- src/Rock3dGame/header/game/DialogMenu2.h | 44 +-- src/Rock3dGame/header/game/FinalMenu.h | 4 +- src/Rock3dGame/header/game/FinishMenu.h | 2 +- src/Rock3dGame/header/game/GameBase.h | 12 +- src/Rock3dGame/header/game/HudMenu.h | 56 ++-- src/Rock3dGame/header/game/Logic.h | 24 +- src/Rock3dGame/header/game/MainMenu2.h | 30 +- src/Rock3dGame/header/game/Menu.h | 64 ++-- src/Rock3dGame/header/game/MenuSystem.h | 6 +- src/Rock3dGame/header/game/OptionsMenu.h | 16 +- src/Rock3dGame/header/game/Player.h | 4 +- src/Rock3dGame/header/game/Race.h | 2 +- src/Rock3dGame/header/game/RaceMenu2.h | 34 +- src/Rock3dGame/header/game/Trace.h | 42 +-- src/Rock3dGame/header/game/View.h | 6 +- src/Rock3dGame/include/IView.h | 6 +- src/Rock3dGame/source/edit/SceneControl.cpp | 4 +- src/Rock3dGame/source/game/AICar.cpp | 6 +- src/Rock3dGame/source/game/AIPlayer.cpp | 6 +- src/Rock3dGame/source/game/CameraManager.cpp | 12 +- src/Rock3dGame/source/game/ControlManager.cpp | 4 +- src/Rock3dGame/source/game/DataBase.cpp | 52 +-- src/Rock3dGame/source/game/DialogMenu2.cpp | 62 ++-- src/Rock3dGame/source/game/Environment.cpp | 16 +- src/Rock3dGame/source/game/FinalMenu.cpp | 26 +- src/Rock3dGame/source/game/FinishMenu.cpp | 16 +- src/Rock3dGame/source/game/GameBase.cpp | 8 +- src/Rock3dGame/source/game/GameCar.cpp | 8 +- src/Rock3dGame/source/game/GameMode.cpp | 2 +- src/Rock3dGame/source/game/HudMenu.cpp | 160 ++++----- src/Rock3dGame/source/game/Logic.cpp | 16 +- src/Rock3dGame/source/game/MainMenu2.cpp | 96 +++--- src/Rock3dGame/source/game/Menu.cpp | 88 ++--- src/Rock3dGame/source/game/MenuSystem.cpp | 8 +- src/Rock3dGame/source/game/OptionsMenu.cpp | 36 +- src/Rock3dGame/source/game/Player.cpp | 18 +- src/Rock3dGame/source/game/Race.cpp | 12 +- src/Rock3dGame/source/game/RaceMenu2.cpp | 316 +++++++++--------- .../source/game/ResourceManager.cpp | 2 +- src/Rock3dGame/source/game/Trace.cpp | 50 +-- src/Rock3dGame/source/game/TraceGfx.cpp | 2 +- src/Rock3dGame/source/game/View.cpp | 14 +- src/Rock3dGame/source/game/Weapon.cpp | 2 +- src/Rock3dGame/source/game/World.cpp | 6 +- 48 files changed, 714 insertions(+), 714 deletions(-) diff --git a/src/Rock3dGame/header/game/AICar.h b/src/Rock3dGame/header/game/AICar.h index 29f31520..da31d0ef 100644 --- a/src/Rock3dGame/header/game/AICar.h +++ b/src/Rock3dGame/header/game/AICar.h @@ -50,7 +50,7 @@ class AICar: IGameUser //зона охвата по направлению движения машины float dirArea; //результирующее направление движения относительно машины - D3DXVECTOR2 moveDir; + glm::vec2 moveDir; bool _break; const unsigned cTrackCnt; diff --git a/src/Rock3dGame/header/game/CameraManager.h b/src/Rock3dGame/header/game/CameraManager.h index ecf438ba..b401a395 100644 --- a/src/Rock3dGame/header/game/CameraManager.h +++ b/src/Rock3dGame/header/game/CameraManager.h @@ -70,7 +70,7 @@ class CameraManager: public ICameraManager //z - координата глубины относительно zNear. [0..1] <--> [zNear..zFar] D3DXVECTOR3 ScreenToWorld(const lsl::Point& coord, float z); - D3DXVECTOR2 WorldToScreen(const D3DXVECTOR3& coord); + glm::vec2 WorldToScreen(const D3DXVECTOR3& coord); void ScreenToRay(const lsl::Point& coord, D3DXVECTOR3& rayStart, D3DXVECTOR3& rayVec); bool ScreenPixelRayCastWithPlaneXY(const lsl::Point& coord, D3DXVECTOR3& outVec); @@ -114,7 +114,7 @@ class CameraManager: public ICameraManager GraphManager::LightSrc* GetLight(); void SetLight(GraphManager::LightSrc* value); - void GetObserverCoord(const D3DXVECTOR3& targetPos, float targetDist, D3DXVECTOR3* pos, D3DXQUATERNION& rot, const D3DXVECTOR2& dMPos, float deltaTime, bool dragX, bool dragY, bool restoreY, D3DXVECTOR3* camPos, D3DXQUATERNION* camQuat, float* dir); + void GetObserverCoord(const D3DXVECTOR3& targetPos, float targetDist, D3DXVECTOR3* pos, D3DXQUATERNION& rot, const glm::vec2& dMPos, float deltaTime, bool dragX, bool dragY, bool restoreY, D3DXVECTOR3* camPos, D3DXQUATERNION* camQuat, float* dir); }; } diff --git a/src/Rock3dGame/header/game/ControlManager.h b/src/Rock3dGame/header/game/ControlManager.h index 372b9ecf..055a17bd 100644 --- a/src/Rock3dGame/header/game/ControlManager.h +++ b/src/Rock3dGame/header/game/ControlManager.h @@ -16,7 +16,7 @@ struct MouseClick //оконные координаты lsl::Point coord; //проекционные координаты в видовом пространстве, [-1.0..1.0] - D3DXVECTOR2 projCoord; + glm::vec2 projCoord; //экранный луч в мировом пространстве D3DXVECTOR3 scrRayPos; @@ -31,7 +31,7 @@ struct MouseMove //оконные координаты Point coord; //проекционные координаты в видовом пространстве, [-1.0..1.0] - D3DXVECTOR2 projCoord; + glm::vec2 projCoord; //Разность между текущим и предыдущим значением координаты Point dtCoord; //Разность между текущим значением координаты и координатой при клике @@ -170,7 +170,7 @@ class ControlManager AsyncKey IsMouseDown(MouseKey key); lsl::Point GetMousePos(); - D3DXVECTOR2 GetMouseVec(); + glm::vec2 GetMouseVec(); const ControllerState& GetControllerState(ControllerType controller); void GetGameAction(ControllerType controller, VirtualKey key, GameActions& gameActions); diff --git a/src/Rock3dGame/header/game/DataBase.h b/src/Rock3dGame/header/game/DataBase.h index 4018140f..f0d27ae1 100644 --- a/src/Rock3dGame/header/game/DataBase.h +++ b/src/Rock3dGame/header/game/DataBase.h @@ -66,8 +66,8 @@ class DataBase: public Component string soundMotorIdle; string soundMotorHigh; - D3DXVECTOR2 motorVolumeRange; - D3DXVECTOR2 motorFreqRange; + glm::vec2 motorVolumeRange; + glm::vec2 motorFreqRange; bool bump; @@ -110,10 +110,10 @@ class DataBase: public Component // graph::IVBMeshNode* AddMeshNode(graph::SceneNode* scNode, const std::string& mesh, int meshId = -1); graph::IVBMeshNode* AddMeshNode(MapObj* mapObj, const std::string& mesh, int meshId = -1); - graph::Sprite* AddSprite(game::MapObj* mapObj, bool fixDir, const D3DXVECTOR2& sizes); - graph::Sprite* AddFxSprite(game::MapObj* mapObj, const std::string& libMat, const Vec3Range& speedPos, const Vec3Range& speedScale, const QuatRange& speedRot, bool autoRot, graph::SceneNode::AnimMode animMode, float animDuration, float frame = 0.0f, bool dir = false, const D3DXVECTOR2& sizes = IdentityVec2); - graph::PlaneNode* AddPlaneNode(game::MapObj* mapObj, const D3DXVECTOR2& sizes); - graph::PlaneNode* AddFxPlane(game::MapObj* mapObj, const std::string& libMat, const Vec3Range& speedPos, const Vec3Range& speedScale, const QuatRange& speedRot, graph::SceneNode::AnimMode animMode, float animDuration, float frame = 0.0f, const D3DXVECTOR2& sizes = IdentityVec2); + graph::Sprite* AddSprite(game::MapObj* mapObj, bool fixDir, const glm::vec2& sizes); + graph::Sprite* AddFxSprite(game::MapObj* mapObj, const std::string& libMat, const Vec3Range& speedPos, const Vec3Range& speedScale, const QuatRange& speedRot, bool autoRot, graph::SceneNode::AnimMode animMode, float animDuration, float frame = 0.0f, bool dir = false, const glm::vec2& sizes = IdentityVec2); + graph::PlaneNode* AddPlaneNode(game::MapObj* mapObj, const glm::vec2& sizes); + graph::PlaneNode* AddFxPlane(game::MapObj* mapObj, const std::string& libMat, const Vec3Range& speedPos, const Vec3Range& speedScale, const QuatRange& speedRot, graph::SceneNode::AnimMode animMode, float animDuration, float frame = 0.0f, const glm::vec2& sizes = IdentityVec2); graph::LibMaterial* AddLibMat(graph::MaterialNode* node, const std::string& libMat); graph::LibMaterial* AddLibMat(graph::IVBMeshNode* node, const std::string& libMat); @@ -148,8 +148,8 @@ class DataBase: public Component // void LoadFxFlow(const std::string& name, const std::string& libMat, graph::FxManager* fxManager, const graph::FxEmitter::ParticleDesc& partDesc, const graph::FxFlowEmitter::FlowDesc& flowDesc, bool worldCoordSys, float timeLife = 0.0f, GraphType graphType = gtEffect); - void LoadFxSprite(const std::string& name, const std::string& libMat, const Vec3Range& speedPos, const Vec3Range& speedScale, const QuatRange& speedRot, bool autoRot, graph::SceneNode::AnimMode animMode, float animDuration, float frame = 0.0f, float timeLife = 0.0f, bool dir = false, const D3DXVECTOR2& sizes = IdentityVec2, GraphType graphType = gtEffect, bool morph = false); - void LoadFxPlane(const std::string& name, const std::string& libMat, const Vec3Range& speedPos, const Vec3Range& speedScale, const QuatRange& speedRot, graph::SceneNode::AnimMode animMode, float animDuration, float frame = 0.0f, float timeLife = 0.0f, const D3DXVECTOR2& sizes = IdentityVec2, GraphType graphType = gtEffect); + void LoadFxSprite(const std::string& name, const std::string& libMat, const Vec3Range& speedPos, const Vec3Range& speedScale, const QuatRange& speedRot, bool autoRot, graph::SceneNode::AnimMode animMode, float animDuration, float frame = 0.0f, float timeLife = 0.0f, bool dir = false, const glm::vec2& sizes = IdentityVec2, GraphType graphType = gtEffect, bool morph = false); + void LoadFxPlane(const std::string& name, const std::string& libMat, const Vec3Range& speedPos, const Vec3Range& speedScale, const QuatRange& speedRot, graph::SceneNode::AnimMode animMode, float animDuration, float frame = 0.0f, float timeLife = 0.0f, const glm::vec2& sizes = IdentityVec2, GraphType graphType = gtEffect); void LoadSndSources(); void LoadEffects(); diff --git a/src/Rock3dGame/header/game/DialogMenu2.h b/src/Rock3dGame/header/game/DialogMenu2.h index 43a3564f..f92ced95 100644 --- a/src/Rock3dGame/header/game/DialogMenu2.h +++ b/src/Rock3dGame/header/game/DialogMenu2.h @@ -26,7 +26,7 @@ class AcceptDialog: public MenuFrame gui::Button* _menuItems[cMenuItemEnd]; protected: virtual void OnShow(bool value); - virtual void OnAdjustLayout(const D3DXVECTOR2& vpSize); + virtual void OnAdjustLayout(const glm::vec2& vpSize); virtual void OnInvalidate(); virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); @@ -34,7 +34,7 @@ class AcceptDialog: public MenuFrame AcceptDialog(Menu* menu, gui::Widget* parent); virtual ~AcceptDialog(); - void Show(const std::string& message, const std::string& yesText, const std::string& noText, const D3DXVECTOR2& pos, gui::Widget::Anchor align, gui::Widget::Event* guiEvent, Object* data = NULL, bool maxButtonsSize = false, bool maxMode = false, bool disableFocus = false); + void Show(const std::string& message, const std::string& yesText, const std::string& noText, const glm::vec2& pos, gui::Widget::Anchor align, gui::Widget::Event* guiEvent, Object* data = NULL, bool maxButtonsSize = false, bool maxMode = false, bool disableFocus = false); void Hide(); bool resultYes() const; @@ -52,7 +52,7 @@ class WeaponDialog: public MenuFrame gui::Label* _labels[cLabelEnd]; protected: virtual void OnShow(bool value); - virtual void OnAdjustLayout(const D3DXVECTOR2& vpSize); + virtual void OnAdjustLayout(const glm::vec2& vpSize); virtual void OnInvalidate(); virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); @@ -60,7 +60,7 @@ class WeaponDialog: public MenuFrame WeaponDialog(Menu* menu, gui::Widget* parent); virtual ~WeaponDialog(); - void Show(const std::string& title, const std::string& message, const std::string& moneyText, const std::string& damageText, const D3DXVECTOR2& pos, gui::Widget::Anchor align); + void Show(const std::string& title, const std::string& message, const std::string& moneyText, const std::string& damageText, const glm::vec2& pos, gui::Widget::Anchor align); void Hide(); using MenuFrame::root; @@ -80,7 +80,7 @@ class InfoDialog: public MenuFrame gui::Button* _menuItems[cMenuItemEnd]; protected: virtual void OnShow(bool value); - virtual void OnAdjustLayout(const D3DXVECTOR2& vpSize); + virtual void OnAdjustLayout(const glm::vec2& vpSize); virtual void OnInvalidate(); virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); @@ -88,7 +88,7 @@ class InfoDialog: public MenuFrame InfoDialog(Menu* menu, gui::Widget* parent); virtual ~InfoDialog(); - void Show(const std::string& titleText, const std::string& message, const std::string& okText, const D3DXVECTOR2& pos, gui::Widget::Anchor align, gui::Widget::Event* guiEvent, Object* data = NULL, bool okButton = true); + void Show(const std::string& titleText, const std::string& message, const std::string& okText, const glm::vec2& pos, gui::Widget::Anchor align, gui::Widget::Event* guiEvent, Object* data = NULL, bool okButton = true); void Hide(); Object* data() const; @@ -105,7 +105,7 @@ class MusicDialog: public MenuFrame gui::Label* _labels[cLabelEnd]; protected: virtual void OnShow(bool value); - virtual void OnAdjustLayout(const D3DXVECTOR2& vpSize); + virtual void OnAdjustLayout(const glm::vec2& vpSize); virtual void OnInvalidate(); virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); @@ -116,7 +116,7 @@ class MusicDialog: public MenuFrame void Show(const std::string& title, const std::string& message); void Hide(); - const D3DXVECTOR2& size() const; + const glm::vec2& size() const; using MenuFrame::root; }; @@ -137,7 +137,7 @@ class InfoMenu InfoMenu(Menu* menu, gui::Widget* parent); virtual ~InfoMenu(); - void AdjustLayout(const D3DXVECTOR2& vpSize); + void AdjustLayout(const glm::vec2& vpSize); void Show(bool value); void Start(); void Stop(); @@ -166,15 +166,15 @@ class UserChat: public MenuFrame Lines _lines; Line _input; - D3DXVECTOR2 _linesPos; - D3DXVECTOR2 _inputPos; - D3DXVECTOR2 _linesSize; - D3DXVECTOR2 _inputSize; + glm::vec2 _linesPos; + glm::vec2 _inputPos; + glm::vec2 _linesSize; + glm::vec2 _inputSize; Line AddLine(const lsl::stringW& name, const lsl::stringW& text, const D3DXCOLOR& nameColor, bool right); protected: virtual void OnShow(bool value); - virtual void OnAdjustLayout(const D3DXVECTOR2& vpSize); + virtual void OnAdjustLayout(const glm::vec2& vpSize); virtual void OnInvalidate(); public: UserChat(Menu* menu, gui::Widget* parent); @@ -193,17 +193,17 @@ class UserChat: public MenuFrame virtual void OnProgress(float deltaTime); - const D3DXVECTOR2& linesPos() const; - void linesPos(const D3DXVECTOR2& value); + const glm::vec2& linesPos() const; + void linesPos(const glm::vec2& value); - const D3DXVECTOR2& inputPos() const; - void inputPos(const D3DXVECTOR2& value); + const glm::vec2& inputPos() const; + void inputPos(const glm::vec2& value); - const D3DXVECTOR2& linesSize() const; - void linesSize(const D3DXVECTOR2& value); + const glm::vec2& linesSize() const; + void linesSize(const glm::vec2& value); - const D3DXVECTOR2& inputSize() const; - void inputSize(const D3DXVECTOR2& value); + const glm::vec2& inputSize() const; + void inputSize(const glm::vec2& value); }; } diff --git a/src/Rock3dGame/header/game/FinalMenu.h b/src/Rock3dGame/header/game/FinalMenu.h index d74cadab..605058d9 100644 --- a/src/Rock3dGame/header/game/FinalMenu.h +++ b/src/Rock3dGame/header/game/FinalMenu.h @@ -40,7 +40,7 @@ class FinalMenu: public MenuFrame void DeleteAll(); protected: virtual void OnShow(bool value); - virtual void OnAdjustLayout(const D3DXVECTOR2& vpSize); + virtual void OnAdjustLayout(const glm::vec2& vpSize); virtual void OnInvalidate(); bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); @@ -64,7 +64,7 @@ class FinalMenu: public MenuFrame float _scrollTime; protected: virtual void OnShow(bool value); - virtual void OnAdjustLayout(const D3DXVECTOR2& vpSize); + virtual void OnAdjustLayout(const glm::vec2& vpSize); virtual void OnInvalidate(); bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); diff --git a/src/Rock3dGame/header/game/FinishMenu.h b/src/Rock3dGame/header/game/FinishMenu.h index e2b7c7bc..65f3911a 100644 --- a/src/Rock3dGame/header/game/FinishMenu.h +++ b/src/Rock3dGame/header/game/FinishMenu.h @@ -37,7 +37,7 @@ class FinishMenu: public MenuFrame, ControlEvent float _time; protected: virtual void OnShow(bool value); - virtual void OnAdjustLayout(const D3DXVECTOR2& vpSize); + virtual void OnAdjustLayout(const glm::vec2& vpSize); virtual void OnInvalidate(); virtual bool OnMouseClickEvent(const MouseClick& mClick); diff --git a/src/Rock3dGame/header/game/GameBase.h b/src/Rock3dGame/header/game/GameBase.h index 8169bd89..2b1b1aec 100644 --- a/src/Rock3dGame/header/game/GameBase.h +++ b/src/Rock3dGame/header/game/GameBase.h @@ -390,8 +390,8 @@ class SoundMotor: public Behavior float _curRPM; snd::Source3d* _srcIdle; snd::Source3d* _srcRPM; - D3DXVECTOR2 _rpmVolumeRange; - D3DXVECTOR2 _rpmFreqRange; + glm::vec2 _rpmVolumeRange; + glm::vec2 _rpmFreqRange; void Init(); void Free(); @@ -413,11 +413,11 @@ class SoundMotor: public Behavior snd::Sound* GetSndRPM(); void SetSndRPM(snd::Sound* value); - const D3DXVECTOR2& GetRPMVolumeRange() const; - void SetRPMVolumeRange(const D3DXVECTOR2& value); + const glm::vec2& GetRPMVolumeRange() const; + void SetRPMVolumeRange(const glm::vec2& value); - const D3DXVECTOR2& GetRPMFreqRange() const; - void SetRPMFreqRange(const D3DXVECTOR2& value); + const glm::vec2& GetRPMFreqRange() const; + void SetRPMFreqRange(const glm::vec2& value); }; class GusenizaAnim: public Behavior diff --git a/src/Rock3dGame/header/game/HudMenu.h b/src/Rock3dGame/header/game/HudMenu.h index ed89c9c4..dfaf511f 100644 --- a/src/Rock3dGame/header/game/HudMenu.h +++ b/src/Rock3dGame/header/game/HudMenu.h @@ -31,7 +31,7 @@ class PlayerStateFrame: public MenuFrame, public IGameUser gui::PlaneFon* point; gui::Label* label; - D3DXVECTOR2 center; + glm::vec2 center; float radius; }; @@ -44,7 +44,7 @@ class PlayerStateFrame: public MenuFrame, public IGameUser gui::Label* label; float time; - D3DXVECTOR2 pos; + glm::vec2 pos; }; typedef List PickItems; @@ -58,7 +58,7 @@ class PlayerStateFrame: public MenuFrame, public IGameUser float time; int lastIndex; float indexTime; - D3DXVECTOR2 slotSize; + glm::vec2 slotSize; }; typedef List AchievmentItems; @@ -117,7 +117,7 @@ class PlayerStateFrame: public MenuFrame, public IGameUser void UpdateState(float deltaTime); - virtual void OnAdjustLayout(const D3DXVECTOR2& vpSize); + virtual void OnAdjustLayout(const glm::vec2& vpSize); virtual void OnInvalidate(); public: PlayerStateFrame(Menu* menu, HudMenu* hudMenu, gui::Widget* parent); @@ -141,21 +141,21 @@ class MiniMapFrame struct Node { Node() {} - Node(const D3DXVECTOR2& mPos, float mSize): pos(mPos), size(mSize) {} + Node(const glm::vec2& mPos, float mSize): pos(mPos), size(mSize) {} Node(const D3DXVECTOR3& mPos, float mSize): pos(mPos), size(mSize) {} - D3DXVECTOR2 pos; + glm::vec2 pos; float size; - D3DXVECTOR2 prevDir; - D3DXVECTOR2 dir; - D3DXVECTOR2 midDir; - D3DXVECTOR2 midNorm; + glm::vec2 prevDir; + glm::vec2 dir; + glm::vec2 midDir; + glm::vec2 midNorm; float cosDelta; float sinAlpha2; float nodeRadius; bool ccw; - D3DXVECTOR2 edgeNorm; + glm::vec2 edgeNorm; }; typedef std::list Nodes; private: @@ -185,7 +185,7 @@ class MiniMapFrame MiniMapFrame(Menu* menu, HudMenu* hudMenu, gui::Widget* parent); virtual ~MiniMapFrame(); - void AdjustLayout(const D3DXVECTOR2& vpSize); + void AdjustLayout(const glm::vec2& vpSize); void Show(bool value); bool IsVisible() const; @@ -218,7 +218,7 @@ class HudMenu: INetGameUser, gui::Widget::Event, ControlEvent HudMenu(Menu* menu, gui::Widget* parent, Player* player); virtual ~HudMenu(); - void AdjustLayout(const D3DXVECTOR2& vpSize); + void AdjustLayout(const glm::vec2& vpSize); void Show(bool value); void OnProgress(float deltaTime); @@ -231,21 +231,21 @@ class HudMenu: INetGameUser, gui::Widget::Event, ControlEvent AABB2 GetMiniMapRect(); - D3DXVECTOR2 GetWeaponPos(); - D3DXVECTOR2 GetWeaponBoxPos(); - D3DXVECTOR2 GetWeaponLabelPos(); - - D3DXVECTOR2 GetWeaponPosMine(); - D3DXVECTOR2 GetWeaponPosMineLabel(); - D3DXVECTOR2 GetWeaponPosHyper(); - D3DXVECTOR2 GetWeaponPosHyperLabel(); - - D3DXVECTOR2 GetPlacePos(); - D3DXVECTOR2 GetLapPos(); - D3DXVECTOR2 GetLifeBarPos(); - D3DXVECTOR2 GetPickItemsPos(); - D3DXVECTOR2 GetAchievmentItemsPos(); - D3DXVECTOR2 GetCarLifeBarPos(); + glm::vec2 GetWeaponPos(); + glm::vec2 GetWeaponBoxPos(); + glm::vec2 GetWeaponLabelPos(); + + glm::vec2 GetWeaponPosMine(); + glm::vec2 GetWeaponPosMineLabel(); + glm::vec2 GetWeaponPosHyper(); + glm::vec2 GetWeaponPosHyperLabel(); + + glm::vec2 GetPlacePos(); + glm::vec2 GetLapPos(); + glm::vec2 GetLifeBarPos(); + glm::vec2 GetPickItemsPos(); + glm::vec2 GetAchievmentItemsPos(); + glm::vec2 GetCarLifeBarPos(); }; } diff --git a/src/Rock3dGame/header/game/Logic.h b/src/Rock3dGame/header/game/Logic.h index 84aac5ea..a1452390 100644 --- a/src/Rock3dGame/header/game/Logic.h +++ b/src/Rock3dGame/header/game/Logic.h @@ -226,10 +226,10 @@ class Logic: public lsl::Object, public Serializable bool _mute[cSndCategoryEnd]; bool _initSndCat; - D3DXVECTOR2 _touchBorderDamage; - D3DXVECTOR2 _touchBorderDamageForce; - D3DXVECTOR2 _touchCarDamage; - D3DXVECTOR2 _touchCarDamageForce; + glm::vec2 _touchBorderDamage; + glm::vec2 _touchBorderDamageForce; + glm::vec2 _touchCarDamage; + glm::vec2 _touchCarDamageForce; void InitSndCat(); void FreeSndCat(); @@ -270,17 +270,17 @@ class Logic: public lsl::Object, public Serializable void AutodetectVolume(); void Mute(SndCategory category, bool value); - const D3DXVECTOR2& GetTouchBorderDamage() const; - void SetTouchBorderDamage(const D3DXVECTOR2& value); + const glm::vec2& GetTouchBorderDamage() const; + void SetTouchBorderDamage(const glm::vec2& value); - const D3DXVECTOR2& GetTouchBorderDamageForce() const; - void SetTouchBorderDamageForce(const D3DXVECTOR2& value); + const glm::vec2& GetTouchBorderDamageForce() const; + void SetTouchBorderDamageForce(const glm::vec2& value); - const D3DXVECTOR2& GetTouchCarDamage() const; - void SetTouchCarDamage(const D3DXVECTOR2& value); + const glm::vec2& GetTouchCarDamage() const; + void SetTouchCarDamage(const glm::vec2& value); - const D3DXVECTOR2& GetTouchCarDamageForce() const; - void SetTouchCarDamageForce(const D3DXVECTOR2& value); + const glm::vec2& GetTouchCarDamageForce() const; + void SetTouchCarDamageForce(const glm::vec2& value); void OnProgress(float deltaTime); diff --git a/src/Rock3dGame/header/game/MainMenu2.h b/src/Rock3dGame/header/game/MainMenu2.h index 92dabc33..eb3b9a80 100644 --- a/src/Rock3dGame/header/game/MainMenu2.h +++ b/src/Rock3dGame/header/game/MainMenu2.h @@ -56,7 +56,7 @@ class NetBrowserFrame: public MenuFrame, INetGameUser gui::Button* _upArrow; void UpdateGrid(); - void AdjustGrid(const D3DXVECTOR2& vpSize); + void AdjustGrid(const glm::vec2& vpSize); void ScrollGrid(int step); void StartWaiting(bool start, StringValue hint = svNull); @@ -64,7 +64,7 @@ class NetBrowserFrame: public MenuFrame, INetGameUser protected: virtual void OnShow(bool value); virtual void OnInvalidate(); - virtual void OnAdjustLayout(const D3DXVECTOR2& vpSize); + virtual void OnAdjustLayout(const glm::vec2& vpSize); virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); virtual void OnPingComplete(); @@ -87,7 +87,7 @@ class NetIPAddressFrame: public MenuFrame, ControlEvent void PushLine(std::string text); protected: virtual void OnShow(bool value); - virtual void OnAdjustLayout(const D3DXVECTOR2& vpSize); + virtual void OnAdjustLayout(const glm::vec2& vpSize); virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); virtual bool OnHandleInput(const InputMessage& msg); @@ -112,7 +112,7 @@ class LobbyFrame: public MenuFrame, IGameUser gui::Button* _upArrow; void UpdateGrid(); - void AdjustGrid(const D3DXVECTOR2& vpSize); + void AdjustGrid(const glm::vec2& vpSize); void ScrollGrid(int step); void StartWaiting(bool start, StringValue hint = svNull); @@ -120,7 +120,7 @@ class LobbyFrame: public MenuFrame, IGameUser protected: virtual void OnShow(bool value); virtual void OnInvalidate(); - virtual void OnAdjustLayout(const D3DXVECTOR2& vpSize); + virtual void OnAdjustLayout(const glm::vec2& vpSize); virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); virtual void OnProcessEvent(unsigned id, EventData* data); @@ -143,7 +143,7 @@ class MatchmakingFrame: public MenuFrame, IGameUser gui::Button* _upArrow; void UpdateGrid(); - void AdjustGrid(const D3DXVECTOR2& vpSize); + void AdjustGrid(const glm::vec2& vpSize); void ScrollGrid(int step); void StartWaiting(bool start, StringValue hint = svNull); @@ -151,7 +151,7 @@ class MatchmakingFrame: public MenuFrame, IGameUser protected: virtual void OnShow(bool value); virtual void OnInvalidate(); - virtual void OnAdjustLayout(const D3DXVECTOR2& vpSize); + virtual void OnAdjustLayout(const glm::vec2& vpSize); virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); virtual void OnProcessEvent(unsigned id, EventData* data); @@ -174,7 +174,7 @@ class SteamBrowserFrame: public MenuFrame, IGameUser, INetGameUser gui::Button* _upArrow; void UpdateGrid(); - void AdjustGrid(const D3DXVECTOR2& vpSize); + void AdjustGrid(const glm::vec2& vpSize); void ScrollGrid(int step); void StartWaiting(bool start, StringValue hint = svNull); @@ -182,7 +182,7 @@ class SteamBrowserFrame: public MenuFrame, IGameUser, INetGameUser protected: virtual void OnShow(bool value); virtual void OnInvalidate(); - virtual void OnAdjustLayout(const D3DXVECTOR2& vpSize); + virtual void OnAdjustLayout(const glm::vec2& vpSize); virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); virtual void OnProcessEvent(unsigned id, EventData* data); @@ -254,7 +254,7 @@ class NetworkFrame: public MenuFrame NetworkFrame(Menu* menu, MainMenu* mainMenu, gui::Widget* parent); virtual ~NetworkFrame(); - virtual void OnAdjustLayout(const D3DXVECTOR2& vpSize); + virtual void OnAdjustLayout(const glm::vec2& vpSize); }; class TournamentFrame: public MenuFrame @@ -281,7 +281,7 @@ class CreditsFrame: public MenuFrame gui::Label* _label; protected: virtual void OnShow(bool value); - virtual void OnAdjustLayout(const D3DXVECTOR2& vpSize); + virtual void OnAdjustLayout(const glm::vec2& vpSize); virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); public: CreditsFrame(Menu* menu, MainMenu* mainMenu, gui::Widget* parent); @@ -302,13 +302,13 @@ class ProfileFrame: public MenuFrame gui::Button* _downArrow; gui::Button* _upArrow; - void AdjustGrid(const D3DXVECTOR2& vpSize); + void AdjustGrid(const glm::vec2& vpSize); void ScrollGrid(int step); void UpdateGrid(); protected: virtual void OnShow(bool value); virtual void OnInvalidate(); - virtual void OnAdjustLayout(const D3DXVECTOR2& vpSize); + virtual void OnAdjustLayout(const glm::vec2& vpSize); virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); public: @@ -375,7 +375,7 @@ class MainMenu: IGameUser, INetGameUser #endif void ApplyState(State state); - void AdjustMenuItems(const D3DXVECTOR2& vpSize); + void AdjustMenuItems(const glm::vec2& vpSize); virtual void OnProcessEvent(unsigned id, EventData* data); @@ -387,7 +387,7 @@ class MainMenu: IGameUser, INetGameUser MainMenu(Menu* menu, gui::Widget* parent); virtual ~MainMenu(); - void AdjustLayout(const D3DXVECTOR2& vpSize); + void AdjustLayout(const glm::vec2& vpSize); void Show(bool value); void OnProgress(float deltaTime); diff --git a/src/Rock3dGame/header/game/Menu.h b/src/Rock3dGame/header/game/Menu.h index 3a302452..24c5ad4f 100644 --- a/src/Rock3dGame/header/game/Menu.h +++ b/src/Rock3dGame/header/game/Menu.h @@ -125,18 +125,18 @@ class Menu: IGameUser, INetGameUser static const D3DXCOLOR cTextColor; //оптимальное разрешение - static const D3DXVECTOR2 cWinSize; + static const glm::vec2 cWinSize; //минимально-поддерживаемое - static const D3DXVECTOR2 cMinWinSize; + static const glm::vec2 cMinWinSize; //максимально-поддерживаемое - static const D3DXVECTOR2 cMaxWinSize; + static const glm::vec2 cMaxWinSize; - static D3DXVECTOR2 GetImageSize(gui::Material& material); + static glm::vec2 GetImageSize(gui::Material& material); //масштабирование до newSize с сохранением форматного соотношения Aspect - static D3DXVECTOR2 GetAspectSize(const D3DXVECTOR2& curSize, const D3DXVECTOR2& newSize); - static D3DXVECTOR2 GetImageAspectSize(gui::Material& material, const D3DXVECTOR2& newSize); - static D3DXVECTOR2 StretchImage(D3DXVECTOR2 imageSize, const D3DXVECTOR2& size, bool keepAspect = true, bool fillRect = false, bool scaleDown = true, bool scaleUp = true); - static D3DXVECTOR2 StretchImage(gui::Material& material, const D3DXVECTOR2& size, bool keepAspect = true, bool fillRect = false, bool scaleDown = true, bool scaleUp = true); + static glm::vec2 GetAspectSize(const glm::vec2& curSize, const glm::vec2& newSize); + static glm::vec2 GetImageAspectSize(gui::Material& material, const glm::vec2& newSize); + static glm::vec2 StretchImage(glm::vec2 imageSize, const glm::vec2& size, bool keepAspect = true, bool fillRect = false, bool scaleDown = true, bool scaleUp = true); + static glm::vec2 StretchImage(gui::Material& material, const glm::vec2& size, bool keepAspect = true, bool fillRect = false, bool scaleDown = true, bool scaleUp = true); static D3DXQUATERNION GetIsoRot(); private: GameMode* _game; @@ -204,8 +204,8 @@ class Menu: IGameUser, INetGameUser virtual ~Menu(); //centUnscacle - система координат в центре экрана, объекты не масштабируются а только смещаются - D3DXVECTOR2 WinToLocal(const D3DXVECTOR2& vec, bool centUnscacle = false); - void AdjustLayout(const D3DXVECTOR2& vpSize); + glm::vec2 WinToLocal(const glm::vec2& vec, bool centUnscacle = false); + void AdjustLayout(const glm::vec2& vpSize); //параметры кэрана изменились void OnResetView(); void OnFinishClose(); @@ -213,16 +213,16 @@ class Menu: IGameUser, INetGameUser void ShowCursor(bool value); bool IsCursorVisible() const; - void ShowAccept(const std::string& message, const std::string& yesText, const std::string& noText, const D3DXVECTOR2& pos, gui::Widget::Anchor align, gui::Widget::Event* guiEvent, Object* data = NULL, bool maxButtonsSize = false, bool maxMode = false, bool disableFocus = false); + void ShowAccept(const std::string& message, const std::string& yesText, const std::string& noText, const glm::vec2& pos, gui::Widget::Anchor align, gui::Widget::Event* guiEvent, Object* data = NULL, bool maxButtonsSize = false, bool maxMode = false, bool disableFocus = false); void HideAccept(); gui::Widget* GetAcceptSender(); bool GetAcceptResultYes(); Object* GetAcceptData(); // - void ShowWeaponDialog(const std::string& title, const std::string& message, const std::string& moneyText, const std::string& damageText, const D3DXVECTOR2& pos, gui::Widget::Anchor align, const float timeDelay = 1.0f); + void ShowWeaponDialog(const std::string& title, const std::string& message, const std::string& moneyText, const std::string& damageText, const glm::vec2& pos, gui::Widget::Anchor align, const float timeDelay = 1.0f); void HideWeaponDialog(); // - void ShowMessage(const std::string& title, const std::string& message, const std::string& okText, const D3DXVECTOR2& pos, gui::Widget::Anchor align, const float timeDelay = 0.0f, gui::Widget::Event* guiEvent = NULL, bool okButton = true); + void ShowMessage(const std::string& title, const std::string& message, const std::string& okText, const glm::vec2& pos, gui::Widget::Anchor align, const float timeDelay = 0.0f, gui::Widget::Event* guiEvent = NULL, bool okButton = true); void ShowMessageLoading(); void HideMessage(); gui::Widget* GetMessageSender(); @@ -320,36 +320,36 @@ class Menu: IGameUser, INetGameUser virtual void OnProcessEvent(unsigned id, EventData* data); gui::Dummy* CreateDummy(gui::Widget* parent, gui::Widget::Event* guiEvent, SoundShemeType soundSheme = cSoundShemeTypeEnd); - gui::PlaneFon* CreatePlane(gui::Widget* parent, gui::Widget::Event* guiEven, graph::Tex2DResource* image, bool imageSize, const D3DXVECTOR2& size = IdentityVec2, gui::Material::Blending blend = gui::Material::bmOpaque, SoundShemeType soundSheme = cSoundShemeTypeEnd); - gui::PlaneFon* CreatePlane(gui::Widget* parent, gui::Widget::Event* guiEven, const std::string& image, bool imageSize, const D3DXVECTOR2& size = IdentityVec2, gui::Material::Blending blend = gui::Material::bmOpaque, SoundShemeType soundSheme = cSoundShemeTypeEnd); - gui::Button* CreateArrowButton(gui::Widget* parent, gui::Widget::Event* guiEvent, const D3DXVECTOR2& size = IdentityVec2); - gui::Button* CreateSpaceArrowButton(gui::Widget* parent, gui::Widget::Event* guiEvent, const D3DXVECTOR2& size = IdentityVec2); + gui::PlaneFon* CreatePlane(gui::Widget* parent, gui::Widget::Event* guiEven, graph::Tex2DResource* image, bool imageSize, const glm::vec2& size = IdentityVec2, gui::Material::Blending blend = gui::Material::bmOpaque, SoundShemeType soundSheme = cSoundShemeTypeEnd); + gui::PlaneFon* CreatePlane(gui::Widget* parent, gui::Widget::Event* guiEven, const std::string& image, bool imageSize, const glm::vec2& size = IdentityVec2, gui::Material::Blending blend = gui::Material::bmOpaque, SoundShemeType soundSheme = cSoundShemeTypeEnd); + gui::Button* CreateArrowButton(gui::Widget* parent, gui::Widget::Event* guiEvent, const glm::vec2& size = IdentityVec2); + gui::Button* CreateSpaceArrowButton(gui::Widget* parent, gui::Widget::Event* guiEvent, const glm::vec2& size = IdentityVec2); // - gui::Button* Menu::CreateMenuButton(const lsl::string& name, const std::string& font, const std::string& norm, const std::string& sel, gui::Widget* parent, gui::Widget::Event* guiEvent, const D3DXVECTOR2& size, gui::Button::Style style, const D3DXCOLOR& textColor, SoundShemeType soundSheme); - gui::Button* CreateMenuButton(StringValue name, const std::string& font, const std::string& norm, const std::string& sel, gui::Widget* parent, gui::Widget::Event* guiEvent, const D3DXVECTOR2& size = IdentityVec2, gui::Button::Style style = gui::Button::bsSimple, const D3DXCOLOR& textColor = clrWhite, SoundShemeType soundSheme = ssButton1); - gui::Button* CreateMenuButton(const std::string& name, gui::Widget* parent, gui::Widget::Event* guiEvent, const D3DXVECTOR2& size = IdentityVec2, SoundShemeType soundSheme = ssButton1); - gui::Button* CreateMenuButton(StringValue name, gui::Widget* parent, gui::Widget::Event* guiEvent, const D3DXVECTOR2& size = IdentityVec2, SoundShemeType soundSheme = ssButton1); + gui::Button* Menu::CreateMenuButton(const lsl::string& name, const std::string& font, const std::string& norm, const std::string& sel, gui::Widget* parent, gui::Widget::Event* guiEvent, const glm::vec2& size, gui::Button::Style style, const D3DXCOLOR& textColor, SoundShemeType soundSheme); + gui::Button* CreateMenuButton(StringValue name, const std::string& font, const std::string& norm, const std::string& sel, gui::Widget* parent, gui::Widget::Event* guiEvent, const glm::vec2& size = IdentityVec2, gui::Button::Style style = gui::Button::bsSimple, const D3DXCOLOR& textColor = clrWhite, SoundShemeType soundSheme = ssButton1); + gui::Button* CreateMenuButton(const std::string& name, gui::Widget* parent, gui::Widget::Event* guiEvent, const glm::vec2& size = IdentityVec2, SoundShemeType soundSheme = ssButton1); + gui::Button* CreateMenuButton(StringValue name, gui::Widget* parent, gui::Widget::Event* guiEvent, const glm::vec2& size = IdentityVec2, SoundShemeType soundSheme = ssButton1); gui::Button* CreateMenuButton2(StringValue name, gui::Widget* parent, gui::Widget::Event* guiEvent); // gui::Button* CreateArrow(gui::Widget* parent, gui::Widget::Event* guiEvent); - gui::Label* CreateLabel(const std::string& name, gui::Widget* parent, const std::string& font, const D3DXVECTOR2& size = NullVec2, gui::Text::HorAlign horAlign = gui::Text::haCenter, gui::Text::VertAlign vertAlign = gui::Text::vaCenter, const D3DXCOLOR& color = cTextColor); - gui::Label* CreateLabel(StringValue name, gui::Widget* parent, const std::string& font, const D3DXVECTOR2& size = NullVec2, gui::Text::HorAlign horAlign = gui::Text::haCenter, gui::Text::VertAlign vertAlign = gui::Text::vaCenter, const D3DXCOLOR& color = cTextColor); + gui::Label* CreateLabel(const std::string& name, gui::Widget* parent, const std::string& font, const glm::vec2& size = NullVec2, gui::Text::HorAlign horAlign = gui::Text::haCenter, gui::Text::VertAlign vertAlign = gui::Text::vaCenter, const D3DXCOLOR& color = cTextColor); + gui::Label* CreateLabel(StringValue name, gui::Widget* parent, const std::string& font, const glm::vec2& size = NullVec2, gui::Text::HorAlign horAlign = gui::Text::haCenter, gui::Text::VertAlign vertAlign = gui::Text::vaCenter, const D3DXCOLOR& color = cTextColor); gui::DropBox* CreateDropBox(gui::Widget* parent, gui::Widget::Event* guiEvent, const lsl::StringList& items); - gui::TrackBar* CreateTrackBar(gui::Widget* parent, gui::Widget::Event* guiEvent, const D3DXVECTOR2& size); - gui::ListBox* CreateListBox(gui::Widget* parent, gui::Widget::Event* guiEvent, const D3DXVECTOR2& size = D3DXVECTOR2(200.0f, 600.0f), const D3DXVECTOR2& itemSize = D3DXVECTOR2(75.0f, 75.0f), const D3DXVECTOR2& itemSpace = D3DXVECTOR2(10.0f, 10.0f)); + gui::TrackBar* CreateTrackBar(gui::Widget* parent, gui::Widget::Event* guiEvent, const glm::vec2& size); + gui::ListBox* CreateListBox(gui::Widget* parent, gui::Widget::Event* guiEvent, const glm::vec2& size = glm::vec2(200.0f, 600.0f), const glm::vec2& itemSize = glm::vec2(75.0f, 75.0f), const glm::vec2& itemSpace = glm::vec2(10.0f, 10.0f)); gui::ProgressBar* CreateBar(gui::Widget* parent, gui::Widget::Event* guiEvent, const std::string& front, const std::string& back, gui::ProgressBar::Style style = gui::ProgressBar::psHorizontal); gui::ChargeBar* CreateChargeBar(gui::Widget* parent, gui::Widget::Event* guiEvent, unsigned maxCharge, unsigned curCharge); - gui::ColorList* CreateColorList(gui::Widget* parent, gui::Widget::Event* guiEvent, const D3DXVECTOR2& size); + gui::ColorList* CreateColorList(gui::Widget* parent, gui::Widget::Event* guiEvent, const glm::vec2& size); gui::ViewPort3d* CreateItemBox(gui::Widget* parent, gui::Widget::Event* guiEvent, graph::IndexedVBMesh* mesh, graph::Tex2DResource* meshTex); - gui::Button* CreateCloseButton(gui::Widget* parent, gui::Widget::Event* guiEvent, const D3DXVECTOR2& size = IdentityVec2); - gui::ScrollBox* CreateScrollBox(gui::Widget* parent, gui::Widget::Event* guiEvent, const D3DXVECTOR2& size = D3DXVECTOR2(200.0f, 600.0f)); - gui::Grid* CreateGrid(gui::Widget* parent, gui::Widget::Event* guiEvent, gui::Grid::Style style, const D3DXVECTOR2& cellSize = IdentityVec2, unsigned maxCellsOnLine = 0); + gui::Button* CreateCloseButton(gui::Widget* parent, gui::Widget::Event* guiEvent, const glm::vec2& size = IdentityVec2); + gui::ScrollBox* CreateScrollBox(gui::Widget* parent, gui::Widget::Event* guiEvent, const glm::vec2& size = glm::vec2(200.0f, 600.0f)); + gui::Grid* CreateGrid(gui::Widget* parent, gui::Widget::Event* guiEvent, gui::Grid::Style style, const glm::vec2& cellSize = IdentityVec2, unsigned maxCellsOnLine = 0); gui::StepperBox* CreateStepper(const StringList& items, gui::Widget* parent, gui::Widget::Event* guiEvent); - gui::ViewPort3d* CreateViewPort3d(gui::Widget* parent, gui::Widget::Event* guiEvent, const std::string& fon, gui::ViewPort3d::Style style = gui::ViewPort3d::msStatic, bool isoRot = true, bool fonSize = true, const D3DXVECTOR2& size = IdentityVec2, SoundShemeType soundSheme = cSoundShemeTypeEnd); + gui::ViewPort3d* CreateViewPort3d(gui::Widget* parent, gui::Widget::Event* guiEvent, const std::string& fon, gui::ViewPort3d::Style style = gui::ViewPort3d::msStatic, bool isoRot = true, bool fonSize = true, const glm::vec2& size = IdentityVec2, SoundShemeType soundSheme = cSoundShemeTypeEnd); gui::Mesh3d* CreateMesh3d(gui::ViewPort3d* parent, graph::IndexedVBMesh* mesh, graph::Tex2DResource* meshTex, int meshId = -1); gui::ViewPort3d* CreateMesh3dBox(gui::Widget* parent, gui::Widget::Event* guiEvent, graph::IndexedVBMesh* mesh, graph::Tex2DResource* meshTex, gui::ViewPort3d::Style style = gui::ViewPort3d::msStatic, SoundShemeType soundSheme = cSoundShemeTypeEnd); - gui::Plane3d* CreatePlane3d(gui::ViewPort3d* parent, const std::string& fon, const D3DXVECTOR2& size); + gui::Plane3d* CreatePlane3d(gui::ViewPort3d* parent, const std::string& fon, const glm::vec2& size); void ReleaseWidget(gui::Widget* widget); @@ -396,7 +396,7 @@ class Menu: IGameUser, INetGameUser bool HasString(const std::string& value); lsl::string FormatCurrency(int val, lsl::string unit = ""); - D3DXVECTOR2 GetAspectSize(); + glm::vec2 GetAspectSize(); const graph::DisplayModes& GetDisplayModes(); bool FindNearMode(const lsl::Point& resolution, graph::DisplayMode& mode); diff --git a/src/Rock3dGame/header/game/MenuSystem.h b/src/Rock3dGame/header/game/MenuSystem.h index a9891a91..71c37595 100644 --- a/src/Rock3dGame/header/game/MenuSystem.h +++ b/src/Rock3dGame/header/game/MenuSystem.h @@ -21,7 +21,7 @@ class MenuFrame: public gui::Widget::Event gui::Dummy* _root; protected: virtual void OnShow(bool value) {} - virtual void OnAdjustLayout(const D3DXVECTOR2& vpSize) {} + virtual void OnAdjustLayout(const glm::vec2& vpSize) {} virtual void OnInvalidate() {} graph::Tex2DResource* GetTexture(const std::string& name); @@ -54,10 +54,10 @@ class MenuFrame: public gui::Widget::Event void ShowModal(bool value, int level = cTopmostModal); bool visible() const; - void AdjustLayout(const D3DXVECTOR2& vpSize); + void AdjustLayout(const glm::vec2& vpSize); void Invalidate(); - void SetPos(const D3DXVECTOR2& pos, gui::Widget::Anchor align, const D3DXVECTOR2& size); + void SetPos(const glm::vec2& pos, gui::Widget::Anchor align, const glm::vec2& size); }; } diff --git a/src/Rock3dGame/header/game/OptionsMenu.h b/src/Rock3dGame/header/game/OptionsMenu.h index 159f9f28..24a0021e 100644 --- a/src/Rock3dGame/header/game/OptionsMenu.h +++ b/src/Rock3dGame/header/game/OptionsMenu.h @@ -30,13 +30,13 @@ class GameFrame: public MenuFrame gui::StepperBox* _steppers[cStepperEnd]; gui::PlaneFon* _itemsBg[cLabelEnd]; - void AdjustGrid(const D3DXVECTOR2& vpSize); + void AdjustGrid(const glm::vec2& vpSize); void ScrollGrid(int step); void LoadCfg(); protected: virtual void OnShow(bool value); - virtual void OnAdjustLayout(const D3DXVECTOR2& vpSize); + virtual void OnAdjustLayout(const glm::vec2& vpSize); virtual void OnInvalidate(); virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); @@ -63,7 +63,7 @@ class MediaFrame: public MenuFrame void LoadCfg(); protected: virtual void OnShow(bool value); - virtual void OnAdjustLayout(const D3DXVECTOR2& vpSize); + virtual void OnAdjustLayout(const glm::vec2& vpSize); virtual void OnInvalidate(); public: MediaFrame(Menu* menu, OptionsMenu* optionsMenu, gui::Widget* parent); @@ -92,7 +92,7 @@ class NetworkTab: public MenuFrame void ApplyVolume(bool revertChanges); protected: virtual void OnShow(bool value); - virtual void OnAdjustLayout(const D3DXVECTOR2& vpSize); + virtual void OnAdjustLayout(const glm::vec2& vpSize); virtual void OnInvalidate(); virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); @@ -128,13 +128,13 @@ class ControlsFrame: public MenuFrame, ControlEvent gui::PlaneFon* _controllerIcons[cControllerTypeEnd]; - void AdjustGrid(const D3DXVECTOR2& vpSize); + void AdjustGrid(const glm::vec2& vpSize); void ScrollGrid(int step); void LoadCfg(); protected: virtual void OnShow(bool value); - virtual void OnAdjustLayout(const D3DXVECTOR2& vpSize); + virtual void OnAdjustLayout(const glm::vec2& vpSize); virtual void OnInvalidate(); virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); @@ -204,7 +204,7 @@ class OptionsMenu: public gui::Widget::Event gui::StepperBox* CreateStepper(const StringList& items, gui::Widget* parent, gui::Widget::Event* guiEvent); gui::VolumeBar* CreateVolumeBar(gui::Widget* parent, gui::Widget::Event* guiEvent); - void AdjustLayout(const D3DXVECTOR2& vpSize); + void AdjustLayout(const glm::vec2& vpSize); void Show(bool value); void OnProgress(float deltaTime); @@ -235,7 +235,7 @@ class StartOptionsMenu: public MenuFrame void LoadCfg(); protected: virtual void OnShow(bool value); - virtual void OnAdjustLayout(const D3DXVECTOR2& vpSize); + virtual void OnAdjustLayout(const glm::vec2& vpSize); virtual void OnInvalidate(); virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); diff --git a/src/Rock3dGame/header/game/Player.h b/src/Rock3dGame/header/game/Player.h index 7282b961..adb6c08c 100644 --- a/src/Rock3dGame/header/game/Player.h +++ b/src/Rock3dGame/header/game/Player.h @@ -418,8 +418,8 @@ class Player: public GameObjListener D3DXQUATERNION rot3; D3DXMATRIX worldMat; - D3DXVECTOR2 pos; - D3DXVECTOR2 dir; + glm::vec2 pos; + glm::vec2 dir; float speed; //Диаметр ограничивающей сферы float size; diff --git a/src/Rock3dGame/header/game/Race.h b/src/Rock3dGame/header/game/Race.h index b6a2d752..abb1682e 100644 --- a/src/Rock3dGame/header/game/Race.h +++ b/src/Rock3dGame/header/game/Race.h @@ -149,7 +149,7 @@ class Garage: lsl::Component { bool head; D3DXVECTOR3 pos; - D3DXVECTOR2 size; + glm::vec2 size; }; typedef lsl::Vector NightLights; private: diff --git a/src/Rock3dGame/header/game/RaceMenu2.h b/src/Rock3dGame/header/game/RaceMenu2.h index 19c3460e..205ed7fd 100644 --- a/src/Rock3dGame/header/game/RaceMenu2.h +++ b/src/Rock3dGame/header/game/RaceMenu2.h @@ -123,11 +123,11 @@ class GarageFrame: public MenuFrame void RefreshColorList(); void SelectColor(const D3DXCOLOR& value); - void ShowMessage(StringValue message, gui::Widget* sender, const D3DXVECTOR2& slotSize); - void ShowAccept(const std::string& message, gui::Widget* sender, const D3DXVECTOR2& slotSize); + void ShowMessage(StringValue message, gui::Widget* sender, const glm::vec2& slotSize); + void ShowAccept(const std::string& message, gui::Widget* sender, const glm::vec2& slotSize); protected: virtual void OnShow(bool value); - virtual void OnAdjustLayout(const D3DXVECTOR2& vpSize); + virtual void OnAdjustLayout(const glm::vec2& vpSize); virtual void OnInvalidate(); virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); @@ -214,7 +214,7 @@ class WorkshopFrame: public MenuFrame bool StopDrag(bool dropOut, bool intoGood); void ResetDrag(); bool IsDragItem(); - void UpdateDragPos(const D3DXVECTOR2& pos); + void UpdateDragPos(const glm::vec2& pos); void SetSlotActive(Player::SlotType type, bool active, bool enabled); void UpdateSlot(Player::SlotType type, Slot* slot); @@ -230,19 +230,19 @@ class WorkshopFrame: public MenuFrame void InstalSlot(Player::SlotType type, Slot* slot, int chargeCount); void UpdateMoney(); - void ShowInfo(Slot* slot, int cost, gui::Widget* sender, const D3DXVECTOR2& slotSize, int infoId); - void ShowInfo(Slot* slot, gui::Widget* sender, const D3DXVECTOR2& slotSize, int infoId); + void ShowInfo(Slot* slot, int cost, gui::Widget* sender, const glm::vec2& slotSize, int infoId); + void ShowInfo(Slot* slot, gui::Widget* sender, const glm::vec2& slotSize, int infoId); void HideInfo(int infoId); bool UpdateSlotInfo(gui::Widget* sender, const SlotBox& slotBox, Slot* slot, Player::SlotType type); void UpdateStats(); void UpdateBonusStats(Player::SlotType type, Slot* slot); - void ShowMessage(StringValue message, gui::Widget* sender, const D3DXVECTOR2& slotSize); - void ShowAccept(const std::string& message, gui::Widget* sender, const D3DXVECTOR2& slotSize, Slot* slot); + void ShowMessage(StringValue message, gui::Widget* sender, const glm::vec2& slotSize); + void ShowAccept(const std::string& message, gui::Widget* sender, const glm::vec2& slotSize, Slot* slot); protected: virtual void OnShow(bool value); - virtual void OnAdjustLayout(const D3DXVECTOR2& vpSize); + virtual void OnAdjustLayout(const glm::vec2& vpSize); virtual void OnInvalidate(); virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); @@ -286,7 +286,7 @@ class GamersFrame: public MenuFrame, IGameUser int GetNextPlanetIndex(int sIndex); int GetPrevPlanetIndex(int sIndex); protected: - virtual void OnAdjustLayout(const D3DXVECTOR2& vpSize); + virtual void OnAdjustLayout(const glm::vec2& vpSize); virtual void OnShow(bool value); virtual void OnInvalidate(); virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); @@ -337,11 +337,11 @@ class AngarFrame: public MenuFrame, IGameUser void SelectPlanet(int index); void SetDoorPos(PlanetBox& planet, float alpha); - void ShowMessage(StringValue message, gui::Widget* sender, const D3DXVECTOR2& slotSize); - void ShowAccept(const std::string& message, gui::Widget* sender, const D3DXVECTOR2& slotSize, lsl::Object* data); + void ShowMessage(StringValue message, gui::Widget* sender, const glm::vec2& slotSize); + void ShowAccept(const std::string& message, gui::Widget* sender, const glm::vec2& slotSize, lsl::Object* data); protected: virtual void OnShow(bool value); - virtual void OnAdjustLayout(const D3DXVECTOR2& vpSize); + virtual void OnAdjustLayout(const glm::vec2& vpSize); virtual void OnInvalidate(); virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); virtual void OnFocusChanged(gui::Widget* sender); @@ -381,7 +381,7 @@ class AchievmentFrame: public MenuFrame gui::PlaneFon* _panel; Achievments _achievments; - const AchievmentBox* AddAchievment(unsigned index, const std::string& lockImg, const std::string& img, const D3DXVECTOR2& pos, Achievment* model); + const AchievmentBox* AddAchievment(unsigned index, const std::string& lockImg, const std::string& img, const glm::vec2& pos, Achievment* model); const AchievmentBox* GetAchievment(Achievment* model); void UpdateAchievments(); void UpdateSelection(gui::Widget* sender, bool select); @@ -390,7 +390,7 @@ class AchievmentFrame: public MenuFrame void ShowAccept(const std::string& message, gui::Widget* sender, Achievment* achievment); protected: virtual void OnShow(bool value); - virtual void OnAdjustLayout(const D3DXVECTOR2& vpSize); + virtual void OnAdjustLayout(const glm::vec2& vpSize); virtual void OnInvalidate(); virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); @@ -455,7 +455,7 @@ class RaceMainFrame: public MenuFrame void UpdatePlayers(); protected: virtual void OnShow(bool value); - virtual void OnAdjustLayout(const D3DXVECTOR2& vpSize); + virtual void OnAdjustLayout(const glm::vec2& vpSize); virtual void OnInvalidate(); virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); @@ -508,7 +508,7 @@ class RaceMenu: INetGameUser, gui::Widget::Event, IGameUser void CreateCar(gui::ViewPort3d* viewport, Garage::Car* car, const D3DXCOLOR& color, Slot* slots[Player::cSlotTypeEnd]); void CreateCar(gui::ViewPort3d* viewport, Player* player); - void AdjustLayout(const D3DXVECTOR2& vpSize); + void AdjustLayout(const glm::vec2& vpSize); void Show(bool value); void UpdateStats(Garage::Car* car, Player* player, gui::ProgressBar* armorBar, gui::ProgressBar* speedBar, gui::ProgressBar* damageBar, gui::Label* armorBarValue, gui::Label* damageBarValue, gui::Label* speedBarValue); diff --git a/src/Rock3dGame/header/game/Trace.h b/src/Rock3dGame/header/game/Trace.h index 24ac6f39..153090fe 100644 --- a/src/Rock3dGame/header/game/Trace.h +++ b/src/Rock3dGame/header/game/Trace.h @@ -72,23 +72,23 @@ class WayNode: public Object WayNode* _node; //Направляющий вектор, образованный node, nextNode - mutable D3DXVECTOR2 _dir; + mutable glm::vec2 _dir; //продольгая длина тайла mutable float _dirLength; //Нормаль к направляющему вектору - mutable D3DXVECTOR2 _norm; + mutable glm::vec2 _norm; // mutable D3DXVECTOR3 _normLine; //направляющая линия mutable D3DXVECTOR3 _dirLine; //Средний направляющий вектор - mutable D3DXVECTOR2 _midDir; + mutable glm::vec2 _midDir; //Нормаль к _midDir - mutable D3DXVECTOR2 _midNorm; + mutable glm::vec2 _midNorm; //Нормальная ограничивающие линия через node mutable D3DXVECTOR3 _midNormLine; //нормаль к _midDir в направлении к внутреннему углу (наче говоря к острому углу) - mutable D3DXVECTOR2 _edgeNorm; + mutable glm::vec2 _edgeNorm; //узловой радиус окружности целиком описывающий угол mutable float _nodeRadius; //линия через внутренний угол поворота перпендикулярно _midNorm @@ -110,8 +110,8 @@ class WayNode: public Object // const D3DXVECTOR3& GetNextPos() const; float GetNextHeight() const; - const D3DXVECTOR2& GetPrevDir() const; - const D3DXVECTOR2& GetNextMidNorm() const; + const glm::vec2& GetPrevDir() const; + const glm::vec2& GetNextMidNorm() const; const D3DXVECTOR3& GetNextNormLine() const; float GetNextNodeRadius() const; @@ -125,23 +125,23 @@ class WayNode: public Object //Работа с дорожками //Номер дорожки отсчитывается начиная с 0 от крайней грани в направлении нормали GetNorm //Номер из поизции - unsigned ComputeTrackInd(const D3DXVECTOR2& point) const; + unsigned ComputeTrackInd(const glm::vec2& point) const; //Наикратчайший вектор смещения до соседней дорожки track относительно point - D3DXVECTOR2 ComputeTrackNormOff(const D3DXVECTOR2& point, unsigned track) const; + glm::vec2 ComputeTrackNormOff(const glm::vec2& point, unsigned track) const; bool RayCast(const D3DXVECTOR3& rayPos, const D3DXVECTOR3& rayVec, float* dist = 0) const; //lengthClamp - ограничивать ли тайл по длине bool IsContains(const D3DXVECTOR3& point, bool lengthClamp = true, float* dist = 0, float widthErr = 0.0f) const; bool IsZLevelContains(const D3DXVECTOR3& point, float* dist = 0) const; - const D3DXVECTOR2& GetDir() const; + const glm::vec2& GetDir() const; float GetDirLength() const; - const D3DXVECTOR2& GetNorm() const; + const glm::vec2& GetNorm() const; const D3DXVECTOR3& GetDirLine() const; - const D3DXVECTOR2& GetMidDir() const; - const D3DXVECTOR2& GetMidNorm() const; + const glm::vec2& GetMidDir() const; + const glm::vec2& GetMidNorm() const; const D3DXVECTOR3& GetMidNormLine() const; - const D3DXVECTOR2& GetEdgeNorm() const; + const glm::vec2& GetEdgeNorm() const; float GetNodeRadius() const; const D3DXVECTOR3& GetEdgeLine() const; float GetTurnAngle() const; @@ -150,7 +150,7 @@ class WayNode: public Object //coordX - относительная продольная координата тайла float ComputeCoordX(float dist) const; - float ComputeCoordX(const D3DXVECTOR2& point) const; + float ComputeCoordX(const glm::vec2& point) const; //длина тайла float ComputeLength(float coordX) const; //Длина нормали в определенной точке @@ -162,10 +162,10 @@ class WayNode: public Object // D3DXVECTOR3 GetPoint(float coordX) const; // - float GetLength(const D3DXVECTOR2& point) const; - float GetHeight(const D3DXVECTOR2& point) const; - float GetWidth(const D3DXVECTOR2& point) const; - float GetZCoord(const D3DXVECTOR2& point) const; + float GetLength(const glm::vec2& point) const; + float GetHeight(const glm::vec2& point) const; + float GetWidth(const glm::vec2& point) const; + float GetZCoord(const glm::vec2& point) const; D3DXVECTOR3 GetCenter3() const; const unsigned cTrackCnt; @@ -187,7 +187,7 @@ class WayNode: public Object void Changed(); bool RayCast(const D3DXVECTOR3& rayPos, const D3DXVECTOR3& rayVec, float* dist = 0) const; - bool IsContains2(const D3DXVECTOR2& point, float* dist = 0) const; + bool IsContains2(const glm::vec2& point, float* dist = 0) const; bool IsContains(const D3DXVECTOR3& point, float* dist = 0) const; WayPath* GetPath(); @@ -199,7 +199,7 @@ class WayNode: public Object WayNode* GetNext(); const D3DXVECTOR3& GetPos() const; - D3DXVECTOR2 GetPos2() const; + glm::vec2 GetPos2() const; float GetSize() const; float GetRadius() const; }; diff --git a/src/Rock3dGame/header/game/View.h b/src/Rock3dGame/header/game/View.h index 8d2efaa0..cd217abe 100644 --- a/src/Rock3dGame/header/game/View.h +++ b/src/Rock3dGame/header/game/View.h @@ -32,15 +32,15 @@ class View: public IView const Desc& GetDesc(); float GetAspect() const; lsl::Point GetWndSize() const; - D3DXVECTOR2 GetVPSize() const; + glm::vec2 GetVPSize() const; //из экранного в пространство ViewPort //в терминах движка, пространство ViewPort и будет далее являться экранным lsl::Point ScreenToView(const lsl::Point& point); //из ViewPort в проекционноое пространство - D3DXVECTOR2 ViewToProj(const lsl::Point& point); + glm::vec2 ViewToProj(const lsl::Point& point); // - D3DXVECTOR2 ProjToView(const D3DXVECTOR2& coord); + glm::vec2 ProjToView(const glm::vec2& coord); float GetCameraAspect() const; void SetCameraAspect(float value); diff --git a/src/Rock3dGame/include/IView.h b/src/Rock3dGame/include/IView.h index c0752380..c4091047 100644 --- a/src/Rock3dGame/include/IView.h +++ b/src/Rock3dGame/include/IView.h @@ -18,8 +18,8 @@ class IView public: virtual void Reset(const Desc& desc) = 0; - virtual D3DXVECTOR2 ViewToProj(const lsl::Point& point) = 0; - virtual D3DXVECTOR2 ProjToView(const D3DXVECTOR2& coord) = 0; + virtual glm::vec2 ViewToProj(const lsl::Point& point) = 0; + virtual glm::vec2 ProjToView(const glm::vec2& coord) = 0; virtual bool OnMouseClickEvent(MouseKey key, KeyState state, const Point& coord, bool shift, bool ctrl) = 0; virtual bool OnMouseMoveEvent(const Point& coord, bool shift, bool ctrl) = 0; @@ -28,7 +28,7 @@ class IView virtual const Desc& GetDesc() = 0; virtual lsl::Point GetWndSize() const = 0; - virtual D3DXVECTOR2 GetVPSize() const = 0; + virtual glm::vec2 GetVPSize() const = 0; //Часть интерфейса камеры. Только для пользователей virtual float GetCameraAspect() const = 0; diff --git a/src/Rock3dGame/source/edit/SceneControl.cpp b/src/Rock3dGame/source/edit/SceneControl.cpp index f22f2bfd..e4feab8f 100644 --- a/src/Rock3dGame/source/edit/SceneControl.cpp +++ b/src/Rock3dGame/source/edit/SceneControl.cpp @@ -111,7 +111,7 @@ bool SceneControl::Control::OnMouseMoveEvent(const game::MouseMove& mMove) INodeRef selNode = _owner->_selNode; - D3DXVECTOR2 offCoord(static_cast(mMove.offCoord.x), static_cast(mMove.offCoord.y)); + glm::vec2 offCoord(static_cast(mMove.offCoord.x), static_cast(mMove.offCoord.y)); //Нажата левая кнопка мыши if (mMove.click.key == lsl::mkLeft && mMove.click.state == lsl::ksDown) @@ -210,7 +210,7 @@ bool SceneControl::Control::OnMouseMoveEvent(const game::MouseMove& mMove) _clStScale = clStScale; } - D3DXVECTOR2 fS(offCoord.x, -offCoord.y); + glm::vec2 fS(offCoord.x, -offCoord.y); fS /= 100.0f; switch (_clScDirMove) { diff --git a/src/Rock3dGame/source/game/AICar.cpp b/src/Rock3dGame/source/game/AICar.cpp index b765943d..515b1f74 100644 --- a/src/Rock3dGame/source/game/AICar.cpp +++ b/src/Rock3dGame/source/game/AICar.cpp @@ -139,7 +139,7 @@ void AICar::PathState::ComputeMovDir(AICar* owner, float deltaTime, const Player if (edgeDist < car.size) { float tileWidth = nextTile->GetPoint()->GetSize() / cTrackCnt; - D3DXVECTOR2 targPnt = nextTile->GetPos2() + nextTile->GetTile().GetEdgeNorm() * tileWidth * static_cast(cTrackCnt)/2.0f - car.pos; + glm::vec2 targPnt = nextTile->GetPos2() + nextTile->GetTile().GetEdgeNorm() * tileWidth * static_cast(cTrackCnt)/2.0f - car.pos; float proj = D3DXVec2Dot(&curTile->GetTile().GetDir(), &targPnt); if (proj < car.size) @@ -199,8 +199,8 @@ void AICar::PathState::ComputeMovDir(AICar* owner, float deltaTime, const Player //расчет траектории движения { - D3DXVECTOR2 dir = movNode->GetTile().GetDir(); - D3DXVECTOR2 target = car.pos + dir * dirArea; + glm::vec2 dir = movNode->GetTile().GetDir(); + glm::vec2 target = car.pos + dir * dirArea; target += movNode->GetTile().ComputeTrackNormOff(target, newTrack); moveDir = target - car.pos; diff --git a/src/Rock3dGame/source/game/AIPlayer.cpp b/src/Rock3dGame/source/game/AIPlayer.cpp index 3b2a3519..bf2e85b7 100644 --- a/src/Rock3dGame/source/game/AIPlayer.cpp +++ b/src/Rock3dGame/source/game/AIPlayer.cpp @@ -411,7 +411,7 @@ void AIDebug::GrActor::DoRender(graph::Engine& engine) if (car) { - D3DXVECTOR2 moveDir = aiPlayer->GetCar()->_path.moveDir; + glm::vec2 moveDir = aiPlayer->GetCar()->_path.moveDir; res::VertexPD lines[2]; D3DXVECTOR3 worldPos = car->GetGameObj().GetWorldPos(); @@ -432,10 +432,10 @@ void AIDebug::GrActor::DoRender(graph::Engine& engine) if (car && nextNode) { - D3DXVECTOR2 moveDir = _debug->_aiPlayer->_car->_path.moveDir; + glm::vec2 moveDir = _debug->_aiPlayer->_car->_path.moveDir; float dist = Line2DistToPoint(nextNode->GetTile().GetEdgeLine(), _debug->_aiPlayer->_car->GetCar().pos); - D3DXVECTOR2 dir = nextNode->GetTile().GetEdgeNorm(); + glm::vec2 dir = nextNode->GetTile().GetEdgeNorm(); res::VertexPD lines[2]; D3DXVECTOR3 worldPos = car->GetGameObj().GetWorldPos(); diff --git a/src/Rock3dGame/source/game/CameraManager.cpp b/src/Rock3dGame/source/game/CameraManager.cpp index e93c19ee..12486dfd 100644 --- a/src/Rock3dGame/source/game/CameraManager.cpp +++ b/src/Rock3dGame/source/game/CameraManager.cpp @@ -482,14 +482,14 @@ void CameraManager::Control::OnInputFrame(float deltaTime) case csAutoObserver: { - D3DXVECTOR2 mPos = control->GetMouseVec(); - D3DXVECTOR2 dMPos = mPos - D3DXVECTOR2(_staticVec1.x, _staticVec1.y); + glm::vec2 mPos = control->GetMouseVec(); + glm::vec2 dMPos = mPos - glm::vec2(_staticVec1.x, _staticVec1.y); _staticVec1 = D3DXVECTOR3(mPos.x, mPos.y, 0); bool leftDown = control->IsMouseDown(mkLeft) == akDown; if (leftDown && _staticVec2.z == 0.0f) { - D3DXVECTOR2 dMPos2 = mPos - D3DXVECTOR2(_staticVec2.x, _staticVec2.y); + glm::vec2 dMPos2 = mPos - glm::vec2(_staticVec2.x, _staticVec2.y); if (D3DXVec2Length(&dMPos2) > 15.0f) _staticVec2.z = 1.0f; else @@ -591,10 +591,10 @@ void CameraManager::Control::TargetChanged() D3DXVECTOR3 CameraManager::ScreenToWorld(const lsl::Point& coord, float z) { - return _camera->GetContextInfo().ScreenToWorld(D3DXVECTOR2(static_cast(coord.x), static_cast(coord.y)), z, _world->GetView()->GetVPSize()); + return _camera->GetContextInfo().ScreenToWorld(glm::vec2(static_cast(coord.x), static_cast(coord.y)), z, _world->GetView()->GetVPSize()); } -D3DXVECTOR2 CameraManager::WorldToScreen(const D3DXVECTOR3& coord) +glm::vec2 CameraManager::WorldToScreen(const D3DXVECTOR3& coord) { return _camera->GetContextInfo().WorldToScreen(coord, _world->GetView()->GetVPSize()); } @@ -825,7 +825,7 @@ void CameraManager::SetLight(GraphManager::LightSrc* value) _light = value; } -void CameraManager::GetObserverCoord(const D3DXVECTOR3& targetPos, float targetDist, D3DXVECTOR3* pos, D3DXQUATERNION& rot, const D3DXVECTOR2& dMPos, float deltaTime, bool dragX, bool dragY, bool restoreY, D3DXVECTOR3* camPos, D3DXQUATERNION* camRot, float* dir) +void CameraManager::GetObserverCoord(const D3DXVECTOR3& targetPos, float targetDist, D3DXVECTOR3* pos, D3DXQUATERNION& rot, const glm::vec2& dMPos, float deltaTime, bool dragX, bool dragY, bool restoreY, D3DXVECTOR3* camPos, D3DXQUATERNION* camRot, float* dir) { float camDist = targetDist; diff --git a/src/Rock3dGame/source/game/ControlManager.cpp b/src/Rock3dGame/source/game/ControlManager.cpp index a83f108d..5307a9f0 100644 --- a/src/Rock3dGame/source/game/ControlManager.cpp +++ b/src/Rock3dGame/source/game/ControlManager.cpp @@ -608,10 +608,10 @@ lsl::Point ControlManager::GetMousePos() return _world->GetView()->ScreenToView(lsl::Point(0, 0)); } -D3DXVECTOR2 ControlManager::GetMouseVec() +glm::vec2 ControlManager::GetMouseVec() { lsl::Point mPnt = GetMousePos(); - return D3DXVECTOR2(static_cast(mPnt.x), static_cast(mPnt.y)); + return glm::vec2(static_cast(mPnt.x), static_cast(mPnt.y)); } const ControllerState& ControlManager::GetControllerState(ControllerType controller) diff --git a/src/Rock3dGame/source/game/DataBase.cpp b/src/Rock3dGame/source/game/DataBase.cpp index 04af1a21..6d0953a3 100644 --- a/src/Rock3dGame/source/game/DataBase.cpp +++ b/src/Rock3dGame/source/game/DataBase.cpp @@ -82,7 +82,7 @@ graph::IVBMeshNode* DataBase::AddMeshNode(MapObj* mapObj, const std::string& mes return AddMeshNode(&mapObj->GetGameObj().GetGrActor(), mesh, meshId); } -graph::Sprite* DataBase::AddSprite(game::MapObj* mapObj, bool fixDir, const D3DXVECTOR2& sizes) +graph::Sprite* DataBase::AddSprite(game::MapObj* mapObj, bool fixDir, const glm::vec2& sizes) { graph::Sprite* node = &mapObj->GetGameObj().GetGrActor().GetNodes().Add(); node->fixDirection = fixDir; @@ -91,7 +91,7 @@ graph::Sprite* DataBase::AddSprite(game::MapObj* mapObj, bool fixDir, const D3DX return node; } -graph::Sprite* DataBase::AddFxSprite(game::MapObj* mapObj, const std::string& libMat, const Vec3Range& speedPos, const Vec3Range& speedScale, const QuatRange& speedRot, bool autoRot, graph::SceneNode::AnimMode animMode, float animDuration, float frame, bool dir, const D3DXVECTOR2& sizes) +graph::Sprite* DataBase::AddFxSprite(game::MapObj* mapObj, const std::string& libMat, const Vec3Range& speedPos, const Vec3Range& speedScale, const QuatRange& speedRot, bool autoRot, graph::SceneNode::AnimMode animMode, float animDuration, float frame, bool dir, const glm::vec2& sizes) { graph::Sprite* node = &mapObj->GetGameObj().GetGrActor().GetNodes().Add(); node->fixDirection = dir; @@ -113,7 +113,7 @@ graph::Sprite* DataBase::AddFxSprite(game::MapObj* mapObj, const std::string& li return node; } -graph::PlaneNode* DataBase::AddPlaneNode(game::MapObj* mapObj, const D3DXVECTOR2& sizes) +graph::PlaneNode* DataBase::AddPlaneNode(game::MapObj* mapObj, const glm::vec2& sizes) { graph::PlaneNode* node = &mapObj->GetGameObj().GetGrActor().GetNodes().Add(); node->SetSize(sizes); @@ -121,7 +121,7 @@ graph::PlaneNode* DataBase::AddPlaneNode(game::MapObj* mapObj, const D3DXVECTOR2 return node; } -graph::PlaneNode* DataBase::AddFxPlane(game::MapObj* mapObj, const std::string& libMat, const Vec3Range& speedPos, const Vec3Range& speedScale, const QuatRange& speedRot, graph::SceneNode::AnimMode animMode, float animDuration, float frame, const D3DXVECTOR2& sizes) +graph::PlaneNode* DataBase::AddFxPlane(game::MapObj* mapObj, const std::string& libMat, const Vec3Range& speedPos, const Vec3Range& speedScale, const QuatRange& speedRot, graph::SceneNode::AnimMode animMode, float animDuration, float frame, const glm::vec2& sizes) { graph::PlaneNode* node = &mapObj->GetGameObj().GetGrActor().GetNodes().Add(); node->SetSize(sizes); @@ -778,7 +778,7 @@ void DataBase::LoadFxFlow(const std::string& name, const std::string& libMat, gr SaveMapObj(mapObj, MapObjLib::ctEffects, name); } -void DataBase::LoadFxSprite(const std::string& name, const std::string& libMat, const Vec3Range& speedPos, const Vec3Range& speedScale, const QuatRange& speedRot, bool autoRot, graph::SceneNode::AnimMode animMode, float animDuration, float frame, float timeLife, bool dir, const D3DXVECTOR2& sizes, GraphType graphType, bool morph) +void DataBase::LoadFxSprite(const std::string& name, const std::string& libMat, const Vec3Range& speedPos, const Vec3Range& speedScale, const QuatRange& speedRot, bool autoRot, graph::SceneNode::AnimMode animMode, float animDuration, float frame, float timeLife, bool dir, const glm::vec2& sizes, GraphType graphType, bool morph) { game::MapObj* mapObj = NewMapObj(); AddToGraph(mapObj, graphType, true, morph); @@ -789,7 +789,7 @@ void DataBase::LoadFxSprite(const std::string& name, const std::string& libMat, SaveMapObj(mapObj, MapObjLib::ctEffects, name); } -void DataBase::LoadFxPlane(const std::string& name, const std::string& libMat, const Vec3Range& speedPos, const Vec3Range& speedScale, const QuatRange& speedRot, graph::SceneNode::AnimMode animMode, float animDuration, float frame, float timeLife, const D3DXVECTOR2& sizes, GraphType graphType) +void DataBase::LoadFxPlane(const std::string& name, const std::string& libMat, const Vec3Range& speedPos, const Vec3Range& speedScale, const QuatRange& speedRot, graph::SceneNode::AnimMode animMode, float animDuration, float frame, float timeLife, const glm::vec2& sizes, GraphType graphType) { game::MapObj* mapObj = NewMapObj(); AddToGraph(mapObj, graphType, true); @@ -1229,44 +1229,44 @@ void DataBase::LoadEffects() //flare4 LoadFxSprite("flare4", "Effect\\flare4", NullVector, IdentityVector, NullQuaternion, false, graph::SceneNode::amNone, 0); //flare5 - LoadFxSprite("flare5", "Effect\\flare5", NullVector, IdentityVector, NullQuaternion, false, graph::SceneNode::amNone, 0, 0, 0, false, D3DXVECTOR2(0.8f, 0.8f)); + LoadFxSprite("flare5", "Effect\\flare5", NullVector, IdentityVector, NullQuaternion, false, graph::SceneNode::amNone, 0, 0, 0, false, glm::vec2(0.8f, 0.8f)); //flare6 - LoadFxSprite("flare6", "Effect\\flare6", NullVector, IdentityVector, NullQuaternion, false, graph::SceneNode::amNone, 0, 0, 0.15f, false, D3DXVECTOR2(2.0f, 2.0f)); + LoadFxSprite("flare6", "Effect\\flare6", NullVector, IdentityVector, NullQuaternion, false, graph::SceneNode::amNone, 0, 0, 0.15f, false, glm::vec2(2.0f, 2.0f)); //firePatron - LoadFxSprite("firePatron", "Effect\\firePatron", NullVector, IdentityVector, NullQuaternion, false, graph::SceneNode::amNone, 0, 0, 0, false, D3DXVECTOR2(2.0f, 2.0f)); + LoadFxSprite("firePatron", "Effect\\firePatron", NullVector, IdentityVector, NullQuaternion, false, graph::SceneNode::amNone, 0, 0, 0, false, glm::vec2(2.0f, 2.0f)); //lens1 - LoadFxSprite("lens1", "Effect\\lens1", NullVector, IdentityVector, NullQuaternion, false, graph::SceneNode::amNone, 0, 0, 0, false, D3DXVECTOR2(3.0f, 0.75f)); + LoadFxSprite("lens1", "Effect\\lens1", NullVector, IdentityVector, NullQuaternion, false, graph::SceneNode::amNone, 0, 0, 0, false, glm::vec2(3.0f, 0.75f)); //death1 LoadFxSprite("death1", "Effect\\gunEff2", NullVector, Vec3Range(NullVector, IdentityVector * 10.0f), NullQuaternion, false, graph::SceneNode::amOnce, 0.25f, 0.0f, 0.25f); //engine1 - LoadFxSprite("engine1", "Effect\\engine1", NullVector, Vec3Range(IdentityVector * 2.0f, NullVector), NullQuaternion, false, graph::SceneNode::amRepeat, 0.5f, 0.0f, 0.0f, true, D3DXVECTOR2(2.0f, 0.75f)); + LoadFxSprite("engine1", "Effect\\engine1", NullVector, Vec3Range(IdentityVector * 2.0f, NullVector), NullQuaternion, false, graph::SceneNode::amRepeat, 0.5f, 0.0f, 0.0f, true, glm::vec2(2.0f, 0.75f)); //explosionRay - LoadFxSprite("explosionRay", "Effect\\ExplosionRay", NullVector, Vec3Range(IdentityVector, IdentityVector * 6.0f), NullQuaternion, false, graph::SceneNode::amOnce, 1.0f, 0.0f, 1.0f, false, D3DXVECTOR2(2.0f, 2.0f)); + LoadFxSprite("explosionRay", "Effect\\ExplosionRay", NullVector, Vec3Range(IdentityVector, IdentityVector * 6.0f), NullQuaternion, false, graph::SceneNode::amOnce, 1.0f, 0.0f, 1.0f, false, glm::vec2(2.0f, 2.0f)); //laserBlue - LoadFxSprite("laserBlue", "Effect\\laser3-blue", NullVector, Vec3Range(IdentityVector, NullVector), NullQuaternion, true, graph::SceneNode::amNone, 0.0f, 0.0f, 0.0f, true, D3DXVECTOR2(5.0f, 2.0f)); + LoadFxSprite("laserBlue", "Effect\\laser3-blue", NullVector, Vec3Range(IdentityVector, NullVector), NullQuaternion, true, graph::SceneNode::amNone, 0.0f, 0.0f, 0.0f, true, glm::vec2(5.0f, 2.0f)); //ExplosionRing - LoadFxSprite("explosionRing", "Effect\\ExplosionRing", NullVector, Vec3Range(IdentityVector, IdentityVector * 16.0f), NullQuaternion, false, graph::SceneNode::amOnce, 0.5f, 0.0f, 0.0f, false, D3DXVECTOR2(1.0f, 1.0f)); + LoadFxSprite("explosionRing", "Effect\\ExplosionRing", NullVector, Vec3Range(IdentityVector, IdentityVector * 16.0f), NullQuaternion, false, graph::SceneNode::amOnce, 0.5f, 0.0f, 0.0f, false, glm::vec2(1.0f, 1.0f)); //protonRay - LoadFxSprite("protonRay", "Effect\\protonRay", NullVector, Vec3Range(IdentityVector, IdentityVector * 25.0f), NullQuaternion, false, graph::SceneNode::amOnce, 0.7f, 0.0f, 0.0f, false, D3DXVECTOR2(1.0f, 1.0f)); + LoadFxSprite("protonRay", "Effect\\protonRay", NullVector, Vec3Range(IdentityVector, IdentityVector * 25.0f), NullQuaternion, false, graph::SceneNode::amOnce, 0.7f, 0.0f, 0.0f, false, glm::vec2(1.0f, 1.0f)); //protonRing - LoadFxPlane("protonRing", "Effect\\protonRing", NullVector, Vec3Range(IdentityVector, IdentityVector * 25.0f), NullQuaternion, graph::SceneNode::amOnce, 0.5f, 0.0f, 0.0f, D3DXVECTOR2(1.0f, 1.0f)); + LoadFxPlane("protonRing", "Effect\\protonRing", NullVector, Vec3Range(IdentityVector, IdentityVector * 25.0f), NullQuaternion, graph::SceneNode::amOnce, 0.5f, 0.0f, 0.0f, glm::vec2(1.0f, 1.0f)); //phaseRing - LoadFxSprite("phaseRing", "Effect\\phaseRing", NullVector, Vec3Range(IdentityVector, NullVector), NullQuaternion, true, graph::SceneNode::amNone, 0, 0.0f, 0.0f, true, D3DXVECTOR2(3.0f, 1.5f)); + LoadFxSprite("phaseRing", "Effect\\phaseRing", NullVector, Vec3Range(IdentityVector, NullVector), NullQuaternion, true, graph::SceneNode::amNone, 0, 0.0f, 0.0f, true, glm::vec2(3.0f, 1.5f)); //shotEff1 - LoadFxSprite("shotEff1", "Effect\\rad_add", NullVector, Vec3Range(IdentityVector, NullVector), NullQuaternion, false, graph::SceneNode::amNone, 0, 0, 0.15f, false, D3DXVECTOR2(2.0f, 2.0f)); + LoadFxSprite("shotEff1", "Effect\\rad_add", NullVector, Vec3Range(IdentityVector, NullVector), NullQuaternion, false, graph::SceneNode::amNone, 0, 0, 0.15f, false, glm::vec2(2.0f, 2.0f)); //shotEff2 - LoadFxSprite("shotEff2", "Effect\\flash1", NullVector, Vec3Range(IdentityVector, NullVector), NullQuaternion, false, graph::SceneNode::amNone, 0, 0, 0.15f, false, D3DXVECTOR2(2.0f, 2.0f)); + LoadFxSprite("shotEff2", "Effect\\flash1", NullVector, Vec3Range(IdentityVector, NullVector), NullQuaternion, false, graph::SceneNode::amNone, 0, 0, 0.15f, false, glm::vec2(2.0f, 2.0f)); //shotEff3 - LoadFxSprite("shotEff3", "Effect\\flash2", NullVector, Vec3Range(IdentityVector, NullVector), NullQuaternion, false, graph::SceneNode::amNone, 0, 0, 0.15f, true, D3DXVECTOR2(2.0f, 1.0f)); + LoadFxSprite("shotEff3", "Effect\\flash2", NullVector, Vec3Range(IdentityVector, NullVector), NullQuaternion, false, graph::SceneNode::amNone, 0, 0, 0.15f, true, glm::vec2(2.0f, 1.0f)); //laserRay - LoadFxSprite("laserRay", "Effect\\laserRay", NullVector, Vec3Range(IdentityVector, NullVector), NullQuaternion, false, graph::SceneNode::amOnce, 1.0f, 0, 0.0f, true, D3DXVECTOR2(1.0f, 0.3f), gtEffect, true); + LoadFxSprite("laserRay", "Effect\\laserRay", NullVector, Vec3Range(IdentityVector, NullVector), NullQuaternion, false, graph::SceneNode::amOnce, 1.0f, 0, 0.0f, true, glm::vec2(1.0f, 0.3f), gtEffect, true); //frostRay - LoadFxSprite("frostRay", "Effect\\frostRay", NullVector, Vec3Range(IdentityVector, NullVector), NullQuaternion, false, graph::SceneNode::amTwoSide, 1.0f, 0, 0.0f, true, D3DXVECTOR2(1.0f, 0.5f), gtEffect, true); + LoadFxSprite("frostRay", "Effect\\frostRay", NullVector, Vec3Range(IdentityVector, NullVector), NullQuaternion, false, graph::SceneNode::amTwoSide, 1.0f, 0, 0.0f, true, glm::vec2(1.0f, 0.5f), gtEffect, true); //frostShot { D3DXQUATERNION lineRot1; D3DXQuaternionRotationAxis(&lineRot1, &ZVector, D3DX_PI); - LoadFxSprite("frostShot", "Effect\\frostLine", NullVector, Vec3Range(IdentityVector, NullVector), QuatRange(NullQuaternion, lineRot1), false, graph::SceneNode::amTwoSide, 1.0f, 0, 1.0f, false, D3DXVECTOR2(4.0f, 4.0f)); + LoadFxSprite("frostShot", "Effect\\frostLine", NullVector, Vec3Range(IdentityVector, NullVector), QuatRange(NullQuaternion, lineRot1), false, graph::SceneNode::amTwoSide, 1.0f, 0, 1.0f, false, glm::vec2(4.0f, 4.0f)); } //fire1 @@ -1849,7 +1849,7 @@ void DataBase::LoadEffects() game::MapObj* mapObj = NewMapObj(); AddToGraph(mapObj, gtEffect, true); - AddFxSprite(mapObj, "Effect\\blaster2", NullVector, Vec3Range(IdentityVector, NullVector), NullQuaternion, true, graph::SceneNode::amNone, 0, 0, true, D3DXVECTOR2(6.0f, 0.5f)); + AddFxSprite(mapObj, "Effect\\blaster2", NullVector, Vec3Range(IdentityVector, NullVector), NullQuaternion, true, graph::SceneNode::amNone, 0, 0, true, glm::vec2(6.0f, 0.5f)); MapObj* ring = NewChildMapObj(mapObj, MapObjLib::ctEffects, "hyperRing"); ring->GetGameObj().SetPos(XVector * 3.0f); @@ -1862,7 +1862,7 @@ void DataBase::LoadEffects() game::MapObj* mapObj = NewMapObj(); AddToGraph(mapObj, gtEffect, true); - AddFxPlane(mapObj, "Effect\\crater", NullVector, Vec3Range(IdentityVector * 8.0f, NullVector), NullQuaternion, graph::SceneNode::amOnce, 5.0f, 0, D3DXVECTOR2(1.0f, 1.0f)); + AddFxPlane(mapObj, "Effect\\crater", NullVector, Vec3Range(IdentityVector * 8.0f, NullVector), NullQuaternion, graph::SceneNode::amOnce, 5.0f, 0, glm::vec2(1.0f, 1.0f)); graph::FxParticleSystem* fxSystem = AddFxSystem(mapObj, _fxSpriteManager); AddLibMat(&fxSystem->material, "Effect\\fire2"); @@ -2253,7 +2253,7 @@ void DataBase::LoadMisc() game::MapObj* mapObj = NewMapObj(); AddToGraph(mapObj, gtEffect, true); - graph::Sprite* node = AddSprite(mapObj, true, D3DXVECTOR2(2.0f, 0.5f)); + graph::Sprite* node = AddSprite(mapObj, true, glm::vec2(2.0f, 0.5f)); AddLibMat(&node->material, "Effect\\bullet"); { diff --git a/src/Rock3dGame/source/game/DialogMenu2.cpp b/src/Rock3dGame/source/game/DialogMenu2.cpp index a7006f01..883a8c2b 100644 --- a/src/Rock3dGame/source/game/DialogMenu2.cpp +++ b/src/Rock3dGame/source/game/DialogMenu2.cpp @@ -77,7 +77,7 @@ void AcceptDialog::OnShow(bool value) menu()->SetNavElements(_menuItems[miYes], value, elements, ARRAY_LENGTH(elements)); } -void AcceptDialog::OnAdjustLayout(const D3DXVECTOR2& vpSize) +void AcceptDialog::OnAdjustLayout(const glm::vec2& vpSize) { } @@ -123,28 +123,28 @@ bool AcceptDialog::OnClick(gui::Widget* sender, const gui::MouseClick& mClick) return false; } -void AcceptDialog::Show(const std::string& message, const std::string& yesText, const std::string& noText, const D3DXVECTOR2& pos, gui::Widget::Anchor align, gui::Widget::Event* guiEvent, Object* data, bool maxButtonsSize, bool maxMode, bool disableFocus) +void AcceptDialog::Show(const std::string& message, const std::string& yesText, const std::string& noText, const glm::vec2& pos, gui::Widget::Anchor align, gui::Widget::Event* guiEvent, Object* data, bool maxButtonsSize, bool maxMode, bool disableFocus) { - D3DXVECTOR2 bgSize = _menuBg->GetMaterial().GetSampler().GetSize(); - D3DXVECTOR2 infoSize = D3DXVECTOR2(325.0f, 65.0f); - D3DXVECTOR2 infoPos = D3DXVECTOR2(0.0f, -25.0f); - D3DXVECTOR2 posYes = D3DXVECTOR2(-70.0f, 32.0f); - D3DXVECTOR2 posNo = D3DXVECTOR2(70.0f, 32.0f); - D3DXVECTOR2 sizeYesNo = _menuItems[miNo]->GetFon()->GetSampler().GetSize(); + glm::vec2 bgSize = _menuBg->GetMaterial().GetSampler().GetSize(); + glm::vec2 infoSize = glm::vec2(325.0f, 65.0f); + glm::vec2 infoPos = glm::vec2(0.0f, -25.0f); + glm::vec2 posYes = glm::vec2(-70.0f, 32.0f); + glm::vec2 posNo = glm::vec2(70.0f, 32.0f); + glm::vec2 sizeYesNo = _menuItems[miNo]->GetFon()->GetSampler().GetSize(); lsl::string infoFont = "Item"; if (maxMode) { bgSize = bgSize * 1.7f; infoSize = infoSize * 1.7f; sizeYesNo.x = sizeYesNo.x * 1.5f; - posYes = D3DXVECTOR2(-100.0f, 72.0f); - posNo = D3DXVECTOR2(100.0f, 72.0f); + posYes = glm::vec2(-100.0f, 72.0f); + posNo = glm::vec2(100.0f, 72.0f); infoFont = "Small"; } if (maxButtonsSize) { - sizeYesNo = D3DXVECTOR2(sizeYesNo.x * 1.5f, sizeYesNo.y); + sizeYesNo = glm::vec2(sizeYesNo.x * 1.5f, sizeYesNo.y); posYes.x = posYes.x - 10; posNo.x = posNo.x + 10; } @@ -235,7 +235,7 @@ void WeaponDialog::OnShow(bool value) { } -void WeaponDialog::OnAdjustLayout(const D3DXVECTOR2& vpSize) +void WeaponDialog::OnAdjustLayout(const glm::vec2& vpSize) { _labels[mlInfo]->SetPos(3.0f, -3.0f); _labels[mlInfo]->SetSize(280.0f, 75.0f); @@ -254,7 +254,7 @@ bool WeaponDialog::OnClick(gui::Widget* sender, const gui::MouseClick& mClick) return false; } -void WeaponDialog::Show(const std::string& title, const std::string& message, const std::string& moneyText, const std::string& damageText, const D3DXVECTOR2& pos, gui::Widget::Anchor align) +void WeaponDialog::Show(const std::string& title, const std::string& message, const std::string& moneyText, const std::string& damageText, const glm::vec2& pos, gui::Widget::Anchor align) { _labels[mlName]->SetText(title); _labels[mlInfo]->SetText(message); @@ -332,7 +332,7 @@ void InfoDialog::OnShow(bool value) menu()->SetNavElements(_menuItems[miOk], value, elements, ARRAY_LENGTH(elements)); } -void InfoDialog::OnAdjustLayout(const D3DXVECTOR2& vpSize) +void InfoDialog::OnAdjustLayout(const glm::vec2& vpSize) { _labels[mlTitle]->SetPos(-27.f, -105.0f); @@ -363,7 +363,7 @@ bool InfoDialog::OnClick(gui::Widget* sender, const gui::MouseClick& mClick) return false; } -void InfoDialog::Show(const std::string& titleText, const std::string& message, const std::string& okText, const D3DXVECTOR2& pos, gui::Widget::Anchor align, gui::Widget::Event* guiEvent, Object* data, bool okButton) +void InfoDialog::Show(const std::string& titleText, const std::string& message, const std::string& okText, const glm::vec2& pos, gui::Widget::Anchor align, gui::Widget::Event* guiEvent, Object* data, bool okButton) { _labels[mlTitle]->SetText(titleText); _labels[mlInfo]->SetText(message); @@ -427,7 +427,7 @@ void MusicDialog::OnShow(bool value) { } -void MusicDialog::OnAdjustLayout(const D3DXVECTOR2& vpSize) +void MusicDialog::OnAdjustLayout(const glm::vec2& vpSize) { _labels[mlInfo]->SetPos(-130.0f, 17.0f); _labels[mlInfo]->SetSize(290.0f, 45.0f); @@ -459,7 +459,7 @@ void MusicDialog::Hide() ShowModal(false); } -const D3DXVECTOR2& MusicDialog::size() const +const glm::vec2& MusicDialog::size() const { return _menuBg->GetSize(); } @@ -491,7 +491,7 @@ void InfoMenu::ApplyState(State state) _loadingFrame->SetVisible(_state == msLoading); } -void InfoMenu::AdjustLayout(const D3DXVECTOR2& vpSize) +void InfoMenu::AdjustLayout(const glm::vec2& vpSize) { _loadingFrame->SetSize(_menu->GetImageAspectSize(_loadingFrame->GetMaterial(), vpSize)); } @@ -558,13 +558,13 @@ void UserChat::OnShow(bool value) { } -void UserChat::OnAdjustLayout(const D3DXVECTOR2& vpSize) +void UserChat::OnAdjustLayout(const glm::vec2& vpSize) { AABB2 nameAABB = _input.name->GetTextAABB(); _input.name->SetPos(_inputPos); - _input.text->SetPos(D3DXVECTOR2(nameAABB.GetSize().x, 0.0f)); - _input.text->SetSize(_inputSize - D3DXVECTOR2(_input.text->GetPos().x, 0.0f)); + _input.text->SetPos(glm::vec2(nameAABB.GetSize().x, 0.0f)); + _input.text->SetSize(_inputSize - glm::vec2(_input.text->GetPos().x, 0.0f)); } void UserChat::OnInvalidate() @@ -653,9 +653,9 @@ void UserChat::OnProgress(float deltaTime) { AABB2 nameAABB = iter->name->GetTextAABB(); - iter->name->SetPos(_linesPos + D3DXVECTOR2(0.0f, posY)); + iter->name->SetPos(_linesPos + glm::vec2(0.0f, posY)); iter->text->SetPos(-nameAABB.GetSize().x, 0.0f); - iter->text->SetSize(_linesSize - D3DXVECTOR2(nameAABB.GetSize().x, 0.0f)); + iter->text->SetSize(_linesSize - glm::vec2(nameAABB.GetSize().x, 0.0f)); AABB2 textAABB = iter->text->GetTextAABB(); posY += textAABB.GetSize().y; @@ -669,42 +669,42 @@ void UserChat::OnProgress(float deltaTime) } } -const D3DXVECTOR2& UserChat::linesPos() const +const glm::vec2& UserChat::linesPos() const { return _linesPos; } -void UserChat::linesPos(const D3DXVECTOR2& value) +void UserChat::linesPos(const glm::vec2& value) { _linesPos = value; } -const D3DXVECTOR2& UserChat::inputPos() const +const glm::vec2& UserChat::inputPos() const { return _inputPos; } -void UserChat::inputPos(const D3DXVECTOR2& value) +void UserChat::inputPos(const glm::vec2& value) { _inputPos = value; } -const D3DXVECTOR2& UserChat::linesSize() const +const glm::vec2& UserChat::linesSize() const { return _linesSize; } -void UserChat::linesSize(const D3DXVECTOR2& value) +void UserChat::linesSize(const glm::vec2& value) { _linesSize = value; } -const D3DXVECTOR2& UserChat::inputSize() const +const glm::vec2& UserChat::inputSize() const { return _inputSize; } -void UserChat::inputSize(const D3DXVECTOR2& value) +void UserChat::inputSize(const glm::vec2& value) { _inputSize = value; } diff --git a/src/Rock3dGame/source/game/Environment.cpp b/src/Rock3dGame/source/game/Environment.cpp index 5a107e56..92298f7a 100644 --- a/src/Rock3dGame/source/game/Environment.cpp +++ b/src/Rock3dGame/source/game/Environment.cpp @@ -509,7 +509,7 @@ void Environment::ApplyWorldType() hdrParams.brightThreshold = 1.5f; hdrParams.gaussianScalar = 30.0f; hdrParams.exposure = 15.0f; - hdrParams.colorCorrection = D3DXVECTOR2(1.0f, 0.0f); + hdrParams.colorCorrection = glm::vec2(1.0f, 0.0f); GetGraph()->SetHDRParams(hdrParams); break; } @@ -528,7 +528,7 @@ void Environment::ApplyWorldType() hdrParams.brightThreshold = 1.9f; hdrParams.gaussianScalar = 30.0f; hdrParams.exposure = 8.0f; - hdrParams.colorCorrection = D3DXVECTOR2(1.0f, 0.0f); + hdrParams.colorCorrection = glm::vec2(1.0f, 0.0f); GetGraph()->SetHDRParams(hdrParams); break; } @@ -547,7 +547,7 @@ void Environment::ApplyWorldType() hdrParams.brightThreshold = 4.5f; hdrParams.gaussianScalar = 20.0f; hdrParams.exposure = 3.0f; - hdrParams.colorCorrection = D3DXVECTOR2(1.0f, 0.0f); + hdrParams.colorCorrection = glm::vec2(1.0f, 0.0f); GetGraph()->SetHDRParams(hdrParams); break; } @@ -566,7 +566,7 @@ void Environment::ApplyWorldType() hdrParams.brightThreshold = 1.9f; hdrParams.gaussianScalar = 30.0f; hdrParams.exposure = 8.0f; - hdrParams.colorCorrection = D3DXVECTOR2(1.0f, 0.0f); + hdrParams.colorCorrection = glm::vec2(1.0f, 0.0f); GetGraph()->SetHDRParams(hdrParams); break; } @@ -585,7 +585,7 @@ void Environment::ApplyWorldType() hdrParams.brightThreshold = 1.3f; hdrParams.gaussianScalar = 30.0f; hdrParams.exposure = 15.0f; - hdrParams.colorCorrection = D3DXVECTOR2(1.0f, 0.0f); + hdrParams.colorCorrection = glm::vec2(1.0f, 0.0f); GetGraph()->SetHDRParams(hdrParams); break; } @@ -604,7 +604,7 @@ void Environment::ApplyWorldType() hdrParams.brightThreshold = 1.9f; hdrParams.gaussianScalar = 30.0f; hdrParams.exposure = 8.0f; - hdrParams.colorCorrection = D3DXVECTOR2(1.0f, 0.0f); + hdrParams.colorCorrection = glm::vec2(1.0f, 0.0f); GetGraph()->SetHDRParams(hdrParams); break; } @@ -637,7 +637,7 @@ void Environment::ApplyWorldType() hdrParams.gaussianScalar = 25.0f; hdrParams.exposure = 2.0f; - hdrParams.colorCorrection = D3DXVECTOR2(1.0f, 0.0f); + hdrParams.colorCorrection = glm::vec2(1.0f, 0.0f); GetGraph()->SetHDRParams(hdrParams); break; } @@ -658,7 +658,7 @@ void Environment::ApplyWorldType() hdrParams.brightThreshold = 3.5f; hdrParams.gaussianScalar = 20.0f; hdrParams.exposure = 5.0f; - hdrParams.colorCorrection = D3DXVECTOR2(1.0f, 0.0f); + hdrParams.colorCorrection = glm::vec2(1.0f, 0.0f); GetGraph()->SetHDRParams(hdrParams); break; } diff --git a/src/Rock3dGame/source/game/FinalMenu.cpp b/src/Rock3dGame/source/game/FinalMenu.cpp index c1d997cd..9b0841df 100644 --- a/src/Rock3dGame/source/game/FinalMenu.cpp +++ b/src/Rock3dGame/source/game/FinalMenu.cpp @@ -90,26 +90,26 @@ void FinalMenu::OnShow(bool value) menu()->SetNavElements(_menuItems[miOk], value, elements, ARRAY_LENGTH(elements)); } -void FinalMenu::OnAdjustLayout(const D3DXVECTOR2& vpSize) +void FinalMenu::OnAdjustLayout(const glm::vec2& vpSize) { for (int i = 0; i < cMenuItemEnd; ++i) - _menuItems[i]->SetPos(D3DXVECTOR2(_menuItems[i]->GetSize().x/2, vpSize.y - 60.0f + i * (_menuItems[i]->GetSize().y + 10.0f))); + _menuItems[i]->SetPos(glm::vec2(_menuItems[i]->GetSize().x/2, vpSize.y - 60.0f + i * (_menuItems[i]->GetSize().y + 10.0f))); for (unsigned i = 0; i < _slides.size(); ++i) { - _slides[i].plane->SetPos(D3DXVECTOR2((vpSize.x - 400.0f)/2.0f, vpSize.y/2)); - _slides[i].plane->SetSize(menu()->StretchImage(_slides[i].plane->GetMaterial(), D3DXVECTOR2(vpSize.x - 500.0f, vpSize.y - 300.0f), true, false)); + _slides[i].plane->SetPos(glm::vec2((vpSize.x - 400.0f)/2.0f, vpSize.y/2)); + _slides[i].plane->SetSize(menu()->StretchImage(_slides[i].plane->GetMaterial(), glm::vec2(vpSize.x - 500.0f, vpSize.y - 300.0f), true, false)); } _linesSizeY = 0.0f; for (unsigned i = 0; i < _lineBoxes.size(); ++i) { - _lineBoxes[i].caption->SetPos(D3DXVECTOR2(0.0f, _linesSizeY)); - _lineBoxes[i].caption->SetSize(D3DXVECTOR2(480.0f, 0.0f)); + _lineBoxes[i].caption->SetPos(glm::vec2(0.0f, _linesSizeY)); + _lineBoxes[i].caption->SetSize(glm::vec2(480.0f, 0.0f)); - _lineBoxes[i].text->SetPos(D3DXVECTOR2(0.0f, _lineBoxes[i].caption->GetTextAABB().GetSize().y + 10.0f)); - _lineBoxes[i].text->SetSize(D3DXVECTOR2(480.0f, 0.0f)); + _lineBoxes[i].text->SetPos(glm::vec2(0.0f, _lineBoxes[i].caption->GetTextAABB().GetSize().y + 10.0f)); + _lineBoxes[i].text->SetSize(glm::vec2(480.0f, 0.0f)); _linesSizeY += _lineBoxes[i].caption->GetTextAABB().GetSize().y + _lineBoxes[i].text->GetTextAABB().GetSize().y + 40.0f + 10.0f; } @@ -157,12 +157,12 @@ void FinalMenu::OnProgress(float deltaTime) { const float cDuration = 107.0f; - D3DXVECTOR2 vpSize = uiRoot()->GetVPSize(); + glm::vec2 vpSize = uiRoot()->GetVPSize(); _time += deltaTime; float alpha = lsl::ClampValue(_time / cDuration, 0.0f, 1.0f); - _linesRoot->SetPos(D3DXVECTOR2(vpSize.x - 250.0f, vpSize.y - alpha * (_linesSizeY + vpSize.y))); + _linesRoot->SetPos(glm::vec2(vpSize.x - 250.0f, vpSize.y - alpha * (_linesSizeY + vpSize.y))); for (unsigned i = 0; i < _slides.size(); ++i) { @@ -240,15 +240,15 @@ void FinalMenu::OnShow(bool value) } } -void FinalMenu::OnAdjustLayout(const D3DXVECTOR2& vpSize) +void FinalMenu::OnAdjustLayout(const glm::vec2& vpSize) { _bg->SetSize(menu()->StretchImage(_bg->GetMaterial(), vpSize, true, true)); - _labels[mlCredits]->SetPos(D3DXVECTOR2(vpSize.x/2, vpSize.y/2 - 115.0f)); + _labels[mlCredits]->SetPos(glm::vec2(vpSize.x/2, vpSize.y/2 - 115.0f)); _labels[mlCredits]->SetSize(500.0f, vpSize.y); for (int i = 0; i < cMenuItemEnd; ++i) - _menuItems[i]->SetPos(D3DXVECTOR2(_menuItems[i]->GetSize().x/2, vpSize.y - 60.0f + i * (_menuItems[i]->GetSize().y + 10.0f))); + _menuItems[i]->SetPos(glm::vec2(_menuItems[i]->GetSize().x/2, vpSize.y - 60.0f + i * (_menuItems[i]->GetSize().y + 10.0f))); } void FinalMenu::OnInvalidate() diff --git a/src/Rock3dGame/source/game/FinishMenu.cpp b/src/Rock3dGame/source/game/FinishMenu.cpp index 101ddceb..c7784c0a 100644 --- a/src/Rock3dGame/source/game/FinishMenu.cpp +++ b/src/Rock3dGame/source/game/FinishMenu.cpp @@ -36,7 +36,7 @@ FinishMenu::FinishMenu(Menu* menu, gui::Widget* parent): MenuFrame(menu, parent) _boxes[i].lineFrame->SetAlign(gui::Widget::waLeftTop); _boxes[i].cup = menu->CreatePlane(_boxes[i].rightFrame, this, lsl::StrFmt("GUI\\cup%d.dds", i + 1), true, IdentityVec2, gui::Material::bmTransparency); - _boxes[i].cup->SetSize(menu->StretchImage(_boxes[i].cup->GetMaterial(), D3DXVECTOR2(190.0f, 160.0f), true, false, true, false)); + _boxes[i].cup->SetSize(menu->StretchImage(_boxes[i].cup->GetMaterial(), glm::vec2(190.0f, 160.0f), true, false, true, false)); _boxes[i].photo = menu->CreatePlane(_boxes[i].leftFrame, this, "", true, IdentityVec2, gui::Material::bmTransparency); @@ -68,9 +68,9 @@ void FinishMenu::OnShow(bool value) menu()->GetControl()->RemoveEvent(this); } -void FinishMenu::OnAdjustLayout(const D3DXVECTOR2& vpSize) +void FinishMenu::OnAdjustLayout(const glm::vec2& vpSize) { - D3DXVECTOR2 leftSize = _boxes[0].leftFrame->GetSize(); + glm::vec2 leftSize = _boxes[0].leftFrame->GetSize(); float offsetY = (vpSize.y - (cBoxCount * leftSize.y))/2.0f; float leftOffsetX = (leftSize.x + vpSize.x/2)/2; float rightOffsetX = (vpSize.x/2 + vpSize.x - leftSize.x)/2; @@ -83,8 +83,8 @@ void FinishMenu::OnAdjustLayout(const D3DXVECTOR2& vpSize) _boxes[i].lineFrame->SetPos(leftSize.x, 0.0f); _boxes[i].lineFrame->SetSize(vpSize.x - 2.0f * leftSize.x, leftSize.y); - _boxes[i].photo->SetPos(D3DXVECTOR2(128.0f, 116.0f)); - _boxes[i].cup->SetPos(D3DXVECTOR2(160.0f, 115.0f)); + _boxes[i].photo->SetPos(glm::vec2(128.0f, 116.0f)); + _boxes[i].cup->SetPos(glm::vec2(160.0f, 115.0f)); _boxes[i].labels[mlName]->SetPos(leftOffsetX, 63.0f); _boxes[i].labels[mlPriceInfo]->SetPos(leftOffsetX, 154.0f); @@ -116,7 +116,7 @@ void FinishMenu::OnInvalidate() box.leftFrame->SetVisible(_time == -1.0f); box.photo->GetMaterial().GetSampler().SetTex(player->GetPhoto()); - box.photo->SetSize(menu()->StretchImage(box.photo->GetMaterial(), D3DXVECTOR2(198.0f, 193.0f), true, false, true, false)); + box.photo->SetSize(menu()->StretchImage(box.photo->GetMaterial(), glm::vec2(198.0f, 193.0f), true, false, true, false)); box.labels[mlName]->SetText(GetString(player->GetName())); @@ -166,7 +166,7 @@ void FinishMenu::OnProgress(float deltaTime) if (_time >= 0.0f) { float summDuration = 0.0f; - D3DXVECTOR2 vpSize = menu()->GetGUI()->GetVPSize(); + glm::vec2 vpSize = menu()->GetGUI()->GetVPSize(); for (unsigned i = 0; i < _playerCount; ++i) { @@ -180,7 +180,7 @@ void FinishMenu::OnProgress(float deltaTime) menu()->SendEvent(playerFinish[i], &EventData(box.plrId)); box.leftFrame->SetVisible(setVisible); - D3DXVECTOR2 vec = box.leftFrame->GetPos(); + glm::vec2 vec = box.leftFrame->GetPos(); vec.x = (1.0f - alpha) * (vpSize.x + 25.0f) * (i % 2 == 1 ? 1 : -1); box.leftFrame->SetPos(vec); } diff --git a/src/Rock3dGame/source/game/GameBase.cpp b/src/Rock3dGame/source/game/GameBase.cpp index 28a77978..cb5f4abd 100644 --- a/src/Rock3dGame/source/game/GameBase.cpp +++ b/src/Rock3dGame/source/game/GameBase.cpp @@ -1181,22 +1181,22 @@ void SoundMotor::SetSndRPM(snd::Sound* value) } } -const D3DXVECTOR2& SoundMotor::GetRPMVolumeRange() const +const glm::vec2& SoundMotor::GetRPMVolumeRange() const { return _rpmVolumeRange; } -void SoundMotor::SetRPMVolumeRange(const D3DXVECTOR2& value) +void SoundMotor::SetRPMVolumeRange(const glm::vec2& value) { _rpmVolumeRange = value; } -const D3DXVECTOR2& SoundMotor::GetRPMFreqRange() const +const glm::vec2& SoundMotor::GetRPMFreqRange() const { return _rpmFreqRange; } -void SoundMotor::SetRPMFreqRange(const D3DXVECTOR2& value) +void SoundMotor::SetRPMFreqRange(const glm::vec2& value) { _rpmFreqRange = value; } diff --git a/src/Rock3dGame/source/game/GameCar.cpp b/src/Rock3dGame/source/game/GameCar.cpp index 61718b8b..2bf2241f 100644 --- a/src/Rock3dGame/source/game/GameCar.cpp +++ b/src/Rock3dGame/source/game/GameCar.cpp @@ -1007,10 +1007,10 @@ void GameCar::OnContact(const px::Scene::OnContactEvent& contact) _bodyContact = true; bool springBorders = GetLogic() && GetLogic()->GetRace()->GetSpringBorders(); - D3DXVECTOR2 touchBorderDamage = GetLogic() ? GetLogic()->GetTouchBorderDamage() : NullVec2; - D3DXVECTOR2 touchBorderDamageForce = GetLogic() ? GetLogic()->GetTouchBorderDamageForce() : NullVec2; - D3DXVECTOR2 touchCarDamage = GetLogic() ? GetLogic()->GetTouchCarDamage() : NullVec2; - D3DXVECTOR2 touchCarDamageForce = GetLogic() ? GetLogic()->GetTouchCarDamageForce() : NullVec2; + glm::vec2 touchBorderDamage = GetLogic() ? GetLogic()->GetTouchBorderDamage() : NullVec2; + glm::vec2 touchBorderDamageForce = GetLogic() ? GetLogic()->GetTouchBorderDamageForce() : NullVec2; + glm::vec2 touchCarDamage = GetLogic() ? GetLogic()->GetTouchCarDamage() : NullVec2; + glm::vec2 touchCarDamageForce = GetLogic() ? GetLogic()->GetTouchCarDamageForce() : NullVec2; GameObject* target = GetGameObjFromActor(contact.actor); int targetPlayerId = target && target->GetMapObj() && target->GetMapObj()->GetPlayer() ? target->GetMapObj()->GetPlayer()->GetId() : cUndefPlayerId; diff --git a/src/Rock3dGame/source/game/GameMode.cpp b/src/Rock3dGame/source/game/GameMode.cpp index b31f2032..d9d81e34 100644 --- a/src/Rock3dGame/source/game/GameMode.cpp +++ b/src/Rock3dGame/source/game/GameMode.cpp @@ -766,7 +766,7 @@ void GameMode::FreeIntro() void GameMode::AdjustGameStartup() { - D3DXVECTOR2 size = _world->GetGraph()->GetGUI().GetVPSize(); + glm::vec2 size = _world->GetGraph()->GetGUI().GetVPSize(); if (_guiLogo) { diff --git a/src/Rock3dGame/source/game/HudMenu.cpp b/src/Rock3dGame/source/game/HudMenu.cpp index 743827ff..1a5049b4 100644 --- a/src/Rock3dGame/source/game/HudMenu.cpp +++ b/src/Rock3dGame/source/game/HudMenu.cpp @@ -93,7 +93,7 @@ PlayerStateFrame::~PlayerStateFrame() void PlayerStateFrame::NewPickItem(Slot::Type slotType, GameObject::BonusType bonusType, int targetPlayerId, bool kill) { - const D3DXVECTOR2 photoSize = D3DXVECTOR2(50.0f, 50.0f); + const glm::vec2 photoSize = glm::vec2(50.0f, 50.0f); const D3DXCOLOR color2 = D3DXCOLOR(214.0f, 214.0f, 214.0f, 255.0f)/255.0f; string image; @@ -162,7 +162,7 @@ void PlayerStateFrame::NewPickItem(Slot::Type slotType, GameObject::BonusType bo item.photo = menu()->CreatePlane(item.image, NULL, "", true, IdentityVec2, gui::Material::bmTransparency); item.photo->GetMaterial().GetSampler().SetFiltering(graph::Sampler2d::sfLinear); - item.photo->SetPos(D3DXVECTOR2(-40.0f, 0.0f)); + item.photo->SetPos(glm::vec2(-40.0f, 0.0f)); item.label = menu()->CreateLabel(svNull, item.photo, "Small", NullVec2, gui::Text::haLeft, gui::Text::vaCenter, color2); item.label->SetAlign(gui::Widget::waLeft); @@ -172,7 +172,7 @@ void PlayerStateFrame::NewPickItem(Slot::Type slotType, GameObject::BonusType bo item.time = 0; item.image->SetVisible(true); item.image->GetMaterial().SetColor(D3DXCOLOR(1, 1, 1, 0)); - item.pos = _hudMenu->GetPickItemsPos() + D3DXVECTOR2(item.image->GetSize().x/2, 0); + item.pos = _hudMenu->GetPickItemsPos() + glm::vec2(item.image->GetSize().x/2, 0); item.image->SetPos(item.pos); item.photo->SetVisible(photo ? true : false); @@ -217,8 +217,8 @@ void PlayerStateFrame::ProccessPickItems(float deltaTime) alpha = 1.0f - lerp; } - D3DXVECTOR2 pos = item.pos + D3DXVECTOR2(30, index * 85.0f + dPosY); - D3DXVECTOR2 curPos = item.image->GetPos(); + glm::vec2 pos = item.pos + glm::vec2(30, index * 85.0f + dPosY); + glm::vec2 curPos = item.image->GetPos(); if (abs(pos.x - curPos.x) > 0.001f || abs(pos.y - curPos.y) > 0.001f) { curPos.x = std::min(curPos.x + 90.0f * deltaTime, pos.x); @@ -248,7 +248,7 @@ void PlayerStateFrame::NewAchievment(AchievmentCondition::MyEventData* data) std::string image = "GUI\\Achievments\\" + data->condition->name() + ".png"; std::string pointsImage = lsl::StrFmt("GUI\\Achievments\\points%d.png", data->condition->reward()); std::string pointsImageK = diff == gdHard ? "GUI\\Achievments\\points1_5.png" : "GUI\\Achievments\\points1_2.png"; - D3DXVECTOR2 vpSize = menu()->GetGUI()->GetVPSize(); + glm::vec2 vpSize = menu()->GetGUI()->GetVPSize(); AchievmentItem item; @@ -269,28 +269,28 @@ void PlayerStateFrame::NewAchievment(AchievmentCondition::MyEventData* data) item.image = menu()->CreatePlane(root(), NULL, image, true, IdentityVec2, gui::Material::bmTransparency); item.points = menu()->CreatePlane(item.image, NULL, pointsImage, true, IdentityVec2, gui::Material::bmTransparency); - item.points->SetPos(D3DXVECTOR2(0.0f, item.image->GetSize().y/2 + 15.0f)); - item.slotSize = D3DXVECTOR2(std::max(item.image->GetSize().x, item.points->GetSize().x), item.image->GetSize().y + item.points->GetSize().y + 15.0f); + item.points->SetPos(glm::vec2(0.0f, item.image->GetSize().y/2 + 15.0f)); + item.slotSize = glm::vec2(std::max(item.image->GetSize().x, item.points->GetSize().x), item.image->GetSize().y + item.points->GetSize().y + 15.0f); if (diff != gdEasy) { item.pointsK = menu()->CreatePlane(item.points, NULL, pointsImageK, true, IdentityVec2, gui::Material::bmTransparency); - item.pointsK->SetPos(D3DXVECTOR2(95.0f, -3.0f)); + item.pointsK->SetPos(glm::vec2(95.0f, -3.0f)); } else item.pointsK = NULL; } - const D3DXVECTOR2 startPos[8] = { - D3DXVECTOR2(0 - item.slotSize.x * 2, 1 * vpSize.y / 4), - D3DXVECTOR2(0 - item.slotSize.x, 2 * vpSize.y / 4), - D3DXVECTOR2(0 - item.slotSize.x, 3 * vpSize.y / 4), - D3DXVECTOR2(0, vpSize.y + item.slotSize.y), + const glm::vec2 startPos[8] = { + glm::vec2(0 - item.slotSize.x * 2, 1 * vpSize.y / 4), + glm::vec2(0 - item.slotSize.x, 2 * vpSize.y / 4), + glm::vec2(0 - item.slotSize.x, 3 * vpSize.y / 4), + glm::vec2(0, vpSize.y + item.slotSize.y), - D3DXVECTOR2(vpSize.x + item.slotSize.y * 2, 1 * vpSize.y / 4), - D3DXVECTOR2(vpSize.x + item.slotSize.y, 2 * vpSize.y / 4), - D3DXVECTOR2(vpSize.x + item.slotSize.y, 3 * vpSize.y / 4), - D3DXVECTOR2(vpSize.x, vpSize.y + item.slotSize.y) + glm::vec2(vpSize.x + item.slotSize.y * 2, 1 * vpSize.y / 4), + glm::vec2(vpSize.x + item.slotSize.y, 2 * vpSize.y / 4), + glm::vec2(vpSize.x + item.slotSize.y, 3 * vpSize.y / 4), + glm::vec2(vpSize.x, vpSize.y + item.slotSize.y) }; item.time = 0; @@ -338,7 +338,7 @@ void PlayerStateFrame::ProccessAchievments(float deltaTime) } } - D3DXVECTOR2 pos = myThis->_hudMenu->GetAchievmentItemsPos(); + glm::vec2 pos = myThis->_hudMenu->GetAchievmentItemsPos(); pos.y += fIndex * item.slotSize.y + item.image->GetSize().y/2; float flyAlpha = ClampValue(item.time/0.3f, 0.0f, 1.0f); @@ -349,7 +349,7 @@ void PlayerStateFrame::ProccessAchievments(float deltaTime) D3DXVec2Lerp(&pos, &item.image->GetPos(), &pos, flyAlpha); item.image->SetPos(pos); - D3DXVECTOR2 imgSize = myThis->menu()->GetImageSize(item.image->GetMaterial()); + glm::vec2 imgSize = myThis->menu()->GetImageSize(item.image->GetMaterial()); D3DXVec2Lerp(&imgSize, &imgSize, &(2.0f * imgSize), pingAlpha); item.image->SetSize(imgSize); @@ -438,7 +438,7 @@ void PlayerStateFrame::ProccessCarLifeBar(float deltaTime) D3DXVECTOR3 pos = _carLifes[i].target->GetCar().gameObj->GetPos() + D3DXVECTOR3(0.0f, 0.0f, 0.0f); D3DXVECTOR4 projVec; D3DXVec3Transform(&projVec, &pos, &menu()->GetGUI()->GetCamera3d()->GetContextInfo().GetViewProj()); - D3DXVECTOR2 vec = projVec / projVec.w; + glm::vec2 vec = projVec / projVec.w; if (projVec.z < 0) { @@ -451,12 +451,12 @@ void PlayerStateFrame::ProccessCarLifeBar(float deltaTime) if ((abs(vec.x) == 1.0f || abs(vec.y) == 1.0f)) targetAlpha = 0; - D3DXVECTOR2 vpSize = menu()->GetGUI()->GetVPSize(); + glm::vec2 vpSize = menu()->GetGUI()->GetVPSize(); vec = graph::CameraCI::ProjToView(vec, vpSize); vec.x = lsl::ClampValue(vec.x, 0.0f, vpSize.x - _carLifes[i].back->GetSize().x); vec.y = lsl::ClampValue(vec.y, _carLifes[i].back->GetSize().y, vpSize.y); - _carLifes[i].back->SetPos(vec + D3DXVECTOR2(_carLifes[i].back->GetSize().x/2, -_carLifes[i].back->GetSize().y/2)); + _carLifes[i].back->SetPos(vec + glm::vec2(_carLifes[i].back->GetSize().x/2, -_carLifes[i].back->GetSize().y/2)); float alpha = _carLifes[i].back->GetMaterial().GetColor().a; _carLifes[i].back->GetMaterial().SetColor(D3DXCOLOR(1, 1, 1, StepLerp(alpha, targetAlpha, deltaTime/0.3f))); @@ -494,7 +494,7 @@ void PlayerStateFrame::InsertSlot(WeaponType type, Slot* slot) _weaponBox[type].view = menu()->CreateViewPort3d(slotParent, 0, ""); float sizeX = 60; - _weaponBox[type].view->SetSize(D3DXVECTOR2(sizeX, sizeX)); + _weaponBox[type].view->SetSize(glm::vec2(sizeX, sizeX)); _weaponBox[type].mesh = menu()->CreateMesh3d(_weaponBox[type].view, slot->GetItem().GetMesh(), slot->GetItem().GetTexture()); _weaponBox[type].mesh->AddRef(); @@ -502,7 +502,7 @@ void PlayerStateFrame::InsertSlot(WeaponType type, Slot* slot) _weaponBox[type].label = menu()->CreateLabel(svNull, slotParent, "Small", NullVec2, gui::Text::haCenter, gui::Text::vaCenter, clrWhite); _weaponBox[type].label->SetText("0/0"); - _weaponBox[type].label->SetSize(D3DXVECTOR2(30.0f, 30.0f)); + _weaponBox[type].label->SetSize(glm::vec2(30.0f, 30.0f)); } void PlayerStateFrame::ClearSlot(WeaponType type) @@ -687,7 +687,7 @@ void PlayerStateFrame::UpdateState(float deltaTime) D3DXVECTOR3 pos = opponent.player->GetCar().gameObj->GetWorldPos() + D3DXVECTOR3(1.0f, -0.5f, 0); D3DXVECTOR4 projVec; D3DXVec3Transform(&projVec, &pos, &menu()->GetGUI()->GetCamera3d()->GetContextInfo().GetViewProj()); - D3DXVECTOR2 vec = projVec / projVec.w; + glm::vec2 vec = projVec / projVec.w; if (projVec.z < 0) { @@ -701,7 +701,7 @@ void PlayerStateFrame::UpdateState(float deltaTime) if ((abs(vec.x) == 1.0f || abs(vec.y) == 1.0f) || carLife != NULL) targetAlpha = std::max(opponent.point->GetMaterial().GetColor().a - 4.0f * deltaTime, 0.0f); - D3DXVECTOR2 vpSize = menu()->GetGUI()->GetVPSize(); + glm::vec2 vpSize = menu()->GetGUI()->GetVPSize(); vec = graph::CameraCI::ProjToView(vec, vpSize); vec.x = lsl::ClampValue(vec.x, 0.0f, vpSize.x - opponent.point->GetSize().x); vec.y = lsl::ClampValue(vec.y, -opponent.label->GetPos().y - aabb.min.y, vpSize.y); @@ -731,12 +731,12 @@ void PlayerStateFrame::UpdateState(float deltaTime) } } -void PlayerStateFrame::OnAdjustLayout(const D3DXVECTOR2& vpSize) +void PlayerStateFrame::OnAdjustLayout(const glm::vec2& vpSize) { //_raceState->SetPos(_raceState->GetSize().x/2, _raceState->GetSize().y/2); - D3DXVECTOR2 subWeaponPos[2] = {_hudMenu->GetWeaponPosHyper(), _hudMenu->GetWeaponPosMine()}; - D3DXVECTOR2 subWeaponLabelPos[2] = {_hudMenu->GetWeaponPosHyperLabel(), _hudMenu->GetWeaponPosMineLabel()}; + glm::vec2 subWeaponPos[2] = {_hudMenu->GetWeaponPosHyper(), _hudMenu->GetWeaponPosMine()}; + glm::vec2 subWeaponLabelPos[2] = {_hudMenu->GetWeaponPosHyperLabel(), _hudMenu->GetWeaponPosMineLabel()}; int ind = 0; for (int i = wtHyper; i <= wtMine; ++i) @@ -754,8 +754,8 @@ void PlayerStateFrame::OnAdjustLayout(const D3DXVECTOR2& vpSize) { if (_weaponBox[i].slot) { - D3DXVECTOR2 size = _weaponBox[i].box->GetSize(); - _weaponBox[i].box->SetPos(_hudMenu->GetWeaponPos() + D3DXVECTOR2(size.x/2 + ind * (size.x - 25), size.y/2)); + glm::vec2 size = _weaponBox[i].box->GetSize(); + _weaponBox[i].box->SetPos(_hudMenu->GetWeaponPos() + glm::vec2(size.x/2 + ind * (size.x - 25), size.y/2)); _weaponBox[i].view->SetPos(_hudMenu->GetWeaponBoxPos()); _weaponBox[i].label->SetPos(_hudMenu->GetWeaponLabelPos()); ++ind; @@ -766,11 +766,11 @@ void PlayerStateFrame::OnAdjustLayout(const D3DXVECTOR2& vpSize) _place->SetPos(_hudMenu->GetPlacePos()); - menu()->GetUserChat()->inputPos(D3DXVECTOR2(300.0f, vpSize.y - 10.0f)); - menu()->GetUserChat()->inputSize(D3DXVECTOR2(vpSize.x - 600.0f, 300.0f)); + menu()->GetUserChat()->inputPos(glm::vec2(300.0f, vpSize.y - 10.0f)); + menu()->GetUserChat()->inputSize(glm::vec2(vpSize.x - 600.0f, 300.0f)); - menu()->GetUserChat()->linesPos(D3DXVECTOR2(vpSize.x - 10.0f, _hudMenu->GetMiniMapRect().GetSize().y)); - menu()->GetUserChat()->linesSize(D3DXVECTOR2(vpSize.x/3, vpSize.y - _hudMenu->GetMiniMapRect().GetSize().y)); + menu()->GetUserChat()->linesPos(glm::vec2(vpSize.x - 10.0f, _hudMenu->GetMiniMapRect().GetSize().y)); + menu()->GetUserChat()->linesSize(glm::vec2(vpSize.x/3, vpSize.y - _hudMenu->GetMiniMapRect().GetSize().y)); } void PlayerStateFrame::OnInvalidate() @@ -790,7 +790,7 @@ void PlayerStateFrame::OnProgress(float deltaTime) if (_guiTimer[4]->GetVisible()) { - const D3DXVECTOR2 speedSize(200.0f, 200.0f); + const glm::vec2 speedSize(200.0f, 200.0f); float alpha = _guiTimer[4]->GetMaterial().GetAlpha() - deltaTime/1.5f; if (alpha > 0) @@ -852,7 +852,7 @@ void PlayerStateFrame::OnProcessEvent(unsigned id, EventData* data) if (raceTimerInd != -1) { - D3DXVECTOR2 pos = menu()->GetGUI()->GetVPSize()/2.0f; + glm::vec2 pos = menu()->GetGUI()->GetVPSize()/2.0f; for (int i = 0; i < 5; ++i) { @@ -945,7 +945,7 @@ void MiniMapFrame::ComputeNode(Nodes::iterator sIter, Nodes::iterator eIter, Nod void MiniMapFrame::AlignNode(const Node& src, Node& dest, float cosErr, float sizeErr) { - D3DXVECTOR2 dir = dest.pos - src.pos; + glm::vec2 dir = dest.pos - src.pos; D3DXVec2Normalize(&dir, &dir); if (abs(dir.x) > cosErr) @@ -964,7 +964,7 @@ void MiniMapFrame::AlignNode(const Node& src, Node& dest, float cosErr, float si void MiniMapFrame::AlignMidNodes(Node& node1, Node& node2, float cosErr, float sizeErr) { - D3DXVECTOR2 dir = node2.pos - node1.pos; + glm::vec2 dir = node2.pos - node1.pos; D3DXVec2Normalize(&dir, &dir); if (abs(dir.x) > cosErr) @@ -1014,7 +1014,7 @@ void MiniMapFrame::BuildPath(WayPath& path, res::VertexData& data) if (nextIter == nodes.end()) break; Node& nextNode = *nextIter; - D3DXVECTOR2 dir = nextNode.pos - node.pos; + glm::vec2 dir = nextNode.pos - node.pos; D3DXVec2Normalize(&dir, &dir); if (nextIter != --nodes.end()) @@ -1034,8 +1034,8 @@ void MiniMapFrame::BuildPath(WayPath& path, res::VertexData& data) float cosAlpha2 = sqrt(1 - node.sinAlpha2 * node.sinAlpha2); float size = iter->size; - D3DXVECTOR2 smPos = node.pos + smRadius / cosAlpha2 * node.edgeNorm; - D3DXVECTOR2 smVec = -node.edgeNorm; + glm::vec2 smPos = node.pos + smRadius / cosAlpha2 * node.edgeNorm; + glm::vec2 smVec = -node.edgeNorm; float alpha2 = asin(node.sinAlpha2); bool ccw = node.ccw; @@ -1047,7 +1047,7 @@ void MiniMapFrame::BuildPath(WayPath& path, res::VertexData& data) D3DXQuaternionRotationAxis(&rot, &ZVector, ccw ? dAlpha : -dAlpha); D3DXMATRIX rotMat; D3DXMatrixRotationQuaternion(&rotMat, &rot); - D3DXVECTOR2 vec; + glm::vec2 vec; D3DXVec2TransformNormal(&vec, &smVec, &rotMat); Node newNode; @@ -1077,15 +1077,15 @@ void MiniMapFrame::BuildPath(WayPath& path, res::VertexData& data) ComputeNode(nodes.begin(), nodes.end(), iter); Node node = *iter; - D3DXVECTOR2 pos[2]; + glm::vec2 pos[2]; pos[0] = node.pos + node.midNorm * node.nodeRadius; pos[1] = node.pos - node.midNorm * node.nodeRadius; *pVert.Pos3() = D3DXVECTOR3(pos[0].x, pos[0].y, 0.0f); - *pVert.Tex0() = D3DXVECTOR2(static_cast(i % 2), 0.0f); + *pVert.Tex0() = glm::vec2(static_cast(i % 2), 0.0f); ++pVert; *pVert.Pos3() = D3DXVECTOR3(pos[1].x, pos[1].y, 0.0f); - *pVert.Tex0() = D3DXVECTOR2(static_cast(i % 2), 1.0f); + *pVert.Tex0() = glm::vec2(static_cast(i % 2), 1.0f); ++pVert; } @@ -1101,7 +1101,7 @@ void MiniMapFrame::CreatePlayers() for (Race::PlayerList::const_iterator iter = _menu->GetRace()->GetPlayerList().begin(); iter != _menu->GetRace()->GetPlayerList().end(); ++iter) { gui::Plane3d* plane = _menu->GetGUI()->GetContext().CreatePlane3d(); - plane->SetSize(D3DXVECTOR2(10.0f, 10.0f)); + plane->SetSize(glm::vec2(10.0f, 10.0f)); _map->GetBox()->InsertChild(plane); plane->GetMaterial()->SetColor(color[_players.size() % 4]); @@ -1194,7 +1194,7 @@ void MiniMapFrame::UpdateMap() D3DXQUATERNION rot; QuatShortestArc(XVector, D3DXVECTOR3(node->GetTile().GetDir().x, node->GetTile().GetDir().y, 0.0f), rot); start->SetRot(rot); - start->SetSize(D3DXVECTOR2(node->GetSize()/4.0f, node->GetSize()/2.0f)); + start->SetSize(glm::vec2(node->GetSize()/4.0f, node->GetSize()/2.0f)); } Trace* MiniMapFrame::GetTrace() @@ -1202,7 +1202,7 @@ Trace* MiniMapFrame::GetTrace() return _menu->GetTrace(); } -void MiniMapFrame::AdjustLayout(const D3DXVECTOR2& vpSize) +void MiniMapFrame::AdjustLayout(const glm::vec2& vpSize) { AABB2 mapRect = _hudMenu->GetMiniMapRect(); @@ -1210,8 +1210,8 @@ void MiniMapFrame::AdjustLayout(const D3DXVECTOR2& vpSize) _map->SetSize(mapRect.GetSize()); _map->SetPos(vpSize.x - mapRect.max.x, -mapRect.min.y); - _lapBack->SetPos(_hudMenu->GetLapPos() + D3DXVECTOR2(_lapBack->GetSize().x/2, 0)); - _lap->SetPos(D3DXVECTOR2(_lapBack->GetPos().x - 10, _hudMenu->GetLapPos().y + 1)); + _lapBack->SetPos(_hudMenu->GetLapPos() + glm::vec2(_lapBack->GetSize().x/2, 0)); + _lap->SetPos(glm::vec2(_lapBack->GetPos().x - 10, _hudMenu->GetLapPos().y + 1)); } void MiniMapFrame::Show(bool value) @@ -1342,7 +1342,7 @@ bool HudMenu::OnHandleInput(const InputMessage& msg) return false; } -void HudMenu::AdjustLayout(const D3DXVECTOR2& vpSize) +void HudMenu::AdjustLayout(const glm::vec2& vpSize) { _miniMapFrame->AdjustLayout(vpSize); _playerStateFrame->AdjustLayout(vpSize); @@ -1388,74 +1388,74 @@ void HudMenu::SetState(State value) AABB2 HudMenu::GetMiniMapRect() { - D3DXVECTOR2 size(320.0f, 320.0f); + glm::vec2 size(320.0f, 320.0f); return AABB2(size); } -D3DXVECTOR2 HudMenu::GetWeaponPos() +glm::vec2 HudMenu::GetWeaponPos() { - return D3DXVECTOR2(155.0f, 50.0f); + return glm::vec2(155.0f, 50.0f); } -D3DXVECTOR2 HudMenu::GetWeaponBoxPos() +glm::vec2 HudMenu::GetWeaponBoxPos() { - return D3DXVECTOR2(5.0f, -15.0f); + return glm::vec2(5.0f, -15.0f); } -D3DXVECTOR2 HudMenu::GetWeaponLabelPos() +glm::vec2 HudMenu::GetWeaponLabelPos() { - return D3DXVECTOR2(-10.0f, 26.0f); + return glm::vec2(-10.0f, 26.0f); } -D3DXVECTOR2 HudMenu::GetWeaponPosMine() +glm::vec2 HudMenu::GetWeaponPosMine() { - return D3DXVECTOR2(30.0f, 140.0f); + return glm::vec2(30.0f, 140.0f); } -D3DXVECTOR2 HudMenu::GetWeaponPosMineLabel() +glm::vec2 HudMenu::GetWeaponPosMineLabel() { - return D3DXVECTOR2(105.0f, 159.0f); + return glm::vec2(105.0f, 159.0f); } -D3DXVECTOR2 HudMenu::GetWeaponPosHyper() +glm::vec2 HudMenu::GetWeaponPosHyper() { - return D3DXVECTOR2(30.0f, 32.0f); + return glm::vec2(30.0f, 32.0f); } -D3DXVECTOR2 HudMenu::GetWeaponPosHyperLabel() +glm::vec2 HudMenu::GetWeaponPosHyperLabel() { - return D3DXVECTOR2(105.0f, 15.0f); + return glm::vec2(105.0f, 15.0f); } -D3DXVECTOR2 HudMenu::GetPlacePos() +glm::vec2 HudMenu::GetPlacePos() { - return D3DXVECTOR2(105, 88); + return glm::vec2(105, 88); } -D3DXVECTOR2 HudMenu::GetLapPos() +glm::vec2 HudMenu::GetLapPos() { - return D3DXVECTOR2(0, 200); + return glm::vec2(0, 200); } -D3DXVECTOR2 HudMenu::GetLifeBarPos() +glm::vec2 HudMenu::GetLifeBarPos() { - return D3DXVECTOR2(165.0f, 0.0f); + return glm::vec2(165.0f, 0.0f); } -D3DXVECTOR2 HudMenu::GetPickItemsPos() +glm::vec2 HudMenu::GetPickItemsPos() { - return D3DXVECTOR2(0.0f, 255.0f); + return glm::vec2(0.0f, 255.0f); } -D3DXVECTOR2 HudMenu::GetAchievmentItemsPos() +glm::vec2 HudMenu::GetAchievmentItemsPos() { - return D3DXVECTOR2((100.0f + _menu->GetGUI()->GetVPSize().x)/2, 15.0f); + return glm::vec2((100.0f + _menu->GetGUI()->GetVPSize().x)/2, 15.0f); } -D3DXVECTOR2 HudMenu::GetCarLifeBarPos() +glm::vec2 HudMenu::GetCarLifeBarPos() { - return D3DXVECTOR2(4.0f, -10.0f); + return glm::vec2(4.0f, -10.0f); } } diff --git a/src/Rock3dGame/source/game/Logic.cpp b/src/Rock3dGame/source/game/Logic.cpp index 21973e96..8d628301 100644 --- a/src/Rock3dGame/source/game/Logic.cpp +++ b/src/Rock3dGame/source/game/Logic.cpp @@ -743,42 +743,42 @@ void Logic::Mute(SndCategory category, bool value) } -const D3DXVECTOR2& Logic::GetTouchBorderDamage() const +const glm::vec2& Logic::GetTouchBorderDamage() const { return _touchBorderDamage; } -void Logic::SetTouchBorderDamage(const D3DXVECTOR2& value) +void Logic::SetTouchBorderDamage(const glm::vec2& value) { _touchBorderDamage = value; } -const D3DXVECTOR2& Logic::GetTouchBorderDamageForce() const +const glm::vec2& Logic::GetTouchBorderDamageForce() const { return _touchBorderDamageForce; } -void Logic::SetTouchBorderDamageForce(const D3DXVECTOR2& value) +void Logic::SetTouchBorderDamageForce(const glm::vec2& value) { _touchBorderDamageForce = value; } -const D3DXVECTOR2& Logic::GetTouchCarDamage() const +const glm::vec2& Logic::GetTouchCarDamage() const { return _touchCarDamage; } -void Logic::SetTouchCarDamage(const D3DXVECTOR2& value) +void Logic::SetTouchCarDamage(const glm::vec2& value) { _touchCarDamage = value; } -const D3DXVECTOR2& Logic::GetTouchCarDamageForce() const +const glm::vec2& Logic::GetTouchCarDamageForce() const { return _touchCarDamageForce; } -void Logic::SetTouchCarDamageForce(const D3DXVECTOR2& value) +void Logic::SetTouchCarDamageForce(const glm::vec2& value) { _touchCarDamageForce = value; } diff --git a/src/Rock3dGame/source/game/MainMenu2.cpp b/src/Rock3dGame/source/game/MainMenu2.cpp index a1eeaaad..d27a2cca 100644 --- a/src/Rock3dGame/source/game/MainMenu2.cpp +++ b/src/Rock3dGame/source/game/MainMenu2.cpp @@ -149,14 +149,14 @@ NetBrowserFrame::NetBrowserFrame(Menu* menu, MainMenu* mainMenu, gui::Widget* pa _downArrow = menu->CreateArrow(root(), this); _downArrow->SetRot(-D3DX_PI/2); - D3DXVECTOR2 size = _downArrow->GetSize(); - _downArrow->SetSize(menu->StretchImage(*_downArrow->GetFon(), D3DXVECTOR2(30.0f, 30.0f), true, true, true, false)); + glm::vec2 size = _downArrow->GetSize(); + _downArrow->SetSize(menu->StretchImage(*_downArrow->GetFon(), glm::vec2(30.0f, 30.0f), true, true, true, false)); _downArrow->SetSelSize(menu->GetImageSize(*_downArrow->GetSel()) * _downArrow->GetSize().x / size.x); _upArrow = menu->CreateArrow(root(), this); _upArrow->SetRot(D3DX_PI/2); size = _upArrow->GetSize(); - _upArrow->SetSize(menu->StretchImage(*_upArrow->GetFon(), D3DXVECTOR2(30.0f, 30.0f), true, true, true, false)); + _upArrow->SetSize(menu->StretchImage(*_upArrow->GetFon(), glm::vec2(30.0f, 30.0f), true, true, true, false)); _upArrow->SetSelSize(menu->GetImageSize(*_upArrow->GetSel()) * _upArrow->GetSize().x / size.x); } @@ -174,7 +174,7 @@ NetBrowserFrame::~NetBrowserFrame() void NetBrowserFrame::UpdateGrid() { _gridScroll = 0; - D3DXVECTOR2 cellSize = NullVec2; + glm::vec2 cellSize = NullVec2; unsigned count = net()->netService().endpointList().size(); gui::Widget::Children::const_iterator iter = _grid->GetChildren().begin(); lsl::Vector navElements; @@ -245,7 +245,7 @@ void NetBrowserFrame::UpdateGrid() menu()->SetNavElements(_mainMenu->GetItem(miBack), true, &navElements[0], navElements.size()); } -void NetBrowserFrame::AdjustGrid(const D3DXVECTOR2& vpSize) +void NetBrowserFrame::AdjustGrid(const glm::vec2& vpSize) { _grid->SetPos(vpSize.x/2, vpSize.y/2 - 90.0f); @@ -326,9 +326,9 @@ void NetBrowserFrame::OnInvalidate() UpdateGrid(); } -void NetBrowserFrame::OnAdjustLayout(const D3DXVECTOR2& vpSize) +void NetBrowserFrame::OnAdjustLayout(const glm::vec2& vpSize) { - _info->SetPos(D3DXVECTOR2(vpSize.x/2, vpSize.y/2)); + _info->SetPos(glm::vec2(vpSize.x/2, vpSize.y/2)); AdjustGrid(vpSize); @@ -467,12 +467,12 @@ void NetIPAddressFrame::OnShow(bool value) } } -void NetIPAddressFrame::OnAdjustLayout(const D3DXVECTOR2& vpSize) +void NetIPAddressFrame::OnAdjustLayout(const glm::vec2& vpSize) { - _labels[mlInfo]->SetSize(D3DXVECTOR2(325.0f, 50.0f)); - _labels[mlInfo]->SetPos(D3DXVECTOR2(vpSize.x/2, vpSize.y/2 + 15)); + _labels[mlInfo]->SetSize(glm::vec2(325.0f, 50.0f)); + _labels[mlInfo]->SetPos(glm::vec2(vpSize.x/2, vpSize.y/2 + 15)); - _labels[mlIPAdress]->SetPos(D3DXVECTOR2(vpSize.x/2, vpSize.y/2 + 45.0f)); + _labels[mlIPAdress]->SetPos(glm::vec2(vpSize.x/2, vpSize.y/2 + 45.0f)); } bool NetIPAddressFrame::OnClick(gui::Widget* sender, const gui::MouseClick& mClick) @@ -556,14 +556,14 @@ LobbyFrame::LobbyFrame(Menu* menu, MainMenu* mainMenu, gui::Widget* parent): Men _downArrow = menu->CreateArrow(root(), this); _downArrow->SetRot(-D3DX_PI/2); - D3DXVECTOR2 size = _downArrow->GetSize(); - _downArrow->SetSize(menu->StretchImage(*_downArrow->GetFon(), D3DXVECTOR2(30.0f, 30.0f), true, true, true, false)); + glm::vec2 size = _downArrow->GetSize(); + _downArrow->SetSize(menu->StretchImage(*_downArrow->GetFon(), glm::vec2(30.0f, 30.0f), true, true, true, false)); _downArrow->SetSelSize(menu->GetImageSize(*_downArrow->GetSel()) * _downArrow->GetSize().x / size.x); _upArrow = menu->CreateArrow(root(), this); _upArrow->SetRot(D3DX_PI/2); size = _upArrow->GetSize(); - _upArrow->SetSize(menu->StretchImage(*_upArrow->GetFon(), D3DXVECTOR2(30.0f, 30.0f), true, true, true, false)); + _upArrow->SetSize(menu->StretchImage(*_upArrow->GetFon(), glm::vec2(30.0f, 30.0f), true, true, true, false)); _upArrow->SetSelSize(menu->GetImageSize(*_upArrow->GetSel()) * _upArrow->GetSize().x / size.x); } @@ -581,7 +581,7 @@ LobbyFrame::~LobbyFrame() void LobbyFrame::UpdateGrid() { _gridScroll = 0; - D3DXVECTOR2 cellSize = NullVec2; + glm::vec2 cellSize = NullVec2; unsigned count = steamService()->lobby()->GetLobbyMembers().size(); gui::Widget::Children::const_iterator iter = _grid->GetChildren().begin(); lsl::Vector navElements; @@ -659,7 +659,7 @@ void LobbyFrame::UpdateGrid() focusedItem->SetFocused(true, true); } -void LobbyFrame::AdjustGrid(const D3DXVECTOR2& vpSize) +void LobbyFrame::AdjustGrid(const glm::vec2& vpSize) { _grid->SetPos(vpSize.x/2, vpSize.y/2 - 50.0f); @@ -743,9 +743,9 @@ void LobbyFrame::OnInvalidate() menu()->SetButtonEnabled(_mainMenu->GetItem(miStart), steamService()->lobby()->lobbyCreated()); } -void LobbyFrame::OnAdjustLayout(const D3DXVECTOR2& vpSize) +void LobbyFrame::OnAdjustLayout(const glm::vec2& vpSize) { - _info->SetPos(D3DXVECTOR2(vpSize.x/2, vpSize.y/2)); + _info->SetPos(glm::vec2(vpSize.x/2, vpSize.y/2)); AdjustGrid(vpSize); @@ -822,14 +822,14 @@ MatchmakingFrame::MatchmakingFrame(Menu* menu, MainMenu* mainMenu, gui::Widget* _downArrow = menu->CreateArrow(root(), this); _downArrow->SetRot(-D3DX_PI/2); - D3DXVECTOR2 size = _downArrow->GetSize(); - _downArrow->SetSize(menu->StretchImage(*_downArrow->GetFon(), D3DXVECTOR2(30.0f, 30.0f), true, true, true, false)); + glm::vec2 size = _downArrow->GetSize(); + _downArrow->SetSize(menu->StretchImage(*_downArrow->GetFon(), glm::vec2(30.0f, 30.0f), true, true, true, false)); _downArrow->SetSelSize(menu->GetImageSize(*_downArrow->GetSel()) * _downArrow->GetSize().x / size.x); _upArrow = menu->CreateArrow(root(), this); _upArrow->SetRot(D3DX_PI/2); size = _upArrow->GetSize(); - _upArrow->SetSize(menu->StretchImage(*_upArrow->GetFon(), D3DXVECTOR2(30.0f, 30.0f), true, true, true, false)); + _upArrow->SetSize(menu->StretchImage(*_upArrow->GetFon(), glm::vec2(30.0f, 30.0f), true, true, true, false)); _upArrow->SetSelSize(menu->GetImageSize(*_upArrow->GetSel()) * _upArrow->GetSize().x / size.x); } @@ -847,7 +847,7 @@ MatchmakingFrame::~MatchmakingFrame() void MatchmakingFrame::UpdateGrid() { _gridScroll = 0; - D3DXVECTOR2 cellSize = NullVec2; + glm::vec2 cellSize = NullVec2; unsigned count = steamService()->lobby()->GetLobbyList().size(); gui::Widget::Children::const_iterator iter = _grid->GetChildren().begin(); lsl::Vector navElements; @@ -925,7 +925,7 @@ void MatchmakingFrame::UpdateGrid() focusedItem->SetFocused(true, true); } -void MatchmakingFrame::AdjustGrid(const D3DXVECTOR2& vpSize) +void MatchmakingFrame::AdjustGrid(const glm::vec2& vpSize) { _grid->SetPos(vpSize.x/2, vpSize.y/2 - 90.0f); @@ -1006,9 +1006,9 @@ void MatchmakingFrame::OnInvalidate() UpdateGrid(); } -void MatchmakingFrame::OnAdjustLayout(const D3DXVECTOR2& vpSize) +void MatchmakingFrame::OnAdjustLayout(const glm::vec2& vpSize) { - _info->SetPos(D3DXVECTOR2(vpSize.x/2, vpSize.y/2)); + _info->SetPos(glm::vec2(vpSize.x/2, vpSize.y/2)); AdjustGrid(vpSize); @@ -1091,14 +1091,14 @@ SteamBrowserFrame::SteamBrowserFrame(Menu* menu, MainMenu* mainMenu, gui::Widget _downArrow = menu->CreateArrow(root(), this); _downArrow->SetRot(-D3DX_PI/2); - D3DXVECTOR2 size = _downArrow->GetSize(); - _downArrow->SetSize(menu->StretchImage(*_downArrow->GetFon(), D3DXVECTOR2(30.0f, 30.0f), true, true, true, false)); + glm::vec2 size = _downArrow->GetSize(); + _downArrow->SetSize(menu->StretchImage(*_downArrow->GetFon(), glm::vec2(30.0f, 30.0f), true, true, true, false)); _downArrow->SetSelSize(menu->GetImageSize(*_downArrow->GetSel()) * _downArrow->GetSize().x / size.x); _upArrow = menu->CreateArrow(root(), this); _upArrow->SetRot(D3DX_PI/2); size = _upArrow->GetSize(); - _upArrow->SetSize(menu->StretchImage(*_upArrow->GetFon(), D3DXVECTOR2(30.0f, 30.0f), true, true, true, false)); + _upArrow->SetSize(menu->StretchImage(*_upArrow->GetFon(), glm::vec2(30.0f, 30.0f), true, true, true, false)); _upArrow->SetSelSize(menu->GetImageSize(*_upArrow->GetSel()) * _upArrow->GetSize().x / size.x); } @@ -1116,7 +1116,7 @@ SteamBrowserFrame::~SteamBrowserFrame() void SteamBrowserFrame::UpdateGrid() { _gridScroll = 0; - D3DXVECTOR2 cellSize = NullVec2; + glm::vec2 cellSize = NullVec2; unsigned count = steamService()->server()->hostList().size(); gui::Widget::Children::const_iterator iter = _grid->GetChildren().begin(); lsl::Vector navElements; @@ -1194,7 +1194,7 @@ void SteamBrowserFrame::UpdateGrid() focusedItem->SetFocused(true, true); } -void SteamBrowserFrame::AdjustGrid(const D3DXVECTOR2& vpSize) +void SteamBrowserFrame::AdjustGrid(const glm::vec2& vpSize) { _grid->SetPos(vpSize.x/2, vpSize.y/2 - 90.0f); @@ -1283,9 +1283,9 @@ void SteamBrowserFrame::OnInvalidate() UpdateGrid(); } -void SteamBrowserFrame::OnAdjustLayout(const D3DXVECTOR2& vpSize) +void SteamBrowserFrame::OnAdjustLayout(const glm::vec2& vpSize) { - _info->SetPos(D3DXVECTOR2(vpSize.x/2, vpSize.y/2)); + _info->SetPos(glm::vec2(vpSize.x/2, vpSize.y/2)); AdjustGrid(vpSize); @@ -1579,9 +1579,9 @@ bool NetworkFrame::OnClick(gui::Widget* sender, const gui::MouseClick& mClick) return false; } -void NetworkFrame::OnAdjustLayout(const D3DXVECTOR2& vpSize) +void NetworkFrame::OnAdjustLayout(const glm::vec2& vpSize) { - _labels[mlIPAdress]->SetPos(D3DXVECTOR2(vpSize.x/2, vpSize.y/2 + 75.0f)); + _labels[mlIPAdress]->SetPos(glm::vec2(vpSize.x/2, vpSize.y/2 + 75.0f)); } @@ -1674,9 +1674,9 @@ void CreditsFrame::OnShow(bool value) } } -void CreditsFrame::OnAdjustLayout(const D3DXVECTOR2& vpSize) +void CreditsFrame::OnAdjustLayout(const glm::vec2& vpSize) { - _label->SetPos(D3DXVECTOR2(vpSize.x/2, vpSize.y/2 - 115.0f)); + _label->SetPos(glm::vec2(vpSize.x/2, vpSize.y/2 - 115.0f)); } bool CreditsFrame::OnClick(gui::Widget* sender, const gui::MouseClick& mClick) @@ -1716,14 +1716,14 @@ ProfileFrame::ProfileFrame(Menu* menu, MainMenu* mainMenu, gui::Widget* parent): _downArrow = menu->CreateArrow(root(), this); _downArrow->SetRot(-D3DX_PI/2); - D3DXVECTOR2 size = _downArrow->GetSize(); - _downArrow->SetSize(menu->StretchImage(*_downArrow->GetFon(), D3DXVECTOR2(30.0f, 30.0f), true, true, true, false)); + glm::vec2 size = _downArrow->GetSize(); + _downArrow->SetSize(menu->StretchImage(*_downArrow->GetFon(), glm::vec2(30.0f, 30.0f), true, true, true, false)); _downArrow->SetSelSize(menu->GetImageSize(*_downArrow->GetSel()) * _downArrow->GetSize().x / size.x); _upArrow = menu->CreateArrow(root(), this); _upArrow->SetRot(D3DX_PI/2); size = _upArrow->GetSize(); - _upArrow->SetSize(menu->StretchImage(*_upArrow->GetFon(), D3DXVECTOR2(30.0f, 30.0f), true, true, true, false)); + _upArrow->SetSize(menu->StretchImage(*_upArrow->GetFon(), glm::vec2(30.0f, 30.0f), true, true, true, false)); _upArrow->SetSelSize(menu->GetImageSize(*_upArrow->GetSel()) * _upArrow->GetSize().x / size.x); } @@ -1734,7 +1734,7 @@ ProfileFrame::~ProfileFrame() menu()->ReleaseWidget(_grid); } -void ProfileFrame::AdjustGrid(const D3DXVECTOR2& vpSize) +void ProfileFrame::AdjustGrid(const glm::vec2& vpSize) { _grid->SetPos(vpSize.x/2, vpSize.y/2 - 90.0f); @@ -1771,7 +1771,7 @@ void ProfileFrame::ScrollGrid(int step) void ProfileFrame::UpdateGrid() { - D3DXVECTOR2 cellSize = NullVec2; + glm::vec2 cellSize = NullVec2; unsigned count = menu()->GetRace()->GetProfiles().size(); unsigned itemCount = 0; gui::Widget::Children::const_iterator iter = _grid->GetChildren().begin(); @@ -1797,9 +1797,9 @@ void ProfileFrame::UpdateGrid() item->SetText(profile->GetName()); cellSize = item->GetSize(); - gui::Button* closeBut = menu()->CreateMenuButton(svNull, "", "GUI\\buttonBg6.png", "GUI\\buttonBgSel6.png", item, this, D3DXVECTOR2(1.8f, 1.8f), gui::Button::bsSelAnim, clrWhite); + gui::Button* closeBut = menu()->CreateMenuButton(svNull, "", "GUI\\buttonBg6.png", "GUI\\buttonBgSel6.png", item, this, glm::vec2(1.8f, 1.8f), gui::Button::bsSelAnim, clrWhite); closeBut->SetAlign(gui::Widget::waLeft); - closeBut->SetPos(D3DXVECTOR2(cellSize.x/2 - 40.0f, 0.0f)); + closeBut->SetPos(glm::vec2(cellSize.x/2 - 40.0f, 0.0f)); gridItems.push_back(std::make_pair(item, closeBut)); int index = itemCount; @@ -1877,7 +1877,7 @@ void ProfileFrame::OnInvalidate() { } -void ProfileFrame::OnAdjustLayout(const D3DXVECTOR2& vpSize) +void ProfileFrame::OnAdjustLayout(const glm::vec2& vpSize) { AdjustGrid(vpSize); @@ -2119,7 +2119,7 @@ void MainMenu::ApplyState(State state) #endif } -void MainMenu::AdjustMenuItems(const D3DXVECTOR2& vpSize) +void MainMenu::AdjustMenuItems(const glm::vec2& vpSize) { if (_menuItems.size() > 0) { @@ -2234,13 +2234,13 @@ void MainMenu::OnDisconnectedPlayer(NetPlayer* sender) _menu->HideMessage(); } -void MainMenu::AdjustLayout(const D3DXVECTOR2& vpSize) +void MainMenu::AdjustLayout(const glm::vec2& vpSize) { AdjustMenuItems(vpSize); - _topPanel->SetPos(D3DXVECTOR2(vpSize.x/2, (0 + vpSize.y/2 - 150.0f)/2.0f)); + _topPanel->SetPos(glm::vec2(vpSize.x/2, (0 + vpSize.y/2 - 150.0f)/2.0f)); - _version->SetPos(D3DXVECTOR2(vpSize.x - 25.0f, vpSize.y - 25.0f)); + _version->SetPos(glm::vec2(vpSize.x - 25.0f, vpSize.y - 25.0f)); _mainFrame->AdjustLayout(vpSize); _gameMode->AdjustLayout(vpSize); diff --git a/src/Rock3dGame/source/game/Menu.cpp b/src/Rock3dGame/source/game/Menu.cpp index a323ee2e..ebe96fd0 100644 --- a/src/Rock3dGame/source/game/Menu.cpp +++ b/src/Rock3dGame/source/game/Menu.cpp @@ -10,9 +10,9 @@ namespace game { const D3DXCOLOR Menu::cTextColor = D3DXCOLOR(176.0f, 205.0f, 249.0f, 255.0f)/255.0f; -const D3DXVECTOR2 Menu::cWinSize(1280.0f, 1024.0f); -const D3DXVECTOR2 Menu::cMinWinSize(800.0f, 600.0f); -const D3DXVECTOR2 Menu::cMaxWinSize(3072.0f, 1536.0f); +const glm::vec2 Menu::cWinSize(1280.0f, 1024.0f); +const glm::vec2 Menu::cMinWinSize(800.0f, 600.0f); +const glm::vec2 Menu::cMaxWinSize(3072.0f, 1536.0f); @@ -290,12 +290,12 @@ void Menu::SoundSheme::focused(snd::Sound* value) _focused = value; } -D3DXVECTOR2 Menu::GetImageSize(gui::Material& material) +glm::vec2 Menu::GetImageSize(gui::Material& material) { return material.GetSampler().GetSize(); } -D3DXVECTOR2 Menu::GetAspectSize(const D3DXVECTOR2& curSize, const D3DXVECTOR2& newSize) +glm::vec2 Menu::GetAspectSize(const glm::vec2& curSize, const glm::vec2& newSize) { float wScale = newSize.x / curSize.x; float hScale = newSize.y / curSize.y; @@ -304,17 +304,17 @@ D3DXVECTOR2 Menu::GetAspectSize(const D3DXVECTOR2& curSize, const D3DXVECTOR2& n return curSize * minScale; } -D3DXVECTOR2 Menu::GetImageAspectSize(gui::Material& material, const D3DXVECTOR2& newSize) +glm::vec2 Menu::GetImageAspectSize(gui::Material& material, const glm::vec2& newSize) { return GetAspectSize(GetImageSize(material), newSize); } -D3DXVECTOR2 Menu::StretchImage(D3DXVECTOR2 imageSize, const D3DXVECTOR2& size, bool keepAspect, bool fillRect, bool scaleDown, bool scaleUp) +glm::vec2 Menu::StretchImage(glm::vec2 imageSize, const glm::vec2& size, bool keepAspect, bool fillRect, bool scaleDown, bool scaleUp) { imageSize.x = std::max(imageSize.x, 1.0f); imageSize.y = std::max(imageSize.y, 1.0f); - D3DXVECTOR2 scale = IdentityVec2; + glm::vec2 scale = IdentityVec2; if (keepAspect) { @@ -343,7 +343,7 @@ D3DXVECTOR2 Menu::StretchImage(D3DXVECTOR2 imageSize, const D3DXVECTOR2& size, b return scale * imageSize; } -D3DXVECTOR2 Menu::StretchImage(gui::Material& material, const D3DXVECTOR2& size, bool keepAspect, bool fillRect, bool scaleDown, bool scaleUp) +glm::vec2 Menu::StretchImage(gui::Material& material, const glm::vec2& size, bool keepAspect, bool fillRect, bool scaleDown, bool scaleUp) { return StretchImage(GetImageSize(material), size, keepAspect, fillRect, scaleDown, scaleUp); } @@ -647,7 +647,7 @@ void Menu::OnProcessNetEvent(unsigned id, NetEventData* data) bool Menu::OnMouseMoveEvent(const MouseMove& mMove) { - D3DXVECTOR2 pos = GetGUI()->ScreenToView(mMove.coord); + glm::vec2 pos = GetGUI()->ScreenToView(mMove.coord); pos.x += _cursor->GetSize().x/2; @@ -827,11 +827,11 @@ World* Menu::GetWorld() return _game->GetWorld(); } -D3DXVECTOR2 Menu::WinToLocal(const D3DXVECTOR2& vec, bool centUnscacle) +glm::vec2 Menu::WinToLocal(const glm::vec2& vec, bool centUnscacle) { if (centUnscacle) { - D3DXVECTOR2 off = 0.5f * (cWinSize - GetGUI()->GetVPSize()); + glm::vec2 off = 0.5f * (cWinSize - GetGUI()->GetVPSize()); off.y = -off.y; return off + vec; } @@ -841,7 +841,7 @@ D3DXVECTOR2 Menu::WinToLocal(const D3DXVECTOR2& vec, bool centUnscacle) } } -void Menu::AdjustLayout(const D3DXVECTOR2& vpSize) +void Menu::AdjustLayout(const glm::vec2& vpSize) { if (_screenFon) { @@ -923,7 +923,7 @@ void Menu::OnResetView() void Menu::OnFinishClose() { - D3DXVECTOR2 pos = GetGUI()->GetVPSize()/2; + glm::vec2 pos = GetGUI()->GetVPSize()/2; SetState(msRace2); _game->OnFinishFrameClose(); @@ -976,7 +976,7 @@ bool Menu::IsCursorVisible() const return _cursor->GetVisible(); } -void Menu::ShowAccept(const std::string& message, const std::string& yesText, const std::string& noText, const D3DXVECTOR2& pos, gui::Widget::Anchor align, gui::Widget::Event* guiEvent, Object* data, bool maxButtonsSize, bool maxMode, bool disableFocus) +void Menu::ShowAccept(const std::string& message, const std::string& yesText, const std::string& noText, const glm::vec2& pos, gui::Widget::Anchor align, gui::Widget::Event* guiEvent, Object* data, bool maxButtonsSize, bool maxMode, bool disableFocus) { _acceptDlg->Show(message, yesText, noText, pos, align, guiEvent, data, maxButtonsSize, maxMode, disableFocus); @@ -1003,7 +1003,7 @@ Object* Menu::GetAcceptData() return _acceptDlg->data(); } -void Menu::ShowWeaponDialog(const std::string& title, const std::string& message, const std::string& moneyText, const std::string& damageText, const D3DXVECTOR2& pos, gui::Widget::Anchor align, float timeDelay) +void Menu::ShowWeaponDialog(const std::string& title, const std::string& message, const std::string& moneyText, const std::string& damageText, const glm::vec2& pos, gui::Widget::Anchor align, float timeDelay) { _weaponDlg->Show(title, message, moneyText, damageText, pos, align); @@ -1020,7 +1020,7 @@ void Menu::HideWeaponDialog() _weaponTime = -1.0f; } -void Menu::ShowMessage(const std::string& title, const std::string& message, const std::string& okText, const D3DXVECTOR2& pos, gui::Widget::Anchor align, const float timeDelay, gui::Widget::Event* guiEvent, bool okButton) +void Menu::ShowMessage(const std::string& title, const std::string& message, const std::string& okText, const glm::vec2& pos, gui::Widget::Anchor align, const float timeDelay, gui::Widget::Event* guiEvent, bool okButton) { _messageDlg->Show(title, message, okText, pos, align, guiEvent, NULL, okButton); @@ -1566,7 +1566,7 @@ gui::Dummy* Menu::CreateDummy(gui::Widget* parent, gui::Widget::Event* guiEvent, return node; } -gui::PlaneFon* Menu::CreatePlane(gui::Widget* parent, gui::Widget::Event* guiEven, graph::Tex2DResource* image, bool imageSize, const D3DXVECTOR2& size, gui::Material::Blending blend, SoundShemeType soundSheme) +gui::PlaneFon* Menu::CreatePlane(gui::Widget* parent, gui::Widget::Event* guiEven, graph::Tex2DResource* image, bool imageSize, const glm::vec2& size, gui::Material::Blending blend, SoundShemeType soundSheme) { gui::PlaneFon* plane = GetGUI()->CreatePlaneFon(); plane->SetParent(parent); @@ -1587,12 +1587,12 @@ gui::PlaneFon* Menu::CreatePlane(gui::Widget* parent, gui::Widget::Event* guiEve return plane; } -gui::PlaneFon* Menu::CreatePlane(gui::Widget* parent, gui::Widget::Event* guiEven, const std::string& image, bool imageSize, const D3DXVECTOR2& size, gui::Material::Blending blend, SoundShemeType soundSheme) +gui::PlaneFon* Menu::CreatePlane(gui::Widget* parent, gui::Widget::Event* guiEven, const std::string& image, bool imageSize, const glm::vec2& size, gui::Material::Blending blend, SoundShemeType soundSheme) { return CreatePlane(parent, guiEven, !image.empty() ? GetTexture(image) : 0, imageSize, size, blend, soundSheme); } -gui::Button* Menu::CreateArrowButton(gui::Widget* parent, gui::Widget::Event* guiEvent, const D3DXVECTOR2& size) +gui::Button* Menu::CreateArrowButton(gui::Widget* parent, gui::Widget::Event* guiEvent, const glm::vec2& size) { gui::Button* button = GetGUI()->CreateButton(); button->SetParent(parent); @@ -1611,7 +1611,7 @@ gui::Button* Menu::CreateArrowButton(gui::Widget* parent, gui::Widget::Event* gu return button; } -gui::Button* Menu::CreateSpaceArrowButton(gui::Widget* parent, gui::Widget::Event* guiEvent, const D3DXVECTOR2& size) +gui::Button* Menu::CreateSpaceArrowButton(gui::Widget* parent, gui::Widget::Event* guiEvent, const glm::vec2& size) { gui::Button* button = GetGUI()->CreateButton(); button->SetParent(parent); @@ -1630,13 +1630,13 @@ gui::Button* Menu::CreateSpaceArrowButton(gui::Widget* parent, gui::Widget::Even return button; } -gui::Button* Menu::CreateMenuButton(const lsl::string& name, const std::string& font, const std::string& norm, const std::string& sel, gui::Widget* parent, gui::Widget::Event* guiEvent, const D3DXVECTOR2& size, gui::Button::Style style, const D3DXCOLOR& textColor, SoundShemeType soundSheme) +gui::Button* Menu::CreateMenuButton(const lsl::string& name, const std::string& font, const std::string& norm, const std::string& sel, gui::Widget* parent, gui::Widget::Event* guiEvent, const glm::vec2& size, gui::Button::Style style, const D3DXCOLOR& textColor, SoundShemeType soundSheme) { gui::Button* button = GetGUI()->CreateButton(); button->SetParent(parent); button->SetStyle(style); - D3DXVECTOR2 normSize = size; + glm::vec2 normSize = size; if (norm != "") { gui::Material* fonMat = button->GetOrCreateFon(); @@ -1671,19 +1671,19 @@ gui::Button* Menu::CreateMenuButton(const lsl::string& name, const std::string& return button; } -gui::Button* Menu::CreateMenuButton(StringValue name, const std::string& font, const std::string& norm, const std::string& sel, gui::Widget* parent, gui::Widget::Event* guiEvent, const D3DXVECTOR2& size, gui::Button::Style style, const D3DXCOLOR& textColor, SoundShemeType soundSheme) +gui::Button* Menu::CreateMenuButton(StringValue name, const std::string& font, const std::string& norm, const std::string& sel, gui::Widget* parent, gui::Widget::Event* guiEvent, const glm::vec2& size, gui::Button::Style style, const D3DXCOLOR& textColor, SoundShemeType soundSheme) { return CreateMenuButton(GetString(name), font, norm, sel, parent, guiEvent, size, style, textColor, soundSheme); } -gui::Button* Menu::CreateMenuButton(const std::string& name, gui::Widget* parent, gui::Widget::Event* guiEvent, const D3DXVECTOR2& size, SoundShemeType soundSheme) +gui::Button* Menu::CreateMenuButton(const std::string& name, gui::Widget* parent, gui::Widget::Event* guiEvent, const glm::vec2& size, SoundShemeType soundSheme) { gui::Button* but = CreateMenuButton(svNull, "Header", "GUI\\buttonBig.tga", "GUI\\buttonBigSel.tga", parent, guiEvent, size, gui::Button::bsSimple, cTextColor, soundSheme); but->SetText(name); return but; } -gui::Button* Menu::CreateMenuButton(StringValue name, gui::Widget* parent, gui::Widget::Event* guiEvent, const D3DXVECTOR2& size, SoundShemeType soundSheme) +gui::Button* Menu::CreateMenuButton(StringValue name, gui::Widget* parent, gui::Widget::Event* guiEvent, const glm::vec2& size, SoundShemeType soundSheme) { return CreateMenuButton(GetString(name), parent, guiEvent, size, soundSheme); } @@ -1701,7 +1701,7 @@ gui::Button* Menu::CreateArrow(gui::Widget* parent, gui::Widget::Event* guiEvent return CreateMenuButton(svNull, "", "GUI\\arrow1.png", "GUI\\arrowSel1.png", parent, guiEvent, IdentityVec2, gui::Button::bsSelAnim); } -gui::Label* Menu::CreateLabel(const std::string& name, gui::Widget* parent, const std::string& font, const D3DXVECTOR2& size, gui::Text::HorAlign horAlign, gui::Text::VertAlign vertAlign, const D3DXCOLOR& color) +gui::Label* Menu::CreateLabel(const std::string& name, gui::Widget* parent, const std::string& font, const glm::vec2& size, gui::Text::HorAlign horAlign, gui::Text::VertAlign vertAlign, const D3DXCOLOR& color) { gui::Label* label = GetGUI()->CreateLabel(); label->SetParent(parent); @@ -1717,7 +1717,7 @@ gui::Label* Menu::CreateLabel(const std::string& name, gui::Widget* parent, cons return label; } -gui::Label* Menu::CreateLabel(StringValue name, gui::Widget* parent, const std::string& font, const D3DXVECTOR2& size, gui::Text::HorAlign horAlign, gui::Text::VertAlign vertAlign, const D3DXCOLOR& color) +gui::Label* Menu::CreateLabel(StringValue name, gui::Widget* parent, const std::string& font, const glm::vec2& size, gui::Text::HorAlign horAlign, gui::Text::VertAlign vertAlign, const D3DXCOLOR& color) { return CreateLabel(GetString(name), parent, font, size, horAlign, vertAlign, color); } @@ -1726,7 +1726,7 @@ gui::DropBox* Menu::CreateDropBox(gui::Widget* parent, gui::Widget::Event* guiEv { gui::DropBox* dropBox = GetGUI()->CreateDropBox(); dropBox->SetParent(parent); - dropBox->SetSize(D3DXVECTOR2(150.0f, 25.0f)); + dropBox->SetSize(glm::vec2(150.0f, 25.0f)); dropBox->SetEvent(guiEvent); dropBox->SetFont(GetFont("Small")); @@ -1740,7 +1740,7 @@ gui::DropBox* Menu::CreateDropBox(gui::Widget* parent, gui::Widget::Event* guiEv return dropBox; } -gui::TrackBar* Menu::CreateTrackBar(gui::Widget* parent, gui::Widget::Event* guiEvent, const D3DXVECTOR2& size) +gui::TrackBar* Menu::CreateTrackBar(gui::Widget* parent, gui::Widget::Event* guiEvent, const glm::vec2& size) { gui::TrackBar* trackBar = GetGUI()->CreateTrackBar(); trackBar->SetParent(parent); @@ -1754,7 +1754,7 @@ gui::TrackBar* Menu::CreateTrackBar(gui::Widget* parent, gui::Widget::Event* gui return trackBar; } -gui::ListBox* Menu::CreateListBox(gui::Widget* parent, gui::Widget::Event* guiEvent, const D3DXVECTOR2& size, const D3DXVECTOR2& itemSize, const D3DXVECTOR2& itemSpace) +gui::ListBox* Menu::CreateListBox(gui::Widget* parent, gui::Widget::Event* guiEvent, const glm::vec2& size, const glm::vec2& itemSize, const glm::vec2& itemSpace) { gui::ListBox* listBox = GetGUI()->CreateListBox(); listBox->SetParent(parent); @@ -1782,7 +1782,7 @@ gui::ProgressBar* Menu::CreateBar(gui::Widget* parent, gui::Widget::Event* guiEv { gui::ProgressBar* bar = GetGUI()->CreateProgressBar(); bar->SetParent(parent); - bar->SetPos(D3DXVECTOR2(0, 0)); + bar->SetPos(glm::vec2(0, 0)); bar->GetFront().GetSampler().SetTex(GetTexture(front)); bar->SetSize(GetImageSize(bar->GetFront())); bar->GetFront().SetBlending(gui::Material::bmTransparency); @@ -1824,12 +1824,12 @@ gui::ChargeBar* Menu::CreateChargeBar(gui::Widget* parent, gui::Widget::Event* g return chargeBar; } -gui::ColorList* Menu::CreateColorList(gui::Widget* parent, gui::Widget::Event* guiEvent, const D3DXVECTOR2& size) +gui::ColorList* Menu::CreateColorList(gui::Widget* parent, gui::Widget::Event* guiEvent, const glm::vec2& size) { gui::ColorList* colorList = GetGUI()->CreateColorList(); colorList->SetParent(parent); colorList->SetSize(size); - colorList->SetSpace(D3DXVECTOR2(0.0f, 10.0f)); + colorList->SetSpace(glm::vec2(0.0f, 10.0f)); colorList->SetEvent(guiEvent); colorList->GetFrame().GetSampler().SetTex(GetTexture("GUI\\colorFrame.tga")); @@ -1866,7 +1866,7 @@ gui::ViewPort3d* Menu::CreateItemBox(gui::Widget* parent, gui::Widget::Event* gu return viewPort; } -gui::Button* Menu::CreateCloseButton(gui::Widget* parent, gui::Widget::Event* guiEvent, const D3DXVECTOR2& size) +gui::Button* Menu::CreateCloseButton(gui::Widget* parent, gui::Widget::Event* guiEvent, const glm::vec2& size) { gui::Button* button = GetGUI()->CreateButton(); button->SetParent(parent); @@ -1887,7 +1887,7 @@ gui::Button* Menu::CreateCloseButton(gui::Widget* parent, gui::Widget::Event* gu return button; } -gui::ScrollBox* Menu::CreateScrollBox(gui::Widget* parent, gui::Widget::Event* guiEvent, const D3DXVECTOR2& size) +gui::ScrollBox* Menu::CreateScrollBox(gui::Widget* parent, gui::Widget::Event* guiEvent, const glm::vec2& size) { gui::ScrollBox* scrollBox = GetGUI()->CreateScrollBox(); scrollBox->SetParent(parent); @@ -1902,7 +1902,7 @@ gui::ScrollBox* Menu::CreateScrollBox(gui::Widget* parent, gui::Widget::Event* g return scrollBox; } -gui::Grid* Menu::CreateGrid(gui::Widget* parent, gui::Widget::Event* guiEvent, gui::Grid::Style style, const D3DXVECTOR2& cellSize, unsigned maxCellsOnLine) +gui::Grid* Menu::CreateGrid(gui::Widget* parent, gui::Widget::Event* guiEvent, gui::Grid::Style style, const glm::vec2& cellSize, unsigned maxCellsOnLine) { gui::Grid* grid = GetGUI()->CreateGrid(); grid->SetParent(parent); @@ -1943,12 +1943,12 @@ gui::StepperBox* Menu::CreateStepper(const StringList& items, gui::Widget* paren return stepper; } -gui::ViewPort3d* Menu::CreateViewPort3d(gui::Widget* parent, gui::Widget::Event* guiEvent, const std::string& fon, gui::ViewPort3d::Style style, bool isoRot, bool fonSize, const D3DXVECTOR2& size, SoundShemeType soundSheme) +gui::ViewPort3d* Menu::CreateViewPort3d(gui::Widget* parent, gui::Widget::Event* guiEvent, const std::string& fon, gui::ViewPort3d::Style style, bool isoRot, bool fonSize, const glm::vec2& size, SoundShemeType soundSheme) { gui::ViewPort3d* viewPort = GetGUI()->CreateViewPort3d(); viewPort->SetParent(parent); - D3DXVECTOR2 viewSize = size; + glm::vec2 viewSize = size; if (!fon.empty()) { gui::Plane* plane = GetGUI()->GetContext().CreatePlane(); @@ -1995,7 +1995,7 @@ gui::ViewPort3d* Menu::CreateMesh3dBox(gui::Widget* parent, gui::Widget::Event* return viewPort; } -gui::Plane3d* Menu::CreatePlane3d(gui::ViewPort3d* parent, const std::string& fon, const D3DXVECTOR2& size) +gui::Plane3d* Menu::CreatePlane3d(gui::ViewPort3d* parent, const std::string& fon, const glm::vec2& size) { gui::Plane3d* plane3d = parent->GetContext().CreatePlane3d(); plane3d->SetSize(size); @@ -2063,9 +2063,9 @@ void Menu::OnProgress(float deltaTime) const float cMusicLife = 3.0f; float offset = ClampValue((_musicTime - 0.0f)/cMusicDelay, 0.0f, 1.0f) - ClampValue((_musicTime - cMusicDelay - cMusicLife)/cMusicDelay, 0.0f, 1.0f); - D3DXVECTOR2 size = _musicDlg->size(); - D3DXVECTOR2 vpSize = GetGUI()->GetVPSize(); - D3DXVECTOR2 pos = D3DXVECTOR2(-5.0f + (40.0f + size.x) * offset, vpSize.y - 30.0f) - size/2; + glm::vec2 size = _musicDlg->size(); + glm::vec2 vpSize = GetGUI()->GetVPSize(); + glm::vec2 pos = glm::vec2(-5.0f + (40.0f + size.x) * offset, vpSize.y - 30.0f) - size/2; _musicDlg->root()->SetPos(pos); @@ -2199,7 +2199,7 @@ void Menu::SetVolume(Logic::SndCategory cat, float value) _game->GetWorld()->GetLogic()->SetVolume(cat, value); } -D3DXVECTOR2 Menu::GetAspectSize() +glm::vec2 Menu::GetAspectSize() { return GetAspectSize(Menu::cWinSize, GetGUI()->GetVPSize()); } diff --git a/src/Rock3dGame/source/game/MenuSystem.cpp b/src/Rock3dGame/source/game/MenuSystem.cpp index a1bc9ad4..90e95046 100644 --- a/src/Rock3dGame/source/game/MenuSystem.cpp +++ b/src/Rock3dGame/source/game/MenuSystem.cpp @@ -139,7 +139,7 @@ bool MenuFrame::visible() const return _root->GetVisible(); } -void MenuFrame::AdjustLayout(const D3DXVECTOR2& vpSize) +void MenuFrame::AdjustLayout(const glm::vec2& vpSize) { if (visible()) OnAdjustLayout(vpSize); @@ -151,11 +151,11 @@ void MenuFrame::Invalidate() AdjustLayout(menu()->GetGUI()->GetVPSize()); } -void MenuFrame::SetPos(const D3DXVECTOR2& pos, gui::Widget::Anchor align, const D3DXVECTOR2& size) +void MenuFrame::SetPos(const glm::vec2& pos, gui::Widget::Anchor align, const glm::vec2& size) { - D3DXVECTOR2 alignPos = gui::Widget::GetAlignPos(size, align); + glm::vec2 alignPos = gui::Widget::GetAlignPos(size, align); - D3DXVECTOR2 pos2 = pos + alignPos; + glm::vec2 pos2 = pos + alignPos; pos2.x = lsl::ClampValue(pos2.x, size.x/2 + 15.0f, root()->GetManager().GetVPSize().x - size.x/2 - 15.0f); pos2.y = lsl::ClampValue(pos2.y, size.y/2 + 15.0f, root()->GetManager().GetVPSize().y - size.y/2 - 15.0f); diff --git a/src/Rock3dGame/source/game/OptionsMenu.cpp b/src/Rock3dGame/source/game/OptionsMenu.cpp index f91ae32c..5df32ee7 100644 --- a/src/Rock3dGame/source/game/OptionsMenu.cpp +++ b/src/Rock3dGame/source/game/OptionsMenu.cpp @@ -84,14 +84,14 @@ GameFrame::GameFrame(Menu* menu, OptionsMenu* optionsMenu, gui::Widget* parent): _downArrow = menu->CreateArrow(root(), this); _downArrow->SetRot(-D3DX_PI/2); - D3DXVECTOR2 size = _downArrow->GetSize(); - _downArrow->SetSize(menu->StretchImage(*_downArrow->GetFon(), D3DXVECTOR2(30.0f, 30.0f), true, true, true, false)); + glm::vec2 size = _downArrow->GetSize(); + _downArrow->SetSize(menu->StretchImage(*_downArrow->GetFon(), glm::vec2(30.0f, 30.0f), true, true, true, false)); _downArrow->SetSelSize(menu->GetImageSize(*_downArrow->GetSel()) * _downArrow->GetSize().x / size.x); _upArrow = menu->CreateArrow(root(), this); _upArrow->SetRot(D3DX_PI/2); size = _upArrow->GetSize(); - _upArrow->SetSize(menu->StretchImage(*_upArrow->GetFon(), D3DXVECTOR2(30.0f, 30.0f), true, true, true, false)); + _upArrow->SetSize(menu->StretchImage(*_upArrow->GetFon(), glm::vec2(30.0f, 30.0f), true, true, true, false)); _upArrow->SetSelSize(menu->GetImageSize(*_upArrow->GetSel()) * _upArrow->GetSize().x / size.x); LoadCfg(); @@ -114,10 +114,10 @@ GameFrame::~GameFrame() menu()->ReleaseWidget(_grid); } -void GameFrame::AdjustGrid(const D3DXVECTOR2& vpSize) +void GameFrame::AdjustGrid(const glm::vec2& vpSize) { _grid->SetPos(-235.0f, -178.0f); - _grid->cellSize(D3DXVECTOR2(0, 50.0f)); + _grid->cellSize(glm::vec2(0, 50.0f)); int i = 0; int cellsOnLine = 1; @@ -204,7 +204,7 @@ void GameFrame::OnShow(bool value) } } -void GameFrame::OnAdjustLayout(const D3DXVECTOR2& vpSize) +void GameFrame::OnAdjustLayout(const glm::vec2& vpSize) { AdjustGrid(vpSize); @@ -419,7 +419,7 @@ void MediaFrame::OnShow(bool value) } } -void MediaFrame::OnAdjustLayout(const D3DXVECTOR2& vpSize) +void MediaFrame::OnAdjustLayout(const glm::vec2& vpSize) { for (int i = 0; i < cLabelEnd; ++i) { @@ -589,7 +589,7 @@ void NetworkTab::OnShow(bool value) _optionsMenu->RegNavElements(_steppers, cStepperEnd, _volumeBars, cVolumeBarEnd); } -void NetworkTab::OnAdjustLayout(const D3DXVECTOR2& vpSize) +void NetworkTab::OnAdjustLayout(const glm::vec2& vpSize) { for (int i = 0; i < cLabelEnd; ++i) { @@ -680,14 +680,14 @@ ControlsFrame::ControlsFrame(Menu* menu, OptionsMenu* optionsMenu, gui::Widget* _downArrow = menu->CreateArrow(root(), this); _downArrow->SetRot(-D3DX_PI/2); - D3DXVECTOR2 size = _downArrow->GetSize(); - _downArrow->SetSize(menu->StretchImage(*_downArrow->GetFon(), D3DXVECTOR2(30.0f, 30.0f), true, true, true, false)); + glm::vec2 size = _downArrow->GetSize(); + _downArrow->SetSize(menu->StretchImage(*_downArrow->GetFon(), glm::vec2(30.0f, 30.0f), true, true, true, false)); _downArrow->SetSelSize(menu->GetImageSize(*_downArrow->GetSel()) * _downArrow->GetSize().x / size.x); _upArrow = menu->CreateArrow(root(), this); _upArrow->SetRot(D3DX_PI/2); size = _upArrow->GetSize(); - _upArrow->SetSize(menu->StretchImage(*_upArrow->GetFon(), D3DXVECTOR2(30.0f, 30.0f), true, true, true, false)); + _upArrow->SetSize(menu->StretchImage(*_upArrow->GetFon(), glm::vec2(30.0f, 30.0f), true, true, true, false)); _upArrow->SetSelSize(menu->GetImageSize(*_upArrow->GetSel()) * _upArrow->GetSize().x / size.x); for (int i = 0; i < cControllerTypeEnd; ++i) @@ -710,7 +710,7 @@ ControlsFrame::~ControlsFrame() menu()->ReleaseWidget(_grid); } -void ControlsFrame::AdjustGrid(const D3DXVECTOR2& vpSize) +void ControlsFrame::AdjustGrid(const glm::vec2& vpSize) { _grid->SetPos(-235.0f, -130.0f); @@ -765,7 +765,7 @@ void ControlsFrame::ScrollGrid(int step) void ControlsFrame::LoadCfg() { - D3DXVECTOR2 cellSize = NullVec2; + glm::vec2 cellSize = NullVec2; unsigned itemCount = 0; InputBoxes::iterator iter = _boxes.begin(); @@ -817,7 +817,7 @@ void ControlsFrame::LoadCfg() _boxes.erase(--_boxes.end()); } - _grid->cellSize(cellSize + D3DXVECTOR2(0, 7.0f)); + _grid->cellSize(cellSize + glm::vec2(0, 7.0f)); } void ControlsFrame::OnShow(bool value) @@ -842,7 +842,7 @@ void ControlsFrame::OnShow(bool value) } } -void ControlsFrame::OnAdjustLayout(const D3DXVECTOR2& vpSize) +void ControlsFrame::OnAdjustLayout(const glm::vec2& vpSize) { for (int i = 0; i < cControllerTypeEnd; ++i) { @@ -1340,7 +1340,7 @@ gui::VolumeBar* OptionsMenu::CreateVolumeBar(gui::Widget* parent, gui::Widget::E return volumeBar; } -void OptionsMenu::AdjustLayout(const D3DXVECTOR2& vpSize) +void OptionsMenu::AdjustLayout(const glm::vec2& vpSize) { _menuBgMask->SetSize(vpSize); @@ -1526,9 +1526,9 @@ void StartOptionsMenu::OnShow(bool value) menu()->UnregNavElements(_menuItems[miApply]); } -void StartOptionsMenu::OnAdjustLayout(const D3DXVECTOR2& vpSize) +void StartOptionsMenu::OnAdjustLayout(const glm::vec2& vpSize) { - D3DXVECTOR2 offs = D3DXVECTOR2(-160.0f, 45.0f); + glm::vec2 offs = glm::vec2(-160.0f, 45.0f); _menuBgMask->SetSize(vpSize); diff --git a/src/Rock3dGame/source/game/Player.cpp b/src/Rock3dGame/source/game/Player.cpp index 911073da..aa8c8e9a 100644 --- a/src/Rock3dGame/source/game/Player.cpp +++ b/src/Rock3dGame/source/game/Player.cpp @@ -953,8 +953,8 @@ void Player::CarState::Update(float deltaTime) nxActor->getGlobalOrientationQuat().getXYZW(rot3); Vec3Rotate(XVector, rot3, dir3); - pos = D3DXVECTOR2(pos3); - dir = D3DXVECTOR2(dir3); + pos = glm::vec2(pos3); + dir = glm::vec2(dir3); speed = GameCar::GetSpeed(nxActor, dir3); D3DXVec2Normalize(&dir, &dir); @@ -1246,10 +1246,10 @@ void Player::CreateNightLights(MapObj* mapObj) if (mapObj == NULL) return; - //{D3DXVECTOR3(1.7f, 0.4f, 0.02f), D3DXVECTOR2(1.5f, 1.5f), true}, - //{D3DXVECTOR3(1.7f, -0.4f, 0.02f), D3DXVECTOR2(1.5f, 1.5f), true}, - //{D3DXVECTOR3(-1.57f, 0.45f, 0.28f), D3DXVECTOR2(1.0f, 1.0f), false}, - //{D3DXVECTOR3(-1.57f, -0.45f, 0.28f), D3DXVECTOR2(1.0f, 1.0f), false} + //{D3DXVECTOR3(1.7f, 0.4f, 0.02f), glm::vec2(1.5f, 1.5f), true}, + //{D3DXVECTOR3(1.7f, -0.4f, 0.02f), glm::vec2(1.5f, 1.5f), true}, + //{D3DXVECTOR3(-1.57f, 0.45f, 0.28f), glm::vec2(1.0f, 1.0f), false}, + //{D3DXVECTOR3(-1.57f, -0.45f, 0.28f), glm::vec2(1.0f, 1.0f), false} Garage::Car* car = _race->GetGarage().FindCar(_car.record); if (car == NULL) @@ -1716,7 +1716,7 @@ void Player::ResetCar() if (lastNode && _car.mapObj) { /*D3DXVECTOR3 pos = lastNode->GetTile().GetPoint(_car.lastNodeCoordX) + ZVector * lastNode->GetTile().ComputeHeight(0.5f) * 0.5f; - D3DXVECTOR2 dir2 = lastNode->GetTile().GetDir(); + glm::vec2 dir2 = lastNode->GetTile().GetDir(); NxRay nxRay(NxVec3(pos), NxVec3(-ZVector)); NxRaycastHit hit; @@ -1726,7 +1726,7 @@ void Player::ResetCar() pos = lastNode->GetTile().GetPoint(0.0f) + ZVector * lastNode->GetTile().ComputeHeight(0.5f) * 0.5f;*/ D3DXVECTOR3 pos = NullVector; - D3DXVECTOR2 dir2 = NullVec2; + glm::vec2 dir2 = NullVec2; WayNode* node = lastNode; float distX = node->GetTile().ComputeLength(_car.lastNodeCoordX); @@ -1736,7 +1736,7 @@ void Player::ResetCar() for (int i = 0; i < 5; ++i) { D3DXVECTOR3 newPos; - D3DXVECTOR2 newDir2; + glm::vec2 newDir2; bool isFind = false; for (int j = 0; j < 3; ++j) diff --git a/src/Rock3dGame/source/game/Race.cpp b/src/Rock3dGame/source/game/Race.cpp index 854e88d4..7ff7e451 100644 --- a/src/Rock3dGame/source/game/Race.cpp +++ b/src/Rock3dGame/source/game/Race.cpp @@ -3279,10 +3279,10 @@ void Garage::Load(lsl::SReader* reader) } } - D3DXVECTOR2 touchBorderDamage = NullVec2; - D3DXVECTOR2 touchBorderDamageForce = NullVec2; - D3DXVECTOR2 touchCarDamage = NullVec2; - D3DXVECTOR2 touchCarDamageForce = NullVec2; + glm::vec2 touchBorderDamage = NullVec2; + glm::vec2 touchBorderDamageForce = NullVec2; + glm::vec2 touchCarDamage = NullVec2; + glm::vec2 touchCarDamageForce = NullVec2; lsl::SReadValue(reader, "touchBorderDamage", touchBorderDamage); lsl::SReadValue(reader, "touchBorderDamageForce", touchBorderDamageForce); @@ -7509,8 +7509,8 @@ void Race::ResetCarPos() if (node) { - D3DXVECTOR2 dir2 = node->GetTile().GetDir(); - D3DXVECTOR2 norm2 = node->GetTile().GetNorm(); + glm::vec2 dir2 = node->GetTile().GetDir(); + glm::vec2 norm2 = node->GetTile().GetNorm(); dirVec = D3DXVECTOR3(dir2.x, dir2.y, 0); lineVec = D3DXVECTOR3(norm2.x, norm2.y, 0); diff --git a/src/Rock3dGame/source/game/RaceMenu2.cpp b/src/Rock3dGame/source/game/RaceMenu2.cpp index c886a28d..6472a947 100644 --- a/src/Rock3dGame/source/game/RaceMenu2.cpp +++ b/src/Rock3dGame/source/game/RaceMenu2.cpp @@ -314,7 +314,7 @@ SpaceshipFrame::SpaceshipFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* pare graph::PlaneNode* spaceSprite = &((graph::PlaneNode&)_spaceMapObj->GetGameObj().GetGrActor().GetNodes().front()); - D3DXVECTOR2 imageSize = static_cast(spaceSprite->material.Get()->samplers.front()).GetSize(); + glm::vec2 imageSize = static_cast(spaceSprite->material.Get()->samplers.front()).GetSize(); float aspect = imageSize.x/imageSize.y; spaceSprite->SetPos(center); spaceSprite->SetScale(D3DXVECTOR3(aspect * 70.0f, 70.0f, 1.0f)); @@ -440,13 +440,13 @@ GarageFrame::GarageFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent): M _damageBar->SetAlign(gui::Widget::waLeftTop); _armorBarValue = menu->CreateLabel("", _armorBar, "Small", NullVec2, gui::Text::haRight, gui::Text::vaTop, color2); - _armorBarValue->SetPos(D3DXVECTOR2(_armorBar->GetSize().x - 4.0f, 1.0f)); + _armorBarValue->SetPos(glm::vec2(_armorBar->GetSize().x - 4.0f, 1.0f)); _damageBarValue = menu->CreateLabel("", _damageBar, "Small", NullVec2, gui::Text::haRight, gui::Text::vaTop, color2); - _damageBarValue->SetPos(D3DXVECTOR2(_damageBar->GetSize().x - 4.0f, 1.0f)); + _damageBarValue->SetPos(glm::vec2(_damageBar->GetSize().x - 4.0f, 1.0f)); _speedBarValue = menu->CreateLabel("", _speedBar, "Small", NullVec2, gui::Text::haRight, gui::Text::vaTop, color2); - _speedBarValue->SetPos(D3DXVECTOR2(_speedBar->GetSize().x - 4.0f, 1.0f)); + _speedBarValue->SetPos(glm::vec2(_speedBar->GetSize().x - 4.0f, 1.0f)); _menuItems[miExit] = _raceMenu->CreateMenuButton2(svBack, _bottomPanel, color2, this); _menuItems[miExit]->SetAlign(gui::Widget::waLeftTop); @@ -531,7 +531,7 @@ void GarageFrame::UpdateCarList(gui::Grid* grid) { _cars.clear(); grid->DeleteAllChildren(); - D3DXVECTOR2 size = NullVec2; + glm::vec2 size = NullVec2; Garage::Cars avCars; Garage::Cars secretCars; @@ -591,7 +591,7 @@ void GarageFrame::UpdateCarList(gui::Grid* grid) size = plane->GetSize(); } - grid->cellSize(size + D3DXVECTOR2(0.0f, 0.0f)); + grid->cellSize(size + glm::vec2(0.0f, 0.0f)); grid->Reposition(); } @@ -606,14 +606,14 @@ GarageFrame::Cars::const_iterator GarageFrame::FindCar(Garage::Car* car) void GarageFrame::AdjustCarList() { - D3DXVECTOR2 vpSize = uiRoot()->GetVPSize(); + glm::vec2 vpSize = uiRoot()->GetVPSize(); float carGridSpace = 10; int totalCars = _carGrid->GetChildren().size(); int numCars = static_cast((vpSize.x - carGridSpace) / _carGrid->cellSize().x); carGridSpace = (vpSize.x - numCars * _carGrid->cellSize().x)/2.0f; - _carGrid->SetPos(D3DXVECTOR2(-vpSize.x/2 + carGridSpace, 25.0f)); + _carGrid->SetPos(glm::vec2(-vpSize.x/2 + carGridSpace, 25.0f)); int selIndex = -1; int i = 0; @@ -688,7 +688,7 @@ gui::Widget* GarageFrame::AddColor(gui::Grid* grid, const D3DXCOLOR& color) void GarageFrame::UpdateColorList(gui::Grid* grid, const D3DXCOLOR colors[], unsigned count) { grid->DeleteAllChildren(); - D3DXVECTOR2 size = NullVec2; + glm::vec2 size = NullVec2; for (unsigned i = 0; i < count; ++i) { @@ -696,7 +696,7 @@ void GarageFrame::UpdateColorList(gui::Grid* grid, const D3DXCOLOR colors[], uns size = plane->GetSize(); } - grid->cellSize(size + D3DXVECTOR2(12.0f, 12.0f)); + grid->cellSize(size + glm::vec2(12.0f, 12.0f)); grid->Reposition(); } @@ -725,18 +725,18 @@ void GarageFrame::SelectColor(const D3DXCOLOR& value) menu()->SetCarColor(value); } -void GarageFrame::ShowMessage(StringValue message, gui::Widget* sender, const D3DXVECTOR2& slotSize) +void GarageFrame::ShowMessage(StringValue message, gui::Widget* sender, const glm::vec2& slotSize) { - D3DXVECTOR2 cellOffs = slotSize/4; + glm::vec2 cellOffs = slotSize/4; cellOffs.y = -cellOffs.y; //menu()->ShowMessage(GetString(svWarning), GetString(message), GetString(svOk), sender->GetWorldPos() + cellOffs, gui::Widget::waLeftBottom, 0.0f); menu()->ShowMessage(GetString(svWarning), GetString(message), GetString(svOk), uiRoot()->GetVPSize()/2, gui::Widget::waCenter, 0.0f); } -void GarageFrame::ShowAccept(const std::string& message, gui::Widget* sender, const D3DXVECTOR2& slotSize) +void GarageFrame::ShowAccept(const std::string& message, gui::Widget* sender, const glm::vec2& slotSize) { - D3DXVECTOR2 cellOffs = slotSize/4; + glm::vec2 cellOffs = slotSize/4; cellOffs.y = -cellOffs.y; //menu()->ShowAccept(message, GetString(svYes), GetString(svNo), sender->GetWorldPos() + cellOffs, gui::Widget::waLeftBottom, this); @@ -837,38 +837,38 @@ void GarageFrame::OnShow(bool value) } } -void GarageFrame::OnAdjustLayout(const D3DXVECTOR2& vpSize) +void GarageFrame::OnAdjustLayout(const glm::vec2& vpSize) { - D3DXVECTOR2 size = menu()->GetImageSize(_topPanel->GetMaterial()); + glm::vec2 size = menu()->GetImageSize(_topPanel->GetMaterial()); //23.0f _topPanel->SetSize(size.x, size.y); _topPanel->SetPos(vpSize.x/2, 0.0f); - _rightPanel->SetPos(D3DXVECTOR2(vpSize.x + 1, (_topPanel->GetSize().y + vpSize.y - _bottomPanel->GetSize().y + 0.0f)/2.0f)); - _leftPanel->SetPos(D3DXVECTOR2(-1, (_topPanel->GetSize().y + vpSize.y - _bottomPanel->GetSize().y + 0.0f)/2.0f)); - _headerBg->SetPos(D3DXVECTOR2(0.0f, _topPanel->GetSize().y - 5)); - _moneyBg->SetPos(D3DXVECTOR2(vpSize.x/2 + 1, -_bottomPanel->GetSize().y + 38)); - _stateBg->SetPos(D3DXVECTOR2(418.0f, -_bottomPanel->GetSize().y + 60)); + _rightPanel->SetPos(glm::vec2(vpSize.x + 1, (_topPanel->GetSize().y + vpSize.y - _bottomPanel->GetSize().y + 0.0f)/2.0f)); + _leftPanel->SetPos(glm::vec2(-1, (_topPanel->GetSize().y + vpSize.y - _bottomPanel->GetSize().y + 0.0f)/2.0f)); + _headerBg->SetPos(glm::vec2(0.0f, _topPanel->GetSize().y - 5)); + _moneyBg->SetPos(glm::vec2(vpSize.x/2 + 1, -_bottomPanel->GetSize().y + 38)); + _stateBg->SetPos(glm::vec2(418.0f, -_bottomPanel->GetSize().y + 60)); - _damageBar->SetPos(D3DXVECTOR2(48.0f, 3.0f)); - _armorBar->SetPos(D3DXVECTOR2(48.0f, 41.0f)); - _speedBar->SetPos(D3DXVECTOR2(48.0f, 78.0f)); + _damageBar->SetPos(glm::vec2(48.0f, 3.0f)); + _armorBar->SetPos(glm::vec2(48.0f, 41.0f)); + _speedBar->SetPos(glm::vec2(48.0f, 78.0f)); - _menuItems[miExit]->SetPos(D3DXVECTOR2(-vpSize.x/2, -_bottomPanel->GetSize().y - 8.0f)); - _menuItems[miBuy]->SetPos(D3DXVECTOR2(15.0f, -_bottomPanel->GetSize().y)); + _menuItems[miExit]->SetPos(glm::vec2(-vpSize.x/2, -_bottomPanel->GetSize().y - 8.0f)); + _menuItems[miBuy]->SetPos(glm::vec2(15.0f, -_bottomPanel->GetSize().y)); - _leftArrow->SetPos(D3DXVECTOR2(_leftPanel->GetSize().x + 45.0f, vpSize.y/2)); - _rightArrow->SetPos(D3DXVECTOR2(vpSize.x - _rightPanel->GetSize().x - 45.0f, vpSize.y/2)); + _leftArrow->SetPos(glm::vec2(_leftPanel->GetSize().x + 45.0f, vpSize.y/2)); + _rightArrow->SetPos(glm::vec2(vpSize.x - _rightPanel->GetSize().x - 45.0f, vpSize.y/2)); - _leftColorGrid->SetPos(D3DXVECTOR2(-20.0f, 0.0f)); - _rightColorGrid->SetPos(D3DXVECTOR2(-20.0f, 0.0f)); + _leftColorGrid->SetPos(glm::vec2(-20.0f, 0.0f)); + _rightColorGrid->SetPos(glm::vec2(-20.0f, 0.0f)); - _labels[mlCarName]->SetPos(D3DXVECTOR2(10.0f, -155.0f)); - _labels[mlMoney]->SetPos(D3DXVECTOR2(-53.0f, -29.0f)); - _labels[mlPrice]->SetPos(D3DXVECTOR2(-523.0f, -80.0f)); + _labels[mlCarName]->SetPos(glm::vec2(10.0f, -155.0f)); + _labels[mlMoney]->SetPos(glm::vec2(-53.0f, -29.0f)); + _labels[mlPrice]->SetPos(glm::vec2(-523.0f, -80.0f)); - _labels[mlCarInfo]->SetPos(D3DXVECTOR2(0.0f, -60.0f)); - _labels[mlCarInfo]->SetSize(D3DXVECTOR2(800.0f, 105.0f)); + _labels[mlCarInfo]->SetPos(glm::vec2(0.0f, -60.0f)); + _labels[mlCarInfo]->SetSize(glm::vec2(800.0f, 105.0f)); AdjustCarList(); } @@ -1051,27 +1051,27 @@ WorkshopFrame::WorkshopFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent _damageBarBonus->SetSize(_damageBar->GetSize()); _armorBarValue = menu->CreateLabel("", _armorBar, "Small", NullVec2, gui::Text::haRight, gui::Text::vaTop, color2); - _armorBarValue->SetPos(D3DXVECTOR2(_armorBar->GetSize().x - 4.0f, 1.0f)); + _armorBarValue->SetPos(glm::vec2(_armorBar->GetSize().x - 4.0f, 1.0f)); _damageBarValue = menu->CreateLabel("", _damageBar, "Small", NullVec2, gui::Text::haRight, gui::Text::vaTop, color2); - _damageBarValue->SetPos(D3DXVECTOR2(_damageBar->GetSize().x - 4.0f, 1.0f)); + _damageBarValue->SetPos(glm::vec2(_damageBar->GetSize().x - 4.0f, 1.0f)); _speedBarValue = menu->CreateLabel("", _speedBar, "Small", NullVec2, gui::Text::haRight, gui::Text::vaTop, color2); - _speedBarValue->SetPos(D3DXVECTOR2(_speedBar->GetSize().x - 4.0f, 1.0f)); + _speedBarValue->SetPos(glm::vec2(_speedBar->GetSize().x - 4.0f, 1.0f)); _goodGrid = menu->CreateGrid(_leftPanel, this, gui::Grid::gsHorizontal, IdentityVec2, 3); _goodGrid->SetAlign(gui::Widget::waLeft); _downArrow = _raceMenu->CreateArrow(_leftPanel, this); _downArrow->SetRot(-D3DX_PI/2); - D3DXVECTOR2 size = _downArrow->GetSize(); - _downArrow->SetSize(menu->StretchImage(*_downArrow->GetFon(), D3DXVECTOR2(30.0f, 30.0f), true, true, true, false)); + glm::vec2 size = _downArrow->GetSize(); + _downArrow->SetSize(menu->StretchImage(*_downArrow->GetFon(), glm::vec2(30.0f, 30.0f), true, true, true, false)); _downArrow->SetSelSize(menu->GetImageSize(*_downArrow->GetSel()) * _downArrow->GetSize().x / size.x); _upArrow = _raceMenu->CreateArrow(_leftPanel, this); _upArrow->SetRot(D3DX_PI/2); size = _upArrow->GetSize(); - _upArrow->SetSize(menu->StretchImage(*_upArrow->GetFon(), D3DXVECTOR2(30.0f, 30.0f), true, true, true, false)); + _upArrow->SetSize(menu->StretchImage(*_upArrow->GetFon(), glm::vec2(30.0f, 30.0f), true, true, true, false)); _upArrow->SetSelSize(menu->GetImageSize(*_upArrow->GetSel()) * _upArrow->GetSize().x / size.x); const std::string slotIcons[Player::cSlotTypeEnd] = {"", "", "", "", "GUI\\hyperSlot.png", "GUI\\mineSlot.png", "GUI\\wpnSlot.png", "GUI\\wpnSlot.png", "GUI\\wpnSlot.png", "GUI\\wpnSlot.png"}; @@ -1186,7 +1186,7 @@ void WorkshopFrame::UpdateGoods() SetOverGood(NULL); SetOverGood2(NULL); _goodGrid->DeleteAllChildren(); - D3DXVECTOR2 size = IdentityVec2; + glm::vec2 size = IdentityVec2; struct Pred { @@ -1221,12 +1221,12 @@ void WorkshopFrame::UpdateGoods() size = viewPort->GetSize(); } - _goodGrid->cellSize(size + D3DXVECTOR2(22.0f, 22.0f)); + _goodGrid->cellSize(size + glm::vec2(22.0f, 22.0f)); } void WorkshopFrame::AdjustGood() { - _goodGrid->SetPos(D3DXVECTOR2(22.0f, 11.0f)); + _goodGrid->SetPos(glm::vec2(22.0f, 11.0f)); int i = 0; for (gui::Widget::Children::const_iterator iter = _goodGrid->GetChildren().begin(); iter != _goodGrid->GetChildren().end(); ++iter) @@ -1327,7 +1327,7 @@ bool WorkshopFrame::IsDragItem() return _dragItem.slot != NULL; } -void WorkshopFrame::UpdateDragPos(const D3DXVECTOR2& pos) +void WorkshopFrame::UpdateDragPos(const glm::vec2& pos) { _dragItem.viewport->SetPos(pos); } @@ -1428,7 +1428,7 @@ bool WorkshopFrame::UpgradeSlot(gui::Widget* sender, Player::SlotType type, int { Slot* slot = player()->GetSlotInst(type); bool isOk = false; - D3DXVECTOR2 slotSize = sender->GetSize(); + glm::vec2 slotSize = sender->GetSize(); WeaponItem* weapon = slot ? slot->GetItem().IsWeaponItem() : 0; if (weapon) @@ -1611,7 +1611,7 @@ void WorkshopFrame::UpdateMoney() _labels[mlMoney]->SetText(menu()->FormatCurrency(player()->GetMoney())); } -void WorkshopFrame::ShowInfo(Slot* slot, int cost, gui::Widget* sender, const D3DXVECTOR2& slotSize, int infoId) +void WorkshopFrame::ShowInfo(Slot* slot, int cost, gui::Widget* sender, const glm::vec2& slotSize, int infoId) { _infoId = infoId; @@ -1620,13 +1620,13 @@ void WorkshopFrame::ShowInfo(Slot* slot, int cost, gui::Widget* sender, const D3 if (wpn) damage = lsl::StrFmt("%0.0f", wpn->GetDamage()); - D3DXVECTOR2 cellOffs = slotSize/4; + glm::vec2 cellOffs = slotSize/4; cellOffs.y = -cellOffs.y; menu()->ShowWeaponDialog(GetString(slot->GetItem().GetName()), GetString(slot->GetItem().GetInfo()), menu()->FormatCurrency(cost), damage, sender->GetWorldPos() + cellOffs, gui::Widget::waLeftBottom, 0.0f); } -void WorkshopFrame::ShowInfo(Slot* slot, gui::Widget* sender, const D3DXVECTOR2& slotSize, int infoId) +void WorkshopFrame::ShowInfo(Slot* slot, gui::Widget* sender, const glm::vec2& slotSize, int infoId) { ShowInfo(slot, slot->GetItem().GetCost(), sender, slotSize, infoId); } @@ -1703,21 +1703,21 @@ void WorkshopFrame::UpdateBonusStats(Player::SlotType type, Slot* slot) } } -void WorkshopFrame::ShowMessage(StringValue message, gui::Widget* sender, const D3DXVECTOR2& slotSize) +void WorkshopFrame::ShowMessage(StringValue message, gui::Widget* sender, const glm::vec2& slotSize) { HideInfo(cUndefInfo); - D3DXVECTOR2 cellOffs = slotSize/4; + glm::vec2 cellOffs = slotSize/4; cellOffs.y = -cellOffs.y; menu()->ShowMessage(GetString(svWarning), GetString(message), GetString(svOk), sender->GetWorldPos() + cellOffs, gui::Widget::waLeftBottom, 0.0f); } -void WorkshopFrame::ShowAccept(const std::string& message, gui::Widget* sender, const D3DXVECTOR2& slotSize, Slot* slot) +void WorkshopFrame::ShowAccept(const std::string& message, gui::Widget* sender, const glm::vec2& slotSize, Slot* slot) { HideInfo(cUndefInfo); - D3DXVECTOR2 cellOffs = slotSize/4; + glm::vec2 cellOffs = slotSize/4; cellOffs.y = -cellOffs.y; SetOverGood2(sender); @@ -1746,30 +1746,30 @@ void WorkshopFrame::OnShow(bool value) } } -void WorkshopFrame::OnAdjustLayout(const D3DXVECTOR2& vpSize) +void WorkshopFrame::OnAdjustLayout(const glm::vec2& vpSize) { - _leftPanel->SetPos(D3DXVECTOR2(30, (_topPanel->GetSize().y - 30.0f + vpSize.y - _bottomPanel->GetSize().y)/2)); - _moneyBg->SetPos(D3DXVECTOR2(vpSize.x/2 + 1, -_bottomPanel->GetSize().y + 5)); - //_stateBg->SetPos(D3DXVECTOR2(418.0f, -_bottomPanel->GetSize().y + 25.0f)); - _stateBg->SetPos(D3DXVECTOR2(vpSize.x/2 - _stateBg->GetSize().x - 15.0f, -_bottomPanel->GetSize().y + 25.0f)); + _leftPanel->SetPos(glm::vec2(30, (_topPanel->GetSize().y - 30.0f + vpSize.y - _bottomPanel->GetSize().y)/2)); + _moneyBg->SetPos(glm::vec2(vpSize.x/2 + 1, -_bottomPanel->GetSize().y + 5)); + //_stateBg->SetPos(glm::vec2(418.0f, -_bottomPanel->GetSize().y + 25.0f)); + _stateBg->SetPos(glm::vec2(vpSize.x/2 - _stateBg->GetSize().x - 15.0f, -_bottomPanel->GetSize().y + 25.0f)); - _damageBarBonus->SetPos(D3DXVECTOR2(48.0f, 3.0f)); - _armorBarBonus->SetPos(D3DXVECTOR2(48.0f, 41.0f)); - _speedBarBonus->SetPos(D3DXVECTOR2(48.0f, 78.0f)); + _damageBarBonus->SetPos(glm::vec2(48.0f, 3.0f)); + _armorBarBonus->SetPos(glm::vec2(48.0f, 41.0f)); + _speedBarBonus->SetPos(glm::vec2(48.0f, 78.0f)); - _upArrow->SetPos(D3DXVECTOR2(_leftPanel->GetSize().x/2, -_leftPanel->GetSize().y/2 + 65.0f)); - _downArrow->SetPos(D3DXVECTOR2(_leftPanel->GetSize().x/2, _leftPanel->GetSize().y/2 - 42.0f)); + _upArrow->SetPos(glm::vec2(_leftPanel->GetSize().x/2, -_leftPanel->GetSize().y/2 + 65.0f)); + _downArrow->SetPos(glm::vec2(_leftPanel->GetSize().x/2, _leftPanel->GetSize().y/2 - 42.0f)); AdjustGood(); for (int i = 0; i < cMenuItemEnd; ++i) - _menuItems[i]->SetPos(D3DXVECTOR2(-vpSize.x/2, -_bottomPanel->GetSize().y + 40.0f + i * (_menuItems[i]->GetSize().y + 10.0f))); + _menuItems[i]->SetPos(glm::vec2(-vpSize.x/2, -_bottomPanel->GetSize().y + 40.0f + i * (_menuItems[i]->GetSize().y + 10.0f))); - _labels[mlHeader]->SetPos(D3DXVECTOR2(20.0f, 40.0f)); - _labels[mlMoney]->SetPos(D3DXVECTOR2(-53.0f, -29.0f)); + _labels[mlHeader]->SetPos(glm::vec2(20.0f, 40.0f)); + _labels[mlMoney]->SetPos(glm::vec2(-53.0f, -29.0f)); - _labels[mlHint]->SetPos(D3DXVECTOR2((_menuItems[miExit]->GetPos().x + _menuItems[miExit]->GetSize().x + _stateBg->GetPos().x)/2, -72.0f)); - _labels[mlHint]->SetSize(D3DXVECTOR2(800.0f, 105.0f)); + _labels[mlHint]->SetPos(glm::vec2((_menuItems[miExit]->GetPos().x + _menuItems[miExit]->GetSize().x + _stateBg->GetPos().x)/2, -72.0f)); + _labels[mlHint]->SetSize(glm::vec2(800.0f, 105.0f)); float scale = vpSize.y/720.0f; float centerX = vpSize.x * 0.63f; @@ -1779,20 +1779,20 @@ void WorkshopFrame::OnAdjustLayout(const D3DXVECTOR2& vpSize) float topOffset = std::max(centerY - 180.0f * scale, _topPanel->GetSize().y + 65.0f); float bottomOffset = std::min(centerY + 180.0f * scale, vpSize.y - _bottomPanel->GetSize().y - 65.0f); - D3DXVECTOR2 slotSize = _slots[0].plane->GetSize(); + glm::vec2 slotSize = _slots[0].plane->GetSize(); float slotSpace = 15.0f; - D3DXVECTOR2 slotOffset[Player::cSlotTypeEnd] = { - D3DXVECTOR2(leftOffset, centerY + slotSize.y/2 + slotSpace), - D3DXVECTOR2(leftOffset, centerY - slotSize.y/2 - slotSpace), - D3DXVECTOR2(centerX - slotSize.x/2 - 6.0f * slotSpace, bottomOffset), - D3DXVECTOR2(centerX + slotSize.x/2 + 6.0f * slotSpace, bottomOffset), - D3DXVECTOR2(rightOffset, centerY - slotSize.y/2 - slotSpace), - D3DXVECTOR2(rightOffset, centerY + slotSize.y/2 + slotSpace), - D3DXVECTOR2(centerX - (slotSize.x + 4.5f * slotSpace) * 1.5f, topOffset), - D3DXVECTOR2(centerX - (slotSize.x + 4.5f * slotSpace) * 0.5f, topOffset), - D3DXVECTOR2(centerX + (slotSize.x + 4.5f * slotSpace) * 0.5f, topOffset), - D3DXVECTOR2(centerX + (slotSize.x + 4.5f * slotSpace) * 1.5f, topOffset), + glm::vec2 slotOffset[Player::cSlotTypeEnd] = { + glm::vec2(leftOffset, centerY + slotSize.y/2 + slotSpace), + glm::vec2(leftOffset, centerY - slotSize.y/2 - slotSpace), + glm::vec2(centerX - slotSize.x/2 - 6.0f * slotSpace, bottomOffset), + glm::vec2(centerX + slotSize.x/2 + 6.0f * slotSpace, bottomOffset), + glm::vec2(rightOffset, centerY - slotSize.y/2 - slotSpace), + glm::vec2(rightOffset, centerY + slotSize.y/2 + slotSpace), + glm::vec2(centerX - (slotSize.x + 4.5f * slotSpace) * 1.5f, topOffset), + glm::vec2(centerX - (slotSize.x + 4.5f * slotSpace) * 0.5f, topOffset), + glm::vec2(centerX + (slotSize.x + 4.5f * slotSpace) * 0.5f, topOffset), + glm::vec2(centerX + (slotSize.x + 4.5f * slotSpace) * 1.5f, topOffset), }; for (int i = 0; i < Player::cSlotTypeEnd; ++i) @@ -2018,7 +2018,7 @@ bool WorkshopFrame::OnMouseMove(gui::Widget* sender, const gui::MouseMove& mMove if (sender == root()) { if (_dragItem.slot) - UpdateDragPos(D3DXVECTOR2(static_cast(mMove.worldCoord.x), static_cast(mMove.worldCoord.y))); + UpdateDragPos(glm::vec2(static_cast(mMove.worldCoord.x), static_cast(mMove.worldCoord.y))); } return false; @@ -2194,29 +2194,29 @@ int GamersFrame::GetPrevPlanetIndex(int sIndex) return -1; } -void GamersFrame::OnAdjustLayout(const D3DXVECTOR2& vpSize) +void GamersFrame::OnAdjustLayout(const glm::vec2& vpSize) { float planetRadius = (vpSize.y - _bottomPanel->GetSize().y)/2; - D3DXVECTOR2 planetPos = D3DXVECTOR2(vpSize.x/2 - 25.0f, planetRadius); + glm::vec2 planetPos = glm::vec2(vpSize.x/2 - 25.0f, planetRadius); menu()->StretchImage(_space->GetMaterial(), vpSize, true, true); - _photo->SetPos(D3DXVECTOR2(-30.0f, -18.0f)); - _photoLight->SetPos(D3DXVECTOR2(-30.0f, -100.0f)); + _photo->SetPos(glm::vec2(-30.0f, -18.0f)); + _photoLight->SetPos(glm::vec2(-30.0f, -100.0f)); - _leftArrow->SetPos(D3DXVECTOR2(planetPos.x - planetRadius - 40.0f + 3.0f, planetPos.y)); - _rightArrow->SetPos(D3DXVECTOR2(planetPos.x + planetRadius + 40.0f + 3.0f, planetPos.y)); - _nextArrow->SetPos(D3DXVECTOR2(400.0f, -100.0f)); + _leftArrow->SetPos(glm::vec2(planetPos.x - planetRadius - 40.0f + 3.0f, planetPos.y)); + _rightArrow->SetPos(glm::vec2(planetPos.x + planetRadius + 40.0f + 3.0f, planetPos.y)); + _nextArrow->SetPos(glm::vec2(400.0f, -100.0f)); _viewport->SetPos(planetPos); planetRadius = std::min(planetRadius, 300.0f); _viewport->SetSize(planetRadius * 3.1f, planetRadius * 3.1f); - _labels[mlName]->SetPos(D3DXVECTOR2(-25.0f, -_bottomPanel->GetSize().y + 23.0f)); - _labels[mlBonus]->SetPos(D3DXVECTOR2(245.0f, -105.0f)); + _labels[mlName]->SetPos(glm::vec2(-25.0f, -_bottomPanel->GetSize().y + 23.0f)); + _labels[mlBonus]->SetPos(glm::vec2(245.0f, -105.0f)); - _labels[mlInfo]->SetPos(D3DXVECTOR2(-390.0f, -100.0f)); - _labels[mlInfo]->SetSize(D3DXVECTOR2(475.0f, 160.0f)); + _labels[mlInfo]->SetPos(glm::vec2(-390.0f, -100.0f)); + _labels[mlInfo]->SetSize(glm::vec2(475.0f, 160.0f)); } void GamersFrame::OnShow(bool value) @@ -2250,7 +2250,7 @@ void GamersFrame::OnInvalidate() _mesh3d->GetMaterial()->GetSampler().SetTex(planet->GetTexture()); _photo->GetMaterial().GetSampler().SetTex(planet->GetBoss().photo); - _photo->SetSize(menu()->StretchImage(_photo->GetMaterial(), D3DXVECTOR2(190.0f, 190.0f), true, false, true, false)); + _photo->SetSize(menu()->StretchImage(_photo->GetMaterial(), glm::vec2(190.0f, 190.0f), true, false, true, false)); _leftArrow->SetVisible(GetPrevPlanetIndex(_planetIndex) != -1); _rightArrow->SetVisible(GetNextPlanetIndex(_planetIndex) != -1); @@ -2418,7 +2418,7 @@ AngarFrame::PlanetBox& AngarFrame::AddPlanet(Planet* planet, int index) box->viewport->SetRot3dSpeed(quat); D3DXQuaternionRotationAxis(&quat, &XVector, D3DX_PI/2.0f); box->viewport->GetBox()->SetRot(quat); - box->viewport->SetSize(D3DXVECTOR2(180.0f, 180.0f)); + box->viewport->SetSize(glm::vec2(180.0f, 180.0f)); gui::Mesh3d* mesh3d = static_cast(box->viewport->GetBox()->GetChildren().front()); mesh3d->GetMaterial()->GetSampler().SetFiltering(graph::BaseSampler::sfAnisotropic); @@ -2426,7 +2426,7 @@ AngarFrame::PlanetBox& AngarFrame::AddPlanet(Planet* planet, int index) box->slotClip = menu()->CreateDummy(box->slot, NULL); box->slotClip->SetFlag(gui::Widget::wfClientClip, true); - box->slotClip->SetSize(box->slot->GetSize() - D3DXVECTOR2(8.0f, 8.0f)); + box->slotClip->SetSize(box->slot->GetSize() - glm::vec2(8.0f, 8.0f)); box->doorDown = menu()->CreatePlane(box->slotClip, NULL, "GUI\\doorDown.png", true, IdentityVec2, gui::Material::bmTransparency); box->doorDown->SetAlign(gui::Widget::waTop); @@ -2480,7 +2480,7 @@ void AngarFrame::UpdatePlanets() _planets.erase(_planets.begin() + index, _planets.end()); } - _planetGrid->cellSize(D3DXVECTOR2(224.0f, 130.0f)); + _planetGrid->cellSize(glm::vec2(224.0f, 130.0f)); _planetGrid->Reposition(); _planetGridBg->cellSize(_planetGrid->cellSize()); @@ -2508,22 +2508,22 @@ void AngarFrame::SetDoorPos(PlanetBox& planet, float alpha) alpha = 0.0f; float doorOffset = 16.0f * alpha; - planet.doorDown->SetPos(D3DXVECTOR2(-1.0f, -4.0f + doorOffset)); - planet.doorUp->SetPos(D3DXVECTOR2(-1.0f, 4.0f - doorOffset)); + planet.doorDown->SetPos(glm::vec2(-1.0f, -4.0f + doorOffset)); + planet.doorUp->SetPos(glm::vec2(-1.0f, 4.0f - doorOffset)); } -void AngarFrame::ShowMessage(StringValue message, gui::Widget* sender, const D3DXVECTOR2& slotSize) +void AngarFrame::ShowMessage(StringValue message, gui::Widget* sender, const glm::vec2& slotSize) { - D3DXVECTOR2 cellOffs = slotSize/2; + glm::vec2 cellOffs = slotSize/2; cellOffs.y = -cellOffs.y; cellOffs.x = 0; menu()->ShowMessage(GetString(svWarning), GetString(message), GetString(svOk), sender->GetWorldPos() + cellOffs, gui::Widget::waBottom, 0.0f); } -void AngarFrame::ShowAccept(const std::string& message, gui::Widget* sender, const D3DXVECTOR2& slotSize, lsl::Object* data) +void AngarFrame::ShowAccept(const std::string& message, gui::Widget* sender, const glm::vec2& slotSize, lsl::Object* data) { - D3DXVECTOR2 cellOffs = slotSize/2; + glm::vec2 cellOffs = slotSize/2; cellOffs.y = -cellOffs.y; cellOffs.x = 0; @@ -2603,31 +2603,31 @@ void AngarFrame::OnShow(bool value) } } -void AngarFrame::OnAdjustLayout(const D3DXVECTOR2& vpSize) +void AngarFrame::OnAdjustLayout(const glm::vec2& vpSize) { _bottomPanelBg->SetPos(vpSize.x/2, vpSize.y - 20.0f); - _planetGrid->SetPos(D3DXVECTOR2(-_bottomPanel->GetSize().x/2 + 35.0f, -_bottomPanel->GetSize().y/2)); - _planetGridBg->SetPos(_planetGrid->GetPos() + D3DXVECTOR2(0.0f, -124.0f)); + _planetGrid->SetPos(glm::vec2(-_bottomPanel->GetSize().x/2 + 35.0f, -_bottomPanel->GetSize().y/2)); + _planetGridBg->SetPos(_planetGrid->GetPos() + glm::vec2(0.0f, -124.0f)); if (_planetIndex != -1) { - D3DXVECTOR2 pos = _planets[_planetIndex].slot->GetPos() + D3DXVECTOR2(0.0f, -37.0f) + _planetGridBg->GetPos(); + glm::vec2 pos = _planets[_planetIndex].slot->GetPos() + glm::vec2(0.0f, -37.0f) + _planetGridBg->GetPos(); pos.x = lsl::ClampValue(pos.x, -vpSize.x/2 + _planetInfo->GetSize().x/2, -vpSize.x/2 + vpSize.x - _planetInfo->GetSize().x/2); _planetInfo->SetPos(pos); } - _planetInfoClose->SetPos(D3DXVECTOR2(180.0f, -265.0f)); - _planetBoss->SetPos(D3DXVECTOR2(107.0f, -191.0f)); + _planetInfoClose->SetPos(glm::vec2(180.0f, -265.0f)); + _planetBoss->SetPos(glm::vec2(107.0f, -191.0f)); - _planetBossCar->SetPos(D3DXVECTOR2(107.0f, -78.0f)); - _planetBossCar->SetSize(D3DXVECTOR2(110.0f, 110.0f)); + _planetBossCar->SetPos(glm::vec2(107.0f, -78.0f)); + _planetBossCar->SetSize(glm::vec2(110.0f, 110.0f)); - _labels[mlPlanetName]->SetPos(D3DXVECTOR2(0, -269.0f)); - _labels[mlBossName]->SetPos(D3DXVECTOR2(-60.0f, -238.0f)); - _labels[mlBossInfo]->SetPos(D3DXVECTOR2(-_planetInfo->GetSize().x/2 + 15, -222.0f)); + _labels[mlPlanetName]->SetPos(glm::vec2(0, -269.0f)); + _labels[mlBossName]->SetPos(glm::vec2(-60.0f, -238.0f)); + _labels[mlBossInfo]->SetPos(glm::vec2(-_planetInfo->GetSize().x/2 + 15, -222.0f)); _labels[mlBossInfo]->SetSize(225.0f, 200.0f); for (int i = 0; i < cMenuItemEnd; ++i) - _menuItems[i]->SetPos(D3DXVECTOR2(0.0f, 30.0f + i * (_menuItems[i]->GetSize().y + 10.0f))); + _menuItems[i]->SetPos(glm::vec2(0.0f, 30.0f + i * (_menuItems[i]->GetSize().y + 10.0f))); } void AngarFrame::OnInvalidate() @@ -2639,7 +2639,7 @@ void AngarFrame::OnInvalidate() _planetInfo->SetVisible(true); _planetBoss->GetMaterial().GetSampler().SetTex(planet->GetBoss().photo); - _planetBoss->SetSize(menu()->StretchImage(_planetBoss->GetMaterial(), D3DXVECTOR2(110.0f, 85.0f), true, false, true, false)); + _planetBoss->SetSize(menu()->StretchImage(_planetBoss->GetMaterial(), glm::vec2(110.0f, 85.0f), true, false, true, false)); if (planet->GetBoss().cars.size() > 0) _raceMenu->CreateCar(_planetBossCar, garage().FindCar(planet->GetBoss().cars.front().record), clrWhite, NULL); @@ -2876,7 +2876,7 @@ AchievmentFrame::~AchievmentFrame() menu()->ReleaseWidget(_bg); } -const AchievmentFrame::AchievmentBox* AchievmentFrame::AddAchievment(unsigned index, const std::string& lockImg, const std::string& img, const D3DXVECTOR2& pos, Achievment* model) +const AchievmentFrame::AchievmentBox* AchievmentFrame::AddAchievment(unsigned index, const std::string& lockImg, const std::string& img, const glm::vec2& pos, Achievment* model) { LSL_ASSERT(model); @@ -2906,7 +2906,7 @@ const AchievmentFrame::AchievmentBox* AchievmentFrame::AddAchievment(unsigned in box->price->SetVisible(model->state() == Achievment::asUnlocked); box->price->SetText(lsl::StrFmt("%d", model->price())); - box->price->SetPos(D3DXVECTOR2(0.0f, box->image->GetSize().y/2 - 25.0f)); + box->price->SetPos(glm::vec2(0.0f, box->image->GetSize().y/2 - 25.0f)); if (model->state() == Achievment::asLocked) box->button->GetOrCreateFon()->GetSampler().SetTex(GetTexture("GUI\\closeBut.png")); @@ -2929,7 +2929,7 @@ const AchievmentFrame::AchievmentBox* AchievmentFrame::AddAchievment(unsigned in else box->button->SetSel(NULL); - box->button->SetPos(box->image->GetSize()/2 - D3DXVECTOR2(15.0f, 25.0f)); + box->button->SetPos(box->image->GetSize()/2 - glm::vec2(15.0f, 25.0f)); return box; } @@ -2947,7 +2947,7 @@ void AchievmentFrame::UpdateAchievments() const std::string nameList[cMenuBoxEnd] = {AchievmentModel::cViper, AchievmentModel::cBuggi, AchievmentModel::cAirblade, AchievmentModel::cReflector, AchievmentModel::cDroid, AchievmentModel::cTankchetti, AchievmentModel::cPhaser, AchievmentModel::cMustang, AchievmentModel::cArmor4}; const std::string lockImgList[cMenuBoxEnd] = {"GUI\\Rewards\\viperLock.png", "GUI\\Rewards\\buggiLock.png", "GUI\\Rewards\\airbladeLock.png", "GUI\\Rewards\\reflectorLock.png", "GUI\\Rewards\\droidLock.png", "GUI\\Rewards\\tankchettiLock.png", "GUI\\Rewards\\phaserLock.png", "GUI\\Rewards\\mustangLock.png", "GUI\\Rewards\\musicTrackLock.png"}; const std::string imgList[cMenuBoxEnd] = {"GUI\\Rewards\\viper.png", "GUI\\Rewards\\buggi.png", "GUI\\Rewards\\airblade.png", "GUI\\Rewards\\reflector.png", "GUI\\Rewards\\droid.png", "GUI\\Rewards\\tankchetti.png", "GUI\\Rewards\\phaser.png", "GUI\\Rewards\\mustang.png", "GUI\\Rewards\\musicTrack.png"}; - const D3DXVECTOR2 posList[cMenuBoxEnd] = {D3DXVECTOR2(200.0f, 105.0f), D3DXVECTOR2(405.0f, 155.0f), D3DXVECTOR2(0.0f, 245.0f), D3DXVECTOR2(-190.0f, 125.0f), D3DXVECTOR2(-380.0f, 95.0f), D3DXVECTOR2(-325.0f, 265.0f), D3DXVECTOR2(-190.0f, 400.0f), D3DXVECTOR2(205.0f, 375.0f), D3DXVECTOR2(445.0f, 315.0f)}; + const glm::vec2 posList[cMenuBoxEnd] = {glm::vec2(200.0f, 105.0f), glm::vec2(405.0f, 155.0f), glm::vec2(0.0f, 245.0f), glm::vec2(-190.0f, 125.0f), glm::vec2(-380.0f, 95.0f), glm::vec2(-325.0f, 265.0f), glm::vec2(-190.0f, 400.0f), glm::vec2(205.0f, 375.0f), glm::vec2(445.0f, 315.0f)}; const Box sortBox[cMenuBoxEnd] = {mbMusicTrack, mbBuggi, mbViper, mbPhaser, mbMustang, mbAirblade, mbReflector, mbDroid, mbTankchetti}; @@ -2961,7 +2961,7 @@ void AchievmentFrame::UpdateAchievments() Achievment* model = achievment().Get(nameList[box]); if (model) { - achievments[box] = *AddAchievment(count++, lockImgList[box], imgList[box], posList[box] + D3DXVECTOR2(-30.0f, 0.0f), model); + achievments[box] = *AddAchievment(count++, lockImgList[box], imgList[box], posList[box] + glm::vec2(-30.0f, 0.0f), model); } } @@ -3055,7 +3055,7 @@ void AchievmentFrame::OnShow(bool value) } } -void AchievmentFrame::OnAdjustLayout(const D3DXVECTOR2& vpSize) +void AchievmentFrame::OnAdjustLayout(const glm::vec2& vpSize) { _bottomPanel->SetPos(vpSize.x/2, vpSize.y - 80.0f); _bottomPanel->SetSize(vpSize.x, _bottomPanel->GetSize().y); @@ -3065,11 +3065,11 @@ void AchievmentFrame::OnAdjustLayout(const D3DXVECTOR2& vpSize) float scale = std::min(vpSize.x/1090.0f, vpSize.y/720.0f); _panel->SetScale(scale, scale); - _labels[mlPoints]->SetPos(D3DXVECTOR2(0, 40.0f)); - _labels[mlRewards]->SetPos(D3DXVECTOR2(0.0f, 555.0f)); + _labels[mlPoints]->SetPos(glm::vec2(0, 40.0f)); + _labels[mlRewards]->SetPos(glm::vec2(0.0f, 555.0f)); for (int i = 0; i < cMenuItemEnd; ++i) - _menuItems[i]->SetPos(D3DXVECTOR2(0.0f, _bottomPanel->GetPos().y + 17.0f + i * (_menuItems[i]->GetSize().y + 10.0f))); + _menuItems[i]->SetPos(glm::vec2(0.0f, _bottomPanel->GetPos().y + 17.0f + i * (_menuItems[i]->GetSize().y + 10.0f))); } void AchievmentFrame::OnInvalidate() @@ -3175,13 +3175,13 @@ RaceMainFrame::RaceMainFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent _damageBar = menu->CreateBar(_stateBg, NULL, "GUI\\statBar.png", ""); _armorBarValue = menu->CreateLabel("", _armorBar, "Small", NullVec2, gui::Text::haRight, gui::Text::vaCenter, color1); - _armorBarValue->SetPos(D3DXVECTOR2(_armorBar->GetSize().x/2 - 15.0f, 0.0f)); + _armorBarValue->SetPos(glm::vec2(_armorBar->GetSize().x/2 - 15.0f, 0.0f)); _damageBarValue = menu->CreateLabel("", _damageBar, "Small", NullVec2, gui::Text::haRight, gui::Text::vaCenter, color1); - _damageBarValue->SetPos(D3DXVECTOR2(_damageBar->GetSize().x/2 - 15.0f, 0.0f)); + _damageBarValue->SetPos(glm::vec2(_damageBar->GetSize().x/2 - 15.0f, 0.0f)); _speedBarValue = menu->CreateLabel("", _speedBar, "Small", NullVec2, gui::Text::haRight, gui::Text::vaCenter, color1); - _speedBarValue->SetPos(D3DXVECTOR2(_speedBar->GetSize().x/2 - 15.0f, 0.0f)); + _speedBarValue->SetPos(glm::vec2(_speedBar->GetSize().x/2 - 15.0f, 0.0f)); _viewportCar = menu->CreateViewPort3d(_topPanel, NULL, "", gui::ViewPort3d::msAnim); D3DXQUATERNION quat; @@ -3211,7 +3211,7 @@ RaceMainFrame::RaceMainFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent for (int i = 0; i < 6; ++i) { _slots[i] = menu->CreateMesh3dBox(_topPanel, NULL, NULL, NULL, gui::ViewPort3d::msAnim); - _slots[i]->SetSize(D3DXVECTOR2(50.0f, 50.0f)); + _slots[i]->SetSize(glm::vec2(50.0f, 50.0f)); D3DXQUATERNION quat; D3DXQuaternionRotationAxis(&quat, &ZVector, D3DX_PI/2.0f); @@ -3314,24 +3314,24 @@ void RaceMainFrame::AdjustPlayer(PlayerBox* box, bool invert) box->bg->SetRot(invert ? D3DX_PI : 0.0f); - box->photo->SetSize(menu()->StretchImage(box->photo->GetMaterial(), D3DXVECTOR2(100.0f, 97.0f), true, false, true, false)); - box->photo->SetPos(D3DXVECTOR2(-60.0f * dir, 0.0f)); + box->photo->SetSize(menu()->StretchImage(box->photo->GetMaterial(), glm::vec2(100.0f, 97.0f), true, false, true, false)); + box->photo->SetPos(glm::vec2(-60.0f * dir, 0.0f)); - box->name->SetPos(D3DXVECTOR2(0.0f * dir, -70.0f)); + box->name->SetPos(glm::vec2(0.0f * dir, -70.0f)); box->name->SetAlign(gui::Widget::waCenter); box->name->SetHorAlign(gui::Text::haCenter); - box->readyLabel->SetPos(D3DXVECTOR2(0.0f * dir, 68.0f)); + box->readyLabel->SetPos(glm::vec2(0.0f * dir, 68.0f)); box->readyLabel->SetAlign(gui::Widget::waCenter); box->readyLabel->SetHorAlign(gui::Text::haCenter); box->readyState->SetSize(menu()->GetImageSize(box->readyState->GetMaterial())); - box->readyState->SetPos(D3DXVECTOR2(128.0f * dir, 68.0f)); + box->readyState->SetPos(glm::vec2(128.0f * dir, 68.0f)); - box->kick->SetPos(D3DXVECTOR2(128.0f * dir, -68.0f)); + box->kick->SetPos(glm::vec2(128.0f * dir, -68.0f)); - box->viewportCar->SetSize(D3DXVECTOR2(130.0f, 130.0f)); - box->viewportCar->SetPos(D3DXVECTOR2(72.0f * dir, 0.0f)); + box->viewportCar->SetSize(glm::vec2(130.0f, 130.0f)); + box->viewportCar->SetPos(glm::vec2(72.0f * dir, 0.0f)); } void RaceMainFrame::UpdatePlayers() @@ -3376,20 +3376,20 @@ void RaceMainFrame::OnShow(bool value) menu()->SetNavElements(_menuItems[miStartRace], value, elements, ARRAY_LENGTH(elements)); } -void RaceMainFrame::OnAdjustLayout(const D3DXVECTOR2& vpSize) +void RaceMainFrame::OnAdjustLayout(const glm::vec2& vpSize) { const float menuItemSpaceX = 50.0f; - _moneyBg->SetPos(D3DXVECTOR2(vpSize.x/2 + 1, -_bottomPanel->GetSize().y + 5)); - _stateBg->SetPos(D3DXVECTOR2(-vpSize.x/2 - 1, -_bottomPanel->GetSize().y + 5)); + _moneyBg->SetPos(glm::vec2(vpSize.x/2 + 1, -_bottomPanel->GetSize().y + 5)); + _stateBg->SetPos(glm::vec2(-vpSize.x/2 - 1, -_bottomPanel->GetSize().y + 5)); - _damageBar->SetPos(D3DXVECTOR2(128.0f, -98.0f)); - _armorBar->SetPos(D3DXVECTOR2(150.0f, -61.0f)); - _speedBar->SetPos(D3DXVECTOR2(173.0f, -23.0f)); + _damageBar->SetPos(glm::vec2(128.0f, -98.0f)); + _armorBar->SetPos(glm::vec2(150.0f, -61.0f)); + _speedBar->SetPos(glm::vec2(173.0f, -23.0f)); - _labels[mlMoney]->SetPos(D3DXVECTOR2(-53.0f, -29.0f)); - _labels[mlPassInfo]->SetPos(D3DXVECTOR2(-377.0f, 86.0f)); - _labels[mlTournamentInfo]->SetPos(D3DXVECTOR2(-102, 86.0f)); + _labels[mlMoney]->SetPos(glm::vec2(-53.0f, -29.0f)); + _labels[mlPassInfo]->SetPos(glm::vec2(-377.0f, 86.0f)); + _labels[mlTournamentInfo]->SetPos(glm::vec2(-102, 86.0f)); for (int i = 0; i < cMenuItemEnd; ++i) { @@ -3404,9 +3404,9 @@ void RaceMainFrame::OnAdjustLayout(const D3DXVECTOR2& vpSize) const float frameImagesPos[3] = {-550.0f, 475.0f, 590.0f}; for (int i = 0; i < 3; ++i) - _photoImages[i]->SetPos(D3DXVECTOR2(frameImagesPos[i], 87)); + _photoImages[i]->SetPos(glm::vec2(frameImagesPos[i], 87)); - _wheater->SetPos(D3DXVECTOR2(-282.0f, 112.0f)); + _wheater->SetPos(glm::vec2(-282.0f, 112.0f)); int chargeIndex = 0; float width = 0; @@ -3414,13 +3414,13 @@ void RaceMainFrame::OnAdjustLayout(const D3DXVECTOR2& vpSize) if (_chargeBars[i]->GetVisible()) { width = chargeIndex * (_chargeBars[i]->GetSize().x + 40.0f); - _chargeBars[i]->SetPos(D3DXVECTOR2(257.0f + width, 120)); + _chargeBars[i]->SetPos(glm::vec2(257.0f + width, 120)); ++chargeIndex; } for (int i = 0; i < 6; ++i) if (_chargeBars[i]->GetVisible()) { - D3DXVECTOR2 pos = _chargeBars[i]->GetPos(); + glm::vec2 pos = _chargeBars[i]->GetPos(); pos.x = pos.x + _chargeBars[i]->GetSize().x/2 + (vpSize.x - width)/2 - vpSize.x/2; _chargeBars[i]->SetPos(pos); _slots[i]->SetPos(pos.x, 65.0f); @@ -3428,13 +3428,13 @@ void RaceMainFrame::OnAdjustLayout(const D3DXVECTOR2& vpSize) _netInfo->SetPos(-vpSize.x/2 + 20.0f, _topPanel->GetSize().y + 20.0f); - _viewportCar->SetPos(D3DXVECTOR2(605.0f, 87.0f)); + _viewportCar->SetPos(glm::vec2(605.0f, 87.0f)); _viewportCar->SetSize(menu()->StretchImage(IdentityVec2, _frameImages[2]->GetSize(), true, true)); float leftSpace = vpSize.y - _topPanel->GetSize().y - _bottomPanel->GetSize().y - _stateBg->GetSize().y; for (int i = 0; i < (int)_players.size(); ++i) { - D3DXVECTOR2 size = _players[i].bg->GetSize(); + glm::vec2 size = _players[i].bg->GetSize(); float space = 25.0f; int leftCount = Floor(leftSpace / (size.y + space * 0.5f)); @@ -3442,15 +3442,15 @@ void RaceMainFrame::OnAdjustLayout(const D3DXVECTOR2& vpSize) int row = i - leftCount * col; AdjustPlayer(&_players[i], col > 0); - _players[i].bgRoot->SetPos(D3DXVECTOR2(size.x/2 + 8.0f + col * (vpSize.x - size.x - 16.0f), size.y/2 + (size.y + space) * row)); + _players[i].bgRoot->SetPos(glm::vec2(size.x/2 + 8.0f + col * (vpSize.x - size.x - 16.0f), size.y/2 + (size.y + space) * row)); } - _playerGrid->SetPos(D3DXVECTOR2(-1, _topPanel->GetSize().y + 30.0f)); + _playerGrid->SetPos(glm::vec2(-1, _topPanel->GetSize().y + 30.0f)); - menu()->GetUserChat()->inputPos(D3DXVECTOR2(_stateBg->GetSize().x, vpSize.y - _bottomPanel->GetSize().y - 10.0f)); - menu()->GetUserChat()->inputSize(D3DXVECTOR2(vpSize.x - _stateBg->GetSize().x - _moneyBg->GetSize().x, 300.0f)); + menu()->GetUserChat()->inputPos(glm::vec2(_stateBg->GetSize().x, vpSize.y - _bottomPanel->GetSize().y - 10.0f)); + menu()->GetUserChat()->inputSize(glm::vec2(vpSize.x - _stateBg->GetSize().x - _moneyBg->GetSize().x, 300.0f)); - menu()->GetUserChat()->linesPos(D3DXVECTOR2(vpSize.x - 10.0f, _topPanel->GetSize().y)); - menu()->GetUserChat()->linesSize(D3DXVECTOR2(vpSize.x/3, vpSize.y - _topPanel->GetSize().y - _bottomPanel->GetSize().y - _moneyBg->GetSize().y)); + menu()->GetUserChat()->linesPos(glm::vec2(vpSize.x - 10.0f, _topPanel->GetSize().y)); + menu()->GetUserChat()->linesSize(glm::vec2(vpSize.x/3, vpSize.y - _topPanel->GetSize().y - _bottomPanel->GetSize().y - _moneyBg->GetSize().y)); } void RaceMainFrame::OnInvalidate() @@ -3899,7 +3899,7 @@ void RaceMenu::CreateCar(gui::ViewPort3d* viewport, Player* player) CreateCar(viewport, car, player != NULL ? player->GetColor() : clrWhite, slots); } -void RaceMenu::AdjustLayout(const D3DXVECTOR2& vpSize) +void RaceMenu::AdjustLayout(const glm::vec2& vpSize) { _carFrame->AdjustLayout(vpSize); _spaceshipFrame->AdjustLayout(vpSize); diff --git a/src/Rock3dGame/source/game/ResourceManager.cpp b/src/Rock3dGame/source/game/ResourceManager.cpp index 3b0dfe29..3cd552d2 100644 --- a/src/Rock3dGame/source/game/ResourceManager.cpp +++ b/src/Rock3dGame/source/game/ResourceManager.cpp @@ -1522,7 +1522,7 @@ void ResourceManager::LoadEffects() LoadImage2dLibMat("Effect\\boomSpark2", "Effect\\szikra_group_7.dds", true, graph::Material::bmAdditive, FloatRange(1.0f, 0.0f)); LoadImage2dLibMat("Effect\\fire1", "Effect\\fire1.dds", true, graph::Material::bmAdditive, FloatRange(1.0f, 0.0f), ColorRange(clrWhite, clrRed), Vec2Range(NullVec2, IdentityVec2), Point2U(4, 3)); LoadImage2dLibMat("Effect\\fire2", "Effect\\fire2.dds", true, graph::Material::bmAdditive, 1.0f, ColorRange(clrWhite, clrRed), Vec2Range(NullVec2, IdentityVec2), Point2U(5, 5)); - LoadImage2dLibMat("Effect\\gunEff2", "Effect\\gunEff2.dds", true, graph::Material::bmAdditive, FloatRange(1.0f, 0.0f), clrWhite, Vec2Range(NullVec2, D3DXVECTOR2(1.0f, 0.25f)), Point2U(4, 1)); + LoadImage2dLibMat("Effect\\gunEff2", "Effect\\gunEff2.dds", true, graph::Material::bmAdditive, FloatRange(1.0f, 0.0f), clrWhite, Vec2Range(NullVec2, glm::vec2(1.0f, 0.25f)), Point2U(4, 1)); LoadImage2dLibMat("Effect\\engine1", "Effect\\engine1.dds", true, graph::Material::bmAdditive, 1.0f, clrWhite, Vec2Range(NullVec2, IdentityVec2), Point2U(5, 2)); LoadImage2dLibMat("Effect\\shield1", "Effect\\shield1.dds", true, graph::Material::bmAdditive, FloatRange(0.0f, 1.0f), clrWhite, Vec2Range(NullVec2, IdentityVec2), Point2U(5, 2)); LoadImage2dLibMatAnim("Effect\\shield2", "Effect\\shield2.dds", true, graph::Material::bmAdditive, 0.4f, clrWhite, Vec3Range(NullVector, IdentityVector)).SetAnisoFlt(); diff --git a/src/Rock3dGame/source/game/Trace.cpp b/src/Rock3dGame/source/game/Trace.cpp index 9ef398e3..a2438d01 100644 --- a/src/Rock3dGame/source/game/Trace.cpp +++ b/src/Rock3dGame/source/game/Trace.cpp @@ -160,10 +160,10 @@ void WayNode::Tile::ApplyChanges() const { _changed = false; - D3DXVECTOR2 sPos = GetPos(); + glm::vec2 sPos = GetPos(); if (_node->GetNext()) { - _dir = D3DXVECTOR2(GetNextPos()) - sPos; + _dir = glm::vec2(GetNextPos()) - sPos; _dirLength = D3DXVec2Length(&_dir); D3DXVec2Normalize(&_dir, &_dir); } @@ -232,7 +232,7 @@ float WayNode::Tile::GetNextHeight() const return _node->GetNext() ? _node->GetNext()->GetTile().GetHeight() : GetHeight(); } -const D3DXVECTOR2& WayNode::Tile::GetPrevDir() const +const glm::vec2& WayNode::Tile::GetPrevDir() const { const Tile* tile = _node->GetPrev() ? &_node->GetPrev()->GetTile() : this; @@ -240,7 +240,7 @@ const D3DXVECTOR2& WayNode::Tile::GetPrevDir() const return tile->_dir; } -const D3DXVECTOR2& WayNode::Tile::GetNextMidNorm() const +const glm::vec2& WayNode::Tile::GetNextMidNorm() const { const Tile* tile = _node->GetNext() ? &_node->GetNext()->GetTile() : this; @@ -275,7 +275,7 @@ void WayNode::Tile::GetVBuf(D3DXVECTOR3* vBuf, unsigned length, const D3DXVECTOR ApplyChanges(); - D3DXVECTOR2 nextMidNorm = GetNextMidNorm(); + glm::vec2 nextMidNorm = GetNextMidNorm(); vBuf[0] = GetPos() + D3DXVECTOR3(_midNorm.x, _midNorm.y, 0.0f) * _nodeRadius; vBuf[1] = GetPos() - D3DXVECTOR3(_midNorm.x, _midNorm.y, 0.0f) * _nodeRadius; @@ -286,7 +286,7 @@ void WayNode::Tile::GetVBuf(D3DXVECTOR3* vBuf, unsigned length, const D3DXVECTOR vBuf[0].z = vBuf[1].z = vBuf[2].z = vBuf[3].z = 0; } -unsigned WayNode::Tile::ComputeTrackInd(const D3DXVECTOR2& point) const +unsigned WayNode::Tile::ComputeTrackInd(const glm::vec2& point) const { ApplyChanges(); @@ -311,11 +311,11 @@ unsigned WayNode::Tile::ComputeTrackInd(const D3DXVECTOR2& point) const return trackInd; } -D3DXVECTOR2 WayNode::Tile::ComputeTrackNormOff(const D3DXVECTOR2& point, unsigned track) const +glm::vec2 WayNode::Tile::ComputeTrackNormOff(const glm::vec2& point, unsigned track) const { ApplyChanges(); - D3DXVECTOR2 dir = _dir; + glm::vec2 dir = _dir; float tileWidth = GetWidth(point); float trackDiv = tileWidth / cTrackCnt; @@ -365,7 +365,7 @@ bool WayNode::Tile::IsContains(const D3DXVECTOR3& point, bool lengthClamp, float D3DXVECTOR3 pos2 = GetNextPos(); //Расстояние в 2д плоскости - D3DXVECTOR2 point2 = point; + glm::vec2 point2 = point; float dist1 = Line2DistToPoint(_midNormLine, point2); float dist2 = Line2DistToPoint(GetNextNormLine(), point2); float dirDist = Line2DistToPoint(_dirLine, point2); @@ -389,14 +389,14 @@ bool WayNode::Tile::IsZLevelContains(const D3DXVECTOR3& point, float* dist) cons { ApplyChanges(); - D3DXVECTOR2 pos = D3DXVECTOR2(point); + glm::vec2 pos = glm::vec2(point); float height = GetHeight(pos); float coordZ = GetZCoord(pos); return (coordZ - point.z) < height; } -const D3DXVECTOR2& WayNode::Tile::GetDir() const +const glm::vec2& WayNode::Tile::GetDir() const { ApplyChanges(); return _dir; @@ -409,7 +409,7 @@ float WayNode::Tile::GetDirLength() const return _dirLength; } -const D3DXVECTOR2& WayNode::Tile::GetNorm() const +const glm::vec2& WayNode::Tile::GetNorm() const { ApplyChanges(); return _norm; @@ -421,13 +421,13 @@ const D3DXVECTOR3& WayNode::Tile::GetDirLine() const return _dirLine; } -const D3DXVECTOR2& WayNode::Tile::GetMidDir() const +const glm::vec2& WayNode::Tile::GetMidDir() const { ApplyChanges(); return _midDir; } -const D3DXVECTOR2& WayNode::Tile::GetMidNorm() const +const glm::vec2& WayNode::Tile::GetMidNorm() const { ApplyChanges(); return _midNorm; @@ -439,7 +439,7 @@ const D3DXVECTOR3& WayNode::Tile::GetMidNormLine() const return _midNormLine; } -const D3DXVECTOR2& WayNode::Tile::GetEdgeNorm() const +const glm::vec2& WayNode::Tile::GetEdgeNorm() const { ApplyChanges(); return _edgeNorm; @@ -485,7 +485,7 @@ float WayNode::Tile::ComputeCoordX(float dist) const return _dirLength > 0.0f ? lsl::ClampValue(dist / _dirLength, 0.0f, 1.0f) : 0.0f; } -float WayNode::Tile::ComputeCoordX(const D3DXVECTOR2& point) const +float WayNode::Tile::ComputeCoordX(const glm::vec2& point) const { ApplyChanges(); @@ -519,22 +519,22 @@ float WayNode::Tile::ComputeZCoord(float coordX) const return posZ1 + (posZ2 - posZ1) * coordX; } -float WayNode::Tile::GetLength(const D3DXVECTOR2& point) const +float WayNode::Tile::GetLength(const glm::vec2& point) const { return ComputeLength(ComputeCoordX(point)); } -float WayNode::Tile::GetHeight(const D3DXVECTOR2& point) const +float WayNode::Tile::GetHeight(const glm::vec2& point) const { return ComputeHeight(ComputeCoordX(point)); } -float WayNode::Tile::GetWidth(const D3DXVECTOR2& point) const +float WayNode::Tile::GetWidth(const glm::vec2& point) const { return ComputeWidth(ComputeCoordX(point)); } -float WayNode::Tile::GetZCoord(const D3DXVECTOR2& point) const +float WayNode::Tile::GetZCoord(const glm::vec2& point) const { return ComputeZCoord(ComputeCoordX(point)); } @@ -601,9 +601,9 @@ bool WayNode::RayCast(const D3DXVECTOR3& rayPos, const D3DXVECTOR3& rayVec, floa return RayCastIntersectSphere(rayPos, rayVec, _point->GetPos(), _tile->GetNodeRadius(), dist); } -bool WayNode::IsContains2(const D3DXVECTOR2& point, float* dist) const +bool WayNode::IsContains2(const glm::vec2& point, float* dist) const { - float midDist = D3DXVec2Length(&(point - D3DXVECTOR2(_point->GetPos()))); + float midDist = D3DXVec2Length(&(point - glm::vec2(_point->GetPos()))); if (dist) *dist = midDist; @@ -618,7 +618,7 @@ bool WayNode::IsContains(const D3DXVECTOR3& point, float* dist) const return midDist < _tile->GetNodeRadius(); - //return IsContains2(D3DXVECTOR2(point), dist) && abs(point.z - GetPos().z) < _point->GetSize()/2.0f; + //return IsContains2(glm::vec2(point), dist) && abs(point.z - GetPos().z) < _point->GetSize()/2.0f; } WayPath* WayNode::GetPath() @@ -651,9 +651,9 @@ const D3DXVECTOR3& WayNode::GetPos() const return _point->GetPos(); } -D3DXVECTOR2 WayNode::GetPos2() const +glm::vec2 WayNode::GetPos2() const { - return D3DXVECTOR2(GetPos()); + return glm::vec2(GetPos()); } float WayNode::GetSize() const diff --git a/src/Rock3dGame/source/game/TraceGfx.cpp b/src/Rock3dGame/source/game/TraceGfx.cpp index a967a4b0..d9466281 100644 --- a/src/Rock3dGame/source/game/TraceGfx.cpp +++ b/src/Rock3dGame/source/game/TraceGfx.cpp @@ -108,7 +108,7 @@ void TraceGfx::DoRender(graph::Engine& engine) D3DXVECTOR3 pos1 = _pointLink->GetPoint()->GetPos(); D3DXVECTOR3 pos2 = _pointLink->GetPos(); D3DXVECTOR3 dir = pos1 - pos2; - D3DXVECTOR2 sizes(D3DXVec3Length(&dir), _pointLink->GetPoint()->GetSize()); + glm::vec2 sizes(D3DXVec3Length(&dir), _pointLink->GetPoint()->GetSize()); D3DXVec3Normalize(&dir, &dir); _sprite->SetPos((pos1 + pos2) / 2.0f); diff --git a/src/Rock3dGame/source/game/View.cpp b/src/Rock3dGame/source/game/View.cpp index b989e892..227af33a 100644 --- a/src/Rock3dGame/source/game/View.cpp +++ b/src/Rock3dGame/source/game/View.cpp @@ -130,30 +130,30 @@ lsl::Point View::GetWndSize() const return lsl::Point(rc.right - rc.left, rc.bottom - rc.top); } -D3DXVECTOR2 View::GetVPSize() const +glm::vec2 View::GetVPSize() const { graph::Engine& engine = _world->GetGraph()->GetEngine(); - return D3DXVECTOR2(static_cast(engine.GetParams().BackBufferWidth), static_cast(engine.GetParams().BackBufferHeight)); + return glm::vec2(static_cast(engine.GetParams().BackBufferWidth), static_cast(engine.GetParams().BackBufferHeight)); } lsl::Point View::ScreenToView(const lsl::Point& point) { lsl::Point wndRc = GetWndSize(); const D3DPRESENT_PARAMETERS& params = _world->GetGraph()->GetEngine().GetParams(); - D3DXVECTOR2 wndSize = D3DXVECTOR2(static_cast(wndRc.x), static_cast(wndRc.y)); + glm::vec2 wndSize = glm::vec2(static_cast(wndRc.x), static_cast(wndRc.y)); - D3DXVECTOR2 viewSize = GetVPSize(); + glm::vec2 viewSize = GetVPSize(); return Point(static_cast(Round(point.x * viewSize.x / wndSize.x)), static_cast(Round(point.y * viewSize.y / wndSize.y))); } -D3DXVECTOR2 View::ViewToProj(const lsl::Point& point) +glm::vec2 View::ViewToProj(const lsl::Point& point) { - return graph::CameraCI::ViewToProj(D3DXVECTOR2(static_cast(point.x), static_cast(point.y)), GetVPSize()); + return graph::CameraCI::ViewToProj(glm::vec2(static_cast(point.x), static_cast(point.y)), GetVPSize()); } -D3DXVECTOR2 View::ProjToView(const D3DXVECTOR2& coord) +glm::vec2 View::ProjToView(const glm::vec2& coord) { return graph::CameraCI::ProjToView(coord, GetVPSize()); } diff --git a/src/Rock3dGame/source/game/Weapon.cpp b/src/Rock3dGame/source/game/Weapon.cpp index 1d65c255..d09ab4f8 100644 --- a/src/Rock3dGame/source/game/Weapon.cpp +++ b/src/Rock3dGame/source/game/Weapon.cpp @@ -868,7 +868,7 @@ GameObject* Proj::LaserUpdate(float deltaTime, bool distort) if (_model) { graph::Sprite* sprite = (graph::Sprite*)&_model->GetGameObj().GetGrActor().GetNodes().front(); - D3DXVECTOR2 size = D3DXVECTOR2(scaleLaser, _desc.size.y); + glm::vec2 size = glm::vec2(scaleLaser, _desc.size.y); if (distort) { diff --git a/src/Rock3dGame/source/game/World.cpp b/src/Rock3dGame/source/game/World.cpp index b4b9c434..5d1ef618 100644 --- a/src/Rock3dGame/source/game/World.cpp +++ b/src/Rock3dGame/source/game/World.cpp @@ -24,13 +24,13 @@ namespace gui::Label* _dbgInfo = NULL; -void AdjustDbgInfo(const D3DXVECTOR2& size) +void AdjustDbgInfo(const glm::vec2& size) { if (_dbgInfo == 0) return; - _dbgInfo->SetPos(D3DXVECTOR2(size.x - 20, 250)); - _dbgInfo->SetSize(D3DXVECTOR2(200.0f, size.y)); + _dbgInfo->SetPos(glm::vec2(size.x - 20, 250)); + _dbgInfo->SetSize(glm::vec2(200.0f, size.y)); } } From ea52f74860b7880addbc98f7f1aeb77daeb9f42d Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Tue, 15 Jun 2021 11:32:24 +0300 Subject: [PATCH 15/55] math: fix build Rock3dGame with glm::vec2 --- src/CMakeLists.txt | 2 +- src/MathLib/header/lslMath.inl | 43 +++++++++---------- src/Rock3dGame/header/game/HudMenu.h | 3 +- src/Rock3dGame/source/game/AICar.cpp | 18 ++++---- src/Rock3dGame/source/game/CameraManager.cpp | 2 +- src/Rock3dGame/source/game/DialogMenu2.cpp | 5 +-- src/Rock3dGame/source/game/HudMenu.cpp | 43 ++++++++++--------- src/Rock3dGame/source/game/MainMenu2.cpp | 6 +-- src/Rock3dGame/source/game/Menu.cpp | 16 ++++--- src/Rock3dGame/source/game/OptionsMenu.cpp | 13 +++--- src/Rock3dGame/source/game/Player.cpp | 10 +++-- src/Rock3dGame/source/game/RaceMenu2.cpp | 44 ++++++++++++-------- src/Rock3dGame/source/game/Trace.cpp | 30 +++++++------ 13 files changed, 127 insertions(+), 108 deletions(-) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 8007fdef..701a91db 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -17,8 +17,8 @@ add_subdirectory(NetLib) # add_subdirectory(XPlatform) #endif() add_subdirectory(Rock3dEngine) -if (FALSE) add_subdirectory(Rock3dGame) +if (FALSE) add_subdirectory(RRR3d) add_subdirectory(MapEditor) endif() diff --git a/src/MathLib/header/lslMath.inl b/src/MathLib/header/lslMath.inl index 3648af62..760228d4 100644 --- a/src/MathLib/header/lslMath.inl +++ b/src/MathLib/header/lslMath.inl @@ -52,9 +52,6 @@ inline float ScalarTransform(float scalar, const D3DXVECTOR3& vec, const D3DXMAT return scalar < 0 ? -len : len; } - - - inline void BuildWorldMatrix(const D3DXVECTOR3& pos, const D3DXVECTOR3& scale, const D3DXQUATERNION& rot, D3DXMATRIX& outMat) { D3DXMATRIX scaleMat; @@ -173,6 +170,24 @@ inline glm::vec2 Vec2TransformNormal(const glm::vec2 &vec, const glm::mat4 &mat) return glm::vec2(res4.x, res4.y); } +inline float Vec2Dot(const glm::vec2 &vec1, const glm::vec2 &vec2) +{ + return vec1.x * vec2.x + vec1.y * vec2.y; +} + +inline glm::vec2 Vec2Lerp(const glm::vec2 &vec1, const glm::vec2 &vec2, float scalar) +{ + glm::vec2 res; + res.x = vec1.x + scalar * (vec2.x - vec1.x); + res.y = vec1.y + scalar * (vec2.y - vec1.y); + return res; +} + +inline float Vec2CCW(const glm::vec2 &vec1, const glm::vec2 &vec2) +{ + return vec1.x * vec2.y - vec1.y * vec2.x; +} + //Поворот вектора на 90 градуос против часовой стрелки, иначе говоря его нормаль inline void Vec2NormCCW(const glm::vec2& vec, glm::vec2& outVec) { @@ -202,7 +217,7 @@ inline void Vec2NormCW(const glm::vec2& vec, glm::vec2& outVec) inline float Vec2Proj(const glm::vec2& vec1, const glm::vec2& vec2) { - return (vec1.x * vec2.x + vec1.y * vec2.y) / glm::length(vec2); + return Vec2Dot(vec1, vec2) / glm::length(vec2); } inline void operator*=(glm::vec2& vec1, const glm::vec2& vec2) @@ -233,9 +248,6 @@ inline glm::vec2 operator/(const glm::vec2& vec1, const glm::vec2& vec2) return res; } - - - inline D3DXVECTOR3 Vec3FromVec2(const glm::vec2& vec) { return D3DXVECTOR3(vec.x, vec.y, 0.0f); @@ -348,9 +360,6 @@ inline bool operator<(const D3DXVECTOR3& vec1, const D3DXVECTOR3& vec2) vec1.z < vec2.z; } - - - inline D3DXVECTOR4 Vec4FromVec2(const glm::vec2& vec) { return D3DXVECTOR4(vec.x, vec.y, 0, 0); @@ -361,9 +370,6 @@ inline D3DXVECTOR4 Vec4FromVec3(const D3DXVECTOR3& vec) return D3DXVECTOR4(vec.x, vec.y, vec.z, 0); } - - - inline void operator*=(D3DXCOLOR& vec1, const D3DXCOLOR& vec2) { vec1.r *= vec2.r; @@ -380,9 +386,6 @@ inline D3DXCOLOR operator*(const D3DXCOLOR& vec1, const D3DXCOLOR& vec2) return res; } - - - inline void QuatShortestArc(const D3DXVECTOR3& from, const D3DXVECTOR3& to, D3DXQUATERNION& outQuat) { float angle = D3DXVec3Dot(&from, &to); @@ -455,9 +458,6 @@ inline const D3DXVECTOR3& QuatRotateVec3(D3DXVECTOR3& res, const D3DXVECTOR3& ve return res; } - - - inline void Line2FromNorm(const glm::vec2& norm, const glm::vec2& point, D3DXVECTOR3& outLine) { //Уравнение разделяющей прямой через нормаль и точку @@ -465,7 +465,7 @@ inline void Line2FromNorm(const glm::vec2& norm, const glm::vec2& point, D3DXVEC //Нормаль outLine.x = norm.x; outLine.y = norm.y; - outLine.z = -(norm.x * point.x + norm.y * point.y); + outLine.z = -Vec2Dot(norm, point); } inline D3DXVECTOR3 Line2FromNorm(const glm::vec2& norm, const glm::vec2& point) @@ -560,9 +560,6 @@ inline Vec3Range operator*(const Vec3Range& val1, const D3DXVECTOR3& val2) return res; } - - - //ray = rayPos + t * rayVec //return t inline bool RayCastIntersectSphere(const D3DXVECTOR3& rayPos, const D3DXVECTOR3& rayVec, const D3DXVECTOR3& spherePos, float sphereRadius, float* t) diff --git a/src/Rock3dGame/header/game/HudMenu.h b/src/Rock3dGame/header/game/HudMenu.h index dfaf511f..2a531f30 100644 --- a/src/Rock3dGame/header/game/HudMenu.h +++ b/src/Rock3dGame/header/game/HudMenu.h @@ -142,7 +142,8 @@ class MiniMapFrame { Node() {} Node(const glm::vec2& mPos, float mSize): pos(mPos), size(mSize) {} - Node(const D3DXVECTOR3& mPos, float mSize): pos(mPos), size(mSize) {} + //Node(const D3DXVECTOR3& mPos, float mSize): pos(mPos), size(mSize) {} + Node(const D3DXVECTOR3& mPos, float mSize): pos(mPos.x, mPos.y), size(mSize) {} // remove after D3DXVECTOR3 replacement glm::vec2 pos; float size; diff --git a/src/Rock3dGame/source/game/AICar.cpp b/src/Rock3dGame/source/game/AICar.cpp index 515b1f74..76dd82e3 100644 --- a/src/Rock3dGame/source/game/AICar.cpp +++ b/src/Rock3dGame/source/game/AICar.cpp @@ -126,7 +126,7 @@ void AICar::PathState::ComputeMovDir(AICar* owner, float deltaTime, const Player unsigned newTrack = car.track; //Поворот налево - bool onLeft = D3DXVec2CCW(&curTile->GetTile().GetDir(), &nextTile->GetTile().GetDir()) > 0; + bool onLeft = Vec2CCW(curTile->GetTile().GetDir(), nextTile->GetTile().GetDir()) > 0; // WayNode* movNode = curTile; // @@ -140,7 +140,7 @@ void AICar::PathState::ComputeMovDir(AICar* owner, float deltaTime, const Player { float tileWidth = nextTile->GetPoint()->GetSize() / cTrackCnt; glm::vec2 targPnt = nextTile->GetPos2() + nextTile->GetTile().GetEdgeNorm() * tileWidth * static_cast(cTrackCnt)/2.0f - car.pos; - float proj = D3DXVec2Dot(&curTile->GetTile().GetDir(), &targPnt); + float proj = Vec2Dot(curTile->GetTile().GetDir(), targPnt); if (proj < car.size) movNode = nextTile; @@ -166,7 +166,7 @@ void AICar::PathState::ComputeMovDir(AICar* owner, float deltaTime, const Player float normDist = Line2DistToPoint(curBreakTile->GetTile().GetMidNormLine(), car.pos); float kBreak = -normDist + curBreakTile->GetPoint()->GetSize(); - float kRot = D3DXVec2Dot(&car.dir, &curBreakTile->GetTile().GetDir()); + float kRot = Vec2Dot(car.dir, curBreakTile->GetTile().GetDir()); kRot = 1.0f - std::max(kRot, 0.0f); //условия вхождения в торможение легче чем выхода из него @@ -204,7 +204,7 @@ void AICar::PathState::ComputeMovDir(AICar* owner, float deltaTime, const Player target += movNode->GetTile().ComputeTrackNormOff(target, newTrack); moveDir = target - car.pos; - D3DXVec2Normalize(&moveDir, &moveDir); + moveDir = glm::normalize(moveDir); } } @@ -294,7 +294,7 @@ Player* AICar::AttackState::FindEnemy(AICar* owner, const Player::CarState& car, currentEnemy = currentEnemy && car.curTile && car.curTile->GetTile().IsZLevelContains(currentEnemy->GetCar().pos3) ? currentEnemy : NULL; //отличие от текущего target как минимум на target->GetCar().size - bool testEnemy = enemy && (!currentEnemy || D3DXVec2Length(&(currentEnemy->GetCar().pos - enemy->GetCar().pos)) > currentEnemy->GetCar().size); + bool testEnemy = enemy && (!currentEnemy || glm::length(currentEnemy->GetCar().pos - enemy->GetCar().pos) > currentEnemy->GetCar().size); return testEnemy ? enemy : currentEnemy; } @@ -319,7 +319,7 @@ void AICar::AttackState::ShotByEnemy(AICar* owner, const CarState& car, Player* WeaponList weaponList; - float distToTarget = D3DXVec2Length(&(enemy->GetCar().pos - car.pos)); + float distToTarget = glm::length(enemy->GetCar().pos - car.pos); int wpnCount = 0; for (int i = Player::stWeapon1; i <= Player::stWeapon4; ++i) @@ -433,7 +433,7 @@ void AICar::AttackState::PlaceMine(AICar* owner, const CarState& car, const Path if (summPart > 0.0f && summPart < 1.0f) { //Цель сзади, +30% мин - if (backTarget && D3DXVec2Length(&(backTarget->GetCar().pos - car.pos)) < 30.0f) + if (backTarget && glm::length(backTarget->GetCar().pos - car.pos) < 30.0f) summPart += 0.3f; summPart = ClampValue(summPart + placeMineRandom, 0.0f, 1.0f); } @@ -509,14 +509,14 @@ void AICar::ControlState::UpdateResetCar(AICar* owner, float deltaTime, const Pl void AICar::ControlState::Update(AICar* owner, float deltaTime, const Player::CarState& car, const PathState& path) { //Вычисляем угол между направлением машины и направляющей движения - steerAngle = abs(acos(D3DXVec2Dot(&car.dir, &path.moveDir))); + steerAngle = abs(acos(Vec2Dot(car.dir, path.moveDir))); //учет инерционности рулевого управления //steerAngle = std::max(0.0f, steerAngle - D3DX_PI * deltaTime * 2.0f); //float errorSteer = //Угол поворота колес if (steerAngle > cSteerAngleBias) - steerAngle = D3DXVec2CCW(&car.dir, &path.moveDir) > 0 ? steerAngle : -steerAngle; + steerAngle = Vec2CCW(car.dir, path.moveDir) > 0 ? steerAngle : -steerAngle; else steerAngle = 0; diff --git a/src/Rock3dGame/source/game/CameraManager.cpp b/src/Rock3dGame/source/game/CameraManager.cpp index 12486dfd..e3b887bc 100644 --- a/src/Rock3dGame/source/game/CameraManager.cpp +++ b/src/Rock3dGame/source/game/CameraManager.cpp @@ -490,7 +490,7 @@ void CameraManager::Control::OnInputFrame(float deltaTime) if (leftDown && _staticVec2.z == 0.0f) { glm::vec2 dMPos2 = mPos - glm::vec2(_staticVec2.x, _staticVec2.y); - if (D3DXVec2Length(&dMPos2) > 15.0f) + if (glm::length(dMPos2) > 15.0f) _staticVec2.z = 1.0f; else leftDown = false; diff --git a/src/Rock3dGame/source/game/DialogMenu2.cpp b/src/Rock3dGame/source/game/DialogMenu2.cpp index 883a8c2b..d687428b 100644 --- a/src/Rock3dGame/source/game/DialogMenu2.cpp +++ b/src/Rock3dGame/source/game/DialogMenu2.cpp @@ -520,10 +520,7 @@ void InfoMenu::SetState(State value) } } - - - -UserChat::UserChat(Menu* menu, gui::Widget* parent): MenuFrame(menu, parent), _inputPos(NullVector), _linesPos(NullVector), _inputSize(300.0f, 300.0f), _linesSize(300.0f, 300.0f) +UserChat::UserChat(Menu* menu, gui::Widget* parent): MenuFrame(menu, parent), _inputPos(NullVec2), _linesPos(NullVec2), _inputSize(300.0f, 300.0f), _linesSize(300.0f, 300.0f) { _input = AddLine(L"", L"", clrWhite, false); _input.name->SetVisible(false); diff --git a/src/Rock3dGame/source/game/HudMenu.cpp b/src/Rock3dGame/source/game/HudMenu.cpp index 1a5049b4..d633a363 100644 --- a/src/Rock3dGame/source/game/HudMenu.cpp +++ b/src/Rock3dGame/source/game/HudMenu.cpp @@ -346,11 +346,11 @@ void PlayerStateFrame::ProccessAchievments(float deltaTime) float pointsAlpha = ClampValue((item.time - 0.8f)/0.15f, 0.0f, 1.0f); float pingAlpha = ClampValue((item.time - 0.2f)/0.1f, 0.0f, 1.0f) - ClampValue((item.time - 0.3f)/0.1f, 0.0f, 1.0f); - D3DXVec2Lerp(&pos, &item.image->GetPos(), &pos, flyAlpha); + pos = Vec2Lerp(item.image->GetPos(), pos, flyAlpha); item.image->SetPos(pos); glm::vec2 imgSize = myThis->menu()->GetImageSize(item.image->GetMaterial()); - D3DXVec2Lerp(&imgSize, &imgSize, &(2.0f * imgSize), pingAlpha); + imgSize = Vec2Lerp(imgSize, imgSize * 2.0f, pingAlpha); item.image->SetSize(imgSize); item.image->GetMaterial().SetAlpha(1.0f - outAlpha); @@ -438,11 +438,12 @@ void PlayerStateFrame::ProccessCarLifeBar(float deltaTime) D3DXVECTOR3 pos = _carLifes[i].target->GetCar().gameObj->GetPos() + D3DXVECTOR3(0.0f, 0.0f, 0.0f); D3DXVECTOR4 projVec; D3DXVec3Transform(&projVec, &pos, &menu()->GetGUI()->GetCamera3d()->GetContextInfo().GetViewProj()); - glm::vec2 vec = projVec / projVec.w; + //glm::vec2 vec = projVec / projVec.w; + glm::vec2 vec = glm::vec2((projVec / projVec.w).x, (projVec / projVec.w).y); // remove after D3DXVECTOR3 replacement if (projVec.z < 0) { - D3DXVec2Normalize(&vec, &vec); + vec = glm::normalize(vec); vec = vec * sqrt(2.0f); } vec.x = lsl::ClampValue(vec.x, -1.0f, 1.0f); @@ -687,11 +688,13 @@ void PlayerStateFrame::UpdateState(float deltaTime) D3DXVECTOR3 pos = opponent.player->GetCar().gameObj->GetWorldPos() + D3DXVECTOR3(1.0f, -0.5f, 0); D3DXVECTOR4 projVec; D3DXVec3Transform(&projVec, &pos, &menu()->GetGUI()->GetCamera3d()->GetContextInfo().GetViewProj()); - glm::vec2 vec = projVec / projVec.w; + //glm::vec2 vec = projVec / projVec.w; + glm::vec2 vec = + glm::vec2((projVec / projVec.w).x, (projVec / projVec.w).y); // remove after D3DXVECTOR3 replacement if (projVec.z < 0) { - D3DXVec2Normalize(&vec, &vec); + vec = glm::normalize(vec); vec = vec * sqrt(2.0f); } vec.x = lsl::ClampValue(vec.x, -1.0f, 1.0f); @@ -719,7 +722,7 @@ void PlayerStateFrame::UpdateState(float deltaTime) for (Opponents::iterator iter2 = _opponents.begin(); iter2 != iter; ++iter2) { float rad = opponent.radius + iter2->radius; - float dist = D3DXVec2Length(&(iter2->center - opponent.center)); + float dist = glm::length(iter2->center - opponent.center); alpha = std::min(rad != 0 ? dist / rad : 0, alpha); } @@ -762,7 +765,7 @@ void PlayerStateFrame::OnAdjustLayout(const glm::vec2& vpSize) } } - _lifeBack->SetPos(_hudMenu->GetLifeBarPos() + _lifeBack->GetSize()/2); + _lifeBack->SetPos(_hudMenu->GetLifeBarPos() + _lifeBack->GetSize()/2.0f); _place->SetPos(_hudMenu->GetPlacePos()); @@ -917,26 +920,25 @@ void MiniMapFrame::ComputeNode(Nodes::iterator sIter, Nodes::iterator eIter, Nod iter->dir = nextIter->pos - iter->pos; else iter->dir = iter->pos - prevIter->pos; - D3DXVec2Normalize(&iter->dir, &iter->dir); + iter->dir = glm::normalize(iter->dir); //вычисляем prevDir if (prevIter != eIter) iter->prevDir = iter->pos - prevIter->pos; else iter->prevDir = iter->dir; - D3DXVec2Normalize(&iter->prevDir, &iter->prevDir); + iter->prevDir = glm::normalize(iter->prevDir); //вычисляем midDir - iter->midDir = (iter->prevDir + iter->dir); - D3DXVec2Normalize(&iter->midDir, &iter->midDir); + iter->midDir = glm::normalize(iter->prevDir + iter->dir); //вычисляем midNorm Vec2NormCCW(iter->midDir, iter->midNorm); //Вычисляем _nodeRadius - iter->cosDelta = abs(D3DXVec2Dot(&iter->dir, &iter->prevDir)); + iter->cosDelta = abs(Vec2Dot(iter->dir, iter->prevDir)); //sinA/2 = sin(180 - D/2) = cos(D/2) = №(1 + cosD)/2 iter->sinAlpha2 = sqrt((1.0f + iter->cosDelta) / 2.0f); iter->nodeRadius = 0.5f*iter->size / iter->sinAlpha2; - iter->ccw = D3DXVec2CCW(&iter->prevDir, &iter->dir) > 0; + iter->ccw = Vec2CCW(iter->prevDir, iter->dir) > 0; if (iter->ccw) Vec2NormCCW(iter->midDir, iter->edgeNorm); else @@ -945,8 +947,7 @@ void MiniMapFrame::ComputeNode(Nodes::iterator sIter, Nodes::iterator eIter, Nod void MiniMapFrame::AlignNode(const Node& src, Node& dest, float cosErr, float sizeErr) { - glm::vec2 dir = dest.pos - src.pos; - D3DXVec2Normalize(&dir, &dir); + glm::vec2 dir = glm::normalize(dest.pos - src.pos); if (abs(dir.x) > cosErr) { @@ -964,8 +965,7 @@ void MiniMapFrame::AlignNode(const Node& src, Node& dest, float cosErr, float si void MiniMapFrame::AlignMidNodes(Node& node1, Node& node2, float cosErr, float sizeErr) { - glm::vec2 dir = node2.pos - node1.pos; - D3DXVec2Normalize(&dir, &dir); + glm::vec2 dir = glm::normalize(node2.pos - node1.pos); if (abs(dir.x) > cosErr) { @@ -1014,8 +1014,7 @@ void MiniMapFrame::BuildPath(WayPath& path, res::VertexData& data) if (nextIter == nodes.end()) break; Node& nextNode = *nextIter; - glm::vec2 dir = nextNode.pos - node.pos; - D3DXVec2Normalize(&dir, &dir); + glm::vec2 dir = glm::normalize(nextNode.pos - node.pos); if (nextIter != --nodes.end()) { @@ -1047,8 +1046,8 @@ void MiniMapFrame::BuildPath(WayPath& path, res::VertexData& data) D3DXQuaternionRotationAxis(&rot, &ZVector, ccw ? dAlpha : -dAlpha); D3DXMATRIX rotMat; D3DXMatrixRotationQuaternion(&rotMat, &rot); - glm::vec2 vec; - D3DXVec2TransformNormal(&vec, &smVec, &rotMat); + auto rotMatGLM = d3dMatrixToGLM(rotMat); // remove after D3DXMATRIX replacement + glm::vec2 vec = Vec2TransformNormal(smVec, rotMatGLM); Node newNode; newNode.pos = smPos + vec * smRadius; diff --git a/src/Rock3dGame/source/game/MainMenu2.cpp b/src/Rock3dGame/source/game/MainMenu2.cpp index d27a2cca..e2cbffe1 100644 --- a/src/Rock3dGame/source/game/MainMenu2.cpp +++ b/src/Rock3dGame/source/game/MainMenu2.cpp @@ -1946,7 +1946,7 @@ bool ProfileFrame::OnClick(gui::Widget* sender, const gui::MouseClick& mClick) if (sender->GetParent() == item) { - menu()->ShowAccept(GetString("svHintDeleteProfile"), GetString(svYes), GetString(svNo), uiRoot()->GetVPSize()/2, gui::Widget::waCenter, this, profile); + menu()->ShowAccept(GetString("svHintDeleteProfile"), GetString(svYes), GetString(svNo), uiRoot()->GetVPSize()/2.0f, gui::Widget::waCenter, this, profile); return true; } } @@ -2206,7 +2206,7 @@ void MainMenu::OnDisconnected(net::INetConnection* sender) _steamConnecting = false; _menu->HideMessage(); - _menu->ShowMessage(_menu->GetString(svWarning), _menu->GetString(svHintHostConnectionFailed), _menu->GetString(svOk), _menu->GetGUI()->GetVPSize()/2, gui::Widget::waCenter, 0.0f); + _menu->ShowMessage(_menu->GetString(svWarning), _menu->GetString(svHintHostConnectionFailed), _menu->GetString(svOk), _menu->GetGUI()->GetVPSize()/2.0f, gui::Widget::waCenter, 0.0f); } void MainMenu::OnConnectionFailed(net::INetConnection* sender, unsigned error) @@ -2214,7 +2214,7 @@ void MainMenu::OnConnectionFailed(net::INetConnection* sender, unsigned error) _steamConnecting = false; _menu->HideMessage(); - _menu->ShowMessage(_menu->GetString(svWarning), _menu->GetString(svHintHostConnectionFailed), _menu->GetString(svOk), _menu->GetGUI()->GetVPSize()/2, gui::Widget::waCenter, 0.0f); + _menu->ShowMessage(_menu->GetString(svWarning), _menu->GetString(svHintHostConnectionFailed), _menu->GetString(svOk), _menu->GetGUI()->GetVPSize()/2.0f, gui::Widget::waCenter, 0.0f); } void MainMenu::OnConnectedPlayer(NetPlayer* sender) diff --git a/src/Rock3dGame/source/game/Menu.cpp b/src/Rock3dGame/source/game/Menu.cpp index ebe96fd0..b8cc8c7c 100644 --- a/src/Rock3dGame/source/game/Menu.cpp +++ b/src/Rock3dGame/source/game/Menu.cpp @@ -923,7 +923,7 @@ void Menu::OnResetView() void Menu::OnFinishClose() { - glm::vec2 pos = GetGUI()->GetVPSize()/2; + glm::vec2 pos = GetGUI()->GetVPSize()/2.0f; SetState(msRace2); _game->OnFinishFrameClose(); @@ -1040,7 +1040,8 @@ void Menu::ShowMessage(const std::string& title, const std::string& message, con void Menu::ShowMessageLoading() { - ShowMessage(GetString(svWarning), GetString(svHintPleaseWait), GetString(svOk), GetGUI()->GetVPSize()/2, gui::Widget::waCenter, 0.0f, NULL, false); + ShowMessage(GetString(svWarning), GetString(svHintPleaseWait), GetString(svOk), GetGUI()->GetVPSize() / 2.0f, + gui::Widget::waCenter, 0.0f, NULL, false); } void Menu::HideMessage() @@ -1073,17 +1074,20 @@ void Menu::HideMusicInfo() void Menu::ShowDiscreteVideoCardMessage() { - ShowAccept(GetString("svDiscreteVideoDetection"), GetString("svActivate"), GetString("svIgnore"), GetGUI()->GetVPSize()/2, gui::Widget::waCenter, _syncModeEvent, NULL, true, true); + ShowAccept(GetString("svDiscreteVideoDetection"), GetString("svActivate"), GetString("svIgnore"), + GetGUI()->GetVPSize() / 2.0f, gui::Widget::waCenter, _syncModeEvent, NULL, true, true); } void Menu::ShowSteamErrorMessage() { - ShowMessage(GetString("svWarning"), GetString("svSteamErrorMessage"), GetString("svOk"), GetGUI()->GetVPSize()/2, gui::Widget::waCenter, 0.0f, _steamErrorEvent, true); + ShowMessage(GetString("svWarning"), GetString("svSteamErrorMessage"), GetString("svOk"), + GetGUI()->GetVPSize() / 2.0f, gui::Widget::waCenter, 0.0f, _steamErrorEvent, true); } void Menu::ShowSteamSavingMessage() { - ShowAccept(GetString("svSteamSavingMessage"), GetString("svExit"), GetString("svCancel"), GetGUI()->GetVPSize()/2, gui::Widget::waCenter, _steamSavingEvent, NULL, true, true); + ShowAccept(GetString("svSteamSavingMessage"), GetString("svExit"), GetString("svCancel"), + GetGUI()->GetVPSize() / 2.0f, gui::Widget::waCenter, _steamSavingEvent, NULL, true, true); } void Menu::ShowChat(bool show) @@ -2065,7 +2069,7 @@ void Menu::OnProgress(float deltaTime) float offset = ClampValue((_musicTime - 0.0f)/cMusicDelay, 0.0f, 1.0f) - ClampValue((_musicTime - cMusicDelay - cMusicLife)/cMusicDelay, 0.0f, 1.0f); glm::vec2 size = _musicDlg->size(); glm::vec2 vpSize = GetGUI()->GetVPSize(); - glm::vec2 pos = glm::vec2(-5.0f + (40.0f + size.x) * offset, vpSize.y - 30.0f) - size/2; + glm::vec2 pos = glm::vec2(-5.0f + (40.0f + size.x) * offset, vpSize.y - 30.0f) - size / 2.0f; _musicDlg->root()->SetPos(pos); diff --git a/src/Rock3dGame/source/game/OptionsMenu.cpp b/src/Rock3dGame/source/game/OptionsMenu.cpp index 5df32ee7..ea55402f 100644 --- a/src/Rock3dGame/source/game/OptionsMenu.cpp +++ b/src/Rock3dGame/source/game/OptionsMenu.cpp @@ -894,7 +894,7 @@ bool ControlsFrame::OnClick(gui::Widget* sender, const gui::MouseClick& mClick) { static_cast(sender)->Select(true, true); - menu()->ShowAccept(menu()->GetString("svPressKey"), menu()->GetString("svDeleteKey"), menu()->GetString(svCancel), menu()->GetGUI()->GetVPSize()/2, gui::Widget::waCenter, this, NULL, true, false, true); + menu()->ShowAccept(menu()->GetString("svPressKey"), menu()->GetString("svDeleteKey"), menu()->GetString(svCancel), menu()->GetGUI()->GetVPSize()/2.0f, gui::Widget::waCenter, this, NULL, true, false, true); } return false; @@ -1065,11 +1065,12 @@ bool OptionsMenu::OnClick(gui::Widget* sender, const gui::MouseClick& mClick) message = _menu->GetString("svSyncFrameWarningNeedReload"); else message = _menu->GetString("svSyncFrameWarning"); - _menu->ShowMessage(_menu->GetString(svWarning), message, _menu->GetString(svOk), _menu->GetGUI()->GetVPSize()/2, gui::Widget::waCenter, 0.0f, this); + _menu->ShowMessage(_menu->GetString(svWarning), message, _menu->GetString(svOk), _menu->GetGUI()->GetVPSize()/2.0f, gui::Widget::waCenter, 0.0f, this); } else if (needReload) { - _menu->ShowMessage(_menu->GetString(svWarning), _menu->GetString(svHintNeedReload), _menu->GetString(svOk), _menu->GetGUI()->GetVPSize()/2, gui::Widget::waCenter, 0.0f, this); + _menu->ShowMessage(_menu->GetString(svWarning), _menu->GetString(svHintNeedReload), _menu->GetString(svOk), + _menu->GetGUI()->GetVPSize() / 2.0f, gui::Widget::waCenter, 0.0f, this); } else _menu->ShowOptions(false); @@ -1588,11 +1589,13 @@ bool StartOptionsMenu::OnClick(gui::Widget* sender, const gui::MouseClick& mClic message = menu()->GetString("svSyncFrameWarningNeedReload"); else message = menu()->GetString("svSyncFrameWarning"); - menu()->ShowMessage(menu()->GetString(svWarning), message, menu()->GetString(svOk), menu()->GetGUI()->GetVPSize()/2, gui::Widget::waCenter, 0.0f, this); + menu()->ShowMessage(menu()->GetString(svWarning), message, menu()->GetString(svOk), + menu()->GetGUI()->GetVPSize() / 2.0f, gui::Widget::waCenter, 0.0f, this); } else if (needReload) { - menu()->ShowMessage(menu()->GetString(svWarning), GetString(svHintNeedReload), GetString(svOk), menu()->GetGUI()->GetVPSize()/2, gui::Widget::waCenter, 0.0f, this); + menu()->ShowMessage(menu()->GetString(svWarning), GetString(svHintNeedReload), GetString(svOk), + menu()->GetGUI()->GetVPSize() / 2.0f, gui::Widget::waCenter, 0.0f, this); } else { diff --git a/src/Rock3dGame/source/game/Player.cpp b/src/Rock3dGame/source/game/Player.cpp index aa8c8e9a..b7a3e78e 100644 --- a/src/Rock3dGame/source/game/Player.cpp +++ b/src/Rock3dGame/source/game/Player.cpp @@ -953,10 +953,12 @@ void Player::CarState::Update(float deltaTime) nxActor->getGlobalOrientationQuat().getXYZW(rot3); Vec3Rotate(XVector, rot3, dir3); - pos = glm::vec2(pos3); - dir = glm::vec2(dir3); + //pos = glm::vec2(pos3); + pos = glm::vec2(pos3.x, pos3.y); // remove after D3DXVECTOR3 replacement + //dir = glm::vec2(dir3); + dir = glm::vec2(dir3.x, dir3.y); // remove after D3DXVECTOR3 replacement speed = GameCar::GetSpeed(nxActor, dir3); - D3DXVec2Normalize(&dir, &dir); + dir = glm::normalize(dir); dirLine = Line2FromDir(dir, pos); normLine = Line2FromNorm(dir, pos); @@ -1004,7 +1006,7 @@ void Player::CarState::Update(float deltaTime) owner->OnLapPass(); //инверсия движения - if (curTile && D3DXVec2Dot(&curTile->GetTile().GetDir(), &dir) < 0) + if (curTile && Vec2Dot(curTile->GetTile().GetDir(), dir) < 0) { if (moveInverseStart < 0) { diff --git a/src/Rock3dGame/source/game/RaceMenu2.cpp b/src/Rock3dGame/source/game/RaceMenu2.cpp index 6472a947..c3c87fd3 100644 --- a/src/Rock3dGame/source/game/RaceMenu2.cpp +++ b/src/Rock3dGame/source/game/RaceMenu2.cpp @@ -727,20 +727,22 @@ void GarageFrame::SelectColor(const D3DXCOLOR& value) void GarageFrame::ShowMessage(StringValue message, gui::Widget* sender, const glm::vec2& slotSize) { - glm::vec2 cellOffs = slotSize/4; + glm::vec2 cellOffs = slotSize / 4.0f; cellOffs.y = -cellOffs.y; //menu()->ShowMessage(GetString(svWarning), GetString(message), GetString(svOk), sender->GetWorldPos() + cellOffs, gui::Widget::waLeftBottom, 0.0f); - menu()->ShowMessage(GetString(svWarning), GetString(message), GetString(svOk), uiRoot()->GetVPSize()/2, gui::Widget::waCenter, 0.0f); + menu()->ShowMessage(GetString(svWarning), GetString(message), GetString(svOk), uiRoot()->GetVPSize() / 2.0f, + gui::Widget::waCenter, 0.0f); } void GarageFrame::ShowAccept(const std::string& message, gui::Widget* sender, const glm::vec2& slotSize) { - glm::vec2 cellOffs = slotSize/4; + glm::vec2 cellOffs = slotSize / 4.0f; cellOffs.y = -cellOffs.y; //menu()->ShowAccept(message, GetString(svYes), GetString(svNo), sender->GetWorldPos() + cellOffs, gui::Widget::waLeftBottom, this); - menu()->ShowAccept(message, GetString(svYes), GetString(svNo), uiRoot()->GetVPSize()/2, gui::Widget::waCenter, this); + menu()->ShowAccept(message, GetString(svYes), GetString(svNo), uiRoot()->GetVPSize() / 2.0f, gui::Widget::waCenter, + this); } void GarageFrame::OnShow(bool value) @@ -1620,7 +1622,7 @@ void WorkshopFrame::ShowInfo(Slot* slot, int cost, gui::Widget* sender, const gl if (wpn) damage = lsl::StrFmt("%0.0f", wpn->GetDamage()); - glm::vec2 cellOffs = slotSize/4; + glm::vec2 cellOffs = slotSize / 4.0f; cellOffs.y = -cellOffs.y; menu()->ShowWeaponDialog(GetString(slot->GetItem().GetName()), GetString(slot->GetItem().GetInfo()), menu()->FormatCurrency(cost), damage, sender->GetWorldPos() + cellOffs, gui::Widget::waLeftBottom, 0.0f); @@ -1707,7 +1709,7 @@ void WorkshopFrame::ShowMessage(StringValue message, gui::Widget* sender, const { HideInfo(cUndefInfo); - glm::vec2 cellOffs = slotSize/4; + glm::vec2 cellOffs = slotSize / 4.0f; cellOffs.y = -cellOffs.y; menu()->ShowMessage(GetString(svWarning), GetString(message), GetString(svOk), sender->GetWorldPos() + cellOffs, gui::Widget::waLeftBottom, 0.0f); @@ -1717,7 +1719,7 @@ void WorkshopFrame::ShowAccept(const std::string& message, gui::Widget* sender, { HideInfo(cUndefInfo); - glm::vec2 cellOffs = slotSize/4; + glm::vec2 cellOffs = slotSize / 4.0f; cellOffs.y = -cellOffs.y; SetOverGood2(sender); @@ -2326,7 +2328,8 @@ void GamersFrame::OnProcessNetEvent(unsigned id, NetEventData* data) if (data->failed) { - menu()->ShowMessage(GetString(svWarning), GetString(svHintSetGamerFailed), GetString(svOk), uiRoot()->GetVPSize()/2, gui::Widget::waCenter, 0.0f); + menu()->ShowMessage(GetString(svWarning), GetString(svHintSetGamerFailed), GetString(svOk), + uiRoot()->GetVPSize() / 2.0f, gui::Widget::waCenter, 0.0f); } else _raceMenu->SetState(RaceMenu::msGarage); @@ -2514,7 +2517,7 @@ void AngarFrame::SetDoorPos(PlanetBox& planet, float alpha) void AngarFrame::ShowMessage(StringValue message, gui::Widget* sender, const glm::vec2& slotSize) { - glm::vec2 cellOffs = slotSize/2; + glm::vec2 cellOffs = slotSize / 2.0f; cellOffs.y = -cellOffs.y; cellOffs.x = 0; @@ -2523,11 +2526,13 @@ void AngarFrame::ShowMessage(StringValue message, gui::Widget* sender, const glm void AngarFrame::ShowAccept(const std::string& message, gui::Widget* sender, const glm::vec2& slotSize, lsl::Object* data) { - glm::vec2 cellOffs = slotSize/2; + glm::vec2 cellOffs = slotSize / 2.0f; cellOffs.y = -cellOffs.y; cellOffs.x = 0; - menu()->ShowAccept(message, GetString(svYes), GetString(svNo), (sender ? sender->GetWorldPos() : uiRoot()->GetVPSize()/2) + cellOffs, gui::Widget::waBottom, this, data); + menu()->ShowAccept(message, GetString(svYes), GetString(svNo), + (sender ? sender->GetWorldPos() : uiRoot()->GetVPSize() / 2.0f) + cellOffs, + gui::Widget::waBottom, this, data); } void AngarFrame::OnShow(bool value) @@ -2929,7 +2934,7 @@ const AchievmentFrame::AchievmentBox* AchievmentFrame::AddAchievment(unsigned in else box->button->SetSel(NULL); - box->button->SetPos(box->image->GetSize()/2 - glm::vec2(15.0f, 25.0f)); + box->button->SetPos(box->image->GetSize() / 2.0f - glm::vec2(15.0f, 25.0f)); return box; } @@ -3032,12 +3037,14 @@ void AchievmentFrame::UpdateSelection(gui::Widget* sender, bool select) void AchievmentFrame::ShowMessage(StringValue message, gui::Widget* sender) { - menu()->ShowMessage(GetString(svWarning), GetString(message), GetString(svOk), uiRoot()->GetVPSize()/2, gui::Widget::waCenter, 0.0f); + menu()->ShowMessage(GetString(svWarning), GetString(message), GetString(svOk), uiRoot()->GetVPSize() / 2.0f, + gui::Widget::waCenter, 0.0f); } void AchievmentFrame::ShowAccept(const std::string& message, gui::Widget* sender, Achievment* achievment) { - menu()->ShowAccept(message, GetString(svYes), GetString(svNo), uiRoot()->GetVPSize()/2, gui::Widget::waCenter, this, achievment); + menu()->ShowAccept(message, GetString(svYes), GetString(svNo), uiRoot()->GetVPSize() / 2.0f, gui::Widget::waCenter, + this, achievment); } void AchievmentFrame::OnShow(bool value) @@ -3575,12 +3582,14 @@ bool RaceMainFrame::OnClick(gui::Widget* sender, const gui::MouseClick& mClick) if (net()->AllPlayersReady() && net()->netOpponents().size() > 0) { if (net()->race()->GetLeaverList().size() > 0) - menu()->ShowAccept(GetString(svHintLeaversWillBeRemoved), GetString(svYes), GetString(svNo), uiRoot()->GetVPSize()/2, gui::Widget::waCenter, this); + menu()->ShowAccept(GetString(svHintLeaversWillBeRemoved), GetString(svYes), GetString(svNo), + uiRoot()->GetVPSize() / 2.0f, gui::Widget::waCenter, this); else menu()->StartRace(); } else - menu()->ShowMessage(GetString(svWarning), GetString(svHintPlayersIsNotReady), GetString(svOk), uiRoot()->GetVPSize()/2, gui::Widget::waCenter, 0.0f); + menu()->ShowMessage(GetString(svWarning), GetString(svHintPlayersIsNotReady), GetString(svOk), + uiRoot()->GetVPSize() / 2.0f, gui::Widget::waCenter, 0.0f); } else RaceRady(!net()->player()->IsRaceReady()); @@ -3782,7 +3791,8 @@ void RaceMenu::OnProcessNetEvent(unsigned id, NetEventData* data) if (id == cNetPlayerSetColor && data->failed) { _carFrame->SetCarColor(_menu->GetPlayer()->GetColor()); - _menu->ShowMessage(_menu->GetString(svWarning), _menu->GetString(svHintSetColorFailed), _menu->GetString(svOk), _menu->GetGUI()->GetVPSize()/2, gui::Widget::waCenter, 0.0f); + _menu->ShowMessage(_menu->GetString(svWarning), _menu->GetString(svHintSetColorFailed), _menu->GetString(svOk), + _menu->GetGUI()->GetVPSize() / 2.0f, gui::Widget::waCenter, 0.0f); } } diff --git a/src/Rock3dGame/source/game/Trace.cpp b/src/Rock3dGame/source/game/Trace.cpp index a2438d01..5d2ceb20 100644 --- a/src/Rock3dGame/source/game/Trace.cpp +++ b/src/Rock3dGame/source/game/Trace.cpp @@ -160,12 +160,14 @@ void WayNode::Tile::ApplyChanges() const { _changed = false; - glm::vec2 sPos = GetPos(); + //glm::vec2 sPos = GetPos(); + glm::vec2 sPos = glm::vec2(GetPos().x, GetPos().y); // remove after D3DXVECTOR3 replacement if (_node->GetNext()) { - _dir = glm::vec2(GetNextPos()) - sPos; - _dirLength = D3DXVec2Length(&_dir); - D3DXVec2Normalize(&_dir, &_dir); + //_dir = glm::vec2(GetNextPos()) - sPos; + _dir = glm::vec2(GetNextPos().x, GetNextPos().y) - sPos; // remove after D3DXVECTOR3 replacement + _dirLength = glm::length(_dir); + _dir = glm::normalize(_dir); } else { @@ -179,19 +181,19 @@ void WayNode::Tile::ApplyChanges() const //вычисляем и нормализуем поскольку лубая из составляющих _midDir могла оказаться близкой к нулю _midDir = (_dir + GetPrevDir()) / 2.0f; - D3DXVec2Normalize(&_midDir, &_midDir); + _midDir = glm::normalize(_midDir); //линии через node Line2FromNorm(_midDir, sPos, _midNormLine); //Вычисляем _midNorm Line2GetDir(_midNormLine, _midNorm); //Вычисляем _nodeRadius - float cosDelta = D3DXVec2Dot(&_dir, &GetPrevDir()); + float cosDelta = Vec2Dot(_dir, GetPrevDir()); //sinA/2 = sin(180 - D/2) = cos(D/2) = №(1 + cosD)/2 _nodeRadius = GetHeight() / sqrt((1.0f + cosDelta) / 2.0f); //Вычисляем _edgeNorm - if (D3DXVec2CCW(&GetPrevDir(), &_dir) > 0) + if (Vec2CCW(GetPrevDir(), _dir) > 0) Vec2NormCCW(_midDir, _edgeNorm); else Vec2NormCW(_midDir, _edgeNorm); @@ -199,7 +201,7 @@ void WayNode::Tile::ApplyChanges() const //Вычисляем turnAngle if (_node->GetPrev()) - _turnAngle = acos(D3DXVec2Dot(&GetPrevDir(), &_dir)); + _turnAngle = acos(Vec2Dot(GetPrevDir(), _dir)); else _turnAngle = 0.0f; @@ -365,7 +367,8 @@ bool WayNode::Tile::IsContains(const D3DXVECTOR3& point, bool lengthClamp, float D3DXVECTOR3 pos2 = GetNextPos(); //Расстояние в 2д плоскости - glm::vec2 point2 = point; + //glm::vec2 point2 = point; + glm::vec2 point2 = glm::vec2(point.x, point.y); // remove after D3DXVECTOR3 replacement float dist1 = Line2DistToPoint(_midNormLine, point2); float dist2 = Line2DistToPoint(GetNextNormLine(), point2); float dirDist = Line2DistToPoint(_dirLine, point2); @@ -389,7 +392,8 @@ bool WayNode::Tile::IsZLevelContains(const D3DXVECTOR3& point, float* dist) cons { ApplyChanges(); - glm::vec2 pos = glm::vec2(point); + //glm::vec2 pos = glm::vec2(point); + glm::vec2 pos = glm::vec2(point.x, point.y); // remove after D3DXVECTOR3 replacement float height = GetHeight(pos); float coordZ = GetZCoord(pos); @@ -603,7 +607,8 @@ bool WayNode::RayCast(const D3DXVECTOR3& rayPos, const D3DXVECTOR3& rayVec, floa bool WayNode::IsContains2(const glm::vec2& point, float* dist) const { - float midDist = D3DXVec2Length(&(point - glm::vec2(_point->GetPos()))); + //float midDist = D3DXVec2Length(&(point - glm::vec2(_point->GetPos()))); + float midDist = glm::length(point - glm::vec2(_point->GetPos().x, _point->GetPos().y)); // remove after D3DXVECTOR3 replacement if (dist) *dist = midDist; @@ -653,7 +658,8 @@ const D3DXVECTOR3& WayNode::GetPos() const glm::vec2 WayNode::GetPos2() const { - return glm::vec2(GetPos()); + //return glm::vec2(GetPos()); + return glm::vec2(GetPos().x, GetPos().y); // remove after D3DXVECTOR3 replacement } float WayNode::GetSize() const From 32cd32f6712fd933fc7566f3352f8df681cc10c0 Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Tue, 15 Jun 2021 12:19:59 +0300 Subject: [PATCH 16/55] math: restore all projects builds, D3DXVECTOR2 replaced with glm::vec2 everywhere --- src/CMakeLists.txt | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 701a91db..433e8261 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -18,7 +18,5 @@ add_subdirectory(NetLib) #endif() add_subdirectory(Rock3dEngine) add_subdirectory(Rock3dGame) -if (FALSE) add_subdirectory(RRR3d) add_subdirectory(MapEditor) -endif() From 698721780be3c7d1afe062c4069217538f6ccc50 Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Sun, 20 Jun 2021 11:43:20 +0300 Subject: [PATCH 17/55] math: replace D3DXQUATERNION with glm::quat in LexStd and MathLib --- src/CMakeLists.txt | 2 + src/LexStd/header/lslSerialValue.h | 8 +-- src/MathLib/header/MathCommon.h | 2 + src/MathLib/header/lslMath.h | 35 ++++++------ src/MathLib/header/lslMath.inl | 92 ++++++++++++++++++------------ src/MathLib/source/lslMath.cpp | 2 +- src/MathLib/source/r3dMath.cpp | 2 +- 7 files changed, 81 insertions(+), 62 deletions(-) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 433e8261..70514d11 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -12,6 +12,7 @@ endif() add_subdirectory(LexStd) add_subdirectory(MathLib) +if (FALSE) add_subdirectory(NetLib) #if (NOT MSVC) # add_subdirectory(XPlatform) @@ -20,3 +21,4 @@ add_subdirectory(Rock3dEngine) add_subdirectory(Rock3dGame) add_subdirectory(RRR3d) add_subdirectory(MapEditor) +endif() diff --git a/src/LexStd/header/lslSerialValue.h b/src/LexStd/header/lslSerialValue.h index f7bea46a..67da8e59 100644 --- a/src/LexStd/header/lslSerialValue.h +++ b/src/LexStd/header/lslSerialValue.h @@ -65,9 +65,9 @@ template<> struct SerialValue } }; -template<> struct SerialValue +template<> struct SerialValue { - typedef D3DXQUATERNION _Value; + typedef glm::quat _Value; static void Write(SWriter* writer, const char* name, const _Value& value) { @@ -179,9 +179,9 @@ template<> struct SerialValue> } }; -template<> struct SerialValue> +template<> struct SerialValue> { - typedef D3DXQUATERNION _Value; + typedef glm::quat _Value; typedef ValueRange<_Value> MyRange; typedef SerialValue MyPoint2U; diff --git a/src/MathLib/header/MathCommon.h b/src/MathLib/header/MathCommon.h index a44c211b..c4c39584 100644 --- a/src/MathLib/header/MathCommon.h +++ b/src/MathLib/header/MathCommon.h @@ -6,3 +6,5 @@ #include // glm::vec3 #include // glm::vec4 #include // glm::mat4 +#include // glm::quat +#include // glm::toMat4 diff --git a/src/MathLib/header/lslMath.h b/src/MathLib/header/lslMath.h index ac5145d7..d313e1e9 100644 --- a/src/MathLib/header/lslMath.h +++ b/src/MathLib/header/lslMath.h @@ -20,8 +20,8 @@ int RandomRange(int from, int to); float NumAbsAdd(float absVal, float addVal); float ScalarTransform(float scalar, const D3DXVECTOR3& vec, const D3DXMATRIX& mat); -void BuildWorldMatrix(const D3DXVECTOR3& pos, const D3DXVECTOR3& scale, const D3DXQUATERNION& rot, D3DXMATRIX& outMat); -D3DXMATRIX BuildWorldMatrix(const D3DXVECTOR3& pos, const D3DXVECTOR3& scale, const D3DXQUATERNION& rot); +void BuildWorldMatrix(const D3DXVECTOR3& pos, const D3DXVECTOR3& scale, const glm::quat& rot, D3DXMATRIX& outMat); +D3DXMATRIX BuildWorldMatrix(const D3DXVECTOR3& pos, const D3DXVECTOR3& scale, const glm::quat& rot); void MatrixRotationFromAxis(const D3DXVECTOR3& xVec, const D3DXVECTOR3& yVec, const D3DXVECTOR3& zVec, D3DXMATRIX& matOut); void MatrixSetTranslation(const D3DXVECTOR3& vec, D3DXMATRIX& outMat); void MatrixTranslate(const D3DXVECTOR3& vec, D3DXMATRIX& outMat); @@ -30,6 +30,9 @@ void MatrixScale(const D3DXVECTOR3& vec, D3DXMATRIX& outMat); void MatGetPos(const D3DXMATRIX& mat, D3DXVECTOR3& outPos); D3DXVECTOR3 MatGetPos(const D3DXMATRIX& mat); +glm::vec3 Vec3DxToGlm(D3DXVECTOR3 v3); +D3DXVECTOR3 Vec3GlmToDx(glm::vec3 v3); + // glm::vec2 Vec2TransformCoord(const glm::vec2 &vec, const glm::mat4 &mat); void Vec2NormCCW(const glm::vec2& vec2, glm::vec2& outVec); @@ -48,7 +51,7 @@ D3DXVECTOR3 Vec3Invert(const D3DXVECTOR3& vec); D3DXVECTOR3 Vec3TransformCoord(const D3DXVECTOR3& vec, const D3DXMATRIX& mat); void Vec3Abs(const D3DXVECTOR3& vec, D3DXVECTOR3& rOut); D3DXVECTOR3 Vec3Abs(const D3DXVECTOR3& vec); -void Vec3Rotate(const D3DXVECTOR3& v, const D3DXQUATERNION& quat, D3DXVECTOR3& outVec); +void Vec3Rotate(const D3DXVECTOR3& v, const glm::quat& quat, D3DXVECTOR3& outVec); void operator*=(D3DXVECTOR3& vec1, const D3DXVECTOR3& vec2); D3DXVECTOR3 operator*(const D3DXVECTOR3& vec1, const D3DXVECTOR3& vec2); void operator/=(D3DXVECTOR3& vec1, const D3DXVECTOR3& vec2); @@ -96,7 +99,7 @@ const glm::vec2 IdentityVec2(1.0f, 1.0f); const D3DXVECTOR3 IdentityVector(1.0f, 1.0f, 1.0f); const D3DXVECTOR4 IdentityVec4(1.0f, 1.0f, 1.0f, 1.0f); const D3DXVECTOR3 IdentityHalfVec (0.5f, 0.5f, 0.5f); -const D3DXQUATERNION NullQuaternion(0.0f, 0.0f, 0.0f, 1.0f); +const glm::quat NullQuaternion(1.0f, 0.0f, 0.0f, 0.0f); template struct ValueRange { @@ -382,11 +385,11 @@ Vec3Range operator*(const Vec3Range& val1, float val2); Vec3Range operator*(const Vec3Range& val1, const D3DXVECTOR3& val2); //Объемная интерполяция пока схожа к кубической, хотя на самом деле нужна сферическая. Когда поверхность сферы ограничивается окружностью(двумя радиус векторами, которые определяют димаетр окружности на манер как сделано в BB), которая разбивается на сектора через углы. -template<> struct ValueRange +template<> struct ValueRange { public: - typedef ValueRange MyClass; - typedef D3DXQUATERNION _Value; + typedef ValueRange MyClass; + typedef glm::quat _Value; enum Distribution {vdLinear = 0, vdVolume, cDistributionEnd}; static const char* cDistributionStr[cDistributionEnd]; @@ -417,12 +420,11 @@ template<> struct ValueRange _step.x = _freq.x > 1 ? leng.x / (_freq.x - 1) : 0; _step.y = _freq.y > 1 ? leng.y / (_freq.y - 1) : 0; - float tmp; - D3DXQuaternionToAxisAngle(&_min, &_minAngle, &tmp); - _minAngle.z = tmp; + _minAngle = Vec3GlmToDx(glm::axis(_min)); + _minAngle.z = glm::angle(_min); // - D3DXQuaternionToAxisAngle(&_max, &_maxAngle, &tmp); - _maxAngle.z = tmp; + _maxAngle = Vec3GlmToDx(glm::axis(_max)); + _maxAngle.z = glm::angle(_max); } } public: @@ -483,9 +485,7 @@ template<> struct ValueRange { case vdLinear: { - _Value res; - D3DXQuaternionSlerp(&res, &_min, &_max, range); - + _Value res = glm::mix(_min, _max, range); return res; } @@ -508,8 +508,7 @@ template<> struct ValueRange if (range > 0.5f) value.z = -value.z; - D3DXQUATERNION res; - D3DXQuaternionRotationAxis(&res, &value, _minAngle.z + (_maxAngle.z - _minAngle.z) * range); + glm::quat res = glm::angleAxis(_minAngle.z + (_maxAngle.z - _minAngle.z) * range, Vec3DxToGlm(value)); return res; } @@ -538,7 +537,7 @@ template<> struct ValueRange typedef ValueRange FloatRange; typedef ValueRange Vec2Range; typedef ValueRange Vec4Range; -typedef ValueRange QuatRange; +typedef ValueRange QuatRange; typedef ValueRange ColorRange; //} diff --git a/src/MathLib/header/lslMath.inl b/src/MathLib/header/lslMath.inl index 760228d4..b9b67137 100644 --- a/src/MathLib/header/lslMath.inl +++ b/src/MathLib/header/lslMath.inl @@ -44,6 +44,36 @@ inline float NumAbsAdd(float absVal, float addVal) return absVal > 0 ? absVal + addVal : absVal - addVal; } +inline glm::mat4 Matrix4DxToGlm(const D3DXMATRIX &mat) +{ + glm::mat4 mat4glm(mat._11, mat._21, mat._31, mat._41, + mat._12, mat._22, mat._32, mat._42, + mat._13, mat._23, mat._33, mat._43, + mat._14, mat._24, mat._34, mat._44); + return mat4glm; +} + +inline D3DXMATRIX Matrix4GlmToDx(const glm::mat4 &mat) +{ + D3DXMATRIX matrix(mat[0].x, mat[0].y, mat[0].z, mat[0].w, + mat[1].x, mat[1].y, mat[1].z, mat[1].w, + mat[2].x, mat[2].y, mat[2].z, mat[2].w, + mat[3].x, mat[3].y, mat[3].z, mat[3].w); + return matrix; +} + +inline glm::vec3 Vec3DxToGlm(D3DXVECTOR3 v3) +{ + glm::vec3 v3glm(v3.x, v3.y, v3.z); + return v3glm; +} + +inline D3DXVECTOR3 Vec3GlmToDx(glm::vec3 v3) +{ + D3DXVECTOR3 v3dx(v3.x, v3.y, v3.z); + return v3dx; +} + inline float ScalarTransform(float scalar, const D3DXVECTOR3& vec, const D3DXMATRIX& mat) { D3DXVECTOR3 res; @@ -52,13 +82,12 @@ inline float ScalarTransform(float scalar, const D3DXVECTOR3& vec, const D3DXMAT return scalar < 0 ? -len : len; } -inline void BuildWorldMatrix(const D3DXVECTOR3& pos, const D3DXVECTOR3& scale, const D3DXQUATERNION& rot, D3DXMATRIX& outMat) +inline void BuildWorldMatrix(const D3DXVECTOR3& pos, const D3DXVECTOR3& scale, const glm::quat& rot, D3DXMATRIX& outMat) { D3DXMATRIX scaleMat; D3DXMatrixScaling(&scaleMat, scale.x, scale.y, scale.z); - D3DXMATRIX rotMat; - D3DXMatrixRotationQuaternion(&rotMat, &rot); + D3DXMATRIX rotMat = Matrix4GlmToDx(glm::toMat4(rot)); D3DXMATRIX transMat; D3DXMatrixTranslation(&transMat, pos.x, pos.y, pos.z); @@ -66,7 +95,7 @@ inline void BuildWorldMatrix(const D3DXVECTOR3& pos, const D3DXVECTOR3& scale, c outMat = scaleMat * rotMat * transMat; } -inline D3DXMATRIX BuildWorldMatrix(const D3DXVECTOR3& pos, const D3DXVECTOR3& scale, const D3DXQUATERNION& rot) +inline D3DXMATRIX BuildWorldMatrix(const D3DXVECTOR3& pos, const D3DXVECTOR3& scale, const glm::quat& rot) { D3DXMATRIX res; BuildWorldMatrix(pos, scale, rot, res); @@ -133,15 +162,6 @@ inline D3DXVECTOR3 MatGetPos(const D3DXMATRIX& mat) return res; } -inline glm::mat4 d3dMatrixToGLM(const D3DXMATRIX &mat) -{ - glm::mat4 mat4glm(mat._11, mat._21, mat._31, mat._41, - mat._12, mat._22, mat._32, mat._42, - mat._13, mat._23, mat._33, mat._43, - mat._14, mat._24, mat._34, mat._44); - return mat4glm; -} - inline glm::vec2 Vec2Minimize(const glm::vec2 &vec1, const glm::vec2 &vec2) { glm::vec2 pOut; @@ -288,18 +308,18 @@ inline D3DXVECTOR3 Vec3Abs(const D3DXVECTOR3& vec) return res; } -inline void Vec3Rotate(const D3DXVECTOR3& v, const D3DXQUATERNION& quat, D3DXVECTOR3& outVec) +inline void Vec3Rotate(const D3DXVECTOR3& v, const glm::quat& quat, D3DXVECTOR3& outVec) { - D3DXQUATERNION q(v.x * quat.w + v.z * quat.y - v.y * quat.z, - v.y * quat.w + v.x * quat.z - v.z * quat.x, - v.z * quat.w + v.y * quat.x - v.x * quat.y, - v.x * quat.x + v.y * quat.y + v.z * quat.z); + glm::quat q(v.x * quat.x + v.y * quat.y + v.z * quat.z, + v.x * quat.w + v.z * quat.y - v.y * quat.z, + v.y * quat.w + v.x * quat.z - v.z * quat.x, + v.z * quat.w + v.y * quat.x - v.x * quat.y); outVec.x = quat.w * q.x + quat.x * q.w + quat.y * q.z - quat.z * q.y; outVec.y = quat.w * q.y + quat.y * q.w + quat.z * q.x - quat.x * q.z; outVec.z = quat.w * q.z + quat.z * q.w + quat.x * q.y - quat.y * q.x; - outVec /= D3DXQuaternionLengthSq(&quat); + outVec /= glm::length2(quat); } inline void operator*=(D3DXVECTOR3& vec1, const D3DXVECTOR3& vec2) @@ -386,7 +406,7 @@ inline D3DXCOLOR operator*(const D3DXCOLOR& vec1, const D3DXCOLOR& vec2) return res; } -inline void QuatShortestArc(const D3DXVECTOR3& from, const D3DXVECTOR3& to, D3DXQUATERNION& outQuat) +inline void QuatShortestArc(const D3DXVECTOR3& from, const D3DXVECTOR3& to, glm::quat& outQuat) { float angle = D3DXVec3Dot(&from, &to); if (abs(angle) > 1.0f) @@ -401,8 +421,8 @@ inline void QuatShortestArc(const D3DXVECTOR3& from, const D3DXVECTOR3& to, D3DX { D3DXVECTOR3 axe; D3DXVec3Cross(&axe, &from, &to); - D3DXQUATERNION rot; - D3DXQuaternionRotationAxis(&outQuat, &axe, angle); + glm::quat rot; + outQuat = glm::angleAxis(angle, Vec3DxToGlm(axe)); } else outQuat = NullQuaternion; @@ -424,32 +444,31 @@ inline void QuatShortestArc(const D3DXVECTOR3& from, const D3DXVECTOR3& to, D3DX D3DXQuaternionNormalize(&outQuat, &outQuat);*/ } -inline D3DXQUATERNION QuatShortestArc(const D3DXVECTOR3& from, const D3DXVECTOR3& to) +inline glm::quat QuatShortestArc(const D3DXVECTOR3& from, const D3DXVECTOR3& to) { - D3DXQUATERNION outQuat; + glm::quat outQuat; QuatShortestArc(from, to, outQuat); return outQuat; } -inline float QuatAngle(const D3DXQUATERNION& quat1, const D3DXQUATERNION& quat2) +inline float QuatAngle(const glm::quat& quat1, const glm::quat& quat2) { - return acos(abs(D3DXQuaternionDot(&quat1, &quat2)/(D3DXQuaternionLength(&quat1) * D3DXQuaternionLength(&quat2)))) * 2; + return acos(abs(glm::dot(quat1, quat2) / (glm::length(quat1) * glm::length(quat2)))) * 2; } -inline const D3DXQUATERNION& QuatRotation(D3DXQUATERNION& quat, const D3DXQUATERNION& quat1, const D3DXQUATERNION& quat2) +inline glm::quat QuatRotation(const glm::quat& quat1, const glm::quat& quat2) { - quat = (*D3DXQuaternionInverse(&quat, &quat1)) * quat2; - return quat; + return glm::inverse(quat1) * quat2; } -inline const D3DXVECTOR3& QuatRotateVec3(D3DXVECTOR3& res, const D3DXVECTOR3& vec, const D3DXQUATERNION& quat) +inline const D3DXVECTOR3& QuatRotateVec3(D3DXVECTOR3& res, const D3DXVECTOR3& vec, const glm::quat& quat) { - D3DXQUATERNION q(vec.x * quat.w + vec.z * quat.y - vec.y * quat.z, - vec.y * quat.w + vec.x * quat.z - vec.z * quat.x, - vec.z * quat.w + vec.y * quat.x - vec.x * quat.y, - vec.x * quat.x + vec.y * quat.y + vec.z * quat.z); - float norm = D3DXQuaternionLengthSq(&quat); + glm::quat q(vec.x * quat.x + vec.y * quat.y + vec.z * quat.z, + vec.x * quat.w + vec.z * quat.y - vec.y * quat.z, + vec.y * quat.w + vec.x * quat.z - vec.z * quat.x, + vec.z * quat.w + vec.y * quat.x - vec.x * quat.y); + float norm = glm::length2(quat); res = D3DXVECTOR3(quat.w * q.x + quat.x * q.w + quat.y * q.z - quat.z * q.y, quat.w * q.y + quat.y * q.w + quat.z * q.x - quat.x * q.z, @@ -541,9 +560,6 @@ inline glm::vec2 Line2NormVecToPoint(const D3DXVECTOR3& line, const glm::vec2& p return res; } - - - inline Vec3Range operator*(const Vec3Range& val1, float val2) { Vec3Range res = val1; diff --git a/src/MathLib/source/lslMath.cpp b/src/MathLib/source/lslMath.cpp index 01ef16e5..7e7065ba 100644 --- a/src/MathLib/source/lslMath.cpp +++ b/src/MathLib/source/lslMath.cpp @@ -7,6 +7,6 @@ const char* ValueRange::cDistributionStr[ValueRange::cDistributionEnd] = {"vdLinear", "vdVolume"}; -const char* ValueRange::cDistributionStr[ValueRange::cDistributionEnd] = {"vdLinear", "vdVolume"}; +const char* ValueRange::cDistributionStr[ValueRange::cDistributionEnd] = {"vdLinear", "vdVolume"}; //} \ No newline at end of file diff --git a/src/MathLib/source/r3dMath.cpp b/src/MathLib/source/r3dMath.cpp index 7c50219e..dd5803a7 100644 --- a/src/MathLib/source/r3dMath.cpp +++ b/src/MathLib/source/r3dMath.cpp @@ -51,7 +51,7 @@ AABB2::AABB2(const glm::vec2& mMin, const glm::vec2& mMax): min(mMin), max(mMax) //void AABB2::Transform(const AABB2 &aabb, const glm::mat4 &m, AABB2 &rOut) void AABB2::Transform(const AABB2 &aabb, const D3DXMATRIX &mIn, AABB2 &rOut) { - auto m = d3dMatrixToGLM(mIn); // remove after D3DXMATRIX replacement + auto m = Matrix4DxToGlm(mIn); // remove after D3DXMATRIX replacement glm::vec2 oldMin = aabb.min; glm::vec2 oldMax = aabb.max; rOut.min = Vec2TransformCoord(oldMin, m); From d2c0b05b654cdeb321db3b0216271f4e4be560f1 Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Sun, 20 Jun 2021 20:00:18 +0300 Subject: [PATCH 18/55] clang-format: UseTab AlignWithSpaces --- .clang-format | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.clang-format b/.clang-format index c41f35e5..07ac2e81 100644 --- a/.clang-format +++ b/.clang-format @@ -138,6 +138,6 @@ BasedOnStyle: Microsoft # - QT_REQUIRE_VERSION # TabWidth: 4 # UseCRLF: false -UseTab: ForIndentation +UseTab: AlignWithSpaces # ... From c5b5ce8bb8ad25ef27d4d7443ac9214e9afa632b Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Sun, 20 Jun 2021 20:39:26 +0300 Subject: [PATCH 19/55] math: replace D3DXQUATERNION with glm::quat in NetLib --- src/CMakeLists.txt | 5 +---- src/NetLib/include/net/BitStream.h | 2 +- src/NetLib/include/net/NetCommon.h | 8 ++++---- src/NetLib/source/net/BitStream.cpp | 4 ++-- 4 files changed, 8 insertions(+), 11 deletions(-) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 70514d11..8ad77b53 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -12,11 +12,8 @@ endif() add_subdirectory(LexStd) add_subdirectory(MathLib) -if (FALSE) add_subdirectory(NetLib) -#if (NOT MSVC) -# add_subdirectory(XPlatform) -#endif() +if (FALSE) add_subdirectory(Rock3dEngine) add_subdirectory(Rock3dGame) add_subdirectory(RRR3d) diff --git a/src/NetLib/include/net/BitStream.h b/src/NetLib/include/net/BitStream.h index ff1bec54..fa7200b5 100644 --- a/src/NetLib/include/net/BitStream.h +++ b/src/NetLib/include/net/BitStream.h @@ -198,7 +198,7 @@ class BitStream NETLIB_API void Serialize(glm::vec2& value, float err = cFloatErr); NETLIB_API void Serialize(D3DXVECTOR3& value, float err = cFloatErr); NETLIB_API void Serialize(D3DXVECTOR4& value, float err = cFloatErr); - NETLIB_API void Serialize(D3DXQUATERNION& value, float err = cFloatErr); + NETLIB_API void Serialize(glm::quat& value, float err = cFloatErr); NETLIB_API void Serialize(D3DXCOLOR& value, float err = cFloatErr); NETLIB_API void Serialize(void*& data, unsigned size, bool cmp); diff --git a/src/NetLib/include/net/NetCommon.h b/src/NetLib/include/net/NetCommon.h index 43041037..b14351b9 100644 --- a/src/NetLib/include/net/NetCommon.h +++ b/src/NetLib/include/net/NetCommon.h @@ -163,8 +163,8 @@ unsigned Read(std::istream& stream, D3DXVECTOR3& value); unsigned Write(std::ostream& stream, const D3DXVECTOR4& value); unsigned Read(std::istream& stream, D3DXVECTOR4& value); -unsigned Write(std::ostream& stream, const D3DXQUATERNION& value); -unsigned Read(std::istream& stream, D3DXQUATERNION& value); +unsigned Write(std::ostream& stream, const glm::quat& value); +unsigned Read(std::istream& stream, glm::quat& value); unsigned Write(std::ostream& stream, const D3DXCOLOR& value); unsigned Read(std::istream& stream, D3DXCOLOR& value); @@ -313,13 +313,13 @@ inline unsigned Read(std::istream& stream, D3DXVECTOR4& value) return sizeof(value); } -inline unsigned Write(std::ostream& stream, const D3DXQUATERNION& value) +inline unsigned Write(std::ostream& stream, const glm::quat& value) { Write(stream, &value, sizeof(value)); return sizeof(value); } -inline unsigned Read(std::istream& stream, D3DXQUATERNION& value) +inline unsigned Read(std::istream& stream, glm::quat& value) { Read(stream, &value, sizeof(value)); return sizeof(value); diff --git a/src/NetLib/source/net/BitStream.cpp b/src/NetLib/source/net/BitStream.cpp index 595c4789..fba6ae19 100644 --- a/src/NetLib/source/net/BitStream.cpp +++ b/src/NetLib/source/net/BitStream.cpp @@ -325,9 +325,9 @@ void BitStream::Serialize(D3DXVECTOR4& value, float err) Serialize(value, 4, err); } -void BitStream::Serialize(D3DXQUATERNION& value, float err) +void BitStream::Serialize(glm::quat& value, float err) { - Serialize(value, 4, err); + Serialize((float *)(&value), 4, err); } void BitStream::Serialize(D3DXCOLOR& value, float err) From 008da75dc2d1f6d8cfc94fc91702941fc60dacdb Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Sun, 20 Jun 2021 20:47:29 +0300 Subject: [PATCH 20/55] math: auto replace D3DXQUATERNION with glm::quat in Rock3dEngine --- src/CMakeLists.txt | 2 +- src/Rock3dEngine/header/graph/FxManager.h | 8 +++---- src/Rock3dEngine/header/graph/SceneManager.h | 12 +++++----- src/Rock3dEngine/header/graph/StdNode.h | 6 ++--- src/Rock3dEngine/header/gui/GUI.h | 12 +++++----- src/Rock3dEngine/header/px/Physx.h | 12 +++++----- src/Rock3dEngine/source/GraphManager.cpp | 2 +- src/Rock3dEngine/source/graph/FxManager.cpp | 10 ++++----- .../source/graph/MaterialLibrary.cpp | 2 +- .../source/graph/SceneManager.cpp | 14 ++++++------ src/Rock3dEngine/source/graph/StdNode.cpp | 4 ++-- src/Rock3dEngine/source/gui/GUI.cpp | 22 +++++++++---------- src/Rock3dEngine/source/px/Physx.cpp | 8 +++---- 13 files changed, 57 insertions(+), 57 deletions(-) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 8ad77b53..d27481db 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -13,8 +13,8 @@ endif() add_subdirectory(LexStd) add_subdirectory(MathLib) add_subdirectory(NetLib) -if (FALSE) add_subdirectory(Rock3dEngine) +if (FALSE) add_subdirectory(Rock3dGame) add_subdirectory(RRR3d) add_subdirectory(MapEditor) diff --git a/src/Rock3dEngine/header/graph/FxManager.h b/src/Rock3dEngine/header/graph/FxManager.h index 9f9e55ca..ff321a4e 100644 --- a/src/Rock3dEngine/header/graph/FxManager.h +++ b/src/Rock3dEngine/header/graph/FxManager.h @@ -20,7 +20,7 @@ class FxParticle: public lsl::Object { private: D3DXVECTOR3 _pos; - D3DXQUATERNION _rot; + glm::quat _rot; D3DXVECTOR3 _scale; mutable D3DXMATRIX _worldMat; @@ -41,8 +41,8 @@ class FxParticle: public lsl::Object const D3DXVECTOR3& GetPos(); void SetPos(const D3DXVECTOR3& value); - const D3DXQUATERNION& GetRot(); - void SetRot(const D3DXQUATERNION& value); + const glm::quat& GetRot(); + void SetRot(const glm::quat& value); const D3DXVECTOR3& GetScale(); void SetScale(const D3DXVECTOR3& value); @@ -441,7 +441,7 @@ class FxFlowParticle: public FxParticle { public: D3DXVECTOR3 speedPos; - D3DXQUATERNION speedRot; + glm::quat speedRot; D3DXVECTOR3 speedScale; D3DXVECTOR3 acceleration; }; diff --git a/src/Rock3dEngine/header/graph/SceneManager.h b/src/Rock3dEngine/header/graph/SceneManager.h index f95ae157..a4fee626 100644 --- a/src/Rock3dEngine/header/graph/SceneManager.h +++ b/src/Rock3dEngine/header/graph/SceneManager.h @@ -122,7 +122,7 @@ class BaseSceneNode: public lsl::Component, protected IProgressUser mutable float _rollAngle; mutable float _pitchAngle; mutable float _turnAngle; - mutable D3DXQUATERNION _rot; + mutable glm::quat _rot; //Матрицы являются промежуточными переменными, и хранятся в полях объекта для оптимизации расчетов. Для вывода коорректных данных(если перерасчет матриц ещё не произошел) о самих матрицах и связных данных используется mutable для const mutable D3DXMATRIX _rotMat; @@ -253,8 +253,8 @@ class BaseSceneNode: public lsl::Component, protected IProgressUser float GetTurnAngle() const; void SetTurnAngle(float value); //Поворот по кватерниону - const D3DXQUATERNION& GetRot() const; - void SetRot(const D3DXQUATERNION& value); + const glm::quat& GetRot() const; + void SetRot(const glm::quat& value); //Локальные матрицы D3DXMATRIX GetScaleMat() const; @@ -275,8 +275,8 @@ class BaseSceneNode: public lsl::Component, protected IProgressUser //Мировые координаты D3DXVECTOR3 GetWorldPos() const; void SetWorldPos(const D3DXVECTOR3& value); - D3DXQUATERNION GetWorldRot() const; - void SetWorldRot(const D3DXQUATERNION& value); + glm::quat GetWorldRot() const; + void SetWorldRot(const glm::quat& value); //Невозможно представить мировое масштабирование с помощью одного вектора поскольку направление масштабирования зависит от поворота. Поэтому представляется в виде матрицы D3DXMATRIX GetWorldScale() const; // @@ -323,7 +323,7 @@ class BaseSceneNode: public lsl::Component, protected IProgressUser D3DXVECTOR3 speedPos; D3DXVECTOR3 speedScale; - D3DXQUATERNION speedRot; + glm::quat speedRot; bool autoRot; #ifdef _DEBUG diff --git a/src/Rock3dEngine/header/graph/StdNode.h b/src/Rock3dEngine/header/graph/StdNode.h index 03808efe..1cd49f52 100644 --- a/src/Rock3dEngine/header/graph/StdNode.h +++ b/src/Rock3dEngine/header/graph/StdNode.h @@ -21,7 +21,7 @@ class MaterialNode D3DXVECTOR3 _offset; D3DXVECTOR3 _scale; - D3DXQUATERNION _rotate; + glm::quat _rotate; D3DCULL _cullMode; mutable D3DXMATRIX _matrix; @@ -75,8 +75,8 @@ class MaterialNode const D3DXVECTOR3& GetScale() const; void SetScale(const D3DXVECTOR3& value); - const D3DXQUATERNION& GetRotate() const; - void SetRotate(const D3DXQUATERNION& value); + const glm::quat& GetRotate() const; + void SetRotate(const glm::quat& value); D3DCULL GetCullMode() const; void SetCullMode(D3DCULL value); diff --git a/src/Rock3dEngine/header/gui/GUI.h b/src/Rock3dEngine/header/gui/GUI.h index 3d0336b2..92c60c0a 100644 --- a/src/Rock3dEngine/header/gui/GUI.h +++ b/src/Rock3dEngine/header/gui/GUI.h @@ -230,7 +230,7 @@ class Graphic3d: public Object bool _active; D3DXVECTOR3 _pos; - D3DXQUATERNION _rot; + glm::quat _rot; D3DXVECTOR3 _scale; Material* _material; @@ -257,8 +257,8 @@ class Graphic3d: public Object const D3DXVECTOR3& GetPos() const; void SetPos(const D3DXVECTOR3& value); - D3DXQUATERNION GetRot() const; - void SetRot(const D3DXQUATERNION& value); + glm::quat GetRot() const; + void SetRot(const glm::quat& value); const D3DXVECTOR3& GetScale() const; void SetScale(const D3DXVECTOR3& value); @@ -1059,7 +1059,7 @@ class ViewPort3d: public Widget private: View3d* _view3d; Style _style; - D3DXQUATERNION _rot3dSpeed; + glm::quat _rot3dSpeed; bool _setProgress; void AnimProgress(float deltaTime); @@ -1075,8 +1075,8 @@ class ViewPort3d: public Widget public: Graphic3d* GetBox(); - const D3DXQUATERNION& GetRot3dSpeed() const; - void SetRot3dSpeed(const D3DXQUATERNION& value); + const glm::quat& GetRot3dSpeed() const; + void SetRot3dSpeed(const glm::quat& value); Style GetStyle() const; void SetStyle(Style value); diff --git a/src/Rock3dEngine/header/px/Physx.h b/src/Rock3dEngine/header/px/Physx.h index b17f9b45..beea8fe1 100644 --- a/src/Rock3dEngine/header/px/Physx.h +++ b/src/Rock3dEngine/header/px/Physx.h @@ -252,7 +252,7 @@ class Shape: public lsl::CollectionItem, public lsl::Serializable NxShape* _nxShape; D3DXVECTOR3 _pos; - D3DXQUATERNION _rot; + glm::quat _rot; D3DXVECTOR3 _scale; unsigned _materialIndex; float _density; @@ -290,8 +290,8 @@ class Shape: public lsl::CollectionItem, public lsl::Serializable const D3DXVECTOR3& GetPos() const; void SetPos(const D3DXVECTOR3& value); - const D3DXQUATERNION& GetRot() const; - void SetRot(const D3DXQUATERNION& value); + const glm::quat& GetRot() const; + void SetRot(const glm::quat& value); const D3DXVECTOR3& GetScale() const; void SetScale(D3DXVECTOR3& value); @@ -628,7 +628,7 @@ class Actor: public lsl::Object, public lsl::Serializable //координаты кэшируется, отностиельно _nxActor mutable D3DXVECTOR3 _pos; - mutable D3DXQUATERNION _rot; + mutable glm::quat _rot; mutable D3DXVECTOR3 _scale; protected: //Динамическая инициализация shape @@ -700,8 +700,8 @@ class Actor: public lsl::Object, public lsl::Serializable //Локальные координаты в пространстве родителя. По концепции методы возращают текущие кординаты nxActor-a, если его не существуюет то кэшированные координаты Actor-a. Упрощенная реализация, пока пододит только для двухуровненной иерархии const D3DXVECTOR3& GetPos() const; void SetPos(const D3DXVECTOR3& value); - const D3DXQUATERNION& GetRot() const; - void SetRot(const D3DXQUATERNION& value); + const glm::quat& GetRot() const; + void SetRot(const glm::quat& value); const D3DXVECTOR3& GetScale() const; void SetScale(const D3DXVECTOR3& value); diff --git a/src/Rock3dEngine/source/GraphManager.cpp b/src/Rock3dEngine/source/GraphManager.cpp index 181b5fb1..90da585f 100644 --- a/src/Rock3dEngine/source/GraphManager.cpp +++ b/src/Rock3dEngine/source/GraphManager.cpp @@ -2305,7 +2305,7 @@ bool GraphManager::Render(float deltaTime, bool pause) D3DXVec3Cross(&radVec, &D3DXVECTOR3(0, 0, 1), &radVec); if (D3DXVec3Length(&radVec) < 0.1f) radVec = D3DXVECTOR3(1, 0, 0); - D3DXQUATERNION radQuat; + glm::quat radQuat; D3DXQuaternionRotationAxis(&radQuat, &radVec, D3DX_PI/2.5f); Vec3Rotate(D3DXVECTOR3(0, 0, 1), radQuat, radVec); radVec = radVec * 1000.0f; diff --git a/src/Rock3dEngine/source/graph/FxManager.cpp b/src/Rock3dEngine/source/graph/FxManager.cpp index c59f3ce1..ef9f40d3 100644 --- a/src/Rock3dEngine/source/graph/FxManager.cpp +++ b/src/Rock3dEngine/source/graph/FxManager.cpp @@ -73,12 +73,12 @@ void FxParticle::SetPos(const D3DXVECTOR3& value) TransformChanged(); } -const D3DXQUATERNION& FxParticle::GetRot() +const glm::quat& FxParticle::GetRot() { return _rot; } -void FxParticle::SetRot(const D3DXQUATERNION& value) +void FxParticle::SetRot(const glm::quat& value) { _rot = value; TransformChanged(); @@ -273,7 +273,7 @@ void FxEmitter::UpdateParticle(FxParticle* value, float dTime, bool init) { D3DXVECTOR3 pos = _particleDesc.startPos.GetValue(); D3DXVECTOR3 scale = _particleDesc.startScale.GetValue(); - D3DXQUATERNION rot = _particleDesc.startRot.GetValue(); + glm::quat rot = _particleDesc.startRot.GetValue(); pos += _particleDesc.rangePos.GetValue(CompRangeFrame(value->index)); scale += _particleDesc.rangeScale.GetValue(CompRangeFrame(value->index)); @@ -1352,7 +1352,7 @@ void FxFlowEmitter::UpdateParticle(FxParticle* value, float dTime, bool init) { D3DXVECTOR3 dir; D3DXVec3Normalize(&dir, &speed); - D3DXQUATERNION rot; + glm::quat rot; QuatShortestArc(XVector, dir, rot); particle->SetRot(rot * particle->speedRot); } @@ -1360,7 +1360,7 @@ void FxFlowEmitter::UpdateParticle(FxParticle* value, float dTime, bool init) { D3DXVECTOR3 rotAxe; float rotAngle; - D3DXQUATERNION rotDt; + glm::quat rotDt; D3DXQuaternionToAxisAngle(&particle->speedRot, &rotAxe, &rotAngle); D3DXQuaternionRotationAxis(&rotDt, &rotAxe, rotAngle * dTime); particle->SetRot(particle->GetRot() * rotDt); diff --git a/src/Rock3dEngine/source/graph/MaterialLibrary.cpp b/src/Rock3dEngine/source/graph/MaterialLibrary.cpp index 127c778f..7c226be5 100644 --- a/src/Rock3dEngine/source/graph/MaterialLibrary.cpp +++ b/src/Rock3dEngine/source/graph/MaterialLibrary.cpp @@ -37,7 +37,7 @@ const D3DXMATRIX& BaseSampler::GetMatrix(float frame) const D3DXVECTOR3 offset = _offset.GetValue(_matFrame); D3DXVECTOR3 scale = _scale.GetValue(_matFrame); - D3DXQUATERNION rotate = _rotate.GetValue(_matFrame); + glm::quat rotate = _rotate.GetValue(_matFrame); _defMat = offset == NullVector && scale == IdentityVector && rotate == NullQuaternion; diff --git a/src/Rock3dEngine/source/graph/SceneManager.cpp b/src/Rock3dEngine/source/graph/SceneManager.cpp index 53bab396..5515531d 100644 --- a/src/Rock3dEngine/source/graph/SceneManager.cpp +++ b/src/Rock3dEngine/source/graph/SceneManager.cpp @@ -463,7 +463,7 @@ void BaseSceneNode::OnProgress(float deltaTime) { D3DXVECTOR3 dir; D3DXVec3Normalize(&dir, &speedPos); - D3DXQUATERNION rot; + glm::quat rot; QuatShortestArc(XVector, dir, rot); SetRot(rot * speedRot); } @@ -471,7 +471,7 @@ void BaseSceneNode::OnProgress(float deltaTime) { D3DXVECTOR3 rotAxe; float rotAngle; - D3DXQUATERNION rotDt; + glm::quat rotDt; D3DXQuaternionToAxisAngle(&speedRot, &rotAxe, &rotAngle); D3DXQuaternionRotationAxis(&rotDt, &rotAxe, rotAngle * deltaTime); SetRot(GetRot() * rotDt); @@ -869,13 +869,13 @@ void BaseSceneNode::SetTurnAngle(float value) ChangedRotation(rsEulerAngles); } -const D3DXQUATERNION& BaseSceneNode::GetRot() const +const glm::quat& BaseSceneNode::GetRot() const { ExtractRotation(rsQuaternion); return _rot; } -void BaseSceneNode::SetRot(const D3DXQUATERNION& value) +void BaseSceneNode::SetRot(const glm::quat& value) { _rot = value; ChangedRotation(rsQuaternion); @@ -1062,16 +1062,16 @@ void BaseSceneNode::SetWorldPos(const D3DXVECTOR3& value) SetPos(value); } -D3DXQUATERNION BaseSceneNode::GetWorldRot() const +glm::quat BaseSceneNode::GetWorldRot() const { - D3DXQUATERNION res = GetRot(); + glm::quat res = GetRot(); const BaseSceneNode* curObj = this; while (curObj = curObj->GetParent()) res *= curObj->GetRot(); return res; } -void BaseSceneNode::SetWorldRot(const D3DXQUATERNION& value) +void BaseSceneNode::SetWorldRot(const glm::quat& value) { if (_parent) return SetRot(value * _parent->GetWorldRot()); diff --git a/src/Rock3dEngine/source/graph/StdNode.cpp b/src/Rock3dEngine/source/graph/StdNode.cpp index 02d31ce1..9d8cde88 100644 --- a/src/Rock3dEngine/source/graph/StdNode.cpp +++ b/src/Rock3dEngine/source/graph/StdNode.cpp @@ -306,12 +306,12 @@ void MaterialNode::SetScale(const D3DXVECTOR3& value) TransformationChanged(); } -const D3DXQUATERNION& MaterialNode::GetRotate() const +const glm::quat& MaterialNode::GetRotate() const { return _rotate; } -void MaterialNode::SetRotate(const D3DXQUATERNION& value) +void MaterialNode::SetRotate(const glm::quat& value) { _rotate = value; TransformationChanged(); diff --git a/src/Rock3dEngine/source/gui/GUI.cpp b/src/Rock3dEngine/source/gui/GUI.cpp index 305082f0..9dcc0208 100644 --- a/src/Rock3dEngine/source/gui/GUI.cpp +++ b/src/Rock3dEngine/source/gui/GUI.cpp @@ -403,12 +403,12 @@ void Graphic3d::SetPos(const D3DXVECTOR3& value) TransformChanged(); } -D3DXQUATERNION Graphic3d::GetRot() const +glm::quat Graphic3d::GetRot() const { return _rot; } -void Graphic3d::SetRot(const D3DXQUATERNION& value) +void Graphic3d::SetRot(const glm::quat& value) { _rot = value; TransformChanged(); @@ -1293,7 +1293,7 @@ void Widget::BuildMatrix(MatrixChange change) const _pos = _parent->WorldToLocalCoord(_pos); } - D3DXQUATERNION rot; + glm::quat rot; D3DXQuaternionRotationAxis(&rot, &ZVector, GetRot()); D3DXVECTOR3 pos = Vec3FromVec2(GetPos()); @@ -1719,22 +1719,22 @@ void Widget::DeleteAllGraphics() glm::vec2 Widget::LocalToWorldCoord(const glm::vec2& value) const { - return Vec2TransformCoord(value, d3dMatrixToGLM(GetWorldMat())); + return Vec2TransformCoord(value, Matrix4DxToGlm(GetWorldMat())); } glm::vec2 Widget::WorldToLocalCoord(const glm::vec2& value) const { - return Vec2TransformCoord(value, d3dMatrixToGLM(GetInvWorldMat())); + return Vec2TransformCoord(value, Matrix4DxToGlm(GetInvWorldMat())); } glm::vec2 Widget::LocalToWorldNorm(const glm::vec2& value) const { - return Vec2TransformNormal(value, d3dMatrixToGLM(GetWorldMat())); + return Vec2TransformNormal(value, Matrix4DxToGlm(GetWorldMat())); } glm::vec2 Widget::WorldToLocalNorm(const glm::vec2& value) const { - return Vec2TransformNormal(value, d3dMatrixToGLM(GetInvWorldMat())); + return Vec2TransformNormal(value, Matrix4DxToGlm(GetInvWorldMat())); } Manager& Widget::GetManager() @@ -3528,7 +3528,7 @@ ViewPort3d::~ViewPort3d() void ViewPort3d::AnimProgress(float deltaTime) { - D3DXQUATERNION rot; + glm::quat rot; D3DXQuaternionSlerp(&rot, &GetBox()->GetRot(), &(_rot3dSpeed * GetBox()->GetRot()), deltaTime); GetBox()->SetRot(rot); @@ -3574,7 +3574,7 @@ bool ViewPort3d::OnMouseOver(const MouseMove& mMove) SetRot3d(GetRot3d() * rotY * rotX);*/ //Вращение по одной оси, совпадающией с up mesh - D3DXQUATERNION rotZ; + glm::quat rotZ; D3DXQuaternionRotationAxis(&rotZ, &ZVector, D3DX_PI * mMove.dtCoord.x/200.0f); GetBox()->SetRot(rotZ * GetBox()->GetRot()); } @@ -3603,12 +3603,12 @@ Graphic3d* ViewPort3d::GetBox() return _view3d->GetBox(); } -const D3DXQUATERNION& ViewPort3d::GetRot3dSpeed() const +const glm::quat& ViewPort3d::GetRot3dSpeed() const { return _rot3dSpeed; } -void ViewPort3d::SetRot3dSpeed(const D3DXQUATERNION& value) +void ViewPort3d::SetRot3dSpeed(const glm::quat& value) { _rot3dSpeed = value; } diff --git a/src/Rock3dEngine/source/px/Physx.cpp b/src/Rock3dEngine/source/px/Physx.cpp index 3b636279..8692b078 100644 --- a/src/Rock3dEngine/source/px/Physx.cpp +++ b/src/Rock3dEngine/source/px/Physx.cpp @@ -717,12 +717,12 @@ void Shape::SetPos(const D3DXVECTOR3& value) SyncPos(); } -const D3DXQUATERNION& Shape::GetRot() const +const glm::quat& Shape::GetRot() const { return _rot; } -void Shape::SetRot(const D3DXQUATERNION& value) +void Shape::SetRot(const glm::quat& value) { _rot = value; if (_nxShape) @@ -2160,7 +2160,7 @@ void Actor::SetPos(const D3DXVECTOR3& value) } } -const D3DXQUATERNION& Actor::GetRot() const +const glm::quat& Actor::GetRot() const { if (!_parent && _nxActor) _nxActor->getGlobalOrientationQuat().getXYZW(_rot); @@ -2168,7 +2168,7 @@ const D3DXQUATERNION& Actor::GetRot() const return _rot; } -void Actor::SetRot(const D3DXQUATERNION& value) +void Actor::SetRot(const glm::quat& value) { _rot = value; if (_nxActor) From 958b14609c618df357f8173b3219d9e51ff4b0be Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Sun, 20 Jun 2021 22:46:09 +0300 Subject: [PATCH 21/55] math: fix Matrix4GlmToDx, fix incorrect spaces and tabs --- src/MathLib/header/lslMath.h | 28 ++++++------ src/MathLib/header/lslMath.inl | 81 +++++++++++++++++----------------- 2 files changed, 54 insertions(+), 55 deletions(-) diff --git a/src/MathLib/header/lslMath.h b/src/MathLib/header/lslMath.h index d313e1e9..1a0b5dde 100644 --- a/src/MathLib/header/lslMath.h +++ b/src/MathLib/header/lslMath.h @@ -123,7 +123,7 @@ template struct ValueRange } void SetMin(const _Value& value) { - _min = value; + _min = value; } const _Value& GetMax() const @@ -132,7 +132,7 @@ template struct ValueRange }; void SetMax(const _Value& value) { - _max = value; + _max = value; } Distribution GetDistrib() const @@ -141,7 +141,7 @@ template struct ValueRange } void SetDistrib(Distribution value) { - _distrib = value; + _distrib = value; } //[0..1] @@ -156,7 +156,7 @@ template struct ValueRange LSL_ASSERT(false); return _min; - } + } } _Value GetValue() const @@ -171,7 +171,7 @@ template struct ValueRange bool operator!=(const MyClass& value) const { return !operator==(value); - } + } }; template const char* ValueRange<_Value>::cDistributionStr[ValueRange<_Value>::cDistributionEnd] = {"vdLinear", "vdCubic"}; @@ -200,7 +200,7 @@ struct Point2U } unsigned x; - unsigned y; + unsigned y; }; typedef Point2U UPoint; @@ -310,7 +310,7 @@ template<> struct ValueRange const Point3U& GetFreq() const { - return _freq; + return _freq; } void SetFreq(const Point3U& value) { @@ -343,14 +343,14 @@ template<> struct ValueRange value.y = _min.y + _step.y * cell.y; value.z = _min.z + _step.z * cell.z; - return value; + return value; } default: LSL_ASSERT(false); return _min; - } + } } _Value GetValue() const { @@ -429,10 +429,10 @@ template<> struct ValueRange } public: ValueRange(): _distrib(vdLinear), _freq(100, 100) - { + { } ValueRange(const _Value& value): _min(value), _max(value), _distrib(vdLinear), _freq(100, 100) - { + { } ValueRange(const _Value& min, const _Value& max, Distribution distrib = vdLinear, const Point2U& freq = Point2U(100, 100)): _min(min), _max(max), _distrib(distrib), _freq(freq) { @@ -471,7 +471,7 @@ template<> struct ValueRange const Point2U& GetFreq() const { - return _freq; + return _freq; } void SetFreq(const Point2U& value) { @@ -498,7 +498,7 @@ template<> struct ValueRange //Разделяем номер ячейки на секции по осям Point2U cell; cell.x = num % _freq.x; - cell.y = (num / _freq.x) % _freq.y; + cell.y = (num / _freq.x) % _freq.y; //Итоговый результат D3DXVECTOR3 value; @@ -517,7 +517,7 @@ template<> struct ValueRange LSL_ASSERT(false); return _min; - } + } } _Value GetValue() const { diff --git a/src/MathLib/header/lslMath.inl b/src/MathLib/header/lslMath.inl index b9b67137..9b6e344f 100644 --- a/src/MathLib/header/lslMath.inl +++ b/src/MathLib/header/lslMath.inl @@ -46,32 +46,32 @@ inline float NumAbsAdd(float absVal, float addVal) inline glm::mat4 Matrix4DxToGlm(const D3DXMATRIX &mat) { - glm::mat4 mat4glm(mat._11, mat._21, mat._31, mat._41, - mat._12, mat._22, mat._32, mat._42, - mat._13, mat._23, mat._33, mat._43, - mat._14, mat._24, mat._34, mat._44); - return mat4glm; + glm::mat4 mat4glm(mat._11, mat._21, mat._31, mat._41, + mat._12, mat._22, mat._32, mat._42, + mat._13, mat._23, mat._33, mat._43, + mat._14, mat._24, mat._34, mat._44); + return mat4glm; } inline D3DXMATRIX Matrix4GlmToDx(const glm::mat4 &mat) { - D3DXMATRIX matrix(mat[0].x, mat[0].y, mat[0].z, mat[0].w, - mat[1].x, mat[1].y, mat[1].z, mat[1].w, - mat[2].x, mat[2].y, mat[2].z, mat[2].w, - mat[3].x, mat[3].y, mat[3].z, mat[3].w); - return matrix; + D3DXMATRIX matrix(mat[0].x, mat[1].x, mat[2].x, mat[3].x, + mat[0].y, mat[1].y, mat[2].y, mat[3].y, + mat[0].z, mat[1].z, mat[2].z, mat[3].z, + mat[0].w, mat[1].w, mat[2].w, mat[3].w); + return matrix; } inline glm::vec3 Vec3DxToGlm(D3DXVECTOR3 v3) { - glm::vec3 v3glm(v3.x, v3.y, v3.z); - return v3glm; + glm::vec3 v3glm(v3.x, v3.y, v3.z); + return v3glm; } inline D3DXVECTOR3 Vec3GlmToDx(glm::vec3 v3) { - D3DXVECTOR3 v3dx(v3.x, v3.y, v3.z); - return v3dx; + D3DXVECTOR3 v3dx(v3.x, v3.y, v3.z); + return v3dx; } inline float ScalarTransform(float scalar, const D3DXVECTOR3& vec, const D3DXMATRIX& mat) @@ -85,7 +85,7 @@ inline float ScalarTransform(float scalar, const D3DXVECTOR3& vec, const D3DXMAT inline void BuildWorldMatrix(const D3DXVECTOR3& pos, const D3DXVECTOR3& scale, const glm::quat& rot, D3DXMATRIX& outMat) { D3DXMATRIX scaleMat; - D3DXMatrixScaling(&scaleMat, scale.x, scale.y, scale.z); + D3DXMatrixScaling(&scaleMat, scale.x, scale.y, scale.z); D3DXMATRIX rotMat = Matrix4GlmToDx(glm::toMat4(rot)); @@ -164,48 +164,48 @@ inline D3DXVECTOR3 MatGetPos(const D3DXMATRIX& mat) inline glm::vec2 Vec2Minimize(const glm::vec2 &vec1, const glm::vec2 &vec2) { - glm::vec2 pOut; - pOut.x = vec1.x < vec2.x ? vec1.x : vec2.x; - pOut.y = vec1.y < vec2.y ? vec1.y : vec2.y; - return pOut; + glm::vec2 pOut; + pOut.x = vec1.x < vec2.x ? vec1.x : vec2.x; + pOut.y = vec1.y < vec2.y ? vec1.y : vec2.y; + return pOut; } inline glm::vec2 Vec2Maximize(const glm::vec2 &vec1, const glm::vec2 &vec2) { - glm::vec2 pOut; - pOut.x = vec1.x > vec2.x ? vec1.x : vec2.x; - pOut.y = vec1.y > vec2.y ? vec1.y : vec2.y; - return pOut; + glm::vec2 pOut; + pOut.x = vec1.x > vec2.x ? vec1.x : vec2.x; + pOut.y = vec1.y > vec2.y ? vec1.y : vec2.y; + return pOut; } inline glm::vec2 Vec2TransformCoord(const glm::vec2 &vec, const glm::mat4 &mat) { - glm::vec4 res4 = glm::vec4(vec.x, vec.y, 0, 1) * mat; - return glm::vec2(res4.x, res4.y); + glm::vec4 res4 = glm::vec4(vec.x, vec.y, 0, 1) * mat; + return glm::vec2(res4.x, res4.y); } inline glm::vec2 Vec2TransformNormal(const glm::vec2 &vec, const glm::mat4 &mat) { - glm::vec4 res4 = glm::vec4(vec.x, vec.y, 0, 0) * mat; - return glm::vec2(res4.x, res4.y); + glm::vec4 res4 = glm::vec4(vec.x, vec.y, 0, 0) * mat; + return glm::vec2(res4.x, res4.y); } inline float Vec2Dot(const glm::vec2 &vec1, const glm::vec2 &vec2) { - return vec1.x * vec2.x + vec1.y * vec2.y; + return vec1.x * vec2.x + vec1.y * vec2.y; } inline glm::vec2 Vec2Lerp(const glm::vec2 &vec1, const glm::vec2 &vec2, float scalar) { - glm::vec2 res; - res.x = vec1.x + scalar * (vec2.x - vec1.x); - res.y = vec1.y + scalar * (vec2.y - vec1.y); - return res; + glm::vec2 res; + res.x = vec1.x + scalar * (vec2.x - vec1.x); + res.y = vec1.y + scalar * (vec2.y - vec1.y); + return res; } inline float Vec2CCW(const glm::vec2 &vec1, const glm::vec2 &vec2) { - return vec1.x * vec2.y - vec1.y * vec2.x; + return vec1.x * vec2.y - vec1.y * vec2.x; } //Поворот вектора на 90 градуос против часовой стрелки, иначе говоря его нормаль @@ -237,7 +237,7 @@ inline void Vec2NormCW(const glm::vec2& vec, glm::vec2& outVec) inline float Vec2Proj(const glm::vec2& vec1, const glm::vec2& vec2) { - return Vec2Dot(vec1, vec2) / glm::length(vec2); + return Vec2Dot(vec1, vec2) / glm::length(vec2); } inline void operator*=(glm::vec2& vec1, const glm::vec2& vec2) @@ -251,7 +251,7 @@ inline glm::vec2 operator*(const glm::vec2& vec1, const glm::vec2& vec2) glm::vec2 res = vec1; res *= vec2; - return res; + return res; } inline void operator/=(glm::vec2& vec1, const glm::vec2& vec2) @@ -310,7 +310,7 @@ inline D3DXVECTOR3 Vec3Abs(const D3DXVECTOR3& vec) inline void Vec3Rotate(const D3DXVECTOR3& v, const glm::quat& quat, D3DXVECTOR3& outVec) { - glm::quat q(v.x * quat.x + v.y * quat.y + v.z * quat.z, + glm::quat q(v.x * quat.x + v.y * quat.y + v.z * quat.z, v.x * quat.w + v.z * quat.y - v.y * quat.z, v.y * quat.w + v.x * quat.z - v.z * quat.x, v.z * quat.w + v.y * quat.x - v.x * quat.y); @@ -403,7 +403,7 @@ inline D3DXCOLOR operator*(const D3DXCOLOR& vec1, const D3DXCOLOR& vec2) D3DXCOLOR res = vec1; res *= vec2; - return res; + return res; } inline void QuatShortestArc(const D3DXVECTOR3& from, const D3DXVECTOR3& to, glm::quat& outQuat) @@ -421,8 +421,7 @@ inline void QuatShortestArc(const D3DXVECTOR3& from, const D3DXVECTOR3& to, glm: { D3DXVECTOR3 axe; D3DXVec3Cross(&axe, &from, &to); - glm::quat rot; - outQuat = glm::angleAxis(angle, Vec3DxToGlm(axe)); + outQuat = glm::angleAxis(angle, Vec3DxToGlm(axe)); } else outQuat = NullQuaternion; @@ -484,13 +483,13 @@ inline void Line2FromNorm(const glm::vec2& norm, const glm::vec2& point, D3DXVEC //Нормаль outLine.x = norm.x; outLine.y = norm.y; - outLine.z = -Vec2Dot(norm, point); + outLine.z = -Vec2Dot(norm, point); } inline D3DXVECTOR3 Line2FromNorm(const glm::vec2& norm, const glm::vec2& point) { D3DXVECTOR3 res; - Line2FromNorm(norm, point, res); + Line2FromNorm(norm, point, res); return res; } From b447ca66fb192adf8f038c40a4a4840ebadbba69 Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Sun, 20 Jun 2021 23:58:14 +0300 Subject: [PATCH 22/55] math: fix build Rock3dEngine with glm::quat --- src/LexStd/header/lslSerialValue.h | 4 +- src/Rock3dEngine/source/GraphManager.cpp | 5 +- src/Rock3dEngine/source/graph/FxManager.cpp | 29 ++---- .../source/graph/SceneManager.cpp | 88 ++++++++++--------- src/Rock3dEngine/source/gui/GUI.cpp | 16 ++-- src/Rock3dEngine/source/px/Physx.cpp | 20 ++--- 6 files changed, 74 insertions(+), 88 deletions(-) diff --git a/src/LexStd/header/lslSerialValue.h b/src/LexStd/header/lslSerialValue.h index 67da8e59..be65c929 100644 --- a/src/LexStd/header/lslSerialValue.h +++ b/src/LexStd/header/lslSerialValue.h @@ -71,11 +71,11 @@ template<> struct SerialValue static void Write(SWriter* writer, const char* name, const _Value& value) { - writer->WriteValue(name, value, 4); + writer->WriteValue(name, reinterpret_cast(&value.x), 4); } static SReader* Read(SReader* reader, const char* name, _Value& value) { - return reader->ReadValue(name, value, 4); + return reader->ReadValue(name, reinterpret_cast(&value.x), 4); } }; diff --git a/src/Rock3dEngine/source/GraphManager.cpp b/src/Rock3dEngine/source/GraphManager.cpp index 90da585f..bd9978bb 100644 --- a/src/Rock3dEngine/source/GraphManager.cpp +++ b/src/Rock3dEngine/source/GraphManager.cpp @@ -2304,9 +2304,10 @@ bool GraphManager::Render(float deltaTime, bool pause) D3DXVec3Normalize(&radVec, &(lightPos - _actorManager->GetWorldAABB().GetCenter())); D3DXVec3Cross(&radVec, &D3DXVECTOR3(0, 0, 1), &radVec); if (D3DXVec3Length(&radVec) < 0.1f) + { radVec = D3DXVECTOR3(1, 0, 0); - glm::quat radQuat; - D3DXQuaternionRotationAxis(&radQuat, &radVec, D3DX_PI/2.5f); + } + glm::quat radQuat = glm::angleAxis(D3DX_PI / 2.5f, Vec3DxToGlm(radVec)); Vec3Rotate(D3DXVECTOR3(0, 0, 1), radQuat, radVec); radVec = radVec * 1000.0f; diff --git a/src/Rock3dEngine/source/graph/FxManager.cpp b/src/Rock3dEngine/source/graph/FxManager.cpp index ef9f40d3..7122c633 100644 --- a/src/Rock3dEngine/source/graph/FxManager.cpp +++ b/src/Rock3dEngine/source/graph/FxManager.cpp @@ -38,7 +38,7 @@ void FxParticle::BuildWorldMat() const D3DXMATRIX scaleMat, rotMat, transMat; D3DXMatrixScaling(&scaleMat, _scale.x, _scale.y, _scale.z); - D3DXMatrixRotationQuaternion(&rotMat, &_rot); + rotMat = Matrix4GlmToDx(glm::toMat4(_rot)); D3DXMatrixTranslation(&transMat, _pos.x, _pos.y, _pos.z); _worldMat = scaleMat * rotMat * transMat; @@ -1034,9 +1034,6 @@ void FxPointSpritesManager::RenderSystem(graph::Engine& engine, FxParticleSystem engine.GetContext().RestoreRenderState(graph::rsZWriteEnable); } - - - FxSpritesManager::FxSpritesManager(): dirSprite(false) { } @@ -1058,9 +1055,8 @@ void FxSpritesManager::RenderGroup(graph::Engine& engine, FxEmitter* emitter, Fx } else { - D3DXVECTOR3 axe; - float angle; - D3DXQuaternionToAxisAngle(&particle->GetRot(), &axe, &angle); + D3DXVECTOR3 axe = Vec3GlmToDx(glm::axis(particle->GetRot())); + float angle = glm::angle(particle->GetRot()); engine.RenderSpritePT(emitter->GetWorldPos(particle), particle->GetScale(), angle, 0, IdentityMatrix); } @@ -1069,9 +1065,6 @@ void FxSpritesManager::RenderGroup(graph::Engine& engine, FxEmitter* emitter, Fx engine.EndMeshPT(); } - - - FxPlaneManager::FxPlaneManager() { } @@ -1084,9 +1077,8 @@ void FxPlaneManager::RenderGroup(graph::Engine& engine, FxEmitter* emitter, FxPa { FxParticle* particle = *iter; - D3DXVECTOR3 axe; - float angle; - D3DXQuaternionToAxisAngle(&particle->GetRot(), &axe, &angle); + D3DXVECTOR3 axe = Vec3GlmToDx(glm::axis(particle->GetRot())); + float angle = glm::angle(particle->GetRot()); D3DXMATRIX worldMat = particle->GetMatrix() * emitter->GetMatrix(); engine.GetContext().SetWorldMat(worldMat); @@ -1097,9 +1089,6 @@ void FxPlaneManager::RenderGroup(graph::Engine& engine, FxEmitter* emitter, FxPa engine.EndMeshPT(); } - - - FxNodeManager::FxNodeManager() { _node = new SceneNode(); @@ -1358,11 +1347,9 @@ void FxFlowEmitter::UpdateParticle(FxParticle* value, float dTime, bool init) } else { - D3DXVECTOR3 rotAxe; - float rotAngle; - glm::quat rotDt; - D3DXQuaternionToAxisAngle(&particle->speedRot, &rotAxe, &rotAngle); - D3DXQuaternionRotationAxis(&rotDt, &rotAxe, rotAngle * dTime); + glm::vec3 rotAxe = glm::axis(particle->speedRot); + float rotAngle = glm::angle(particle->speedRot); + glm::quat rotDt = glm::angleAxis(rotAngle * dTime, rotAxe); particle->SetRot(particle->GetRot() * rotDt); } diff --git a/src/Rock3dEngine/source/graph/SceneManager.cpp b/src/Rock3dEngine/source/graph/SceneManager.cpp index 5515531d..be15c0e2 100644 --- a/src/Rock3dEngine/source/graph/SceneManager.cpp +++ b/src/Rock3dEngine/source/graph/SceneManager.cpp @@ -65,34 +65,34 @@ void BaseSceneNode::RenderBB(graph::Engine& engine, const AABB& aabb, const D3DX BoundBox box(aabb); VertexPD lines[36]; - lines[0] = VertexPD(box.v[0], linesColor); - lines[1] = VertexPD(box.v[1], linesColor); - lines[2] = VertexPD(box.v[1], linesColor); + lines[0] = VertexPD(box.v[0], linesColor); + lines[1] = VertexPD(box.v[1], linesColor); + lines[2] = VertexPD(box.v[1], linesColor); lines[3] = VertexPD(box.v[2], linesColor); - lines[4] = VertexPD(box.v[2], linesColor); - lines[5] = VertexPD(box.v[3], linesColor); - lines[6] = VertexPD(box.v[3], linesColor); + lines[4] = VertexPD(box.v[2], linesColor); + lines[5] = VertexPD(box.v[3], linesColor); + lines[6] = VertexPD(box.v[3], linesColor); lines[7] = VertexPD(box.v[0], linesColor); //near plane lines[8] = VertexPD(box.v[0], linesColor); - lines[9] = VertexPD(box.v[4], linesColor); - lines[10] = VertexPD(box.v[1], linesColor); + lines[9] = VertexPD(box.v[4], linesColor); + lines[10] = VertexPD(box.v[1], linesColor); lines[11] = VertexPD(box.v[5], linesColor); - lines[12] = VertexPD(box.v[2], linesColor); - lines[13] = VertexPD(box.v[6], linesColor); - lines[14] = VertexPD(box.v[3], linesColor); + lines[12] = VertexPD(box.v[2], linesColor); + lines[13] = VertexPD(box.v[6], linesColor); + lines[14] = VertexPD(box.v[3], linesColor); lines[15] = VertexPD(box.v[7], linesColor); //far plane lines[16] = VertexPD(box.v[4], linesColor); - lines[17] = VertexPD(box.v[5], linesColor); - lines[18] = VertexPD(box.v[5], linesColor); + lines[17] = VertexPD(box.v[5], linesColor); + lines[18] = VertexPD(box.v[5], linesColor); lines[19] = VertexPD(box.v[6], linesColor); - lines[20] = VertexPD(box.v[6], linesColor); - lines[21] = VertexPD(box.v[7], linesColor); - lines[22] = VertexPD(box.v[7], linesColor); + lines[20] = VertexPD(box.v[6], linesColor); + lines[21] = VertexPD(box.v[7], linesColor); + lines[22] = VertexPD(box.v[7], linesColor); lines[23] = VertexPD(box.v[4], linesColor); for (int i = 0; i < 6; ++i) @@ -120,19 +120,19 @@ void BaseSceneNode::ExtractRotation(_RotationStyle style) const //Проверка, корректны ли на данный момент данные в полях if (_rotInvalidate.test(style)) { - ApplyTransformationChanged(); + ApplyTransformationChanged(); EulerAngles eulAng; switch (style) { case rsEulerAngles: - eulAng = Eul_FromHMatrix(_rotMat.m, EulOrdXYZs); + eulAng = Eul_FromHMatrix(_rotMat.m, EulOrdXYZs); _rollAngle = -eulAng.x; _pitchAngle = -eulAng.y; _turnAngle = -eulAng.z; break; - case rsQuaternion: - D3DXQuaternionRotationMatrix(&_rot, &_rotMat); + case rsQuaternion: + _rot = glm::quat_cast(Matrix4DxToGlm(_rotMat)); break; case rsVectors: @@ -240,15 +240,15 @@ void BaseSceneNode::BuildMatrix() const //Поворот не влияет на локальное направление перемещения //Растяжение не влияет на локальное перемещение, т.е. единица длины одна и таже _localMat = GetScaleMat() * GetRotMat() * GetTransMat(); - D3DXMatrixInverse(&_invLocalMat, 0, &_localMat); + D3DXMatrixInverse(&_invLocalMat, 0, &_localMat); } void BaseSceneNode::BuildWorldMatrix() const { if (_parent) { - const D3DXMATRIX& mat = _parent->GetWorldMat(); - D3DXMatrixMultiply(&_worldMat, &_localMat, &mat); + const D3DXMATRIX& mat = _parent->GetWorldMat(); + D3DXMatrixMultiply(&_worldMat, &_localMat, &mat); D3DXMatrixInverse(&_invWorldMat, 0, &_worldMat); } else @@ -263,12 +263,12 @@ void BaseSceneNode::ApplyTransformationChanged() const if (_changes.test(ocTransformation)) { _changes.reset(ocTransformation); - BuildMatrix(); - } + BuildMatrix(); + } if (_changes.test(ocWorldTransformation)) { _changes.reset(ocWorldTransformation); - BuildWorldMatrix(); + BuildWorldMatrix(); } } @@ -321,7 +321,7 @@ void BaseSceneNode::Save(lsl::SWriter* writer) { writer->WriteValue("pos", GetPos(), 3); writer->WriteValue("scale", GetScale(), 3); - writer->WriteValue("rot", GetRot(), 4); + writer->WriteValue("rot", reinterpret_cast(&GetRot().x), 4); } writer->WriteValue("invertCullFace", invertCullFace); @@ -329,7 +329,7 @@ void BaseSceneNode::Save(lsl::SWriter* writer) if (!_sceneList.empty()) { std::stringstream stream; - for (SceneList::iterator iter = _sceneList.begin(); iter != _sceneList.end(); ++iter) + for (SceneList::iterator iter = _sceneList.begin(); iter != _sceneList.end(); ++iter) { if (iter != _sceneList.begin()) stream << " "; @@ -342,12 +342,12 @@ void BaseSceneNode::Save(lsl::SWriter* writer) writer->WriteValue("tag", _tag); writer->WriteValue("animMode", _animMode); - writer->WriteValue("animDuration", animDuration); + writer->WriteValue("animDuration", animDuration); writer->WriteValue("frame", frame); writer->WriteValue("speedPos", speedPos, 3); writer->WriteValue("speedScale", speedScale, 3); - writer->WriteValue("speedRot", speedRot, 4); + writer->WriteValue("speedRot", reinterpret_cast(&speedRot.x), 4); //writer->WriteValue("options", _options.to_string()); } @@ -362,7 +362,7 @@ void BaseSceneNode::Load(lsl::SReader* reader) { reader->ReadValue("pos", _position, 3); reader->ReadValue("scale", _scale, 3); - reader->ReadValue("rot", _rot, 4); + reader->ReadValue("rot", reinterpret_cast(&_rot.x), 4); } reader->ReadValue("invertCullFace", invertCullFace); @@ -391,7 +391,7 @@ void BaseSceneNode::Load(lsl::SReader* reader) reader->ReadValue("speedPos", speedPos, 3); reader->ReadValue("speedScale", speedScale, 3); - reader->ReadValue("speedRot", speedRot, 4); + reader->ReadValue("speedRot", reinterpret_cast(&speedRot.x), 4); //std::string optsStr; //reader->ReadValue("options", optsStr); @@ -469,11 +469,9 @@ void BaseSceneNode::OnProgress(float deltaTime) } else { - D3DXVECTOR3 rotAxe; - float rotAngle; - glm::quat rotDt; - D3DXQuaternionToAxisAngle(&speedRot, &rotAxe, &rotAngle); - D3DXQuaternionRotationAxis(&rotDt, &rotAxe, rotAngle * deltaTime); + glm::vec3 rotAxe = glm::axis(speedRot); + float rotAngle = glm::angle(speedRot); + glm::quat rotDt = glm::angleAxis(rotAngle * deltaTime, rotAxe); SetRot(GetRot() * rotDt); } @@ -920,9 +918,13 @@ D3DXMATRIX BaseSceneNode::GetRotMat() const _rotMat._44 = 1.0f; } else + { if (!_rotInvalidate.test(rsQuaternion)) - D3DXMatrixRotationQuaternion(&_rotMat, &_rot); + { + _rotMat = Matrix4GlmToDx(glm::toMat4(_rot)); + } else + { if (!_rotInvalidate.test(rsEulerAngles)) { EulerAngles eulAng = Eul_(-_rollAngle, -_pitchAngle, -_turnAngle, EulOrdXYZs); @@ -930,7 +932,11 @@ D3DXMATRIX BaseSceneNode::GetRotMat() const //D3DXMatrixRotationYawPitchRoll(&_rotMat, _pitchAngle, _rollAngle, _turnAngle); } else + { D3DXMatrixIdentity(&_rotMat); + } + } + } _rotChanged = false; return _rotMat; @@ -1021,16 +1027,14 @@ D3DXMATRIX BaseSceneNode::GetWorldCombMat(CombMatType type) const { D3DXMATRIX scaleMat = GetWorldScale(); - D3DXMATRIX rotMat; - D3DXMatrixRotationQuaternion(&rotMat, &GetWorldRot()); + D3DXMATRIX rotMat = Matrix4GlmToDx(glm::toMat4(GetWorldRot())); return scaleMat * rotMat; } case cmtRotTrans: { - D3DXMATRIX rotMat; - D3DXMatrixRotationQuaternion(&rotMat, &GetWorldRot()); + D3DXMATRIX rotMat = Matrix4GlmToDx(glm::toMat4(GetWorldRot())); D3DXMATRIX transMat; D3DXVECTOR3 pos = GetWorldPos(); diff --git a/src/Rock3dEngine/source/gui/GUI.cpp b/src/Rock3dEngine/source/gui/GUI.cpp index 9dcc0208..97c368e0 100644 --- a/src/Rock3dEngine/source/gui/GUI.cpp +++ b/src/Rock3dEngine/source/gui/GUI.cpp @@ -1293,8 +1293,7 @@ void Widget::BuildMatrix(MatrixChange change) const _pos = _parent->WorldToLocalCoord(_pos); } - glm::quat rot; - D3DXQuaternionRotationAxis(&rot, &ZVector, GetRot()); + glm::quat rot = glm::angleAxis(GetRot(), Vec3DxToGlm(ZVector)); D3DXVECTOR3 pos = Vec3FromVec2(GetPos()); @@ -3478,7 +3477,7 @@ bool TrackBar::OnMouseMove(const MouseMove& mMove) if (_grag) { - glm::vec2 localCoord = WorldToLocalCoord(mMove.worldCoord); + glm::vec2 localCoord = WorldToLocalCoord(mMove.worldCoord); SetBarPos(ComputeBarPos(localCoord) + _dragOff); OnDrag(mMove); @@ -3507,16 +3506,13 @@ Material& TrackBar::GetButMaterial() return *_button->GetOrCreateMaterial(); } - - - ViewPort3d::ViewPort3d(Manager* manager): _MyBase(manager), _style(msStatic), _setProgress(false) { _view3d = GetContext().CreateView3d(); _view3d->AddRef(); InsertGraphic(_view3d); - D3DXQuaternionRotationAxis(&_rot3dSpeed, &ZVector, 3.0f * D3DX_PI/4.0f); + _rot3dSpeed = glm::angleAxis(3.0f * D3DX_PI / 4.0f, Vec3DxToGlm(ZVector)); } ViewPort3d::~ViewPort3d() @@ -3528,8 +3524,7 @@ ViewPort3d::~ViewPort3d() void ViewPort3d::AnimProgress(float deltaTime) { - glm::quat rot; - D3DXQuaternionSlerp(&rot, &GetBox()->GetRot(), &(_rot3dSpeed * GetBox()->GetRot()), deltaTime); + glm::quat rot = glm::mix(GetBox()->GetRot(), _rot3dSpeed * GetBox()->GetRot(), deltaTime); GetBox()->SetRot(rot); } @@ -3574,8 +3569,7 @@ bool ViewPort3d::OnMouseOver(const MouseMove& mMove) SetRot3d(GetRot3d() * rotY * rotX);*/ //Вращение по одной оси, совпадающией с up mesh - glm::quat rotZ; - D3DXQuaternionRotationAxis(&rotZ, &ZVector, D3DX_PI * mMove.dtCoord.x/200.0f); + glm::quat rotZ = glm::angleAxis(D3DX_PI * mMove.dtCoord.x / 200.0f, Vec3DxToGlm(ZVector)); GetBox()->SetRot(rotZ * GetBox()->GetRot()); } } diff --git a/src/Rock3dEngine/source/px/Physx.cpp b/src/Rock3dEngine/source/px/Physx.cpp index 8692b078..0ebac8d5 100644 --- a/src/Rock3dEngine/source/px/Physx.cpp +++ b/src/Rock3dEngine/source/px/Physx.cpp @@ -623,7 +623,7 @@ void Shape::SyncRot() LSL_ASSERT(_nxShape); NxQuat quat; - quat.setXYZW(_rot); + quat.setXYZW(reinterpret_cast(&_rot.x)); _nxShape->setLocalOrientation(NxMat33(quat)); } @@ -634,7 +634,7 @@ void Shape::SyncScale() void Shape::Save(lsl::SWriter* writer) { writer->WriteValue("pos", _pos, 3); - writer->WriteValue("rot", _rot, 4); + writer->WriteValue("rot", reinterpret_cast(&_rot.x), 4); writer->WriteValue("scale", _scale, 3); writer->WriteValue("materialIndex", _materialIndex); @@ -646,7 +646,7 @@ void Shape::Save(lsl::SWriter* writer) void Shape::Load(lsl::SReader* reader) { reader->ReadValue("pos", _pos, 3); - reader->ReadValue("rot", _rot, 4); + reader->ReadValue("rot", reinterpret_cast(&_rot.x), 4); reader->ReadValue("scale", _scale, 3); reader->ReadValue("materialIndex", _materialIndex); @@ -661,7 +661,7 @@ void Shape::AssignFromDesc(const NxShapeDesc& desc, bool reloadShape) // NxQuat quat; desc.localPose.M.toQuat(quat); - quat.getXYZW(_rot); + quat.getXYZW(reinterpret_cast(&_rot.x)); _materialIndex = desc.materialIndex; _density = desc.density; @@ -676,7 +676,7 @@ void Shape::AssignToDesc(NxShapeDesc& desc) desc.localPose.t.set(_pos); // NxQuat quat; - quat.setXYZW(_rot); + quat.setXYZW(reinterpret_cast(&_rot.x)); desc.localPose.M.fromQuat(quat); desc.materialIndex = _materialIndex; @@ -1814,7 +1814,7 @@ void Actor::InitRootNxActor() actorDesc.globalPose.t.set(_pos); NxQuat rot; - rot.setXYZW(_rot); + rot.setXYZW(reinterpret_cast(&_rot.x)); actorDesc.globalPose.M.fromQuat(rot); actorDesc.body = _body ? &_body->GetDesc() : 0; @@ -1924,7 +1924,7 @@ void Actor::Save(lsl::SWriter* writer) if (storeCoords) { writer->WriteValue("pos", GetPos(), 3); - writer->WriteValue("rot", GetRot(), 4); + writer->WriteValue("rot", reinterpret_cast(&GetRot().x), 4); writer->WriteValue("scale", GetScale(), 3); } @@ -1949,7 +1949,7 @@ void Actor::Load(lsl::SReader* reader) if (storeCoords) { reader->ReadValue("pos", _pos, 3); - reader->ReadValue("rot", _rot, 4); + reader->ReadValue("rot", reinterpret_cast(&_rot.x), 4); reader->ReadValue("scale", _scale, 3); } @@ -2163,7 +2163,7 @@ void Actor::SetPos(const D3DXVECTOR3& value) const glm::quat& Actor::GetRot() const { if (!_parent && _nxActor) - _nxActor->getGlobalOrientationQuat().getXYZW(_rot); + _nxActor->getGlobalOrientationQuat().getXYZW(reinterpret_cast(&_rot.x)); return _rot; } @@ -2176,7 +2176,7 @@ void Actor::SetRot(const glm::quat& value) if (!_parent) { NxQuat quat; - quat.setXYZW(value); + quat.setXYZW(reinterpret_cast(&value.x)); _nxActor->setGlobalOrientationQuat(quat); } else From a4f52eed9b57915c18a105b5fec43cbc9db23cce Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Mon, 21 Jun 2021 00:23:47 +0300 Subject: [PATCH 23/55] math: auto replace D3DXQUATERNION with glm::quat in Rock3dGame --- src/CMakeLists.txt | 2 +- src/Rock3dGame/header/edit/Map.h | 4 +- src/Rock3dGame/header/edit/SceneControl.h | 2 +- src/Rock3dGame/header/edit/Trace.h | 4 +- src/Rock3dGame/header/edit/Utils.h | 4 +- src/Rock3dGame/header/game/CameraManager.h | 12 ++-- src/Rock3dGame/header/game/Environment.h | 12 ++-- src/Rock3dGame/header/game/GameBase.h | 2 +- src/Rock3dGame/header/game/GameCar.h | 2 +- src/Rock3dGame/header/game/GameObject.h | 28 ++++----- src/Rock3dGame/header/game/Menu.h | 2 +- src/Rock3dGame/header/game/Player.h | 12 ++-- src/Rock3dGame/header/game/Race.h | 4 +- src/Rock3dGame/header/game/RaceMenu2.h | 2 +- src/Rock3dGame/header/game/Weapon.h | 2 +- src/Rock3dGame/header/snd/Audio.h | 2 +- src/Rock3dGame/include/IMapObj.h | 4 +- src/Rock3dGame/include/ISceneControl.h | 4 +- src/Rock3dGame/source/edit/EditMap.cpp | 4 +- src/Rock3dGame/source/edit/EditTrace.cpp | 4 +- src/Rock3dGame/source/edit/EditUtils.cpp | 4 +- src/Rock3dGame/source/edit/SceneControl.cpp | 8 +-- src/Rock3dGame/source/game/CameraManager.cpp | 36 +++++------ src/Rock3dGame/source/game/DataBase.cpp | 46 +++++++------- src/Rock3dGame/source/game/Environment.cpp | 12 ++-- src/Rock3dGame/source/game/GameBase.cpp | 4 +- src/Rock3dGame/source/game/GameCar.cpp | 10 +-- src/Rock3dGame/source/game/GameObject.cpp | 29 +++++---- src/Rock3dGame/source/game/HudMenu.cpp | 28 ++++----- src/Rock3dGame/source/game/Map.cpp | 2 +- src/Rock3dGame/source/game/Menu.cpp | 8 +-- src/Rock3dGame/source/game/Player.cpp | 14 ++--- src/Rock3dGame/source/game/Race.cpp | 22 +++---- src/Rock3dGame/source/game/RaceMenu2.cpp | 64 ++++++++++---------- src/Rock3dGame/source/game/Weapon.cpp | 16 ++--- src/Rock3dGame/source/net/NetPlayer.cpp | 4 +- 36 files changed, 209 insertions(+), 210 deletions(-) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index d27481db..30e5403e 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -14,8 +14,8 @@ add_subdirectory(LexStd) add_subdirectory(MathLib) add_subdirectory(NetLib) add_subdirectory(Rock3dEngine) -if (FALSE) add_subdirectory(Rock3dGame) +if (FALSE) add_subdirectory(RRR3d) add_subdirectory(MapEditor) endif() diff --git a/src/Rock3dGame/header/edit/Map.h b/src/Rock3dGame/header/edit/Map.h index 6ddb2507..63521b61 100644 --- a/src/Rock3dGame/header/edit/Map.h +++ b/src/Rock3dGame/header/edit/Map.h @@ -27,8 +27,8 @@ class MapObj: public IMapObj, public ExternImpl D3DXVECTOR3 GetScale() const; void SetScale(const D3DXVECTOR3& value); - D3DXQUATERNION GetRot() const; - void SetRot(const D3DXQUATERNION& value); + glm::quat GetRot() const; + void SetRot(const glm::quat& value); game::Map::MapObjList::const_iterator mapIter; }; diff --git a/src/Rock3dGame/header/edit/SceneControl.h b/src/Rock3dGame/header/edit/SceneControl.h index a95acce0..44d49c5b 100644 --- a/src/Rock3dGame/header/edit/SceneControl.h +++ b/src/Rock3dGame/header/edit/SceneControl.h @@ -31,7 +31,7 @@ class SceneControl: public ISceneControl D3DXVECTOR3 _clStScale; // bool _clRotating; - D3DXQUATERNION _clStartRot; + glm::quat _clStartRot; public: Control(SceneControl* owner); void ResetState(); diff --git a/src/Rock3dGame/header/edit/Trace.h b/src/Rock3dGame/header/edit/Trace.h index b473eda1..d0d07614 100644 --- a/src/Rock3dGame/header/edit/Trace.h +++ b/src/Rock3dGame/header/edit/Trace.h @@ -92,8 +92,8 @@ class Trace: public ITrace, public ExternImpl D3DXVECTOR3 GetPos() const; void SetPos(const D3DXVECTOR3& value); // - D3DXQUATERNION GetRot() const; - void SetRot(const D3DXQUATERNION& value); + glm::quat GetRot() const; + void SetRot(const glm::quat& value); // D3DXVECTOR3 GetScale() const; void SetScale(const D3DXVECTOR3& value); diff --git a/src/Rock3dGame/header/edit/Utils.h b/src/Rock3dGame/header/edit/Utils.h index 714098fc..3b4c80f4 100644 --- a/src/Rock3dGame/header/edit/Utils.h +++ b/src/Rock3dGame/header/edit/Utils.h @@ -24,8 +24,8 @@ class ScNodeCont: public IScNodeCont virtual D3DXVECTOR3 GetPos() const; virtual void SetPos(const D3DXVECTOR3& value); // - virtual D3DXQUATERNION GetRot() const; - virtual void SetRot(const D3DXQUATERNION& value); + virtual glm::quat GetRot() const; + virtual void SetRot(const glm::quat& value); // virtual D3DXVECTOR3 GetScale() const; virtual void SetScale(const D3DXVECTOR3& value); diff --git a/src/Rock3dGame/header/game/CameraManager.h b/src/Rock3dGame/header/game/CameraManager.h index b401a395..39a396d5 100644 --- a/src/Rock3dGame/header/game/CameraManager.h +++ b/src/Rock3dGame/header/game/CameraManager.h @@ -25,7 +25,7 @@ class CameraManager: public ICameraManager D3DXVECTOR3 _staticVec1; D3DXVECTOR3 _staticVec2; D3DXVECTOR3 _staticVec3; - D3DXQUATERNION _staticQuat1; + glm::quat _staticQuat1; bool OnMouseMoveEvent(const MouseMove& mMove); bool OnHandleInput(const InputMessage& msg); @@ -48,12 +48,12 @@ class CameraManager: public ICameraManager D3DXVECTOR3 _angleSpeed; D3DXVECTOR3 _stableAngle; D3DXVECTOR3 _lastFreePos; - D3DXQUATERNION _lastFreeRot; + glm::quat _lastFreeRot; D3DXVECTOR3 _flySPos; - D3DXQUATERNION _flySRot; + glm::quat _flySRot; D3DXVECTOR3 _flyPos; - D3DXQUATERNION _flyRot; + glm::quat _flyRot; float _flyCurTime; float _flyTime; @@ -74,7 +74,7 @@ class CameraManager: public ICameraManager void ScreenToRay(const lsl::Point& coord, D3DXVECTOR3& rayStart, D3DXVECTOR3& rayVec); bool ScreenPixelRayCastWithPlaneXY(const lsl::Point& coord, D3DXVECTOR3& outVec); - void FlyTo(const D3DXVECTOR3& pos, const D3DXQUATERNION& rot, float time); + void FlyTo(const D3DXVECTOR3& pos, const glm::quat& rot, float time); void StopFly(); bool InFly(); @@ -114,7 +114,7 @@ class CameraManager: public ICameraManager GraphManager::LightSrc* GetLight(); void SetLight(GraphManager::LightSrc* value); - void GetObserverCoord(const D3DXVECTOR3& targetPos, float targetDist, D3DXVECTOR3* pos, D3DXQUATERNION& rot, const glm::vec2& dMPos, float deltaTime, bool dragX, bool dragY, bool restoreY, D3DXVECTOR3* camPos, D3DXQUATERNION* camQuat, float* dir); + void GetObserverCoord(const D3DXVECTOR3& targetPos, float targetDist, D3DXVECTOR3* pos, glm::quat& rot, const glm::vec2& dMPos, float deltaTime, bool dragX, bool dragY, bool restoreY, D3DXVECTOR3* camPos, glm::quat* camQuat, float* dir); }; } diff --git a/src/Rock3dGame/header/game/Environment.h b/src/Rock3dGame/header/game/Environment.h index c6460e1c..a6092ca2 100644 --- a/src/Rock3dGame/header/game/Environment.h +++ b/src/Rock3dGame/header/game/Environment.h @@ -53,11 +53,11 @@ class Environment: public GameObjListener GraphManager::LightSrc* _sun; mutable D3DXVECTOR3 _sunPos; - mutable D3DXQUATERNION _sunRot; + mutable glm::quat _sunRot; GraphManager::LightSrc* _lamp[4]; D3DXVECTOR3 _lampPos[4]; - D3DXQUATERNION _lampRot[4]; + glm::quat _lampRot[4]; D3DXCOLOR _lampColor[4]; bool _lampSwitchOn[4]; @@ -102,14 +102,14 @@ class Environment: public GameObjListener const D3DXVECTOR3& GetSunPos() const; void SetSunPos(const D3DXVECTOR3& value); - const D3DXQUATERNION& GetSunRot() const; - void SetSunRot(const D3DXQUATERNION& value); + const glm::quat& GetSunRot() const; + void SetSunRot(const glm::quat& value); const D3DXVECTOR3& GetLampPos(int index) const; void SetLampPos(const D3DXVECTOR3& value, int index); - const D3DXQUATERNION& GetLampRot(int index) const; - void SetLampRot(const D3DXQUATERNION& value, int index); + const glm::quat& GetLampRot(int index) const; + void SetLampRot(const glm::quat& value, int index); const D3DXCOLOR& GetLampColor(int index) const; void SetLampColor(const D3DXCOLOR& value, int index); diff --git a/src/Rock3dGame/header/game/GameBase.h b/src/Rock3dGame/header/game/GameBase.h index 2b1b1aec..b7de40a2 100644 --- a/src/Rock3dGame/header/game/GameBase.h +++ b/src/Rock3dGame/header/game/GameBase.h @@ -166,7 +166,7 @@ class EventEffect: public Behavior EffectDesc(): pos(NullVector), rot(NullQuaternion), child(true), parent(NULL) {} D3DXVECTOR3 pos; - D3DXQUATERNION rot; + glm::quat rot; //дочерний //true - время жизни совпадает с врменем жизни EventEffect, локальная система координат //false - за удаление отвечает Logic, мировая система координат diff --git a/src/Rock3dGame/header/game/GameCar.h b/src/Rock3dGame/header/game/GameCar.h index 889f30f4..fc85300c 100644 --- a/src/Rock3dGame/header/game/GameCar.h +++ b/src/Rock3dGame/header/game/GameCar.h @@ -48,7 +48,7 @@ class CarWheel: public GameObject D3DXVECTOR3 _offset; D3DXVECTOR3 _pxPrevPos; - D3DXQUATERNION _pxPrevRot; + glm::quat _pxPrevRot; protected: virtual void Save(lsl::SWriter* writer); virtual void Load(lsl::SReader* reader); diff --git a/src/Rock3dGame/header/game/GameObject.h b/src/Rock3dGame/header/game/GameObject.h index 7f26943b..20d131fb 100644 --- a/src/Rock3dGame/header/game/GameObject.h +++ b/src/Rock3dGame/header/game/GameObject.h @@ -85,7 +85,7 @@ class GameObject: public lsl::Component, public GameObjListener, public px::Acto D3DXVECTOR3 _posSyncDir; float _posSyncLength; - D3DXQUATERNION _rotSync; + glm::quat _rotSync; D3DXVECTOR3 _rotSyncAxis; float _rotSyncAngle; @@ -94,17 +94,17 @@ class GameObject: public lsl::Component, public GameObjListener, public px::Acto float _posSyncDist2; float _posSyncLength2; - D3DXQUATERNION _rotSync2; + glm::quat _rotSync2; D3DXVECTOR3 _rotSyncAxis2; float _rotSyncAngle2; float _rotSyncLength2; D3DXVECTOR3 _pxPosLerp; - D3DXQUATERNION _pxRotLerp; + glm::quat _pxRotLerp; D3DXVECTOR3 _pxVelocityLerp; D3DXVECTOR3 _pxPrevPos; - D3DXQUATERNION _pxPrevRot; + glm::quat _pxPrevRot; D3DXVECTOR3 _pxPrevVelocity; void SetSyncFrameEvent(bool value); @@ -221,15 +221,15 @@ class GameObject: public lsl::Component, public GameObjListener, public px::Acto virtual void SetScale(const D3DXVECTOR3& value); void SetScale(float value); //Поворот - const D3DXQUATERNION& GetRot() const; - virtual void SetRot(const D3DXQUATERNION& value); + const glm::quat& GetRot() const; + virtual void SetRot(const glm::quat& value); //Абсолютные трансформации //Позиция D3DXVECTOR3 GetWorldPos() const; virtual void SetWorldPos(const D3DXVECTOR3& value); //Поворот - D3DXQUATERNION GetWorldRot() const; - virtual void SetWorldRot(const D3DXQUATERNION& value); + glm::quat GetWorldRot() const; + virtual void SetWorldRot(const glm::quat& value); void SetWorldDir(const D3DXVECTOR3& value); void SetWorldUp(const D3DXVECTOR3& value); @@ -237,21 +237,21 @@ class GameObject: public lsl::Component, public GameObjListener, public px::Acto const D3DXVECTOR3& GetPosSync() const; void SetPosSync(const D3DXVECTOR3& value); - const D3DXQUATERNION& GetRotSync() const; - void SetRotSync(const D3DXQUATERNION& value); + const glm::quat& GetRotSync() const; + void SetRotSync(const glm::quat& value); const D3DXVECTOR3& GetPosSync2() const; void SetPosSync2(const D3DXVECTOR3& curSync, const D3DXVECTOR3& newSync); - const D3DXQUATERNION& GetRotSync2() const; - void SetRotSync2(const D3DXQUATERNION& curSync, const D3DXQUATERNION& newSync); + const glm::quat& GetRotSync2() const; + void SetRotSync2(const glm::quat& curSync, const glm::quat& newSync); const D3DXVECTOR3& GetPxPosLerp() const; - const D3DXQUATERNION& GetPxRotLerp() const; + const glm::quat& GetPxRotLerp() const; const D3DXVECTOR3& GetPxVelocityLerp() const; const D3DXVECTOR3& GetPxPrevPos() const; - const D3DXQUATERNION& GetPxPrevRot() const; + const glm::quat& GetPxPrevRot() const; const D3DXVECTOR3& GetPxPrevVelocity() const; LiveState GetLiveState() const; diff --git a/src/Rock3dGame/header/game/Menu.h b/src/Rock3dGame/header/game/Menu.h index 24c5ad4f..eb0e946f 100644 --- a/src/Rock3dGame/header/game/Menu.h +++ b/src/Rock3dGame/header/game/Menu.h @@ -137,7 +137,7 @@ class Menu: IGameUser, INetGameUser static glm::vec2 GetImageAspectSize(gui::Material& material, const glm::vec2& newSize); static glm::vec2 StretchImage(glm::vec2 imageSize, const glm::vec2& size, bool keepAspect = true, bool fillRect = false, bool scaleDown = true, bool scaleUp = true); static glm::vec2 StretchImage(gui::Material& material, const glm::vec2& size, bool keepAspect = true, bool fillRect = false, bool scaleDown = true, bool scaleUp = true); - static D3DXQUATERNION GetIsoRot(); + static glm::quat GetIsoRot(); private: GameMode* _game; MyControlEvent* _controlEvent; diff --git a/src/Rock3dGame/header/game/Player.h b/src/Rock3dGame/header/game/Player.h index adb6c08c..86d38c3b 100644 --- a/src/Rock3dGame/header/game/Player.h +++ b/src/Rock3dGame/header/game/Player.h @@ -31,7 +31,7 @@ class SlotItem: public Object, public Serializable, protected IProgressEvent graph::Tex2DResource* _texture; D3DXVECTOR3 _pos; - D3DXQUATERNION _rot; + glm::quat _rot; protected: void RegProgressEvent(); void UnregProgressEvent(); @@ -79,8 +79,8 @@ class SlotItem: public Object, public Serializable, protected IProgressEvent const D3DXVECTOR3& GetPos() const; void SetPos(const D3DXVECTOR3& value); - const D3DXQUATERNION& GetRot() const; - void SetRot(const D3DXQUATERNION& value); + const glm::quat& GetRot() const; + void SetRot(const glm::quat& value); }; class MobilityItem: public SlotItem @@ -415,7 +415,7 @@ class Player: public GameObjListener //Координаты актера D3DXVECTOR3 pos3; D3DXVECTOR3 dir3; - D3DXQUATERNION rot3; + glm::quat rot3; D3DXMATRIX worldMat; glm::vec2 pos; @@ -523,7 +523,7 @@ class Player: public GameObjListener void RemoveBonusProj(Proj* proj); void ClearBonusProjs(); - void InitLight(HeadLight headLight, const D3DXVECTOR3& pos, const D3DXQUATERNION& rot); + void InitLight(HeadLight headLight, const D3DXVECTOR3& pos, const glm::quat& rot); void FreeLight(HeadLight headLight); void SetLightParent(GraphManager::LightSrc* light, MapObj* mapObj); void CreateNightLights(MapObj* mapObj); @@ -586,7 +586,7 @@ class Player: public GameObjListener void SetReflScene(bool value); Record* GetSlot(SlotType type); - void SetSlot(SlotType type, Record* record, const D3DXVECTOR3& pos = NullVector, const D3DXQUATERNION& rot = NullQuaternion); + void SetSlot(SlotType type, Record* record, const D3DXVECTOR3& pos = NullVector, const glm::quat& rot = NullQuaternion); Slot* GetSlotInst(SlotType type); Slot* GetSlotInst(Slot::Type type); diff --git a/src/Rock3dGame/header/game/Race.h b/src/Rock3dGame/header/game/Race.h index abb1682e..866992da 100644 --- a/src/Rock3dGame/header/game/Race.h +++ b/src/Rock3dGame/header/game/Race.h @@ -101,10 +101,10 @@ class Garage: lsl::Component struct PlaceItem { PlaceItem(): slot(0), rot(NullQuaternion) {} - PlaceItem(Slot* mSlot, const D3DXQUATERNION& mRot = NullQuaternion, const D3DXVECTOR3& mOffset = NullVector): slot(mSlot), rot(mRot), offset(mOffset) {} + PlaceItem(Slot* mSlot, const glm::quat& mRot = NullQuaternion, const D3DXVECTOR3& mOffset = NullVector): slot(mSlot), rot(mRot), offset(mOffset) {} Slot* slot; - D3DXQUATERNION rot; + glm::quat rot; D3DXVECTOR3 offset; }; typedef lsl::List PlaceItems; diff --git a/src/Rock3dGame/header/game/RaceMenu2.h b/src/Rock3dGame/header/game/RaceMenu2.h index 205ed7fd..50e31706 100644 --- a/src/Rock3dGame/header/game/RaceMenu2.h +++ b/src/Rock3dGame/header/game/RaceMenu2.h @@ -22,7 +22,7 @@ class CarFrame: public MenuFrame Garage::Car* _car; CamStyle _camStyle; D3DXVECTOR3 _camLastPos; - D3DXQUATERNION _camLastRot; + glm::quat _camLastRot; MapObj* _garageMapObj; MapObj* _carMapObj; diff --git a/src/Rock3dGame/header/game/Weapon.h b/src/Rock3dGame/header/game/Weapon.h index 375ecfec..e680ea19 100644 --- a/src/Rock3dGame/header/game/Weapon.h +++ b/src/Rock3dGame/header/game/Weapon.h @@ -166,7 +166,7 @@ class Proj: public GameObject //Локальная позиция снаряда D3DXVECTOR3 pos; //Локальный поворот снаряда - D3DXQUATERNION rot; + glm::quat rot; //размер и смещение бокса снаряда D3DXVECTOR3 size; D3DXVECTOR3 sizeAddPx; diff --git a/src/Rock3dGame/header/snd/Audio.h b/src/Rock3dGame/header/snd/Audio.h index 36832393..7e389752 100644 --- a/src/Rock3dGame/header/snd/Audio.h +++ b/src/Rock3dGame/header/snd/Audio.h @@ -535,7 +535,7 @@ struct Listener Listener(): pos(NullVector), rot(NullQuaternion) {} D3DXVECTOR3 pos; - D3DXQUATERNION rot; + glm::quat rot; }; class Engine: public lsl::Component diff --git a/src/Rock3dGame/include/IMapObj.h b/src/Rock3dGame/include/IMapObj.h index 7cf6f311..c3af6129 100644 --- a/src/Rock3dGame/include/IMapObj.h +++ b/src/Rock3dGame/include/IMapObj.h @@ -19,8 +19,8 @@ class IMapObj: public ExternInterf virtual D3DXVECTOR3 GetScale() const = 0; virtual void SetScale(const D3DXVECTOR3& value) = 0; - virtual D3DXQUATERNION GetRot() const = 0; - virtual void SetRot(const D3DXQUATERNION& value) = 0; + virtual glm::quat GetRot() const = 0; + virtual void SetRot(const glm::quat& value) = 0; virtual IMapObjRecRef GetRecord() = 0; }; diff --git a/src/Rock3dGame/include/ISceneControl.h b/src/Rock3dGame/include/ISceneControl.h index 77534a5c..a9fa1156 100644 --- a/src/Rock3dGame/include/ISceneControl.h +++ b/src/Rock3dGame/include/ISceneControl.h @@ -29,8 +29,8 @@ class IScNodeCont: public Object virtual D3DXVECTOR3 GetPos() const = 0; virtual void SetPos(const D3DXVECTOR3& value) = 0; // - virtual D3DXQUATERNION GetRot() const = 0; - virtual void SetRot(const D3DXQUATERNION& value) = 0; + virtual glm::quat GetRot() const = 0; + virtual void SetRot(const glm::quat& value) = 0; // virtual D3DXVECTOR3 GetScale() const = 0; virtual void SetScale(const D3DXVECTOR3& value) = 0; diff --git a/src/Rock3dGame/source/edit/EditMap.cpp b/src/Rock3dGame/source/edit/EditMap.cpp index a48f956a..21ed686b 100644 --- a/src/Rock3dGame/source/edit/EditMap.cpp +++ b/src/Rock3dGame/source/edit/EditMap.cpp @@ -48,12 +48,12 @@ void MapObj::SetScale(const D3DXVECTOR3& value) GetInst()->GetGameObj().SetScale(value); } -D3DXQUATERNION MapObj::GetRot() const +glm::quat MapObj::GetRot() const { return GetInst()->GetGameObj().GetRot(); } -void MapObj::SetRot(const D3DXQUATERNION& value) +void MapObj::SetRot(const glm::quat& value) { GetInst()->GetGameObj().SetRot(value); } diff --git a/src/Rock3dGame/source/edit/EditTrace.cpp b/src/Rock3dGame/source/edit/EditTrace.cpp index ec96e4b4..da9c83c5 100644 --- a/src/Rock3dGame/source/edit/EditTrace.cpp +++ b/src/Rock3dGame/source/edit/EditTrace.cpp @@ -271,12 +271,12 @@ void Trace::NodeControl::SetPos(const D3DXVECTOR3& value) _wayPoint->SetPos(value); } -D3DXQUATERNION Trace::NodeControl::GetRot() const +glm::quat Trace::NodeControl::GetRot() const { return NullQuaternion; } -void Trace::NodeControl::SetRot(const D3DXQUATERNION& value) +void Trace::NodeControl::SetRot(const glm::quat& value) { //Nothing } diff --git a/src/Rock3dGame/source/edit/EditUtils.cpp b/src/Rock3dGame/source/edit/EditUtils.cpp index 275624a5..8ac35845 100644 --- a/src/Rock3dGame/source/edit/EditUtils.cpp +++ b/src/Rock3dGame/source/edit/EditUtils.cpp @@ -50,12 +50,12 @@ void ScNodeCont::SetPos(const D3DXVECTOR3& value) _node->SetWorldPos(value); } -D3DXQUATERNION ScNodeCont::GetRot() const +glm::quat ScNodeCont::GetRot() const { return _node->GetWorldRot(); } -void ScNodeCont::SetRot(const D3DXQUATERNION& value) +void ScNodeCont::SetRot(const glm::quat& value) { _node->SetWorldRot(value); } diff --git a/src/Rock3dGame/source/edit/SceneControl.cpp b/src/Rock3dGame/source/edit/SceneControl.cpp index e4feab8f..59e47655 100644 --- a/src/Rock3dGame/source/edit/SceneControl.cpp +++ b/src/Rock3dGame/source/edit/SceneControl.cpp @@ -168,7 +168,7 @@ bool SceneControl::Control::OnMouseMoveEvent(const game::MouseMove& mMove) if (!_shiftAction && mMove.shift1) { bool clRotating = _clRotating; - D3DXQUATERNION clStartRot = _clStartRot; + glm::quat clStartRot = _clStartRot; selNode->OnShiftAction(mMove.scrRayPos, mMove.scrRayVec); @@ -184,11 +184,11 @@ bool SceneControl::Control::OnMouseMoveEvent(const game::MouseMove& mMove) float angleY = -offCoord.y / 400.0f * 2 * D3DX_PI; angleY = ceil(angleY / (D3DX_PI/12.0f)) * (D3DX_PI/12.0f); - D3DXQUATERNION rotZ; + glm::quat rotZ; D3DXQuaternionRotationAxis(&rotZ, &ZVector, angleZ); - D3DXQUATERNION rotY; + glm::quat rotY; D3DXQuaternionRotationAxis(&rotY, &_owner->_edit->GetWorld()->GetCamera()->GetRight(), angleY); - D3DXQUATERNION rot = abs(angleZ) > abs(angleY) ? rotZ : rotY; + glm::quat rot = abs(angleZ) > abs(angleY) ? rotZ : rotY; selNode->SetRot(_clStartRot * rot); diff --git a/src/Rock3dGame/source/game/CameraManager.cpp b/src/Rock3dGame/source/game/CameraManager.cpp index e3b887bc..753026bc 100644 --- a/src/Rock3dGame/source/game/CameraManager.cpp +++ b/src/Rock3dGame/source/game/CameraManager.cpp @@ -72,7 +72,7 @@ bool CameraManager::Control::OnMouseMoveEvent(const MouseMove& mMove) if (_manager->_style == csLights || _manager->_style == csFreeView) { graph::Camera* camera = _manager->_camera; - D3DXQUATERNION rot = camera->GetRot(); + glm::quat rot = camera->GetRot(); D3DXVECTOR3 right = camera->GetRight(); if (_manager->_style == csLights && _manager->_light) @@ -83,7 +83,7 @@ bool CameraManager::Control::OnMouseMoveEvent(const MouseMove& mMove) if (mMove.click.key == lsl::mkRight && mMove.click.state == lsl::ksDown) { - D3DXQUATERNION quatRight, quatZ; + glm::quat quatRight, quatZ; D3DXQuaternionRotationAxis(&quatZ, &ZVector, 0.005f * (-mMove.dtCoord.x)); D3DXQuaternionRotationAxis(&quatRight, &right, 0.005f * mMove.dtCoord.y); rot = rot * quatRight * quatZ; @@ -151,7 +151,7 @@ void CameraManager::Control::OnInputFrame(float deltaTime) D3DXVECTOR3 pos; D3DXVec3Lerp(&pos, &_manager->_flySPos, &_manager->_flyPos, alpha); - D3DXQUATERNION rot; + glm::quat rot; D3DXQuaternionSlerp(&rot, &_manager->_flySRot, &_manager->_flyRot, alpha); camera->SetPos(pos); @@ -223,11 +223,11 @@ void CameraManager::Control::OnInputFrame(float deltaTime) } #endif*/ - D3DXQUATERNION isoRotY, isoRotZ; + glm::quat isoRotY, isoRotZ; D3DXQuaternionRotationAxis(&isoRotY, &YVector, cIsoAngY); D3DXQuaternionRotationAxis(&isoRotZ, &ZVector, cIsoAngZ); // - D3DXQUATERNION cIsoRot = isoRotY * isoRotZ; + glm::quat cIsoRot = isoRotY * isoRotZ; const float speedMove = 20.0f * deltaTime; const float angleSpeed = D3DX_PI / 2.0f * deltaTime; @@ -238,13 +238,13 @@ void CameraManager::Control::OnInputFrame(float deltaTime) ControlManager* control = _manager->_world->GetControl(); D3DXVECTOR3 pos = camera->GetPos(); - D3DXQUATERNION rot = camera->GetRot(); + glm::quat rot = camera->GetRot(); D3DXVECTOR3 dir = camera->GetDir(); D3DXVECTOR3 right = camera->GetRight(); D3DXVECTOR3 targetPos = NullVector; D3DXVECTOR3 targetDir = XVector; - D3DXQUATERNION targetRot = NullQuaternion; + glm::quat targetRot = NullQuaternion; float targetSize = 0.0f; D3DXVECTOR3 targetVel = NullVector; float targetDrivenSpeed = 0.0f; @@ -343,14 +343,14 @@ void CameraManager::Control::OnInputFrame(float deltaTime) D3DXVec3Normalize(&zVec, &zVec); D3DXMATRIX velMat; - D3DXQUATERNION velRot; + glm::quat velRot; MatrixRotationFromAxis(xVec, yVec, zVec, velMat); D3DXQuaternionRotationMatrix(&velRot, &velMat); // - D3DXQUATERNION camQuat; - D3DXQUATERNION camQuat1 = rot; - D3DXQUATERNION camQuat2 = velRot; + glm::quat camQuat; + glm::quat camQuat1 = rot; + glm::quat camQuat2 = velRot; D3DXQuaternionSlerp(&camQuat, &camQuat1, &camQuat2, 6.0f * deltaTime); /*D3DXVECTOR3 camPos; @@ -378,7 +378,7 @@ void CameraManager::Control::OnInputFrame(float deltaTime) camPos2 += targetPos; D3DXVec3Lerp(&camPos, &camPos1, &camPos2, 8.0f * deltaTime);*/ - D3DXQUATERNION yRot; + glm::quat yRot; D3DXQuaternionRotationAxis(&yRot, &D3DXVECTOR3(0, 1, 0), D3DX_PI * 12.0f); camQuat = yRot * camQuat; @@ -397,7 +397,7 @@ void CameraManager::Control::OnInputFrame(float deltaTime) D3DXVECTOR4 camBorder = D3DXVECTOR4(cIsoBorder, cIsoBorder, cIsoBorder/camera->GetAspect(), cIsoBorder/camera->GetAspect()); //Обратный поворот - D3DXQUATERNION cIsoInvRot; + glm::quat cIsoInvRot; D3DXQuaternionInverse(&cIsoInvRot, &cIsoRot); //Направление камеры в мировом пространстве @@ -615,7 +615,7 @@ bool CameraManager::ScreenPixelRayCastWithPlaneXY(const lsl::Point& coord, D3DXV return RayCastIntersectPlane(rayStart, rayVec, ZPlane, outVec); } -void CameraManager::FlyTo(const D3DXVECTOR3& pos, const D3DXQUATERNION& rot, float time) +void CameraManager::FlyTo(const D3DXVECTOR3& pos, const glm::quat& rot, float time) { _flySPos = _camera->GetPos(); _flySRot = _camera->GetRot(); @@ -825,7 +825,7 @@ void CameraManager::SetLight(GraphManager::LightSrc* value) _light = value; } -void CameraManager::GetObserverCoord(const D3DXVECTOR3& targetPos, float targetDist, D3DXVECTOR3* pos, D3DXQUATERNION& rot, const glm::vec2& dMPos, float deltaTime, bool dragX, bool dragY, bool restoreY, D3DXVECTOR3* camPos, D3DXQUATERNION* camRot, float* dir) +void CameraManager::GetObserverCoord(const D3DXVECTOR3& targetPos, float targetDist, D3DXVECTOR3* pos, glm::quat& rot, const glm::vec2& dMPos, float deltaTime, bool dragX, bool dragY, bool restoreY, D3DXVECTOR3* camPos, glm::quat* camRot, float* dir) { float camDist = targetDist; @@ -840,7 +840,7 @@ void CameraManager::GetObserverCoord(const D3DXVECTOR3& targetPos, float targetD dAngZ = lsl::ClampValue(dMPos.x * D3DX_PI * 0.001f, -D3DX_PI/2, D3DX_PI/2); } - D3DXQUATERNION dRotZ; + glm::quat dRotZ; D3DXQuaternionRotationAxis(&dRotZ, &ZVector, dAngZ); rot = rot * dRotZ; @@ -878,7 +878,7 @@ void CameraManager::GetObserverCoord(const D3DXVECTOR3& targetPos, float targetD D3DXVec3Normalize(&zAxis, &zAxis); ang = acos(D3DXVec3Dot(&ZVector, &zAxis)); - D3DXQUATERNION dRotY; + glm::quat dRotY; D3DXQuaternionRotationAxis(&dRotY, &yAxis, ang); QuatRotateVec3(zAxis, ZVector, dRotY); @@ -906,7 +906,7 @@ void CameraManager::GetObserverCoord(const D3DXVECTOR3& targetPos, float targetD float angLow = _stableAngle.x; float angUp = _stableAngle.x; - D3DXQUATERNION dRotY; + glm::quat dRotY; D3DXVECTOR3 yAxis; QuatRotateVec3(yAxis, YVector, rot); diff --git a/src/Rock3dGame/source/game/DataBase.cpp b/src/Rock3dGame/source/game/DataBase.cpp index 6d0953a3..c85b8780 100644 --- a/src/Rock3dGame/source/game/DataBase.cpp +++ b/src/Rock3dGame/source/game/DataBase.cpp @@ -844,7 +844,7 @@ void DataBase::LoadEffects() graph::FxFlowEmitter::FlowDesc descFlow; descFlow.speedPos = Vec3Range(D3DXVECTOR3(-1.5f, -1.5f, 1.0f), D3DXVECTOR3(1.5f, 1.5f, 5.0f), Vec3Range::vdVolume) * 3.0f; - D3DXQUATERNION spRot1, spRot2; + glm::quat spRot1, spRot2; D3DXQuaternionRotationAxis(&spRot1, &(-IdentityVector), D3DX_PI); D3DXQuaternionRotationAxis(&spRot2, &IdentityVector, 2.0f * D3DX_PI); descFlow.speedRot = QuatRange(spRot1, spRot2, QuatRange::vdVolume, Point2U(100, 100)); @@ -866,7 +866,7 @@ void DataBase::LoadEffects() graph::FxFlowEmitter::FlowDesc descFlow; descFlow.speedPos = Vec3Range(D3DXVECTOR3(-1.5f, -1.5f, 4.0f), D3DXVECTOR3(1.5f, 1.5f, 5.0f), Vec3Range::vdVolume) * 3.0f; - D3DXQUATERNION spRot1, spRot2; + glm::quat spRot1, spRot2; D3DXQuaternionRotationAxis(&spRot1, &(-IdentityVector), D3DX_PI); D3DXQuaternionRotationAxis(&spRot2, &IdentityVector, 2.0f * D3DX_PI); descFlow.speedRot = QuatRange(spRot1, spRot2, QuatRange::vdVolume, Point2U(100, 100)); @@ -1016,9 +1016,9 @@ void DataBase::LoadEffects() desc.startPos = Vec3Range(D3DXVECTOR3(-0.1f, -0.1f, -0.1f), D3DXVECTOR3(0.1f, 0.1f, 0.1f), Vec3Range::vdVolume); desc.startScale = Vec3Range(D3DXVECTOR3(0.8f, 0.8f, 0.8f), D3DXVECTOR3(1.1f, 1.1f, 1.1f)); - D3DXQUATERNION rot1; + glm::quat rot1; D3DXQuaternionRotationAxis(&rot1, &D3DXVECTOR3(0.0f, 0.0f, 1.0f), 0.0f); - D3DXQUATERNION rot2; + glm::quat rot2; D3DXQuaternionRotationAxis(&rot2, &D3DXVECTOR3(0.0f, 0.0f, 1.0f), 2*D3DX_PI); desc.startRot = QuatRange(rot1, rot2, QuatRange::vdVolume); @@ -1054,7 +1054,7 @@ void DataBase::LoadEffects() desc.density = 1.0f; desc.startPos = Vec3Range(IdentityVector * (-0.1f), IdentityVector * 0.1f, Vec3Range::vdVolume); desc.startScale = Vec3Range(IdentityVector * 0.7f, IdentityVector * 1.3f, Vec3Range::vdVolume); - desc.startRot = QuatRange(D3DXQUATERNION(-1, -1, -1, -1), D3DXQUATERNION(1, 1, 1, 1), QuatRange::vdVolume); + desc.startRot = QuatRange(glm::quat(-1, -1, -1, -1), glm::quat(1, 1, 1, 1), QuatRange::vdVolume); graph::FxFlowEmitter::FlowDesc descFlow; descFlow.speedScale = IdentityVector * 2.0f; @@ -1073,7 +1073,7 @@ void DataBase::LoadEffects() desc.density = 10.0f; desc.startPos = Vec3Range(IdentityVector * (-0.6f), IdentityVector * 0.6f, Vec3Range::vdVolume); desc.startScale = Vec3Range(IdentityVector * 0.7f, IdentityVector * 1.1f, Vec3Range::vdVolume); - desc.startRot = QuatRange(D3DXQUATERNION(-1, -1, -1, -1), D3DXQUATERNION(1, 1, 1, 1), QuatRange::vdVolume); + desc.startRot = QuatRange(glm::quat(-1, -1, -1, -1), glm::quat(1, 1, 1, 1), QuatRange::vdVolume); graph::FxFlowEmitter::FlowDesc descFlow; descFlow.speedScale = IdentityVector * 3.0f; @@ -1094,7 +1094,7 @@ void DataBase::LoadEffects() desc.density = 1.0f; desc.startPos = Vec3Range(IdentityVector * (-0.1f), IdentityVector * 0.1f, Vec3Range::vdVolume); desc.startScale = Vec3Range(IdentityVector * 0.5f, IdentityVector * 0.7f, Vec3Range::vdVolume); - desc.startRot = QuatRange(D3DXQUATERNION(-1, -1, -1, -1), D3DXQUATERNION(1, 1, 1, 1), QuatRange::vdVolume); + desc.startRot = QuatRange(glm::quat(-1, -1, -1, -1), glm::quat(1, 1, 1, 1), QuatRange::vdVolume); graph::FxFlowEmitter::FlowDesc descFlow; descFlow.speedScale = IdentityVector * 1.0f; @@ -1113,7 +1113,7 @@ void DataBase::LoadEffects() desc.density = 1.0f; desc.startPos = NullVector; desc.startScale = IdentityVector * 0.7f; - desc.startRot = QuatRange(D3DXQUATERNION(-1, -1, -1, -1), D3DXQUATERNION(1, 1, 1, 1), QuatRange::vdVolume); + desc.startRot = QuatRange(glm::quat(-1, -1, -1, -1), glm::quat(1, 1, 1, 1), QuatRange::vdVolume); graph::FxFlowEmitter::FlowDesc descFlow; descFlow.speedScale = IdentityVector * 4.0f; @@ -1131,7 +1131,7 @@ void DataBase::LoadEffects() desc.startTime = FloatRange(1.0f); desc.density = FloatRange(1.0f, 1.0f); desc.startPos = Vec3Range(D3DXVECTOR3(-0.2f, -0.2f, -0.2f), D3DXVECTOR3(0.2f, 0.2f, 0.2f), Vec3Range::vdVolume); - desc.startRot = QuatRange(D3DXQUATERNION(-1, -1, -1, -1), D3DXQUATERNION(1, 1, 1, 1), QuatRange::vdVolume); + desc.startRot = QuatRange(glm::quat(-1, -1, -1, -1), glm::quat(1, 1, 1, 1), QuatRange::vdVolume); desc.startScale = D3DXVECTOR3(IdentityVector) * 1.5f; graph::FxFlowEmitter::FlowDesc descFlow; @@ -1156,7 +1156,7 @@ void DataBase::LoadEffects() desc.startTime = FloatRange(1.0f); desc.density = 1.0f; desc.startPos = Vec3Range(D3DXVECTOR3(-0.2f, -0.2f, -0.2f), D3DXVECTOR3(0.2f, 0.2f, 0.2f), Vec3Range::vdVolume); - desc.startRot = QuatRange(D3DXQUATERNION(-1, -1, -1, -1), D3DXQUATERNION(1, 1, 1, 1), QuatRange::vdVolume); + desc.startRot = QuatRange(glm::quat(-1, -1, -1, -1), glm::quat(1, 1, 1, 1), QuatRange::vdVolume); desc.startScale = D3DXVECTOR3(IdentityVector) * 1.5f; graph::FxFlowEmitter::FlowDesc descFlow; @@ -1178,7 +1178,7 @@ void DataBase::LoadEffects() desc.density = 1.0f; desc.startPos = NullVector; desc.startScale = IdentityVector * 0.7f; - desc.startRot = QuatRange(D3DXQUATERNION(-1, -1, -1, -1), D3DXQUATERNION(1, 1, 1, 1), QuatRange::vdVolume); + desc.startRot = QuatRange(glm::quat(-1, -1, -1, -1), glm::quat(1, 1, 1, 1), QuatRange::vdVolume); graph::FxFlowEmitter::FlowDesc descFlow; descFlow.speedScale = IdentityVector * 4.0f; @@ -1264,7 +1264,7 @@ void DataBase::LoadEffects() LoadFxSprite("frostRay", "Effect\\frostRay", NullVector, Vec3Range(IdentityVector, NullVector), NullQuaternion, false, graph::SceneNode::amTwoSide, 1.0f, 0, 0.0f, true, glm::vec2(1.0f, 0.5f), gtEffect, true); //frostShot { - D3DXQUATERNION lineRot1; + glm::quat lineRot1; D3DXQuaternionRotationAxis(&lineRot1, &ZVector, D3DX_PI); LoadFxSprite("frostShot", "Effect\\frostLine", NullVector, Vec3Range(IdentityVector, NullVector), QuatRange(NullQuaternion, lineRot1), false, graph::SceneNode::amTwoSide, 1.0f, 0, 1.0f, false, glm::vec2(4.0f, 4.0f)); } @@ -1282,7 +1282,7 @@ void DataBase::LoadEffects() desc.startTime = FloatRange(0.1f, 0.2f); desc.density = FloatRange(2.0f, 3.0f); desc.startPos = Vec3Range(D3DXVECTOR3(-0.1f, -0.1f, -0.5f), D3DXVECTOR3(0.1f, 0.1f, 0.1f), Vec3Range::vdVolume); - D3DXQUATERNION spRot1, spRot2; + glm::quat spRot1, spRot2; D3DXQuaternionRotationAxis(&spRot1, &(-ZVector), D3DX_PI); D3DXQuaternionRotationAxis(&spRot2, &ZVector, 2.0f * D3DX_PI); desc.startRot = QuatRange(spRot1, spRot2, QuatRange::vdVolume); @@ -1314,7 +1314,7 @@ void DataBase::LoadEffects() desc.density = 1.0f; desc.startPos = Vec3Range(D3DXVECTOR3(-0.0f, -0.2f, -0.2f), D3DXVECTOR3(0.0f, 0.2f, 0.2f), Vec3Range::vdVolume); desc.startScale = D3DXVECTOR3(0.7f, 0.7f, 0.7f); - desc.startRot = QuatRange(D3DXQUATERNION(-1, -1, -1, -1), D3DXQUATERNION(1, 1, 1, 1), QuatRange::vdVolume); + desc.startRot = QuatRange(glm::quat(-1, -1, -1, -1), glm::quat(1, 1, 1, 1), QuatRange::vdVolume); graph::FxFlowEmitter::FlowDesc descFlow; descFlow.speedPos = Vec3Range(D3DXVECTOR3(11.0f, -0.5f, 0.0f), D3DXVECTOR3(13.0f, 0.5f, 0.1f), Vec3Range::vdVolume); @@ -1361,7 +1361,7 @@ void DataBase::LoadEffects() graph::FxFlowEmitter::FlowDesc descFlow; descFlow.speedPos = Vec3Range(D3DXVECTOR3(-1.5f, -1.5f, 2.0f), D3DXVECTOR3(1.5f, 1.5f, 5.0f), Vec3Range::vdVolume) * 3.0f; // - D3DXQUATERNION spRot1, spRot2; + glm::quat spRot1, spRot2; D3DXQuaternionRotationAxis(&spRot1, &(-IdentityVector), D3DX_PI); D3DXQuaternionRotationAxis(&spRot2, &IdentityVector, 2.0f * D3DX_PI); descFlow.speedRot = QuatRange(spRot1, spRot2, QuatRange::vdVolume, Point2U(100, 100)); @@ -1609,10 +1609,10 @@ void DataBase::LoadEffects() desc.life = 1.0f; desc.startPos = NullVector; desc.startScale = IdentityVector * 2.0f; - desc.rangeRot = QuatRange(D3DXQUATERNION(-1, -1, -1, -1), D3DXQUATERNION(1, 1, 1, 1), QuatRange::vdVolume); + desc.rangeRot = QuatRange(glm::quat(-1, -1, -1, -1), glm::quat(1, 1, 1, 1), QuatRange::vdVolume); graph::FxFlowEmitter::FlowDesc descFlow; - descFlow.speedRot = QuatRange(D3DXQUATERNION(-1, -1, -1, -1), D3DXQUATERNION(1, 1, 1, 1), QuatRange::vdVolume); + descFlow.speedRot = QuatRange(glm::quat(-1, -1, -1, -1), glm::quat(1, 1, 1, 1), QuatRange::vdVolume); LoadFxFlow("flareLaser1", "Effect\\flareLaser1", _fxSpriteManager, desc, descFlow, false, 1.0f); } @@ -1628,7 +1628,7 @@ void DataBase::LoadEffects() desc.life = FloatRange(0.15f, 0.5f); desc.startPos = NullVector; desc.startScale = Vec3Range(IdentityVector * 1.25f, IdentityVector * 2.0f); - desc.rangeRot = QuatRange(D3DXQUATERNION(-1, -1, -1, -1), D3DXQUATERNION(1, 1, 1, 1), QuatRange::vdVolume); + desc.rangeRot = QuatRange(glm::quat(-1, -1, -1, -1), glm::quat(1, 1, 1, 1), QuatRange::vdVolume); graph::FxFlowEmitter::FlowDesc descFlow; @@ -1733,7 +1733,7 @@ void DataBase::LoadEffects() desc.startTime = FloatRange(0.7f); desc.density = FloatRange(1.0f, 1.0f); desc.startPos = Vec3Range(D3DXVECTOR3(-0.6f, -0.6f, -0.6f), D3DXVECTOR3(0.6f, 0.6f, 0.6f), Vec3Range::vdVolume); - D3DXQUATERNION rot; + glm::quat rot; D3DXQuaternionRotationAxis(&rot, &ZVector, D3DX_PI); desc.startRot = QuatRange(NullQuaternion, rot, QuatRange::vdLinear); desc.startScale = D3DXVECTOR3(IdentityVector) * 4.0f; @@ -1764,7 +1764,7 @@ void DataBase::LoadEffects() desc.startTime = 0.5f; desc.density = FloatRange(1.0f, 1.0f); desc.startPos = Vec3Range(D3DXVECTOR3(-0.3f, -0.3f, -0.3f), D3DXVECTOR3(0.3f, 0.3f, 0.3f), Vec3Range::vdVolume); - D3DXQUATERNION rot; + glm::quat rot; D3DXQuaternionRotationAxis(&rot, &ZVector, D3DX_PI); desc.startRot = QuatRange(NullQuaternion, rot, QuatRange::vdLinear); desc.startScale = D3DXVECTOR3(IdentityVector) * 1.5f; @@ -1805,7 +1805,7 @@ void DataBase::LoadEffects() desc.density = 1.0f; desc.startPos = Vec3Range(IdentityVector * (-0.1f), IdentityVector * 0.1f, Vec3Range::vdVolume); desc.startScale = Vec3Range(IdentityVector * 0.5f, IdentityVector * 0.6f, Vec3Range::vdVolume); - desc.startRot = QuatRange(D3DXQUATERNION(-1, -1, -1, -1), D3DXQUATERNION(1, 1, 1, 1), QuatRange::vdVolume); + desc.startRot = QuatRange(glm::quat(-1, -1, -1, -1), glm::quat(1, 1, 1, 1), QuatRange::vdVolume); graph::FxFlowEmitter::FlowDesc descFlow; descFlow.speedScale = IdentityVector * 0.5f; @@ -1875,7 +1875,7 @@ void DataBase::LoadEffects() desc.startTime = 0; desc.density = 5.0f; desc.startPos = Vec3Range(D3DXVECTOR3(-2.0f, -2.0f, 0.0f), D3DXVECTOR3(2.0f, 2.0f, 0.0f), Vec3Range::vdVolume); - D3DXQUATERNION rot1, rot2; + glm::quat rot1, rot2; D3DXQuaternionRotationAxis(&rot1, &ZVector, -D3DX_PI/3); D3DXQuaternionRotationAxis(&rot2, &ZVector, D3DX_PI/3); desc.startRot = QuatRange(rot1, rot2, QuatRange::vdLinear); @@ -2690,7 +2690,7 @@ void DataBase::LoadMisc() game::GameObject& gameObj = mapObj->GetGameObj(); graph::PlaneNode* node = AddPlaneNode(mapObj, IdentityVec2); - //D3DXQUATERNION rot; + //glm::quat rot; //D3DXQuaternionRotationAxis(&rot, &ZVector, -D3DX_PI/2); //node->SetRot(rot); node->SetScale(D3DXVECTOR3(4.0f, 3.0f, 1.0f)); diff --git a/src/Rock3dGame/source/game/Environment.cpp b/src/Rock3dGame/source/game/Environment.cpp index 92298f7a..bec91b70 100644 --- a/src/Rock3dGame/source/game/Environment.cpp +++ b/src/Rock3dGame/source/game/Environment.cpp @@ -66,9 +66,9 @@ Environment::Environment(World* world): _world(world), _wheater(ewClody), _world for (int i = 0; i < 4; ++i) _lampSwitchOn[i] = true; - D3DXQUATERNION rot1; + glm::quat rot1; D3DXQuaternionRotationAxis(&rot1, &YVector, D3DX_PI/4.0f); - D3DXQUATERNION rot2; + glm::quat rot2; D3DXQuaternionRotationAxis(&rot2, &ZVector, -D3DX_PI/4.0f); _sunRot = rot1 * rot2; @@ -769,7 +769,7 @@ void Environment::SetSunPos(const D3DXVECTOR3& value) _sun->GetSource()->SetPos(_sunPos); } -const D3DXQUATERNION& Environment::GetSunRot() const +const glm::quat& Environment::GetSunRot() const { if (_sun) _sunRot = _sun->GetSource()->GetRot(); @@ -777,7 +777,7 @@ const D3DXQUATERNION& Environment::GetSunRot() const return _sunRot; } -void Environment::SetSunRot(const D3DXQUATERNION& value) +void Environment::SetSunRot(const glm::quat& value) { _sunRot = value; @@ -798,12 +798,12 @@ void Environment::SetLampPos(const D3DXVECTOR3& value, int index) _lamp[index]->GetSource()->SetPos(value); } -const D3DXQUATERNION& Environment::GetLampRot(int index) const +const glm::quat& Environment::GetLampRot(int index) const { return _lampRot[index]; } -void Environment::SetLampRot(const D3DXQUATERNION& value, int index) +void Environment::SetLampRot(const glm::quat& value, int index) { _lampRot[index] = value; diff --git a/src/Rock3dGame/source/game/GameBase.cpp b/src/Rock3dGame/source/game/GameBase.cpp index cb5f4abd..b1ef8fc0 100644 --- a/src/Rock3dGame/source/game/GameBase.cpp +++ b/src/Rock3dGame/source/game/GameBase.cpp @@ -128,7 +128,7 @@ void ResurrectObj::Resurrect() owner->LockDestr(); D3DXVECTOR3 pos = gameObj->GetWorldPos(); - D3DXQUATERNION rot = gameObj->GetWorldRot(); + glm::quat rot = gameObj->GetWorldRot(); owner->Delete(mapObj); gameObj->SetParent(0); @@ -1268,7 +1268,7 @@ void PodushkaAnim::OnProgress(float deltaTime) if (abs(linSpeed) > 1.0f) { D3DXMATRIX localMat = _target->GetMat(); - D3DXQUATERNION rotQuat; + glm::quat rotQuat; D3DXQuaternionRotationAxis(&rotQuat, &XVector, D3DX_PI * deltaTime * linSpeed * 0.1f); D3DXMATRIX rotMat; D3DXMatrixRotationQuaternion(&rotMat, &rotQuat); diff --git a/src/Rock3dGame/source/game/GameCar.cpp b/src/Rock3dGame/source/game/GameCar.cpp index 2bf2241f..bed9dd1e 100644 --- a/src/Rock3dGame/source/game/GameCar.cpp +++ b/src/Rock3dGame/source/game/GameCar.cpp @@ -192,15 +192,15 @@ void CarWheel::PxSyncWheel(float alpha) if (s && wcd.contactForce > -1000) st = wcd.contactPosition - r; - D3DXQUATERNION quat1; - D3DXQUATERNION quat2 = NullQuaternion; + glm::quat quat1; + glm::quat quat2 = NullQuaternion; D3DXQuaternionRotationAxis(&quat1, &ZVector, _steerAngle); D3DXQuaternionRotationAxis(&quat2, &YVector, _summAngle); - D3DXQUATERNION resRot = quat2 * quat1; + glm::quat resRot = quat2 * quat1; if (invertWheel) { - D3DXQUATERNION invRot; + glm::quat invRot; D3DXQuaternionRotationAxis(&invRot, &ZVector, D3DX_PI); resRot = invRot * resRot; } @@ -646,7 +646,7 @@ void GameCar::WheelsProgress(float deltaTime, float motorTorque, float breakTorq NxQuat worldRot = nxActor->getGlobalOrientationQuat(); NxQuatRotation(fixRot, fixRot, worldRot); - D3DXQUATERNION rot; + glm::quat rot; fixRot.getXYZW(rot); D3DXVECTOR3 xAxis; D3DXQuaternionToAxisAngle(&rot, &xAxis, &dFixAngle); diff --git a/src/Rock3dGame/source/game/GameObject.cpp b/src/Rock3dGame/source/game/GameObject.cpp index 877e73a3..530c79a2 100644 --- a/src/Rock3dGame/source/game/GameObject.cpp +++ b/src/Rock3dGame/source/game/GameObject.cpp @@ -307,7 +307,7 @@ void GameObject::OnFrame(float deltaTime, float pxAlpha) _rotSyncAngle = std::max(_rotSyncAngle - 1.3f * D3DX_PI * deltaTime, 0.0f); else _rotSyncAngle = std::min(_rotSyncAngle + 1.3f * D3DX_PI * deltaTime, 0.0f); - D3DXQUATERNION rot; + glm::quat rot; D3DXQuaternionRotationAxis(&rot, &_rotSyncAxis, -_rotSyncAngle); _grActor->SetRot(_grActor->GetRot() * rot); } @@ -330,7 +330,7 @@ void GameObject::OnFrame(float deltaTime, float pxAlpha) else _rotSyncAngle2 = std::min(_rotSyncAngle2 + 1.3f * D3DX_PI * deltaTime, 0.0f); - D3DXQUATERNION rot; + glm::quat rot; D3DXQuaternionRotationAxis(&rot, &_rotSyncAxis2, -_rotSyncAngle2); _grActor->SetRot(_grActor->GetRot() * _rotSync2 * rot); } @@ -387,7 +387,7 @@ void GameObject::LoadProxy(lsl::SReader* reader) { D3DXVECTOR3 pos; D3DXVECTOR3 scale; - D3DXQUATERNION rot; + glm::quat rot; reader->ReadValue("pos", pos, 3); reader->ReadValue("scale", scale, 3); @@ -766,12 +766,12 @@ void GameObject::SetScale(float value) SetScale(D3DXVECTOR3(value, value, value)); } -const D3DXQUATERNION& GameObject::GetRot() const +const glm::quat& GameObject::GetRot() const { return _grActor->GetRot(); } -void GameObject::SetRot(const D3DXQUATERNION& value) +void GameObject::SetRot(const glm::quat& value) { _grActor->SetRot(value); _pxActor->SetRot(value); @@ -790,12 +790,12 @@ void GameObject::SetWorldPos(const D3DXVECTOR3& value) _pxPrevPos = _grActor->GetPos(); } -D3DXQUATERNION GameObject::GetWorldRot() const +glm::quat GameObject::GetWorldRot() const { return _grActor->GetWorldRot(); } -void GameObject::SetWorldRot(const D3DXQUATERNION& value) +void GameObject::SetWorldRot(const glm::quat& value) { _grActor->SetWorldRot(value); _pxActor->SetRot(_grActor->GetRot()); @@ -838,12 +838,12 @@ void GameObject::SetPosSync(const D3DXVECTOR3& value) SetSyncFrameEvent(true); } -const D3DXQUATERNION& GameObject::GetRotSync() const +const glm::quat& GameObject::GetRotSync() const { return _rotSync; } -void GameObject::SetRotSync(const D3DXQUATERNION& value) +void GameObject::SetRotSync(const glm::quat& value) { _rotSync = value; D3DXQuaternionToAxisAngle(&_rotSync, &_rotSyncAxis, &_rotSyncAngle); @@ -872,15 +872,14 @@ void GameObject::SetPosSync2(const D3DXVECTOR3& curSync, const D3DXVECTOR3& newS SetSyncFrameEvent(true); } -const D3DXQUATERNION& GameObject::GetRotSync2() const +const glm::quat& GameObject::GetRotSync2() const { return _rotSync2; } -void GameObject::SetRotSync2(const D3DXQUATERNION& curSync, const D3DXQUATERNION& newSync) +void GameObject::SetRotSync2(const glm::quat& curSync, const glm::quat& newSync) { - D3DXQUATERNION dRot; - QuatRotation(dRot, newSync, curSync); + glm::quat dRot = QuatRotation(newSync, curSync); D3DXQuaternionToAxisAngle(&dRot, &_rotSyncAxis2, &_rotSyncAngle2); float angle = abs(_rotSyncAngle2); @@ -899,7 +898,7 @@ const D3DXVECTOR3& GameObject::GetPxPosLerp() const return !_bodyProgressEvent && _parent ? _parent->GetPxPosLerp() : _pxPosLerp; } -const D3DXQUATERNION& GameObject::GetPxRotLerp() const +const glm::quat& GameObject::GetPxRotLerp() const { return !_bodyProgressEvent && _parent ? _parent->GetPxRotLerp() : _pxRotLerp; } @@ -914,7 +913,7 @@ const D3DXVECTOR3& GameObject::GetPxPrevPos() const return _pxPrevPos; } -const D3DXQUATERNION& GameObject::GetPxPrevRot() const +const glm::quat& GameObject::GetPxPrevRot() const { return _pxPrevRot; } diff --git a/src/Rock3dGame/source/game/HudMenu.cpp b/src/Rock3dGame/source/game/HudMenu.cpp index d633a363..2813cbad 100644 --- a/src/Rock3dGame/source/game/HudMenu.cpp +++ b/src/Rock3dGame/source/game/HudMenu.cpp @@ -46,7 +46,7 @@ PlayerStateFrame::PlayerStateFrame(Menu* menu, HudMenu* hudMenu, gui::Widget* pa } menu->ShowChat(true); - menu->RegUser(this); + menu->RegUser(this); } PlayerStateFrame::~PlayerStateFrame() @@ -56,7 +56,7 @@ PlayerStateFrame::~PlayerStateFrame() for (int i = 0; i < 5; ++i) { - menu()->GetGUI()->ReleaseWidget(_guiTimer[i]); + menu()->GetGUI()->ReleaseWidget(_guiTimer[i]); } for (int i = 0; i < cCarLifeEnd; ++i) @@ -96,7 +96,7 @@ void PlayerStateFrame::NewPickItem(Slot::Type slotType, GameObject::BonusType bo const glm::vec2 photoSize = glm::vec2(50.0f, 50.0f); const D3DXCOLOR color2 = D3DXCOLOR(214.0f, 214.0f, 214.0f, 255.0f)/255.0f; - string image; + string image; graph::Tex2DResource* photo = NULL; string name; @@ -130,7 +130,7 @@ void PlayerStateFrame::NewPickItem(Slot::Type slotType, GameObject::BonusType bo default: image = "GUI\\pickWeapon.png"; break; - } + } break; } @@ -157,7 +157,7 @@ void PlayerStateFrame::NewPickItem(Slot::Type slotType, GameObject::BonusType bo _pickItemsBuffer.pop_back(); } else - { + { item.image = menu()->CreatePlane(root(), NULL, image, true, IdentityVec2, gui::Material::bmTransparency); item.photo = menu()->CreatePlane(item.image, NULL, "", true, IdentityVec2, gui::Material::bmTransparency); @@ -175,8 +175,8 @@ void PlayerStateFrame::NewPickItem(Slot::Type slotType, GameObject::BonusType bo item.pos = _hudMenu->GetPickItemsPos() + glm::vec2(item.image->GetSize().x/2, 0); item.image->SetPos(item.pos); - item.photo->SetVisible(photo ? true : false); - item.photo->GetMaterial().GetSampler().SetTex(photo); + item.photo->SetVisible(photo ? true : false); + item.photo->GetMaterial().GetSampler().SetTex(photo); item.photo->SetSize(menu()->StretchImage(item.photo->GetMaterial(), photoSize, true, false, true, false)); item.label->SetText(name); @@ -208,7 +208,7 @@ void PlayerStateFrame::ProccessPickItems(float deltaTime) if (item.time < 0.3f) { float lerp = ClampValue(item.time / 0.3f, 0.0f, 1.0f); - alpha = lerp; + alpha = lerp; } else if (item.time > 4.7f) { @@ -220,7 +220,7 @@ void PlayerStateFrame::ProccessPickItems(float deltaTime) glm::vec2 pos = item.pos + glm::vec2(30, index * 85.0f + dPosY); glm::vec2 curPos = item.image->GetPos(); if (abs(pos.x - curPos.x) > 0.001f || abs(pos.y - curPos.y) > 0.001f) - { + { curPos.x = std::min(curPos.x + 90.0f * deltaTime, pos.x); curPos.y = std::min(curPos.y + 120.0f * deltaTime, pos.y); item.image->SetPos(curPos); @@ -245,7 +245,7 @@ void PlayerStateFrame::ProccessPickItems(float deltaTime) void PlayerStateFrame::NewAchievment(AchievmentCondition::MyEventData* data) { Difficulty diff = menu()->GetRace()->GetProfile()->difficulty(); - std::string image = "GUI\\Achievments\\" + data->condition->name() + ".png"; + std::string image = "GUI\\Achievments\\" + data->condition->name() + ".png"; std::string pointsImage = lsl::StrFmt("GUI\\Achievments\\points%d.png", data->condition->reward()); std::string pointsImageK = diff == gdHard ? "GUI\\Achievments\\points1_5.png" : "GUI\\Achievments\\points1_2.png"; glm::vec2 vpSize = menu()->GetGUI()->GetVPSize(); @@ -350,7 +350,7 @@ void PlayerStateFrame::ProccessAchievments(float deltaTime) item.image->SetPos(pos); glm::vec2 imgSize = myThis->menu()->GetImageSize(item.image->GetMaterial()); - imgSize = Vec2Lerp(imgSize, imgSize * 2.0f, pingAlpha); + imgSize = Vec2Lerp(imgSize, imgSize * 2.0f, pingAlpha); item.image->SetSize(imgSize); item.image->GetMaterial().SetAlpha(1.0f - outAlpha); @@ -1042,11 +1042,11 @@ void MiniMapFrame::BuildPath(WayPath& path, res::VertexData& data) for (float i = -smSlice; i <= smSlice; ++i) { float dAlpha = i/smSlice * alpha2; - D3DXQUATERNION rot; + glm::quat rot; D3DXQuaternionRotationAxis(&rot, &ZVector, ccw ? dAlpha : -dAlpha); D3DXMATRIX rotMat; D3DXMatrixRotationQuaternion(&rotMat, &rot); - auto rotMatGLM = d3dMatrixToGLM(rotMat); // remove after D3DXMATRIX replacement + auto rotMatGLM = Matrix4DxToGlm(rotMat); // remove after D3DXMATRIX replacement glm::vec2 vec = Vec2TransformNormal(smVec, rotMatGLM); Node newNode; @@ -1190,7 +1190,7 @@ void MiniMapFrame::UpdateMap() gui::Plane3d* start = _menu->CreatePlane3d(_map, "GUI\\start.png", IdentityVec2); start->SetPos(node->GetPos()); - D3DXQUATERNION rot; + glm::quat rot; QuatShortestArc(XVector, D3DXVECTOR3(node->GetTile().GetDir().x, node->GetTile().GetDir().y, 0.0f), rot); start->SetRot(rot); start->SetSize(glm::vec2(node->GetSize()/4.0f, node->GetSize()/2.0f)); diff --git a/src/Rock3dGame/source/game/Map.cpp b/src/Rock3dGame/source/game/Map.cpp index 5f7e045f..c63e0709 100644 --- a/src/Rock3dGame/source/game/Map.cpp +++ b/src/Rock3dGame/source/game/Map.cpp @@ -90,7 +90,7 @@ void Map::Load(lsl::SReader* reader) if (lsl::SReadValue(reader, "sunPos", sunPos)) _world->GetEnv()->SetSunPos(sunPos); - D3DXQUATERNION sunRot; + glm::quat sunRot; if (lsl::SReadValue(reader, "sunRot", sunRot)) _world->GetEnv()->SetSunRot(sunRot); } diff --git a/src/Rock3dGame/source/game/Menu.cpp b/src/Rock3dGame/source/game/Menu.cpp index b8cc8c7c..3c0f0539 100644 --- a/src/Rock3dGame/source/game/Menu.cpp +++ b/src/Rock3dGame/source/game/Menu.cpp @@ -348,13 +348,13 @@ glm::vec2 Menu::StretchImage(gui::Material& material, const glm::vec2& size, boo return StretchImage(GetImageSize(material), size, keepAspect, fillRect, scaleDown, scaleUp); } -D3DXQUATERNION Menu::GetIsoRot() +glm::quat Menu::GetIsoRot() { - D3DXQUATERNION rotZ; + glm::quat rotZ; D3DXQuaternionRotationAxis(&rotZ, &ZVector, -2.0f * D3DX_PI/3.0f); - D3DXQUATERNION rotY; + glm::quat rotY; D3DXQuaternionRotationAxis(&rotY, &YVector, 0); - D3DXQUATERNION rotX; + glm::quat rotX; D3DXQuaternionRotationAxis(&rotX, &XVector, -D3DX_PI/3.0f); return rotZ * rotY * rotX; diff --git a/src/Rock3dGame/source/game/Player.cpp b/src/Rock3dGame/source/game/Player.cpp index b7a3e78e..7e16f283 100644 --- a/src/Rock3dGame/source/game/Player.cpp +++ b/src/Rock3dGame/source/game/Player.cpp @@ -200,12 +200,12 @@ void SlotItem::SetPos(const D3DXVECTOR3& value) TransformChanged(); } -const D3DXQUATERNION& SlotItem::GetRot() const +const glm::quat& SlotItem::GetRot() const { return _rot; } -void SlotItem::SetRot(const D3DXQUATERNION& value) +void SlotItem::SetRot(const glm::quat& value) { _rot = value; TransformChanged(); @@ -1194,7 +1194,7 @@ void Player::ClearBonusProjs() RemoveBonusProj(_bonusProjs.begin()); } -void Player::InitLight(HeadLight headLight, const D3DXVECTOR3& pos, const D3DXQUATERNION& rot) +void Player::InitLight(HeadLight headLight, const D3DXVECTOR3& pos, const glm::quat& rot) { if (!_lights[headLight]) { @@ -1918,15 +1918,15 @@ void Player::SetHeadlight(HeadLightMode value) case hlmOne: { - InitLight(hlFirst, D3DXVECTOR3(0.3f, 0.0f, 3.190f), D3DXQUATERNION(0.0009f, 0.344f, -0.029f, 0.939f)); + InitLight(hlFirst, D3DXVECTOR3(0.3f, 0.0f, 3.190f), glm::quat(0.939f, 0.0009f, 0.344f, -0.029f)); FreeLight(hlSecond); break; } case hlmTwo: { - InitLight(hlFirst, D3DXVECTOR3(0.3f, 1.0f, 3.190f), D3DXQUATERNION(0.0009f, 0.344f, -0.029f, 0.939f)); - InitLight(hlSecond, D3DXVECTOR3(0.3f, -1.0f, 3.190f), D3DXQUATERNION(0.0009f, 0.344f, -0.029f, 0.939f)); + InitLight(hlFirst, D3DXVECTOR3(0.3f, 1.0f, 3.190f), glm::quat(0.939f, 0.0009f, 0.344f, -0.029f)); + InitLight(hlSecond, D3DXVECTOR3(0.3f, -1.0f, 3.190f), glm::quat(0.939f, 0.0009f, 0.344f, -0.029f)); break; } } @@ -1974,7 +1974,7 @@ Record* Player::GetSlot(SlotType type) return _slot[type] ? _slot[type]->GetRecord() : 0; } -void Player::SetSlot(SlotType type, Record* record, const D3DXVECTOR3& pos, const D3DXQUATERNION& rot) +void Player::SetSlot(SlotType type, Record* record, const D3DXVECTOR3& pos, const glm::quat& rot) { lsl::SafeDelete(_slot[type]); diff --git a/src/Rock3dGame/source/game/Race.cpp b/src/Rock3dGame/source/game/Race.cpp index 7ff7e451..f5f7c41e 100644 --- a/src/Rock3dGame/source/game/Race.cpp +++ b/src/Rock3dGame/source/game/Race.cpp @@ -2555,7 +2555,7 @@ void Garage::FillStandartSlots(Car* car, const std::string& wheel, bool truba, c if (hyperDrive) { place.show = true; - D3DXQUATERNION rot; + glm::quat rot; D3DXQuaternionRotationAxis(&rot, &ZVector, D3DX_PI); place.items.push_back(PlaceItem(&GetShop().GetSlot("hyperdrive"), rot, *hyperDrive)); } @@ -2727,7 +2727,7 @@ void Garage::LoadCars() place.active = true; place.show = true; place.pos = D3DXVECTOR3(0.0f, 1.0f, 0.3f); - D3DXQUATERNION rot; + glm::quat rot; D3DXVECTOR3 offset; D3DXQuaternionRotationAxis(&rot, &XVector, -D3DX_PI/3.0f); @@ -2749,7 +2749,7 @@ void Garage::LoadCars() place.active = true; place.show = true; place.pos = D3DXVECTOR3(0.0f, -1.0f, 0.3f); - D3DXQUATERNION rot; + glm::quat rot; D3DXVECTOR3 offset; D3DXQuaternionRotationAxis(&rot, &XVector, D3DX_PI/3.0f); @@ -2806,7 +2806,7 @@ void Garage::LoadCars() place.active = true; place.show = true; place.pos = D3DXVECTOR3(0.0f, 1.4f, 0.0f); - D3DXQUATERNION rot; + glm::quat rot; D3DXVECTOR3 offset; D3DXQuaternionRotationAxis(&rot, &XVector, -D3DX_PI/2.0f); @@ -2843,7 +2843,7 @@ void Garage::LoadCars() place.active = true; place.show = true; place.pos = D3DXVECTOR3(0.0f, -1.4f, 0.0f); - D3DXQUATERNION rot; + glm::quat rot; D3DXVECTOR3 offset; D3DXQuaternionRotationAxis(&rot, &XVector, D3DX_PI/2.0f); @@ -2913,7 +2913,7 @@ void Garage::LoadCars() place.active = true; place.show = true; place.pos = D3DXVECTOR3(0.2f, 0.6f, 0.25f); - D3DXQUATERNION rot; + glm::quat rot; D3DXVECTOR3 offset; D3DXQuaternionRotationAxis(&rot, &XVector, -D3DX_PI/3.0f); @@ -2949,7 +2949,7 @@ void Garage::LoadCars() place.active = true; place.show = true; place.pos = D3DXVECTOR3(0.2f, -0.6f, 0.25f); - D3DXQUATERNION rot; + glm::quat rot; D3DXVECTOR3 offset; D3DXQuaternionRotationAxis(&rot, &XVector, D3DX_PI/3.0f); @@ -3012,7 +3012,7 @@ void Garage::LoadCars() place.active = true; place.show = true; place.pos = D3DXVECTOR3(0.3f, 0.8f, 0.4f); - D3DXQUATERNION rot; + glm::quat rot; D3DXVECTOR3 offset; D3DXQuaternionRotationAxis(&rot, &XVector, -D3DX_PI/2.0f); @@ -3048,7 +3048,7 @@ void Garage::LoadCars() place.active = true; place.show = true; place.pos = D3DXVECTOR3(0.3f, -0.8f, 0.4f); - D3DXQUATERNION rot; + glm::quat rot; D3DXVECTOR3 offset; D3DXQuaternionRotationAxis(&rot, &XVector, D3DX_PI/2.0f); @@ -3085,7 +3085,7 @@ void Garage::LoadCars() place.show = true; place.pos = D3DXVECTOR3(1.4f, 0.0f, 0.6f); D3DXVECTOR3 offset; - D3DXQUATERNION rot; + glm::quat rot; place.items.push_back(&GetShop().GetSlot("rocketLauncher")); @@ -3358,7 +3358,7 @@ Slot* Garage::InstalSlot(Player* player, Player::SlotType type, Car* car, Slot* LSL_ASSERT(car->GetRecord() == player->GetCar().record); D3DXVECTOR3 pos; - D3DXQUATERNION rot = NullQuaternion; + glm::quat rot = NullQuaternion; if (slot) { const PlaceSlot& place = car->GetSlot(type); diff --git a/src/Rock3dGame/source/game/RaceMenu2.cpp b/src/Rock3dGame/source/game/RaceMenu2.cpp index c3c87fd3..b0dcd928 100644 --- a/src/Rock3dGame/source/game/RaceMenu2.cpp +++ b/src/Rock3dGame/source/game/RaceMenu2.cpp @@ -40,8 +40,8 @@ void CarFrame::OnProgress(float deltaTime) { if (_secretMapObj->GetGameObj().GetGrActor().GetVisible()) { - D3DXQUATERNION rot = _secretMapObj->GetGameObj().GetRot(); - D3DXQUATERNION dRot; + glm::quat rot = _secretMapObj->GetGameObj().GetRot(); + glm::quat dRot; D3DXQuaternionRotationAxis(&dRot, &ZVector, 2.0f * D3DX_PI * deltaTime * 0.1f); _secretMapObj->GetGameObj().SetRot(dRot * rot); } @@ -63,12 +63,12 @@ void CarFrame::OnShow(bool value) SetCamStyle(csCar, true); menu()->GetEnv()->SetLampPos(D3DXVECTOR3(-0.94673467f, 3.0021181f, 2.9447727f), 0); - menu()->GetEnv()->SetLampRot(D3DXQUATERNION(0.19748747f, 0.34095559f, -0.46066701f, 0.79532242f), 0); + menu()->GetEnv()->SetLampRot(glm::quat(0.79532242f, 0.19748747f, 0.34095559f, -0.46066701f), 0); menu()->GetEnv()->SetLampColor(clrWhite, 0); menu()->GetEnv()->SwitchOnLamp(0, true); menu()->GetEnv()->SetLampPos(D3DXVECTOR3(6.0344887f, -5.2521329f, 1.6322796f), 1); - menu()->GetEnv()->SetLampRot(D3DXQUATERNION(-0.17059785f, 0.045529708f, 0.95100683f, 0.25379914f), 1); + menu()->GetEnv()->SetLampRot(glm::quat(0.25379914f, -0.17059785f, 0.045529708f, 0.95100683f), 1); menu()->GetEnv()->SetLampColor(clrWhite, 1); menu()->GetEnv()->SwitchOnLamp(1, true); } @@ -103,7 +103,7 @@ void CarFrame::SetCar(Garage::Car* value, const D3DXCOLOR& color, bool secret) if ((*iter)->invertWheel) { - D3DXQUATERNION rot; + glm::quat rot; D3DXQuaternionRotationAxis(&rot, &D3DXVECTOR3(0, 0, 1), D3DX_PI); (*iter)->SetRot(rot); } @@ -206,7 +206,7 @@ void CarFrame::SetCamStyle(CamStyle value, bool instant) _camStyle = value; D3DXVECTOR3 pos = NullVector; - D3DXQUATERNION rot = NullQuaternion; + glm::quat rot = NullQuaternion; CameraManager* camera = menu()->GetRace()->GetWorld()->GetCamera(); graph::Camera* cameraInst = menu()->GetRace()->GetWorld()->GetGraph()->GetCamera(); @@ -224,7 +224,7 @@ void CarFrame::SetCamStyle(CamStyle value, bool instant) else { pos = D3DXVECTOR3(2.9176455f, 3.8489482f, 1.2934232f); - rot = D3DXQUATERNION(0.11683256f, 0.058045074f, -0.88791621f, 0.44111854f); + rot = glm::quat(0.44111854f, 0.11683256f, 0.058045074f, -0.88791621f); } camera->SetTarget(D3DXVECTOR4(0, 0, 0, 5.0f)); @@ -247,18 +247,18 @@ void CarFrame::SetCamStyle(CamStyle value, bool instant) D3DXVECTOR3(-7.4102926f, 0.61909121f, 1.1492375f) }; - D3DXQUATERNION rotList[8] = { - D3DXQUATERNION(0.021078700f, 0.10266567f, -0.20001189f, 0.97417259f), - D3DXQUATERNION(0.093931124f, 0.099822313f, -0.67882264f, 0.72140080f), - D3DXQUATERNION(0.098612130f, 0.053653944f, -0.87284911f, 0.47491166f), - D3DXQUATERNION(0.10475823f, 0.0032271212f, -0.99402952f, 0.030623097f), - D3DXQUATERNION(0.10137362f, -0.026610103f, -0.96191424f, -0.25249690f), - D3DXQUATERNION(0.070100352f, -0.063905962f, -0.73568070f, -0.67066783f), - D3DXQUATERNION(0.041057255f, -0.077143900f, -0.46803388f, -0.87939179f), - D3DXQUATERNION(0.0077582477f, -0.092043117f, -0.083636492f, -0.99221748f) + glm::quat rotList[8] = { + glm::quat(0.97417259f, 0.021078700f, 0.10266567f, -0.20001189f), + glm::quat(0.72140080f, 0.093931124f, 0.099822313f, -0.67882264f), + glm::quat(0.47491166f, 0.098612130f, 0.053653944f, -0.87284911f), + glm::quat(0.030623097f, 0.10475823f, 0.0032271212f, -0.99402952f), + glm::quat(-0.25249690f, 0.10137362f, -0.026610103f, -0.96191424f), + glm::quat(-0.67066783f, 0.070100352f, -0.063905962f, -0.73568070f), + glm::quat(-0.87939179f, 0.041057255f, -0.077143900f, -0.46803388f), + glm::quat(-0.99221748f, 0.0077582477f, -0.092043117f, -0.083636492f) }; - D3DXQUATERNION camRot = cameraInst->GetRot(); + glm::quat camRot = cameraInst->GetRot(); float minAngle; for (int i = 0; i < 8; ++i) @@ -310,9 +310,9 @@ SpaceshipFrame::SpaceshipFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* pare MapObjRec* record = menu->GetDB()->GetRecord(MapObjLib::ctDecoration, "Misc\\space2"); _spaceMapObj = &menu->GetRace()->GetMap()->AddMapObj(record); - _spaceMapObj->GetGameObj().GetGrActor().SetVisible(false); + _spaceMapObj->GetGameObj().GetGrActor().SetVisible(false); - graph::PlaneNode* spaceSprite = &((graph::PlaneNode&)_spaceMapObj->GetGameObj().GetGrActor().GetNodes().front()); + graph::PlaneNode* spaceSprite = &((graph::PlaneNode&)_spaceMapObj->GetGameObj().GetGrActor().GetNodes().front()); glm::vec2 imageSize = static_cast(spaceSprite->material.Get()->samplers.front()).GetSize(); float aspect = imageSize.x/imageSize.y; @@ -362,17 +362,17 @@ void SpaceshipFrame::OnShow(bool value) menu()->GetEnv()->StartScene(); menu()->GetEnv()->SetLampPos(D3DXVECTOR3(22.169474f, -5.9075522f, 35.802311f), 0); - menu()->GetEnv()->SetLampRot(D3DXQUATERNION(-0.47304764f, 0.077942163f, 0.86590993f, 0.14267041f), 0); + menu()->GetEnv()->SetLampRot(glm::quat(0.14267041f, -0.47304764f, 0.077942163f, 0.86590993f), 0); menu()->GetEnv()->SetLampColor(clrWhite, 0); menu()->GetEnv()->SwitchOnLamp(0, true); menu()->GetEnv()->SetLampPos(D3DXVECTOR3(-20.881384f, -21.184746f, 26.121809f), 1); - menu()->GetEnv()->SetLampRot(D3DXQUATERNION(-0.16464995f, 0.34524971f, 0.39772648f, 0.83397770f), 1); + menu()->GetEnv()->SetLampRot(glm::quat(0.83397770f, -0.16464995f, 0.34524971f, 0.39772648f), 1); menu()->GetEnv()->SetLampColor(clrRed * 0.8f, 1); menu()->GetEnv()->SwitchOnLamp(1, false); menu()->GetEnv()->SetLampPos(D3DXVECTOR3(52.307316f, 24.327570f, 32.772705f), 2); - menu()->GetEnv()->SetLampRot(D3DXQUATERNION(0.21948183f, 0.18329506f, -0.73549527f, 0.61423278f), 2); + menu()->GetEnv()->SetLampRot(glm::quat(0.61423278f, 0.21948183f, 0.18329506f, -0.73549527f), 2); menu()->GetEnv()->SetLampColor(D3DXCOLOR(0xff88fefe), 2); menu()->GetEnv()->SwitchOnLamp(2, true); @@ -381,7 +381,7 @@ void SpaceshipFrame::OnShow(bool value) camera->StopFly(); cameraInst->SetPos(D3DXVECTOR3(-43.756214f, -11.786510f, 21.129881f)); - cameraInst->SetRot(D3DXQUATERNION(-0.028391786f, 0.21455817f, 0.12807286f, 0.96786171f)); + cameraInst->SetRot(glm::quat(0.96786171f, -0.028391786f, 0.21455817f, 0.12807286f)); camera->ChangeStyle(CameraManager::csAutoObserver); camera->SetTarget(D3DXVECTOR4(0, 0, 0, 50.0f)); @@ -1095,7 +1095,7 @@ WorkshopFrame::WorkshopFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent float size = std::min(slot.plane->GetSize().x, slot.plane->GetSize().y); slot.viewport->SetSize(size, size); - D3DXQUATERNION quat; + glm::quat quat; D3DXQuaternionRotationAxis(&quat, &ZVector, D3DX_PI/2.0f); slot.viewport->SetRot3dSpeed(quat); @@ -1167,7 +1167,7 @@ gui::ViewPort3d* WorkshopFrame::AddGood(Slot* slot, int index, int count) gui::Mesh3d* mesh3d = static_cast(viewPort->GetBox()->GetChildren().front()); mesh3d->GetOrCreateMaterial()->GetSampler().SetFiltering(graph::BaseSampler::sfAnisotropic); - D3DXQUATERNION quat; + glm::quat quat; D3DXQuaternionRotationAxis(&quat, &ZVector, D3DX_PI/2.0f); viewPort->SetRot3dSpeed(quat); D3DXQuaternionRotationAxis(&quat, &ZVector, 2.0f * D3DX_PI * index / count); @@ -2099,7 +2099,7 @@ GamersFrame::GamersFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent): M _space->SetAnchor(gui::Widget::waCenter); _viewport = menu->CreateViewPort3d(root(), NULL, "", gui::ViewPort3d::msAnim, false); - D3DXQUATERNION quat; + glm::quat quat; D3DXQuaternionRotationAxis(&quat, &ZVector, D3DX_PI/24.0f); _viewport->SetRot3dSpeed(quat); D3DXQuaternionRotationAxis(&quat, &XVector, D3DX_PI/2.0f); @@ -2373,7 +2373,7 @@ AngarFrame::AngarFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent): Men _planetBoss = menu->CreatePlane(_planetInfo, this, "", true, IdentityVec2, gui::Material::bmTransparency); _planetBossCar = menu->CreateViewPort3d(_planetInfo, NULL, "", gui::ViewPort3d::msAnim); - D3DXQUATERNION quat; + glm::quat quat; D3DXQuaternionRotationAxis(&quat, &ZVector, D3DX_PI/2.0f); _planetBossCar->SetRot3dSpeed(quat); @@ -2416,7 +2416,7 @@ AngarFrame::PlanetBox& AngarFrame::AddPlanet(Planet* planet, int index) box = &_planets.back(); box->viewport = menu()->CreateMesh3dBox(_planetGrid, this, planet->GetMesh(), planet->GetTexture(), gui::ViewPort3d::msStatic, Menu::ssButton5); - D3DXQUATERNION quat; + glm::quat quat; D3DXQuaternionRotationAxis(&quat, &ZVector, D3DX_PI/24.0f); box->viewport->SetRot3dSpeed(quat); D3DXQuaternionRotationAxis(&quat, &XVector, D3DX_PI/2.0f); @@ -3191,7 +3191,7 @@ RaceMainFrame::RaceMainFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent _speedBarValue->SetPos(glm::vec2(_speedBar->GetSize().x/2 - 15.0f, 0.0f)); _viewportCar = menu->CreateViewPort3d(_topPanel, NULL, "", gui::ViewPort3d::msAnim); - D3DXQUATERNION quat; + glm::quat quat; D3DXQuaternionRotationAxis(&quat, &ZVector, D3DX_PI/2.0f); _viewportCar->SetRot3dSpeed(quat); @@ -3220,7 +3220,7 @@ RaceMainFrame::RaceMainFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent _slots[i] = menu->CreateMesh3dBox(_topPanel, NULL, NULL, NULL, gui::ViewPort3d::msAnim); _slots[i]->SetSize(glm::vec2(50.0f, 50.0f)); - D3DXQUATERNION quat; + glm::quat quat; D3DXQuaternionRotationAxis(&quat, &ZVector, D3DX_PI/2.0f); _slots[i]->SetRot3dSpeed(quat); @@ -3288,7 +3288,7 @@ RaceMainFrame::PlayerBox* RaceMainFrame::AddPlayer(NetPlayer* netPlayer, unsigne newBox.readyState = menu()->CreatePlane(newBox.bgRoot, NULL, "", false, IdentityVec2, gui::Material::bmTransparency); newBox.viewportCar = menu()->CreateViewPort3d(newBox.bgRoot, NULL, "", gui::ViewPort3d::msAnim); - D3DXQUATERNION quat; + glm::quat quat; D3DXQuaternionRotationAxis(&quat, &ZVector, D3DX_PI/2.0f); newBox.viewportCar->SetRot3dSpeed(quat); @@ -3877,7 +3877,7 @@ void RaceMenu::CreateCar(gui::ViewPort3d* viewport, Garage::Car* car, const D3DX continue; D3DXVECTOR3 pos = placeSlot.pos + placeItem->offset; - D3DXQUATERNION rot = placeItem ? placeItem->rot : NullQuaternion; + glm::quat rot = placeItem ? placeItem->rot : NullQuaternion; gui::Mesh3d* carMesh = _menu->CreateMesh3d(viewport, slot->GetItem().GetMesh(), slot->GetItem().GetTexture()); carMesh->GetMaterial()->GetSampler().SetFiltering(graph::BaseSampler::sfAnisotropic); diff --git a/src/Rock3dGame/source/game/Weapon.cpp b/src/Rock3dGame/source/game/Weapon.cpp index d09ab4f8..5d00d2de 100644 --- a/src/Rock3dGame/source/game/Weapon.cpp +++ b/src/Rock3dGame/source/game/Weapon.cpp @@ -38,7 +38,7 @@ void Proj::LocateProj(GameObject* weapon, bool pos, bool rot, const D3DXVECTOR3* if (rot) { - D3DXQUATERNION rot = _desc.rot; + glm::quat rot = _desc.rot; if (speed && D3DXVec3Length(speed) > 1.0f) { @@ -790,7 +790,7 @@ void Proj::TorpedaUpdate(float deltaTime) else dir = this->GetGrActor().GetDir(); - D3DXQUATERNION rot, rot1; + glm::quat rot, rot1; QuatShortestArc(XVector, dir, rot1); if (_desc.angleSpeed > 0) D3DXQuaternionSlerp(&rot, &this->GetRot(), &rot1, deltaTime * _desc.angleSpeed); @@ -958,7 +958,7 @@ void Proj::DrobilkaUpdate(float deltaTime) SetWorldPos(pos); SetWorldRot(_weapon->GetWorldRot()); - D3DXQUATERNION rot; + glm::quat rot; D3DXQuaternionRotationAxis(&rot, &XVector, _desc.angleSpeed * deltaTime); _weapon->SetRot(_weapon->GetRot() * rot); } @@ -993,7 +993,7 @@ bool Proj::SpringPrepare(GameObject* weapon) if (car && car->IsWheelsContact()) { - //static D3DXQUATERNION testRot; + //static glm::quat testRot; //_time1 = 0.0f; //_state1 = false; //_vec1.x = 0.0f; @@ -1033,7 +1033,7 @@ void Proj::SpringUpdate(float deltaTime) _vec1.x = _vec1.x + (dAngle - _vec1.x) * lsl::ClampValue(deltaTime * 6.0f, 0.0f, 1.0f); - D3DXQUATERNION rot; + glm::quat rot; D3DXQuaternionRotationAxis(&rot, &YVector, _vec1.x); car->SetRot(rot * car->GetRot()); } @@ -1053,7 +1053,7 @@ void Proj::SpringUpdate(float deltaTime) float alpha = lsl::ClampValue(_time1/1.0f, 0.0f, 1.0f); angle = -D3DX_PI/6 + (D3DX_PI/6 - (-D3DX_PI/6)) * alpha; - D3DXQUATERNION rot; + glm::quat rot; D3DXQuaternionRotationAxis(&rot, &YVector, angle); car->SetRot(rot * testRot); @@ -1224,7 +1224,7 @@ void Proj::ResonanseUpdate(float deltaTime) { RocketUpdate(deltaTime); - D3DXQUATERNION dRot; + glm::quat dRot; D3DXQuaternionRotationAxis(&dRot, &XVector, _desc.angleSpeed * deltaTime); SetRot(dRot * GetRot()); @@ -1635,7 +1635,7 @@ void AutoProj::InitProj() _prepare = true; D3DXVECTOR3 pos = GetPos(); - D3DXQUATERNION rot = GetRot(); + glm::quat rot = GetRot(); Proj::ShotContext ctx; ctx.logic = GetLogic(); diff --git a/src/Rock3dGame/source/net/NetPlayer.cpp b/src/Rock3dGame/source/net/NetPlayer.cpp index 15cc6d37..d1a292ff 100644 --- a/src/Rock3dGame/source/net/NetPlayer.cpp +++ b/src/Rock3dGame/source/net/NetPlayer.cpp @@ -524,7 +524,7 @@ void NetPlayer::ResponseStream(const net::NetMessage& msg, net::BitStream& strea return; D3DXVECTOR3 pos = car->GetPxActor().GetPos(); - D3DXQUATERNION rot = car->GetPxActor().GetRot(); + glm::quat rot = car->GetPxActor().GetRot(); D3DXVECTOR3 linVel = car->GetNxActor()->getLinearMomentum().get(); D3DXVECTOR3 angVel = car->GetNxActor()->getAngularMomentum().get(); BYTE moveState = car->GetMoveCar(); @@ -581,7 +581,7 @@ void NetPlayer::ResponseStream(const net::NetMessage& msg, net::BitStream& strea car->SetPosSync(dPos); }*/ - D3DXQUATERNION dRot; + glm::quat dRot; QuatRotation(dRot, car->GetGrActor().GetRot(), rot); D3DXVECTOR3 dRotAxis; float dRotAngle; From 0e09b6583c4081882deca7be77f43a50f4b976c0 Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Mon, 21 Jun 2021 10:00:45 +0300 Subject: [PATCH 24/55] math: fix build Rock3dGame with glm::quat --- src/Rock3dGame/source/edit/SceneControl.cpp | 28 +- src/Rock3dGame/source/game/CameraManager.cpp | 53 ++-- src/Rock3dGame/source/game/DataBase.cpp | 288 +++++++++---------- src/Rock3dGame/source/game/Environment.cpp | 6 +- src/Rock3dGame/source/game/GameBase.cpp | 6 +- src/Rock3dGame/source/game/GameCar.cpp | 15 +- src/Rock3dGame/source/game/GameObject.cpp | 34 ++- src/Rock3dGame/source/game/HudMenu.cpp | 10 +- src/Rock3dGame/source/game/Menu.cpp | 77 +++-- src/Rock3dGame/source/game/Player.cpp | 2 +- src/Rock3dGame/source/game/Race.cpp | 118 ++++---- src/Rock3dGame/source/game/RaceMenu2.cpp | 38 +-- src/Rock3dGame/source/game/Weapon.cpp | 80 +++--- src/Rock3dGame/source/net/NetPlayer.cpp | 8 +- src/Rock3dGame/source/snd/Audio.cpp | 3 +- 15 files changed, 366 insertions(+), 400 deletions(-) diff --git a/src/Rock3dGame/source/edit/SceneControl.cpp b/src/Rock3dGame/source/edit/SceneControl.cpp index 59e47655..fc0e382a 100644 --- a/src/Rock3dGame/source/edit/SceneControl.cpp +++ b/src/Rock3dGame/source/edit/SceneControl.cpp @@ -131,7 +131,7 @@ bool SceneControl::Control::OnMouseMoveEvent(const game::MouseMove& mMove) D3DXVECTOR3 pos = _owner->ComputePos(selNode.Pnt(), mMove.scrRayPos, mMove.scrRayVec, dmView, _clDragOff); selNode->OnDrag(pos, mMove.scrRayPos, mMove.scrRayVec); } - } + } break; case smMove: @@ -159,7 +159,7 @@ bool SceneControl::Control::OnMouseMoveEvent(const game::MouseMove& mMove) return true; } - return false; + return false; } case smRotate: @@ -174,7 +174,7 @@ bool SceneControl::Control::OnMouseMoveEvent(const game::MouseMove& mMove) _shiftAction = true; _clRotating = clRotating; - _clStartRot = clStartRot; + _clStartRot = clStartRot; } // @@ -184,10 +184,8 @@ bool SceneControl::Control::OnMouseMoveEvent(const game::MouseMove& mMove) float angleY = -offCoord.y / 400.0f * 2 * D3DX_PI; angleY = ceil(angleY / (D3DX_PI/12.0f)) * (D3DX_PI/12.0f); - glm::quat rotZ; - D3DXQuaternionRotationAxis(&rotZ, &ZVector, angleZ); - glm::quat rotY; - D3DXQuaternionRotationAxis(&rotY, &_owner->_edit->GetWorld()->GetCamera()->GetRight(), angleY); + glm::quat rotZ = glm::angleAxis(angleZ, Vec3DxToGlm(ZVector)); + glm::quat rotY = glm::angleAxis(angleY, Vec3DxToGlm(_owner->_edit->GetWorld()->GetCamera()->GetRight())); glm::quat rot = abs(angleZ) > abs(angleY) ? rotZ : rotY; selNode->SetRot(_clStartRot * rot); @@ -207,13 +205,13 @@ bool SceneControl::Control::OnMouseMoveEvent(const game::MouseMove& mMove) _shiftAction = true; _clScDirMove = clScDirMove; - _clStScale = clStScale; + _clStScale = clStScale; } glm::vec2 fS(offCoord.x, -offCoord.y); fS /= 100.0f; switch (_clScDirMove) - { + { case graph::ScaleCoordSys::dmXYZ: selNode->SetScale(_clStScale + D3DXVECTOR3(fS.y, fS.y, fS.y)); break; @@ -265,7 +263,7 @@ bool SceneControl::ComputeAxeLink(const AABB& aabb, const D3DXMATRIX& aabbToWorl game::MapObj* mapObj = iter->second; graph::BaseSceneNode* testSc = &(mapObj->GetGameObj().GetGrActor()); if (!ignore->Compare(IMapObjRef(new MapObj(mapObj), this))) - { + { AABB test = testSc->GetLocalAABB(true); float dist; @@ -274,7 +272,7 @@ bool SceneControl::ComputeAxeLink(const AABB& aabb, const D3DXMATRIX& aabbToWorl { res = true; outDistOff = dist; - } + } } } @@ -457,7 +455,7 @@ D3DXVECTOR3 SceneControl::ComputePoint(const D3DXVECTOR3& curPos, const D3DXVECT { newPos = NullVector; - D3DXPlaneFromPointNormal(&plane, &pos, &XVector); + D3DXPlaneFromPointNormal(&plane, &pos, &XVector); if (dirMove == dmZ && abs(D3DXVec3Dot(&XVector, &rayVec)) < 0.05f || !RayCastIntersectPlane(rayStart, rayVec, plane, newPos)) newPos = NullVector; } @@ -497,10 +495,10 @@ void SceneControl::SelectNode(const INodeRef& value) { _selNode->Select(false); } - _selNode = value; + _selNode = value; if (_selNode) { - _selNode->Select(true); + _selNode->Select(true); } ApplySelMode(); @@ -520,7 +518,7 @@ void SceneControl::SetSelMode(SelMode value) _control->ResetState(); _selMode = value; - ApplySelMode(); + ApplySelMode(); } } diff --git a/src/Rock3dGame/source/game/CameraManager.cpp b/src/Rock3dGame/source/game/CameraManager.cpp index 753026bc..0e63f923 100644 --- a/src/Rock3dGame/source/game/CameraManager.cpp +++ b/src/Rock3dGame/source/game/CameraManager.cpp @@ -83,9 +83,8 @@ bool CameraManager::Control::OnMouseMoveEvent(const MouseMove& mMove) if (mMove.click.key == lsl::mkRight && mMove.click.state == lsl::ksDown) { - glm::quat quatRight, quatZ; - D3DXQuaternionRotationAxis(&quatZ, &ZVector, 0.005f * (-mMove.dtCoord.x)); - D3DXQuaternionRotationAxis(&quatRight, &right, 0.005f * mMove.dtCoord.y); + glm::quat quatZ = glm::angleAxis(0.005f * (-mMove.dtCoord.x), Vec3DxToGlm(ZVector)); + glm::quat quatRight = glm::angleAxis(0.005f * mMove.dtCoord.y, Vec3DxToGlm(right)); rot = rot * quatRight * quatZ; camera->SetRot(rot); @@ -151,8 +150,7 @@ void CameraManager::Control::OnInputFrame(float deltaTime) D3DXVECTOR3 pos; D3DXVec3Lerp(&pos, &_manager->_flySPos, &_manager->_flyPos, alpha); - glm::quat rot; - D3DXQuaternionSlerp(&rot, &_manager->_flySRot, &_manager->_flyRot, alpha); + glm::quat rot = glm::mix(_manager->_flySRot, _manager->_flyRot, alpha); camera->SetPos(pos); camera->SetRot(rot); @@ -223,9 +221,8 @@ void CameraManager::Control::OnInputFrame(float deltaTime) } #endif*/ - glm::quat isoRotY, isoRotZ; - D3DXQuaternionRotationAxis(&isoRotY, &YVector, cIsoAngY); - D3DXQuaternionRotationAxis(&isoRotZ, &ZVector, cIsoAngZ); + glm::quat isoRotY = glm::angleAxis(cIsoAngY, Vec3DxToGlm(YVector)); + glm::quat isoRotZ = glm::angleAxis(cIsoAngZ, Vec3DxToGlm(ZVector)); // glm::quat cIsoRot = isoRotY * isoRotZ; @@ -235,7 +232,7 @@ void CameraManager::Control::OnInputFrame(float deltaTime) const float maxAngle = D3DX_PI / 6; const D3DXVECTOR3 cCamTargetOff(-4.6f, 0.0f, 2.4f); - ControlManager* control = _manager->_world->GetControl(); + ControlManager* control = _manager->_world->GetControl(); D3DXVECTOR3 pos = camera->GetPos(); glm::quat rot = camera->GetRot(); @@ -343,15 +340,13 @@ void CameraManager::Control::OnInputFrame(float deltaTime) D3DXVec3Normalize(&zVec, &zVec); D3DXMATRIX velMat; - glm::quat velRot; MatrixRotationFromAxis(xVec, yVec, zVec, velMat); - D3DXQuaternionRotationMatrix(&velRot, &velMat); + glm::quat velRot = glm::quat_cast(Matrix4DxToGlm(velMat)); // - glm::quat camQuat; glm::quat camQuat1 = rot; glm::quat camQuat2 = velRot; - D3DXQuaternionSlerp(&camQuat, &camQuat1, &camQuat2, 6.0f * deltaTime); + glm::quat camQuat = glm::mix(camQuat1, camQuat2, 6.0f * deltaTime); /*D3DXVECTOR3 camPos; Vec3Rotate(cCamTargetOff, camQuat, camPos); @@ -378,8 +373,7 @@ void CameraManager::Control::OnInputFrame(float deltaTime) camPos2 += targetPos; D3DXVec3Lerp(&camPos, &camPos1, &camPos2, 8.0f * deltaTime);*/ - glm::quat yRot; - D3DXQuaternionRotationAxis(&yRot, &D3DXVECTOR3(0, 1, 0), D3DX_PI * 12.0f); + glm::quat yRot = glm::angleAxis(D3DX_PI * 12.0f, glm::vec3(0, 1, 0)); camQuat = yRot * camQuat; pos = camPos; @@ -397,8 +391,7 @@ void CameraManager::Control::OnInputFrame(float deltaTime) D3DXVECTOR4 camBorder = D3DXVECTOR4(cIsoBorder, cIsoBorder, cIsoBorder/camera->GetAspect(), cIsoBorder/camera->GetAspect()); //Обратный поворот - glm::quat cIsoInvRot; - D3DXQuaternionInverse(&cIsoInvRot, &cIsoRot); + glm::quat cIsoInvRot = glm::inverse(cIsoRot); //Направление камеры в мировом пространстве D3DXVECTOR3 isoDir; @@ -840,8 +833,7 @@ void CameraManager::GetObserverCoord(const D3DXVECTOR3& targetPos, float targetD dAngZ = lsl::ClampValue(dMPos.x * D3DX_PI * 0.001f, -D3DX_PI/2, D3DX_PI/2); } - glm::quat dRotZ; - D3DXQuaternionRotationAxis(&dRotZ, &ZVector, dAngZ); + glm::quat dRotZ = glm::angleAxis(dAngZ, Vec3DxToGlm(ZVector)); rot = rot * dRotZ; if (_clampAngle.x != 0 || _clampAngle.y != 0) @@ -869,7 +861,7 @@ void CameraManager::GetObserverCoord(const D3DXVECTOR3& targetPos, float targetD if (angClamp) { - D3DXQuaternionRotationAxis(&dRotZ, &norm, ang); + dRotZ = glm::angleAxis(ang, Vec3DxToGlm(norm)); QuatRotateVec3(yAxis, YVector, dRotZ); D3DXVec3Normalize(&yAxis, &yAxis); @@ -878,8 +870,7 @@ void CameraManager::GetObserverCoord(const D3DXVECTOR3& targetPos, float targetD D3DXVec3Normalize(&zAxis, &zAxis); ang = acos(D3DXVec3Dot(&ZVector, &zAxis)); - glm::quat dRotY; - D3DXQuaternionRotationAxis(&dRotY, &yAxis, ang); + glm::quat dRotY = glm::angleAxis(ang, Vec3DxToGlm(yAxis)); QuatRotateVec3(zAxis, ZVector, dRotY); D3DXVECTOR3 xAxis; @@ -888,14 +879,18 @@ void CameraManager::GetObserverCoord(const D3DXVECTOR3& targetPos, float targetD D3DXMATRIX rotMat; MatrixRotationFromAxis(xAxis, yAxis, zAxis, rotMat); - D3DXQuaternionRotationMatrix(&rot, &rotMat); + rot = glm::quat_cast(Matrix4DxToGlm(rotMat)); if (dir != NULL) { if (norm.z > 0) + { *dir = -1.0f; + } else + { *dir = 1.0f; + } } } } @@ -916,7 +911,7 @@ void CameraManager::GetObserverCoord(const D3DXVECTOR3& targetPos, float targetD angLow = _clampAngle.z; angUp = _clampAngle.w; - D3DXQuaternionRotationAxis(&dRotY, &yAxis, dAngY); + dRotY = glm::angleAxis(dAngY, Vec3DxToGlm(yAxis)); rot = rot * dRotY; } @@ -933,7 +928,7 @@ void CameraManager::GetObserverCoord(const D3DXVECTOR3& targetPos, float targetD if (D3DXVec3Dot(&norm, &xAxis) < 0) { angClamp = true; - ang = dMPos.y > 0 ? angUp : angLow; + ang = dMPos.y > 0 ? angUp : angLow; } else { @@ -944,7 +939,7 @@ void CameraManager::GetObserverCoord(const D3DXVECTOR3& targetPos, float targetD if (angClamp) { ang = ClampValue(ang, angLow, angUp); - D3DXQuaternionRotationAxis(&dRotY, &yAxis, -ang); + dRotY = glm::angleAxis(-ang, Vec3DxToGlm(yAxis)); QuatRotateVec3(xAxis, -ZVector, dRotY); D3DXVec3Normalize(&xAxis, &xAxis); D3DXVECTOR3 zAxis; @@ -952,8 +947,8 @@ void CameraManager::GetObserverCoord(const D3DXVECTOR3& targetPos, float targetD D3DXVec3Normalize(&zAxis, &zAxis); D3DXMATRIX rotMat; MatrixRotationFromAxis(xAxis, yAxis, zAxis, rotMat); - D3DXQuaternionRotationMatrix(&rot, &rotMat); - } + rot = glm::quat_cast(Matrix4DxToGlm(rotMat)); + } } if (pos != NULL) @@ -965,7 +960,7 @@ void CameraManager::GetObserverCoord(const D3DXVECTOR3& targetPos, float targetD if (camRot != NULL) { - D3DXQuaternionSlerp(camRot, camRot, &rot, 6.0f * deltaTime); + camRot = &glm::mix(*camRot, rot, 6.0f * deltaTime); } if (camPos != NULL && camRot != NULL) diff --git a/src/Rock3dGame/source/game/DataBase.cpp b/src/Rock3dGame/source/game/DataBase.cpp index c85b8780..f53e77dc 100644 --- a/src/Rock3dGame/source/game/DataBase.cpp +++ b/src/Rock3dGame/source/game/DataBase.cpp @@ -13,11 +13,11 @@ namespace game DataBase::DataBase(World* world, const std::string& name): _world(world), _initMapObjLib(false), _rootNode(0) { SetName(name); - SetOwner(world); + SetOwner(world); } DataBase::~DataBase() -{ +{ } void DataBase::InitMapObjLib() @@ -44,7 +44,7 @@ void DataBase::FreeMapObjLib() for (int i = 0; i < MapObjLib::cCategoryEnd; ++i) delete _mapObjLib[i]; - } + } } MapObj* DataBase::NewMapObj() @@ -375,7 +375,7 @@ CarWheel* DataBase::AddWheel(unsigned index, GameCar& car, const std::string& me wheel->SetLead(lead); wheel->SetSteer(steer); wheel->SetPos(pos); - //wheel->invertWheel = pos.y < 0; + //wheel->invertWheel = pos.y < 0; float meshRadius = 0.0f; if (!meshName.empty()) @@ -383,7 +383,7 @@ CarWheel* DataBase::AddWheel(unsigned index, GameCar& car, const std::string& me graph::IVBMeshNode* meshNode = AddMeshNode(&wheel->GetGrActor(), meshName); graph::LibMaterial* meshMat = AddLibMat(meshNode, !carDesc.wheelMat.empty() ? carDesc.wheelMat : matName); if (carDesc.wheelOffsetModel.size() > 0) - wheel->SetOffset(index < carDesc.wheelOffsetModel.size() ? carDesc.wheelOffsetModel[index] : carDesc.wheelOffsetModel[carDesc.wheelOffsetModel.size() - 1]); + wheel->SetOffset(index < carDesc.wheelOffsetModel.size() ? carDesc.wheelOffsetModel[index] : carDesc.wheelOffsetModel[carDesc.wheelOffsetModel.size() - 1]); if (pos.y < 0) { @@ -591,9 +591,9 @@ void DataBase::LoadCar(const std::string& name, const std::string& mesh, const s gameObj->SetKSteerControl(0.12f); gameObj->SetSteerSpeed(carDesc.steerSpeed); gameObj->SetSteerRot(carDesc.steerRot); - gameObj->SetFlyYTourque(carDesc.flyYTorque); - gameObj->SetClampXTourque(carDesc.clampXTorque); - gameObj->SetClampYTourque(carDesc.clampYTorque); + gameObj->SetFlyYTourque(carDesc.flyYTorque); + gameObj->SetClampXTourque(carDesc.clampXTorque); + gameObj->SetClampYTourque(carDesc.clampYTorque); gameObj->SetAngDamping(carDesc.angDamping); gameObj->SetGravEngine(carDesc.gravEngine); gameObj->SetClutchImmunity(carDesc.clutchImmunity); @@ -611,7 +611,7 @@ void DataBase::LoadCar(const std::string& name, const std::string& mesh, const s } { DeathEffect& deathEffect1 = gameObj->GetBehaviors().Add(); - deathEffect1.SetEffect(GetRecord(MapObjLib::ctEffects, "death2")); + deathEffect1.SetEffect(GetRecord(MapObjLib::ctEffects, "death2")); deathEffect1.SetIgnoreRot(true); } if (!carDesc.bodyDestr.empty()) @@ -706,7 +706,7 @@ void DataBase::LoadCar(const std::string& name, const std::string& mesh, const s for (int i = 0; i < 2; ++i) { - graph::IVBMeshNode* meshNode = AddMeshNode(childObj, mesh, i + 1); + graph::IVBMeshNode* meshNode = AddMeshNode(childObj, mesh, i + 1); meshNode->tag(i + 1); graph::LibMaterial* libMat = AddLibMat(meshNode, "Car\\podushka"); childObj->GetGameObj().GetBehaviors().Add().targetTag(i + 1); @@ -758,7 +758,7 @@ void DataBase::LoadCrushObj(const std::string& name, const std::string& mesh, co shape->SetSkinWidth(0.1f); AddPxBody(&part, mass, 0); - } + } } SaveMapObj(mapObj, MapObjLib::ctDecoration, name); } @@ -813,7 +813,7 @@ void DataBase::LoadSndSources() } SaveMapObj(mapObj, MapObjLib::ctEffects, "Snd\\klicka5"); - } + } //shieldOn { @@ -826,7 +826,7 @@ void DataBase::LoadSndSources() } SaveMapObj(mapObj, MapObjLib::ctEffects, "Snd\\shieldOn"); - } + } } void DataBase::LoadEffects() @@ -844,9 +844,8 @@ void DataBase::LoadEffects() graph::FxFlowEmitter::FlowDesc descFlow; descFlow.speedPos = Vec3Range(D3DXVECTOR3(-1.5f, -1.5f, 1.0f), D3DXVECTOR3(1.5f, 1.5f, 5.0f), Vec3Range::vdVolume) * 3.0f; - glm::quat spRot1, spRot2; - D3DXQuaternionRotationAxis(&spRot1, &(-IdentityVector), D3DX_PI); - D3DXQuaternionRotationAxis(&spRot2, &IdentityVector, 2.0f * D3DX_PI); + glm::quat spRot1 = glm::angleAxis(D3DX_PI, Vec3DxToGlm(-IdentityVector)); + glm::quat spRot2 = glm::angleAxis(2.0f * D3DX_PI, Vec3DxToGlm(IdentityVector)); descFlow.speedRot = QuatRange(spRot1, spRot2, QuatRange::vdVolume, Point2U(100, 100)); descFlow.gravitation = D3DXVECTOR3(0, 0, -9.80f); @@ -862,13 +861,12 @@ void DataBase::LoadEffects() desc.density = 1.0f; desc.life = 0; desc.startPos = Vec3Range(D3DXVECTOR3(-0.1f, -0.1f, -0.1f), D3DXVECTOR3(0.1f, 0.1f, 0.1f), Vec3Range::vdVolume, Point3U(100, 100, 100)); - desc.startScale = Vec3Range(IdentityVector * 0.9f, IdentityVector * 1.1f); + desc.startScale = Vec3Range(IdentityVector * 0.9f, IdentityVector * 1.1f); graph::FxFlowEmitter::FlowDesc descFlow; descFlow.speedPos = Vec3Range(D3DXVECTOR3(-1.5f, -1.5f, 4.0f), D3DXVECTOR3(1.5f, 1.5f, 5.0f), Vec3Range::vdVolume) * 3.0f; - glm::quat spRot1, spRot2; - D3DXQuaternionRotationAxis(&spRot1, &(-IdentityVector), D3DX_PI); - D3DXQuaternionRotationAxis(&spRot2, &IdentityVector, 2.0f * D3DX_PI); + glm::quat spRot1 = glm::angleAxis(D3DX_PI, Vec3DxToGlm(-IdentityVector)); + glm::quat spRot2 = glm::angleAxis(2.0f * D3DX_PI, Vec3DxToGlm(IdentityVector)); descFlow.speedRot = QuatRange(spRot1, spRot2, QuatRange::vdVolume, Point2U(100, 100)); descFlow.gravitation = D3DXVECTOR3(0, 0, -9.80f); @@ -1000,7 +998,7 @@ void DataBase::LoadEffects() graph::FxFlowEmitter::FlowDesc descFlow; descFlow.speedPos = Vec3Range(D3DXVECTOR3(-10.0f, -10.0f, -10.0f), D3DXVECTOR3(10.0f, 10.0f, 10.0f), Vec3Range::vdVolume); //descFlow.speedScale = Vec3Range(D3DXVECTOR3(13.5f, 0.0f, 0.0f), D3DXVECTOR3(16.5f, 0.0f, 0.0f)); - descFlow.autoRot = true; + descFlow.autoRot = true; LoadFxFlow("blink", "Effect\\blink", _fxSpriteManager, desc, descFlow, true, 0.5f); } @@ -1016,10 +1014,8 @@ void DataBase::LoadEffects() desc.startPos = Vec3Range(D3DXVECTOR3(-0.1f, -0.1f, -0.1f), D3DXVECTOR3(0.1f, 0.1f, 0.1f), Vec3Range::vdVolume); desc.startScale = Vec3Range(D3DXVECTOR3(0.8f, 0.8f, 0.8f), D3DXVECTOR3(1.1f, 1.1f, 1.1f)); - glm::quat rot1; - D3DXQuaternionRotationAxis(&rot1, &D3DXVECTOR3(0.0f, 0.0f, 1.0f), 0.0f); - glm::quat rot2; - D3DXQuaternionRotationAxis(&rot2, &D3DXVECTOR3(0.0f, 0.0f, 1.0f), 2*D3DX_PI); + glm::quat rot1 = glm::angleAxis(0.0f, glm::vec3(0.0f, 0.0f, 1.0f)); + glm::quat rot2 = glm::angleAxis(2 * D3DX_PI, glm::vec3(0.0f, 0.0f, 1.0f)); desc.startRot = QuatRange(rot1, rot2, QuatRange::vdVolume); graph::FxFlowEmitter::FlowDesc descFlow; @@ -1195,11 +1191,11 @@ void DataBase::LoadEffects() desc.startDuration = 1.0f; desc.startPos = NullVector; desc.startScale = IdentityVector * 1.0f; - desc.density = 2.0f; + desc.density = 2.0f; graph::FxFlowEmitter::FlowDesc descFlow; descFlow.speedScale = IdentityVector * (-0.25f); - descFlow.speedPos = XVector * 3.0f; + descFlow.speedPos = XVector * 3.0f; LoadFxFlow("accelEff", "Effect\\flare3", _fxSpriteManager, desc, descFlow, false, 1.5f); } @@ -1235,7 +1231,7 @@ void DataBase::LoadEffects() //firePatron LoadFxSprite("firePatron", "Effect\\firePatron", NullVector, IdentityVector, NullQuaternion, false, graph::SceneNode::amNone, 0, 0, 0, false, glm::vec2(2.0f, 2.0f)); //lens1 - LoadFxSprite("lens1", "Effect\\lens1", NullVector, IdentityVector, NullQuaternion, false, graph::SceneNode::amNone, 0, 0, 0, false, glm::vec2(3.0f, 0.75f)); + LoadFxSprite("lens1", "Effect\\lens1", NullVector, IdentityVector, NullQuaternion, false, graph::SceneNode::amNone, 0, 0, 0, false, glm::vec2(3.0f, 0.75f)); //death1 LoadFxSprite("death1", "Effect\\gunEff2", NullVector, Vec3Range(NullVector, IdentityVector * 10.0f), NullQuaternion, false, graph::SceneNode::amOnce, 0.25f, 0.0f, 0.25f); //engine1 @@ -1243,7 +1239,7 @@ void DataBase::LoadEffects() //explosionRay LoadFxSprite("explosionRay", "Effect\\ExplosionRay", NullVector, Vec3Range(IdentityVector, IdentityVector * 6.0f), NullQuaternion, false, graph::SceneNode::amOnce, 1.0f, 0.0f, 1.0f, false, glm::vec2(2.0f, 2.0f)); //laserBlue - LoadFxSprite("laserBlue", "Effect\\laser3-blue", NullVector, Vec3Range(IdentityVector, NullVector), NullQuaternion, true, graph::SceneNode::amNone, 0.0f, 0.0f, 0.0f, true, glm::vec2(5.0f, 2.0f)); + LoadFxSprite("laserBlue", "Effect\\laser3-blue", NullVector, Vec3Range(IdentityVector, NullVector), NullQuaternion, true, graph::SceneNode::amNone, 0.0f, 0.0f, 0.0f, true, glm::vec2(5.0f, 2.0f)); //ExplosionRing LoadFxSprite("explosionRing", "Effect\\ExplosionRing", NullVector, Vec3Range(IdentityVector, IdentityVector * 16.0f), NullQuaternion, false, graph::SceneNode::amOnce, 0.5f, 0.0f, 0.0f, false, glm::vec2(1.0f, 1.0f)); //protonRay @@ -1264,8 +1260,7 @@ void DataBase::LoadEffects() LoadFxSprite("frostRay", "Effect\\frostRay", NullVector, Vec3Range(IdentityVector, NullVector), NullQuaternion, false, graph::SceneNode::amTwoSide, 1.0f, 0, 0.0f, true, glm::vec2(1.0f, 0.5f), gtEffect, true); //frostShot { - glm::quat lineRot1; - D3DXQuaternionRotationAxis(&lineRot1, &ZVector, D3DX_PI); + glm::quat lineRot1 = glm::angleAxis(D3DX_PI, Vec3DxToGlm(ZVector)); LoadFxSprite("frostShot", "Effect\\frostLine", NullVector, Vec3Range(IdentityVector, NullVector), QuatRange(NullQuaternion, lineRot1), false, graph::SceneNode::amTwoSide, 1.0f, 0, 1.0f, false, glm::vec2(4.0f, 4.0f)); } @@ -1282,15 +1277,14 @@ void DataBase::LoadEffects() desc.startTime = FloatRange(0.1f, 0.2f); desc.density = FloatRange(2.0f, 3.0f); desc.startPos = Vec3Range(D3DXVECTOR3(-0.1f, -0.1f, -0.5f), D3DXVECTOR3(0.1f, 0.1f, 0.1f), Vec3Range::vdVolume); - glm::quat spRot1, spRot2; - D3DXQuaternionRotationAxis(&spRot1, &(-ZVector), D3DX_PI); - D3DXQuaternionRotationAxis(&spRot2, &ZVector, 2.0f * D3DX_PI); + glm::quat spRot1 = glm::angleAxis(D3DX_PI, Vec3DxToGlm(-ZVector)); + glm::quat spRot2 = glm::angleAxis(2.0f * D3DX_PI, Vec3DxToGlm(ZVector)); desc.startRot = QuatRange(spRot1, spRot2, QuatRange::vdVolume); graph::FxFlowEmitter::FlowDesc descFlow; descFlow.speedPos = Vec3Range(D3DXVECTOR3(-1, -1, 7), D3DXVECTOR3(1, 1, 7), Vec3Range::vdVolume) * 0.4f; - graph::FxFlowEmitter* emitter = AddFxFlowEmitter(fxSystem, desc, descFlow, true); + graph::FxFlowEmitter* emitter = AddFxFlowEmitter(fxSystem, desc, descFlow, true); NewChildMapObj(mapObj, MapObjLib::ctEffects, "smoke1")->GetGameObj().SetPos(D3DXVECTOR3(0.0f, 0.0f, 0.5f)); SaveMapObj(mapObj, MapObjLib::ctEffects, "fire1"); @@ -1326,7 +1320,7 @@ void DataBase::LoadEffects() graph::FxFlowEmitter* emitter = AddFxFlowEmitter(fxSystem, desc, descFlow, true); - mapObj->GetGameObj().GetBehaviors().Add(); + mapObj->GetGameObj().GetBehaviors().Add(); mapObj->GetGameObj().GetBehaviors().Add(); SaveMapObj(mapObj, MapObjLib::ctEffects, "fire2"); @@ -1356,14 +1350,13 @@ void DataBase::LoadEffects() desc.density = 3; desc.life = 0; desc.startPos = Vec3Range(D3DXVECTOR3(-0.1f, -0.1f, -0.1f), D3DXVECTOR3(0.1f, 0.1f, 0.1f), Vec3Range::vdVolume, Point3U(100, 100, 100)); - desc.startScale = Vec3Range(IdentityVector * 0.9f, IdentityVector * 1.1f); + desc.startScale = Vec3Range(IdentityVector * 0.9f, IdentityVector * 1.1f); graph::FxFlowEmitter::FlowDesc descFlow; descFlow.speedPos = Vec3Range(D3DXVECTOR3(-1.5f, -1.5f, 2.0f), D3DXVECTOR3(1.5f, 1.5f, 5.0f), Vec3Range::vdVolume) * 3.0f; // - glm::quat spRot1, spRot2; - D3DXQuaternionRotationAxis(&spRot1, &(-IdentityVector), D3DX_PI); - D3DXQuaternionRotationAxis(&spRot2, &IdentityVector, 2.0f * D3DX_PI); + glm::quat spRot1 = glm::angleAxis(D3DX_PI, Vec3DxToGlm(-IdentityVector)); + glm::quat spRot2 = glm::angleAxis(2.0f * D3DX_PI, Vec3DxToGlm(IdentityVector)); descFlow.speedRot = QuatRange(spRot1, spRot2, QuatRange::vdVolume, Point2U(100, 100)); // descFlow.gravitation = D3DXVECTOR3(0, 0, -9.80f); @@ -1398,7 +1391,7 @@ void DataBase::LoadEffects() } SaveMapObj(mapObj, MapObjLib::ctEffects, "death2"); - } + } //Death3 { @@ -1447,7 +1440,7 @@ void DataBase::LoadEffects() //Death5 { - game::MapObj* mapObj = NewMapObj(); + game::MapObj* mapObj = NewMapObj(); mapObj->GetGameObj().SetMaxTimeLife(0.7f); AddToGraph(mapObj, gtEffect, true); @@ -1459,7 +1452,7 @@ void DataBase::LoadEffects() //Death6 { - game::MapObj* mapObj = NewMapObj(); + game::MapObj* mapObj = NewMapObj(); mapObj->GetGameObj().SetMaxTimeLife(0.7f); AddToGraph(mapObj, gtEffect, true); @@ -1483,7 +1476,7 @@ void DataBase::LoadEffects() desc.startTime = 1.0f; desc.density = 1.0f; desc.startPos = NullVector; - desc.startType = graph::FxEmitter::sotDist; + desc.startType = graph::FxEmitter::sotDist; graph::FxFlowEmitter::FlowDesc descFlow; descFlow.speedPos = NullVector; @@ -1522,7 +1515,7 @@ void DataBase::LoadEffects() //resonanseBolt { game::MapObj* mapObj = NewMapObj(); - game::GameObject& gameObj = mapObj->GetGameObj(); + game::GameObject& gameObj = mapObj->GetGameObj(); graph::IVBMeshNode* mesh = AddMeshNode(mapObj, "Effect\\sphere.r3d"); AddLibMat(mesh, "Effect\\gravBall"); @@ -1530,7 +1523,7 @@ void DataBase::LoadEffects() AddToGraph(mapObj, gtDefFixPipe, true); { - game::MapObj* eff = NewChildMapObj(mapObj, MapObjLib::ctEffects, "heatTrail"); + game::MapObj* eff = NewChildMapObj(mapObj, MapObjLib::ctEffects, "heatTrail"); } SaveMapObj(mapObj, MapObjLib::ctEffects, "resonanseBolt"); @@ -1554,7 +1547,7 @@ void DataBase::LoadEffects() desc.density = 1.0f; desc.startPos = NullVector; desc.startScale = IdentityVector * 0.6f; - desc.startRot = NullQuaternion; + desc.startRot = NullQuaternion; desc.rangeLife = FloatRange(0.0f, -0.6f); desc.rangePos = Vec3Range(D3DXVECTOR3(1.0f, 0, 0), D3DXVECTOR3(-1.0f, 0, 0)); @@ -1601,7 +1594,7 @@ void DataBase::LoadEffects() //flareLaser1 { graph::FxEmitter::ParticleDesc desc; - desc.maxNum = 3; + desc.maxNum = 3; desc.maxNumAction = graph::FxEmitter::mnaWaitingFree; desc.startType = graph::FxEmitter::sotTime; desc.startTime = 2.0f; @@ -1630,7 +1623,7 @@ void DataBase::LoadEffects() desc.startScale = Vec3Range(IdentityVector * 1.25f, IdentityVector * 2.0f); desc.rangeRot = QuatRange(glm::quat(-1, -1, -1, -1), glm::quat(1, 1, 1, 1), QuatRange::vdVolume); - graph::FxFlowEmitter::FlowDesc descFlow; + graph::FxFlowEmitter::FlowDesc descFlow; LoadFxFlow("flareLaser3", "Effect\\flareLaser3", _fxSpriteManager, desc, descFlow, false); } @@ -1668,14 +1661,14 @@ void DataBase::LoadEffects() graph::FxEmitter::ParticleDesc desc; desc.maxNum = 0; desc.maxNumAction = graph::FxEmitter::mnaWaitingFree; - desc.life = FloatRange(1.0f, 2.0f); + desc.life = FloatRange(1.0f, 2.0f); desc.startTime = FloatRange(0.05f, 0.1f); desc.startDuration = 0.0f; desc.startType = graph::FxEmitter::sotTime; desc.density = FloatRange(20.0f, 30.0f); desc.startPos = Vec3Range(D3DXVECTOR3(-6.0f, -8.0f, 2.0f), D3DXVECTOR3(6.0f, 4.0f, 3.0f), Vec3Range::vdVolume); desc.startScale = D3DXVECTOR3(1.0f, 0.1f, 1.0f); - desc.startRot = NullQuaternion; + desc.startRot = NullQuaternion; graph::FxFlowEmitter::FlowDesc descFlow; descFlow.speedPos = Vec3Range(D3DXVECTOR3(0.0f, 4.0f, -12.0f), D3DXVECTOR3(0.0f, 2.0f, -12.0f), Vec3Range::vdVolume); @@ -1698,14 +1691,14 @@ void DataBase::LoadEffects() graph::FxEmitter::ParticleDesc desc; desc.maxNum = 0; desc.maxNumAction = graph::FxEmitter::mnaWaitingFree; - desc.life = FloatRange(1.0f, 2.0f); + desc.life = FloatRange(1.0f, 2.0f); desc.startTime = FloatRange(0.05f, 0.1f); desc.startDuration = 0.0f; desc.startType = graph::FxEmitter::sotTime; desc.density = FloatRange(20.0f, 25.0f); desc.startPos = Vec3Range(D3DXVECTOR3(40.0f, 1.0f, 17.0f), D3DXVECTOR3(-2.4f, 22.05f, 13.0f), Vec3Range::vdVolume); desc.startScale = Vec3Range(D3DXVECTOR3(3.0f, 0.3f, 1.0f), D3DXVECTOR3(3.5f, 0.25f, 1.0f), Vec3Range::vdVolume); - desc.startRot = NullQuaternion; + desc.startRot = NullQuaternion; graph::FxFlowEmitter::FlowDesc descFlow; descFlow.speedPos = Vec3Range(D3DXVECTOR3(0.0f, 15.0f, -45.0f), D3DXVECTOR3(0.0f, 7.5f, -45.0f), Vec3Range::vdVolume); @@ -1733,8 +1726,7 @@ void DataBase::LoadEffects() desc.startTime = FloatRange(0.7f); desc.density = FloatRange(1.0f, 1.0f); desc.startPos = Vec3Range(D3DXVECTOR3(-0.6f, -0.6f, -0.6f), D3DXVECTOR3(0.6f, 0.6f, 0.6f), Vec3Range::vdVolume); - glm::quat rot; - D3DXQuaternionRotationAxis(&rot, &ZVector, D3DX_PI); + glm::quat rot = glm::angleAxis(D3DX_PI, Vec3DxToGlm(ZVector)); desc.startRot = QuatRange(NullQuaternion, rot, QuatRange::vdLinear); desc.startScale = D3DXVECTOR3(IdentityVector) * 4.0f; @@ -1764,8 +1756,7 @@ void DataBase::LoadEffects() desc.startTime = 0.5f; desc.density = FloatRange(1.0f, 1.0f); desc.startPos = Vec3Range(D3DXVECTOR3(-0.3f, -0.3f, -0.3f), D3DXVECTOR3(0.3f, 0.3f, 0.3f), Vec3Range::vdVolume); - glm::quat rot; - D3DXQuaternionRotationAxis(&rot, &ZVector, D3DX_PI); + glm::quat rot = glm::angleAxis(D3DX_PI, Vec3DxToGlm(ZVector)); desc.startRot = QuatRange(NullQuaternion, rot, QuatRange::vdLinear); desc.startScale = D3DXVECTOR3(IdentityVector) * 1.5f; @@ -1875,9 +1866,8 @@ void DataBase::LoadEffects() desc.startTime = 0; desc.density = 5.0f; desc.startPos = Vec3Range(D3DXVECTOR3(-2.0f, -2.0f, 0.0f), D3DXVECTOR3(2.0f, 2.0f, 0.0f), Vec3Range::vdVolume); - glm::quat rot1, rot2; - D3DXQuaternionRotationAxis(&rot1, &ZVector, -D3DX_PI/3); - D3DXQuaternionRotationAxis(&rot2, &ZVector, D3DX_PI/3); + glm::quat rot1 = glm::angleAxis(-D3DX_PI / 3.0f, Vec3DxToGlm(ZVector)); + glm::quat rot2 = glm::angleAxis(D3DX_PI / 3.0f, Vec3DxToGlm(ZVector)); desc.startRot = QuatRange(rot1, rot2, QuatRange::vdLinear); desc.startScale = D3DXVECTOR3(1.0f, 1.0f, 1.0f); @@ -1892,7 +1882,7 @@ void DataBase::LoadEffects() //mortiraBallDeath { game::MapObj* mapObj = NewMapObj(); - game::AutoProj& gameObj = mapObj->SetGameObj(); + game::AutoProj& gameObj = mapObj->SetGameObj(); game::AutoProj::Desc projDesc; @@ -2016,7 +2006,7 @@ void DataBase::LoadWorld2() LoadDecor("World2\\haus1", "World2\\haus1.r3d", "World2\\haus1"); LoadDecor("World2\\haus1_2", "World2\\haus1_2.r3d", "World2\\haus1"); LoadDecor("World2\\haus3", "World2\\haus3.r3d", "World2\\Haus3"); - LoadDecor("World2\\machineFactory", "World2\\machineFactory.r3d", "World2\\machineFactory"); + LoadDecor("World2\\machineFactory", "World2\\machineFactory.r3d", "World2\\machineFactory"); LoadDecor("World2\\metal1_1", "World2\\metal1_1.r3d", "World2\\metal1"); LoadDecor("World2\\metal1_2", "World2\\metal1_2.r3d", "World2\\metal1"); LoadDecor("World2\\naves1_1", "World2\\naves1_1.r3d", "World2\\naves1", gtDefFixPipe, false, true, false); @@ -2025,10 +2015,10 @@ void DataBase::LoadWorld2() LoadDecor("World2\\poplar1_2", "World2\\poplar1_2.r3d", "World2\\poplar1"); LoadDecor("World2\\pregrada", "World2\\pregrada.r3d", "World2\\pregrada", gtDefFixPipe, false, false, false); LoadDecor("World2\\projector", "World2\\projector.r3d", "World2\\projektor", gtDefFixPipe, false, false, false); - LoadDecor("World2\\pumpjack", "World2\\pumpjack.r3d", "World2\\pumpjack"); + LoadDecor("World2\\pumpjack", "World2\\pumpjack.r3d", "World2\\pumpjack"); LoadDecor("World2\\skelet1_1", "World2\\skelet1_1.r3d", "World2\\skelet1"); LoadDecor("World2\\skelet1_2", "World2\\skelet1_2.r3d", "World2\\skelet1"); - LoadDecor("World2\\skelet1_3", "World2\\skelet1_3.r3d", "World2\\skelet1"); + LoadDecor("World2\\skelet1_3", "World2\\skelet1_3.r3d", "World2\\skelet1"); LoadDecor("World2\\strelka1_1", "World2\\strelka1_1.r3d", "World2\\strelka1", gtDefFixPipe, false, false, false); LoadDecor("World2\\strelka1_2", "World2\\strelka1_2.r3d", "World2\\strelka1", gtDefFixPipe, false, false, false); LoadDecor("World2\\tramplin1", "World2\\tramplin1.r3d", "World2\\tramplin1", gtDef, true, false, false); @@ -2067,12 +2057,12 @@ void DataBase::LoadWorld2() LoadTrack("World2\\track1", "World2\\Track\\track1.r3d", "World2\\Track\\track1", true, true, true, false, "World2\\Track\\pxTrack1.r3d"); LoadTrack("World2\\track2", "World2\\Track\\track2.r3d", "World2\\Track\\track1", true, true, true, false, "World2\\Track\\pxTrack2.r3d"); LoadTrack("World2\\track3", "World2\\Track\\track3.r3d", "World2\\Track\\track1", true, true, true, false, "World2\\Track\\pxTrack3.r3d", false, vec1, NullVec4, vec3); - LoadTrack("World2\\track4", "World2\\Track\\track4.r3d", "World2\\Track\\track1", true, true, true, false, "World2\\Track\\pxTrack4.r3d"); - LoadTrack("World2\\track6", "World2\\Track\\track6.r3d", "World2\\Track\\track1", true, true, true, false, "World2\\Track\\pxTrack6.r3d"); + LoadTrack("World2\\track4", "World2\\Track\\track4.r3d", "World2\\Track\\track1", true, true, true, false, "World2\\Track\\pxTrack4.r3d"); + LoadTrack("World2\\track6", "World2\\Track\\track6.r3d", "World2\\Track\\track1", true, true, true, false, "World2\\Track\\pxTrack6.r3d"); LoadTrack("World2\\tramp1", "World2\\Track\\tramp1.r3d", "World2\\Track\\track1", true, true, true, false, "World2\\Track\\pxTramp1.r3d"); - LoadTrack("World2\\tramp2", "World2\\Track\\tramp2.r3d", "World2\\Track\\track1", true, true, true, false, "World2\\Track\\pxTramp2.r3d", false, vec1, NullVec4, vec3); - LoadTrack("World2\\jumper1", "World2\\Track\\jumper1.r3d", "World2\\Track\\track1", true, true, true, false, "World2\\Track\\pxTramp1.r3d"); - LoadTrack("World2\\jumper2", "World2\\Track\\jumper2.r3d", "World2\\Track\\track1", true, true, true, false, "World2\\Track\\pxTramp2.r3d", false, vec1, NullVec4, vec3); + LoadTrack("World2\\tramp2", "World2\\Track\\tramp2.r3d", "World2\\Track\\track1", true, true, true, false, "World2\\Track\\pxTramp2.r3d", false, vec1, NullVec4, vec3); + LoadTrack("World2\\jumper1", "World2\\Track\\jumper1.r3d", "World2\\Track\\track1", true, true, true, false, "World2\\Track\\pxTramp1.r3d"); + LoadTrack("World2\\jumper2", "World2\\Track\\jumper2.r3d", "World2\\Track\\track1", true, true, true, false, "World2\\Track\\pxTramp2.r3d", false, vec1, NullVec4, vec3); //{ // MapObj* mapObj = NewMapObj(); @@ -2090,7 +2080,7 @@ void DataBase::LoadWorld2() // AddPxMesh(mapObj, "World2\\Track\\pxTrack2.r3d", 1)->SetGroup(px::Scene::cdgShotTransparency); // AddToGraph(mapObj, gtBumb, false); // SaveMapObj(mapObj, MapObjLib::ctTrack, "World2\\track2"); - //} + //} } void DataBase::LoadWorld3() @@ -2139,7 +2129,7 @@ void DataBase::LoadWorld4() LoadDecor("World4\\gora1", "World4\\gora1.r3d", "World4\\gora1"); LoadDecor("World4\\gora2", "World4\\gora2.r3d", "World4\\gora2"); LoadDecor("World4\\kolba", "World4\\kolba.r3d", "World4\\kolba"); - LoadDecor("World4\\lavaplace1", "World4\\lavaplace1.r3d", "World4\\lavaplace"); + LoadDecor("World4\\lavaplace1", "World4\\lavaplace1.r3d", "World4\\lavaplace"); LoadDecor("World4\\lavaplace2", "World4\\lavaplace2.r3d", "World4\\lavaplace"); LoadDecor("World4\\lavaplace3", "World4\\lavaplace3.r3d", "World4\\lavaplace"); LoadDecor("World4\\lavaplace4", "World4\\lavaplace4.r3d", "World4\\lavaplace"); @@ -2154,7 +2144,7 @@ void DataBase::LoadWorld4() D3DXPlaneFromPointNormal(&plane, &D3DXVECTOR3(0, 0, 6.2f), &D3DXVECTOR3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng)); D3DXVECTOR4 vec1 = plane; - D3DXVECTOR4 vec3(0.0f, -0.25f, 0.25f, 0.0f); + D3DXVECTOR4 vec3(0.0f, -0.25f, 0.25f, 0.0f); LoadTrack("World4\\most", "World4\\Track\\most.r3d", "World4\\Track\\track1", true, true, false, false, "World4\\Track\\pxMost.r3d", true); LoadTrack("World4\\most2", "World4\\Track\\most2.r3d", "World4\\Track\\most2", true, true, false, false, "World4\\Track\\pxMost2.r3d", true); @@ -2194,7 +2184,7 @@ void DataBase::LoadWorld5() D3DXVECTOR4 vec3(0.0f, -0.15f, 0.125f, 0.0f); - LoadTrack("World5\\most", "World5\\Track\\most.r3d", "World5\\Track\\most", true, true, false, false, "", true); + LoadTrack("World5\\most", "World5\\Track\\most.r3d", "World5\\Track\\most", true, true, false, false, "", true); LoadTrack("World5\\trackVentil", "World5\\Track\\trackVentil.r3d", "World5\\Track\\track1"); LoadTrack("World5\\track1", "World5\\Track\\track1.r3d", "World5\\Track\\track1", true, true, false, true, "World5\\Track\\PXtrack1.r3d", false, plane1, NullVec4, vec3); LoadTrack("World5\\track2", "World5\\Track\\track2.r3d", "World5\\Track\\track1", true, true, false, true, "World5\\Track\\PXtrack2.r3d", false, plane1); @@ -2213,8 +2203,8 @@ void DataBase::LoadWorld6() LoadDecor("World6\\haus2", "World6\\haus2.r3d", "World6\\haus2"); LoadDecor("World6\\haus3", "World6\\haus3.r3d", "World6\\haus3"); LoadDecor("World6\\haus4", "World6\\haus4.r3d", "World6\\haus4"); - LoadDecor("World6\\naves", "World6\\naves.r3d", "World6\\naves", gtDefFixPipe, false, true, false); - LoadDecor("World6\\nuke", "World6\\nuke.r3d", "World6\\nuke"); + LoadDecor("World6\\naves", "World6\\naves.r3d", "World6\\naves", gtDefFixPipe, false, true, false); + LoadDecor("World6\\nuke", "World6\\nuke.r3d", "World6\\nuke"); LoadDecor("World6\\stone1", "World6\\stone1.r3d", "World6\\stone"); LoadDecor("World6\\stone2", "World6\\stone2.r3d", "World6\\stone"); LoadDecor("World6\\stone3", "World6\\stone3.r3d", "World6\\stone"); @@ -2234,16 +2224,16 @@ void DataBase::LoadWorld6() LoadTrack("World6\\track2", "World6\\Track\\track2.r3d", "World6\\Track\\track1", true, true, false, false, ""); LoadTrack("World6\\track3", "World6\\Track\\track3.r3d", "World6\\Track\\track1", true, true, false, false, ""); LoadTrack("World6\\track4", "World6\\Track\\track4.r3d", "World6\\Track\\track1", true, true, false, false, ""); - LoadTrack("World6\\track5", "World6\\Track\\track5.r3d", "World6\\Track\\track1", true, true, false, false, ""); + LoadTrack("World6\\track5", "World6\\Track\\track5.r3d", "World6\\Track\\track1", true, true, false, false, ""); LoadTrack("World6\\entertunnel", "World6\\Track\\entertunnel.r3d", "World6\\Track\\track1", true, true, false, false, "World6\\Track\\pxEnterTunnel.r3d"); LoadTrack("World6\\tunnel", "World6\\Track\\tunnel.r3d", "World6\\Track\\tonnel", true, true, false, false, "World6\\Track\\pxTunel.r3d"); LoadTrack("World6\\podjem1", "World6\\Track\\podjem1.r3d", "World6\\Track\\track1", false, false, false, false, ""); LoadTrack("World6\\tramp1", "World6\\Track\\tramp1.r3d", "World6\\Track\\tramplin3", false, false, false, false, ""); - LoadTrack("World6\\tramp2", "World6\\Track\\tramp2.r3d", "World6\\Track\\tramplin3", false, false, false, false, ""); + LoadTrack("World6\\tramp2", "World6\\Track\\tramp2.r3d", "World6\\Track\\tramplin3", false, false, false, false, ""); LoadTrack("World6\\jump", "World6\\Track\\jump.r3d", "World6\\Track\\track1", false, false, false, false, ""); LoadTrack("World6\\block1", "World6\\Track\\block1.r3d", "World6\\Track\\track1", false, false, false, false, ""); - LoadTrack("World6\\block2", "World6\\Track\\block2.r3d", "World6\\Track\\track1", false, false, false, false, ""); + LoadTrack("World6\\block2", "World6\\Track\\block2.r3d", "World6\\Track\\track1", false, false, false, false, ""); } void DataBase::LoadMisc() @@ -2257,8 +2247,8 @@ void DataBase::LoadMisc() AddLibMat(&node->material, "Effect\\bullet"); { - DeathEffect& deathEff = mapObj->GetGameObj().GetBehaviors().Add(); - deathEff.SetEffect(GetRecord(MapObjLib::ctEffects, "death5")); + DeathEffect& deathEff = mapObj->GetGameObj().GetBehaviors().Add(); + deathEff.SetEffect(GetRecord(MapObjLib::ctEffects, "death5")); deathEff.SetTargetChild(true); } @@ -2281,7 +2271,7 @@ void DataBase::LoadMisc() { graph::FxParticleSystem* fxSystem = AddFxSystem(child, _fxSpriteManager); - AddLibMat(&fxSystem->material, "Effect\\dust_smoke_06"); + AddLibMat(&fxSystem->material, "Effect\\dust_smoke_06"); graph::FxEmitter::ParticleDesc desc; desc.maxNum = 100; @@ -2289,7 +2279,7 @@ void DataBase::LoadMisc() desc.life = 0.5f; desc.startTime = 0.25f; desc.density = 1.0f; - desc.startScale = IdentityVector * 0.7f; + desc.startScale = IdentityVector * 0.7f; graph::FxFlowEmitter::FlowDesc descFlow; descFlow.speedPos = -XVector * 5.0f; @@ -2302,8 +2292,8 @@ void DataBase::LoadMisc() } { - DeathEffect& deathEff = mapObj->GetGameObj().GetBehaviors().Add(); - deathEff.SetEffect(GetRecord(MapObjLib::ctEffects, "death6")); + DeathEffect& deathEff = mapObj->GetGameObj().GetBehaviors().Add(); + deathEff.SetEffect(GetRecord(MapObjLib::ctEffects, "death6")); deathEff.SetTargetChild(true); } @@ -2313,7 +2303,7 @@ void DataBase::LoadMisc() //blaster { game::MapObj* mapObj = NewMapObj(); - AddToGraph(mapObj, gtEffect, true); + AddToGraph(mapObj, gtEffect, true); graph::FxParticleSystem* fxSystem = AddFxSystem(mapObj, _fxSpriteManager); AddLibMat(&fxSystem->material, "Effect\\blaster"); @@ -2334,8 +2324,8 @@ void DataBase::LoadMisc() graph::FxFlowEmitter* emitter = AddFxFlowEmitter(fxSystem, desc, descFlow, true); { - DeathEffect& deathEff = mapObj->GetGameObj().GetBehaviors().Add(); - deathEff.SetEffect(GetRecord(MapObjLib::ctEffects, "death6")); + DeathEffect& deathEff = mapObj->GetGameObj().GetBehaviors().Add(); + deathEff.SetEffect(GetRecord(MapObjLib::ctEffects, "death6")); deathEff.SetTargetChild(true); } @@ -2366,10 +2356,10 @@ void DataBase::LoadMisc() } { game::MapObj* eff = NewChildMapObj(mapObj, MapObjLib::ctEffects, "engine1"); - eff->GetGameObj().SetPos(D3DXVECTOR3(-2.3f, 0.0f, 0.05f)); + eff->GetGameObj().SetPos(D3DXVECTOR3(-2.3f, 0.0f, 0.05f)); } { - DeathEffect& deathEff = mapObj->GetGameObj().GetBehaviors().Add(); + DeathEffect& deathEff = mapObj->GetGameObj().GetBehaviors().Add(); deathEff.SetEffect(GetRecord(MapObjLib::ctEffects, "death5")); deathEff.SetTargetChild(true); } @@ -2382,7 +2372,7 @@ void DataBase::LoadMisc() game::MapObj* mapObj = NewMapObj(); game::GameObject& gameObj = mapObj->GetGameObj(); - graph::IVBMeshNode* node = AddMeshNode(mapObj, "Weapon\\rocketAir.r3d"); + graph::IVBMeshNode* node = AddMeshNode(mapObj, "Weapon\\rocketAir.r3d"); AddLibMat(node, "Weapon\\rocketAir"); AddToGraph(mapObj, gtDefFixPipe, true); @@ -2398,11 +2388,11 @@ void DataBase::LoadMisc() } { game::MapObj* eff = NewChildMapObj(mapObj, MapObjLib::ctEffects, "engine1"); - eff->GetGameObj().SetPos(D3DXVECTOR3(-2.3f, 0.0f, 0.05f)); + eff->GetGameObj().SetPos(D3DXVECTOR3(-2.3f, 0.0f, 0.05f)); } { - DeathEffect& deathEff = mapObj->GetGameObj().GetBehaviors().Add(); - deathEff.SetEffect(GetRecord(MapObjLib::ctEffects, "death5")); + DeathEffect& deathEff = mapObj->GetGameObj().GetBehaviors().Add(); + deathEff.SetEffect(GetRecord(MapObjLib::ctEffects, "death5")); deathEff.SetTargetChild(true); } @@ -2425,11 +2415,11 @@ void DataBase::LoadMisc() eff->GetGameObj().GetBehaviors().Add(); } { - game::MapObj* eff = NewChildMapObj(mapObj, MapObjLib::ctEffects, "flare1"); + game::MapObj* eff = NewChildMapObj(mapObj, MapObjLib::ctEffects, "flare1"); eff->GetGameObj().SetScale(1.5f); - } + } { - DeathEffect& deathEff = mapObj->GetGameObj().GetBehaviors().Add(); + DeathEffect& deathEff = mapObj->GetGameObj().GetBehaviors().Add(); deathEff.SetEffect(GetRecord(MapObjLib::ctEffects, "death6")); deathEff.SetTargetChild(true); } @@ -2440,7 +2430,7 @@ void DataBase::LoadMisc() //phaserBolt { game::MapObj* mapObj = NewMapObj(); - game::GameObject& gameObj = mapObj->GetGameObj(); + game::GameObject& gameObj = mapObj->GetGameObj(); graph::IVBMeshNode* mesh = AddMeshNode(mapObj, "Effect\\sphere.r3d"); AddLibMat(mesh, "Effect\\phaserBolt"); @@ -2455,11 +2445,11 @@ void DataBase::LoadMisc() eff->GetGameObj().GetBehaviors().Add(); } { - game::MapObj* eff = NewChildMapObj(mapObj, MapObjLib::ctEffects, "flare1"); + game::MapObj* eff = NewChildMapObj(mapObj, MapObjLib::ctEffects, "flare1"); eff->GetGameObj().SetScale(1.5f); - } + } { - DeathEffect& deathEff = mapObj->GetGameObj().GetBehaviors().Add(); + DeathEffect& deathEff = mapObj->GetGameObj().GetBehaviors().Add(); deathEff.SetEffect(GetRecord(MapObjLib::ctEffects, "death6")); deathEff.SetTargetChild(true); } @@ -2482,12 +2472,12 @@ void DataBase::LoadMisc() eff->GetGameObj().SetScale(2.0f); } { - DeathEffect& deathEff = mapObj->GetGameObj().GetBehaviors().Add(); - deathEff.SetEffect(GetRecord(MapObjLib::ctEffects, "death5")); + DeathEffect& deathEff = mapObj->GetGameObj().GetBehaviors().Add(); + deathEff.SetEffect(GetRecord(MapObjLib::ctEffects, "death5")); deathEff.SetTargetChild(true); } { - game::MapObj* eff = NewChildMapObj(mapObj, MapObjLib::ctEffects, "heatTrail"); + game::MapObj* eff = NewChildMapObj(mapObj, MapObjLib::ctEffects, "heatTrail"); } SaveMapObj(mapObj, MapObjLib::ctDecoration, "Misc\\torpeda"); @@ -2510,8 +2500,8 @@ void DataBase::LoadMisc() eff->GetGameObj().SetPos(D3DXVECTOR3(0.0f, -0.5f, 0.0f)); } { - DeathEffect& deathEff = mapObj->GetGameObj().GetBehaviors().Add(); - deathEff.SetEffect(GetRecord(MapObjLib::ctEffects, "death5")); + DeathEffect& deathEff = mapObj->GetGameObj().GetBehaviors().Add(); + deathEff.SetEffect(GetRecord(MapObjLib::ctEffects, "death5")); deathEff.SetTargetChild(true); } @@ -2599,7 +2589,7 @@ void DataBase::LoadMisc() { MapObj* eff = NewChildMapObj(mapObj, MapObjLib::ctEffects, "ringWay"); eff->GetGameObj().SetPos(ZVector * 0.1f); - } + } DeathEffect& deathEffect = gameObj.GetBehaviors().Add(); deathEffect.SetEffect(GetRecord(MapObjLib::ctEffects, "death4")); @@ -2784,13 +2774,13 @@ void DataBase::LoadMisc() } { game::MapObj* eff = NewChildMapObj(mapObj, MapObjLib::ctEffects, "lens1"); - } + } { game::MapObj* eff = NewChildMapObj(mapObj, MapObjLib::ctEffects, "lightning1"); - } + } { DeathEffect& deathEffect = gameObj.GetBehaviors().Add(); - deathEffect.SetEffect(GetRecord(MapObjLib::ctEffects, "blink")); + deathEffect.SetEffect(GetRecord(MapObjLib::ctEffects, "blink")); deathEffect.SetSound(&GetSound("Sounds\\spherePulseDeath.ogg")); deathEffect.SetTargetChild(true); } @@ -2811,14 +2801,14 @@ void DataBase::LoadMisc() { game::MapObj* eff = NewChildMapObj(mapObj, MapObjLib::ctEffects, "fireTrail"); - eff->GetGameObj().GetBehaviors().Add(); + eff->GetGameObj().GetBehaviors().Add(); } { - game::MapObj* eff = NewChildMapObj(mapObj, MapObjLib::ctEffects, "firePatron"); - } + game::MapObj* eff = NewChildMapObj(mapObj, MapObjLib::ctEffects, "firePatron"); + } { - DeathEffect& deathEff = mapObj->GetGameObj().GetBehaviors().Add(); - deathEff.SetEffect(GetRecord(MapObjLib::ctEffects, "death5")); + DeathEffect& deathEff = mapObj->GetGameObj().GetBehaviors().Add(); + deathEff.SetEffect(GetRecord(MapObjLib::ctEffects, "death5")); deathEff.SetTargetChild(true); } @@ -2860,7 +2850,7 @@ void DataBase::LoadMisc() { MapObj* mapObj = NewMapObj(); - graph::PlaneNode* node = AddPlaneNode(mapObj, IdentityVec2); + graph::PlaneNode* node = AddPlaneNode(mapObj, IdentityVec2); AddLibMat(&node->material, "GUI\\space2"); AddToGraph(mapObj, gtDefFixPipe, false); @@ -2898,7 +2888,7 @@ void DataBase::LoadCrush() //bochka { game::MapObj* mapObj = NewMapObj(); - game::GameObject& gameObj = mapObj->GetGameObj(); + game::GameObject& gameObj = mapObj->GetGameObj(); graph::IVBMeshNode* mesh = AddMeshNode(mapObj, "Crush\\bochka.r3d"); AddLibMat(mesh, "Crush\\bochka"); @@ -2912,13 +2902,13 @@ void DataBase::LoadCrush() mapObj->GetGameObj().GetPxActor().SetScene(_world->GetPxScene()); - SaveMapObj(mapObj, MapObjLib::ctDecoration, "Crush\\bochka"); + SaveMapObj(mapObj, MapObjLib::ctDecoration, "Crush\\bochka"); } //znak { game::MapObj* mapObj = NewMapObj(); - game::GameObject& gameObj = mapObj->GetGameObj(); + game::GameObject& gameObj = mapObj->GetGameObj(); graph::IVBMeshNode* mesh = AddMeshNode(mapObj, "Crush\\znak.r3d"); AddLibMat(mesh, "Crush\\znak"); @@ -2931,7 +2921,7 @@ void DataBase::LoadCrush() mapObj->GetGameObj().GetPxActor().SetScene(_world->GetPxScene()); - SaveMapObj(mapObj, MapObjLib::ctDecoration, "Crush\\znak"); + SaveMapObj(mapObj, MapObjLib::ctDecoration, "Crush\\znak"); } } @@ -2983,7 +2973,7 @@ void DataBase::LoadBonus() gameObj.GetPxActor().SetScene(_world->GetPxScene()); SaveMapObj(mapObj, MapObjLib::ctBonus, "mineRipKern"); - } + } //mineRipPiece { game::MapObj* mapObj = NewMapObj(); @@ -3007,7 +2997,7 @@ void DataBase::LoadBonus() gameObj.GetPxActor().SetScene(_world->GetPxScene()); SaveMapObj(mapObj, MapObjLib::ctBonus, "mineRipPiece"); - } + } //mineProton { game::MapObj* mapObj = NewMapObj(); @@ -3070,7 +3060,7 @@ void DataBase::LoadBonus() desc.size = D3DXVECTOR3(0.0f, 0.0f, 1.7f); desc.modelSize = true; desc.damage = 2000.0f; - desc.maxDist = 0.0f; + desc.maxDist = 0.0f; gameObj.SetDesc(desc); gameObj.GetPxActor().SetScene(_world->GetPxScene()); @@ -3092,7 +3082,7 @@ void DataBase::LoadBonus() desc.size = D3DXVECTOR3(0.0f, 0.0f, 1.7f); desc.modelSize = true; desc.damage = 1.0f; - desc.maxDist = 0.0f; + desc.maxDist = 0.0f; gameObj.SetDesc(desc); gameObj.GetPxActor().SetScene(_world->GetPxScene()); @@ -3242,7 +3232,7 @@ void DataBase::LoadWeapons() //shotEff { ShotEffect& effect = gameObj.GetBehaviors().Add(); - effect.SetEffect(GetRecord(MapObjLib::ctEffects, "shotEff1")); + effect.SetEffect(GetRecord(MapObjLib::ctEffects, "shotEff1")); effect.SetSound(&GetSound("Sounds\\phalanx_shot_a.ogg")); } @@ -3252,7 +3242,7 @@ void DataBase::LoadWeapons() //rifleWeapon { game::MapObj* mapObj = NewMapObj(); - game::Weapon& gameObj = mapObj->SetGameObj(); + game::Weapon& gameObj = mapObj->SetGameObj(); graph::IVBMeshNode* node = AddMeshNode(mapObj, "Weapon\\rifleWeapon.r3d"); AddLibMat(node, "Weapon\\rifleWeapon"); @@ -3271,7 +3261,7 @@ void DataBase::LoadWeapons() //airWeapon { game::MapObj* mapObj = NewMapObj(); - game::Weapon& gameObj = mapObj->SetGameObj(); + game::Weapon& gameObj = mapObj->SetGameObj(); graph::IVBMeshNode* node = AddMeshNode(mapObj, "Weapon\\airWeapon.r3d"); AddLibMat(node, "Weapon\\airWeapon"); @@ -3290,7 +3280,7 @@ void DataBase::LoadWeapons() //blasterGun { game::MapObj* mapObj = NewMapObj(); - game::Weapon& gameObj = mapObj->SetGameObj(); + game::Weapon& gameObj = mapObj->SetGameObj(); graph::IVBMeshNode* node = AddMeshNode(mapObj, "Weapon\\blasterGun.r3d"); AddLibMat(node, "Weapon\\blasterGun"); @@ -3309,7 +3299,7 @@ void DataBase::LoadWeapons() //rocketLauncher { game::MapObj* mapObj = NewMapObj(); - game::Weapon& gameObj = mapObj->SetGameObj(); + game::Weapon& gameObj = mapObj->SetGameObj(); graph::IVBMeshNode* node = AddMeshNode(mapObj, "Weapon\\rocketLauncher.r3d"); AddLibMat(node, "Weapon\\rocketLauncher"); @@ -3371,7 +3361,7 @@ void DataBase::LoadWeapons() //shotEff { - ShotEffect& effect = gameObj.GetBehaviors().Add(); + ShotEffect& effect = gameObj.GetBehaviors().Add(); effect.SetEffect(GetRecord(MapObjLib::ctEffects, "laserShot")); effect.SetSound(&GetSound("Sounds\\laserGuseniza.ogg")); } @@ -3395,7 +3385,7 @@ void DataBase::LoadWeapons() effect.SetSound(&GetSound("Sounds\\frost_ray.ogg")); } - SaveMapObj(mapObj, MapObjLib::ctWeapon, "asyncFrost"); + SaveMapObj(mapObj, MapObjLib::ctWeapon, "asyncFrost"); } //asyncFrost2 @@ -3414,7 +3404,7 @@ void DataBase::LoadWeapons() effect.SetSound(&GetSound("Sounds\\frost_ray.ogg")); } - SaveMapObj(mapObj, MapObjLib::ctWeapon, "asyncFrost2"); + SaveMapObj(mapObj, MapObjLib::ctWeapon, "asyncFrost2"); } //masloWeapon @@ -3512,7 +3502,7 @@ void DataBase::LoadWeapons() //pulsator { game::MapObj* mapObj = NewMapObj(); - game::Weapon& gameObj = mapObj->SetGameObj(); + game::Weapon& gameObj = mapObj->SetGameObj(); graph::IVBMeshNode* node = AddMeshNode(mapObj, "Weapon\\pulsator.r3d"); AddLibMat(node, "Weapon\\pulsator"); @@ -3530,7 +3520,7 @@ void DataBase::LoadWeapons() //hyperBlaster { game::MapObj* mapObj = NewMapObj(); - game::Weapon& gameObj = mapObj->SetGameObj(); + game::Weapon& gameObj = mapObj->SetGameObj(); graph::IVBMeshNode* node = AddMeshNode(mapObj, "Weapon\\hyperBlaster.r3d"); AddLibMat(node, "Weapon\\hyperBlaster"); @@ -3549,7 +3539,7 @@ void DataBase::LoadWeapons() //sphereGun { game::MapObj* mapObj = NewMapObj(); - game::Weapon& gameObj = mapObj->SetGameObj(); + game::Weapon& gameObj = mapObj->SetGameObj(); graph::IVBMeshNode* node = AddMeshNode(mapObj, "Weapon\\sphereGun.r3d"); AddLibMat(node, "Car\\podushka"); @@ -3567,7 +3557,7 @@ void DataBase::LoadWeapons() //drobilka { game::MapObj* mapObj = NewMapObj(); - game::Weapon& gameObj = mapObj->SetGameObj(); + game::Weapon& gameObj = mapObj->SetGameObj(); graph::IVBMeshNode* node = AddMeshNode(mapObj, "Weapon\\drobilka.r3d"); AddLibMat(node, "Weapon\\drobilka"); @@ -3579,11 +3569,11 @@ void DataBase::LoadWeapons() //sonar { game::MapObj* mapObj = NewMapObj(); - game::Weapon& gameObj = mapObj->SetGameObj(); + game::Weapon& gameObj = mapObj->SetGameObj(); graph::IVBMeshNode* node = AddMeshNode(mapObj, "Weapon\\sonar.r3d"); AddLibMat(node, "Car\\devildriver"); - AddToGraph(mapObj, gtDefFixPipe, true); + AddToGraph(mapObj, gtDefFixPipe, true); //shotEff { @@ -3597,7 +3587,7 @@ void DataBase::LoadWeapons() //turel { game::MapObj* mapObj = NewMapObj(); - game::Weapon& gameObj = mapObj->SetGameObj(); + game::Weapon& gameObj = mapObj->SetGameObj(); graph::IVBMeshNode* node = AddMeshNode(mapObj, "Weapon\\turel.r3d"); AddLibMat(node, "Weapon\\turel"); @@ -3617,7 +3607,7 @@ void DataBase::LoadWeapons() //mortira { game::MapObj* mapObj = NewMapObj(); - game::Weapon& gameObj = mapObj->SetGameObj(); + game::Weapon& gameObj = mapObj->SetGameObj(); graph::IVBMeshNode* node = AddMeshNode(mapObj, "Weapon\\mortira.r3d"); AddLibMat(node, "Weapon\\mortira"); @@ -3642,7 +3632,7 @@ void DataBase::LoadWeapons() //shotEff { ShotEffect& effect = gameObj.GetBehaviors().Add(); - effect.SetSound(&GetSound("Sounds\\missile_launch.ogg")); + effect.SetSound(&GetSound("Sounds\\missile_launch.ogg")); } SaveMapObj(mapObj, MapObjLib::ctWeapon, "spring"); @@ -3651,7 +3641,7 @@ void DataBase::LoadWeapons() //rezonator { game::MapObj* mapObj = NewMapObj(); - game::Weapon& gameObj = mapObj->SetGameObj(); + game::Weapon& gameObj = mapObj->SetGameObj(); graph::IVBMeshNode* node = AddMeshNode(mapObj, "Weapon\\rezonator.r3d"); AddLibMat(node, "Weapon\\rezonator"); @@ -3842,7 +3832,7 @@ void DataBase::LoadCars() LoadCar("airblade", "Car\\airblade.r3d", "Car\\airbladeWheel.r3d", "Car\\airblade", "Car\\airbladeWheel.txt", desc); } - { + { CarDesc desc; desc.mass = 2000.0f; desc.bodyAABB = AABB(D3DXVECTOR3(-1.72021f, -1.43783f, -0.435831f), D3DXVECTOR3(1.71345f, 1.43783f, 0.441906f)); @@ -3876,7 +3866,7 @@ void DataBase::LoadCars() LoadCar("guseniza", "Car\\guseniza.r3d", "", "Car\\guseniza", "Car\\gusenizaWheel.txt", desc); } - { + { CarDesc desc; desc.mass = 2000.0f; desc.bodyAABB = AABB(D3DXVECTOR3(-1.72021f, -1.43783f, -0.435831f), D3DXVECTOR3(1.71345f, 1.43783f, 0.441906f)); @@ -4050,7 +4040,7 @@ void DataBase::LoadCars() LoadCar("monstertruckBoss", "Car\\monstertruckBoss.r3d", "Car\\monstertruckBossWheel.r3d", "Car\\monstertruckBoss", "Car\\monstertruckWheel.txt", desc); } - { + { CarDesc desc; desc.mass = 2000.0f; desc.bodyScale = D3DXVECTOR3(0.9f, 0.85f, 0.9f); @@ -4085,7 +4075,7 @@ void DataBase::LoadCars() LoadCar("devildriver", "Car\\devildriver.r3d", "", "Car\\devildriver", "Car\\devildriverWheel.txt", desc); } - { + { CarDesc desc; desc.mass = 2000.0f; desc.bodyScale = D3DXVECTOR3(0.9f, 0.85f, 0.9f); @@ -4150,7 +4140,7 @@ void DataBase::LoadCars() { CarDesc desc; - desc.mass = 2000.0f; + desc.mass = 2000.0f; desc.bodyScale = D3DXVECTOR3(0.9f, 0.85f, 0.9f); desc.bodyOffset = D3DXVECTOR3(0.15f, 0.0f, 0.08f); desc.centerMassPos = D3DXVECTOR3(0.1f, 0, -0.45f); @@ -4289,7 +4279,7 @@ void DataBase::Init() _fxPlaneManager = new graph::FxPlaneManager(); _fxPlaneManager->SetName("fxPlaneManager"); - _fxPlaneManager->SetOwner(this); + _fxPlaneManager->SetOwner(this); _fxWheelManager = new graph::FxNodeManager(); _fxWheelManager->SetName("fxWheelManager"); @@ -4317,7 +4307,7 @@ void DataBase::Init() _fxTrailManager = new graph::FxTrailManager(); _fxTrailManager->SetName("fxTrailManager"); - _fxTrailManager->SetOwner(this); + _fxTrailManager->SetOwner(this); _fxTrailManager->SetTrailWidth(0.3f); _fxTrailManager->fixedUp = true; _fxTrailManager->fixedUpVec = ZVector; @@ -4364,7 +4354,7 @@ void DataBase::Init() NxMaterialDesc borderMaterialDesc; borderMaterialDesc.staticFriction = 0.1f; borderMaterialDesc.dynamicFriction = 4.0f; - borderMaterialDesc.restitution = 0.0f; + borderMaterialDesc.restitution = 0.0f; borderMaterialDesc.frictionCombineMode = NX_CM_MAX; _borderMaterial = _world->GetPxScene()->GetNxScene()->createMaterial(borderMaterialDesc); diff --git a/src/Rock3dGame/source/game/Environment.cpp b/src/Rock3dGame/source/game/Environment.cpp index bec91b70..5fb077b6 100644 --- a/src/Rock3dGame/source/game/Environment.cpp +++ b/src/Rock3dGame/source/game/Environment.cpp @@ -66,10 +66,8 @@ Environment::Environment(World* world): _world(world), _wheater(ewClody), _world for (int i = 0; i < 4; ++i) _lampSwitchOn[i] = true; - glm::quat rot1; - D3DXQuaternionRotationAxis(&rot1, &YVector, D3DX_PI/4.0f); - glm::quat rot2; - D3DXQuaternionRotationAxis(&rot2, &ZVector, -D3DX_PI/4.0f); + glm::quat rot1 = glm::angleAxis(D3DX_PI / 4.0f, Vec3DxToGlm(YVector)); + glm::quat rot2 = glm::angleAxis(-D3DX_PI / 4.0f, Vec3DxToGlm(ZVector)); _sunRot = rot1 * rot2; //текстура по умолчанию. Обязательно должна быть! diff --git a/src/Rock3dGame/source/game/GameBase.cpp b/src/Rock3dGame/source/game/GameBase.cpp index b1ef8fc0..cb066bb8 100644 --- a/src/Rock3dGame/source/game/GameBase.cpp +++ b/src/Rock3dGame/source/game/GameBase.cpp @@ -1268,10 +1268,8 @@ void PodushkaAnim::OnProgress(float deltaTime) if (abs(linSpeed) > 1.0f) { D3DXMATRIX localMat = _target->GetMat(); - glm::quat rotQuat; - D3DXQuaternionRotationAxis(&rotQuat, &XVector, D3DX_PI * deltaTime * linSpeed * 0.1f); - D3DXMATRIX rotMat; - D3DXMatrixRotationQuaternion(&rotMat, &rotQuat); + glm::quat rotQuat = glm::angleAxis(D3DX_PI * deltaTime * linSpeed * 0.1f, Vec3DxToGlm(XVector)); + D3DXMATRIX rotMat = Matrix4GlmToDx(glm::toMat4(rotQuat)); const res::FaceGroup& fg = _target->GetMesh()->GetData()->faceGroups[_target->GetMeshId()]; D3DXVECTOR3 offset = (fg.minPos + fg.maxPos) / 2; diff --git a/src/Rock3dGame/source/game/GameCar.cpp b/src/Rock3dGame/source/game/GameCar.cpp index bed9dd1e..9f7ed475 100644 --- a/src/Rock3dGame/source/game/GameCar.cpp +++ b/src/Rock3dGame/source/game/GameCar.cpp @@ -192,23 +192,24 @@ void CarWheel::PxSyncWheel(float alpha) if (s && wcd.contactForce > -1000) st = wcd.contactPosition - r; - glm::quat quat1; - glm::quat quat2 = NullQuaternion; - D3DXQuaternionRotationAxis(&quat1, &ZVector, _steerAngle); - D3DXQuaternionRotationAxis(&quat2, &YVector, _summAngle); + glm::quat quat1 = glm::angleAxis(_steerAngle, Vec3DxToGlm(ZVector)); + glm::quat quat2 = glm::angleAxis(_summAngle, Vec3DxToGlm(YVector)); // NullQuaternion; glm::quat resRot = quat2 * quat1; if (invertWheel) { - glm::quat invRot; - D3DXQuaternionRotationAxis(&invRot, &ZVector, D3DX_PI); + glm::quat invRot = glm::angleAxis(D3DX_PI, Vec3DxToGlm(ZVector)); resRot = invRot * resRot; } if (alpha < 1.0f) - D3DXQuaternionSlerp(&resRot, &_pxPrevRot, &resRot, alpha); + { + resRot = glm::mix(_pxPrevRot, resRot, alpha); + } else + { _pxPrevRot = resRot; + } GetGrActor().SetRot(resRot); D3DXVECTOR3 resPos((t - dir * st).get()); diff --git a/src/Rock3dGame/source/game/GameObject.cpp b/src/Rock3dGame/source/game/GameObject.cpp index 530c79a2..9519d0b7 100644 --- a/src/Rock3dGame/source/game/GameObject.cpp +++ b/src/Rock3dGame/source/game/GameObject.cpp @@ -236,7 +236,7 @@ void GameObject::OnPxSync(float alpha) if (alpha < 1.0f) { D3DXVec3Lerp(&_pxPosLerp, &_pxPrevPos, &_pxActor->GetPos(), alpha); - D3DXQuaternionSlerp(&_pxRotLerp, &_pxPrevRot, &_pxActor->GetRot(), alpha); + _pxRotLerp = glm::mix(_pxPrevRot, _pxActor->GetRot(), alpha); D3DXVec3Lerp(&_pxVelocityLerp, &_pxPrevVelocity, &pxVelocityLerp, alpha); } else @@ -304,11 +304,14 @@ void GameObject::OnFrame(float deltaTime, float pxAlpha) if (_rotSyncAngle != 0) { if (_rotSyncAngle > 0) + { _rotSyncAngle = std::max(_rotSyncAngle - 1.3f * D3DX_PI * deltaTime, 0.0f); + } else + { _rotSyncAngle = std::min(_rotSyncAngle + 1.3f * D3DX_PI * deltaTime, 0.0f); - glm::quat rot; - D3DXQuaternionRotationAxis(&rot, &_rotSyncAxis, -_rotSyncAngle); + } + glm::quat rot = glm::angleAxis(-_rotSyncAngle, Vec3DxToGlm(_rotSyncAxis)); _grActor->SetRot(_grActor->GetRot() * rot); } @@ -326,12 +329,15 @@ void GameObject::OnFrame(float deltaTime, float pxAlpha) if (_rotSyncAngle2 != 0) { if (_rotSyncAngle2 > 0) + { _rotSyncAngle2 = std::max(_rotSyncAngle2 - 1.3f * D3DX_PI * deltaTime, 0.0f); + } else + { _rotSyncAngle2 = std::min(_rotSyncAngle2 + 1.3f * D3DX_PI * deltaTime, 0.0f); + } - glm::quat rot; - D3DXQuaternionRotationAxis(&rot, &_rotSyncAxis2, -_rotSyncAngle2); + glm::quat rot = glm::angleAxis(-_rotSyncAngle2, Vec3DxToGlm(_rotSyncAxis2)); _grActor->SetRot(_grActor->GetRot() * _rotSync2 * rot); } else if (_rotSyncLength2 != 0) @@ -372,7 +378,7 @@ void GameObject::SaveProxy(lsl::SWriter* writer) { writer->WriteValue("pos", GetPos(), 3); writer->WriteValue("scale", GetScale(), 3); - writer->WriteValue("rot", GetRot(), 4); + writer->WriteValue("rot", reinterpret_cast(&GetRot().x), 4); writer->WriteValue("life", _life); writer->WriteValue("maxTimeLife", _maxTimeLife); @@ -391,7 +397,7 @@ void GameObject::LoadProxy(lsl::SReader* reader) reader->ReadValue("pos", pos, 3); reader->ReadValue("scale", scale, 3); - reader->ReadValue("rot", rot, 4); + reader->ReadValue("rot", reinterpret_cast(&rot.x), 4); reader->ReadValue("life", _life); reader->ReadValue("maxTimeLife", _maxTimeLife); @@ -846,11 +852,14 @@ const glm::quat& GameObject::GetRotSync() const void GameObject::SetRotSync(const glm::quat& value) { _rotSync = value; - D3DXQuaternionToAxisAngle(&_rotSync, &_rotSyncAxis, &_rotSyncAngle); + _rotSyncAxis = Vec3GlmToDx(glm::axis(_rotSync)); + _rotSyncAngle = glm::angle(_rotSync); float angle = abs(_rotSyncAngle); if (angle > D3DX_PI) + { _rotSyncAngle = (2 * D3DX_PI - angle) * (_rotSyncAngle > 0 ? -1.0f : 1.0f); + } SetSyncFrameEvent(true); } @@ -880,15 +889,18 @@ const glm::quat& GameObject::GetRotSync2() const void GameObject::SetRotSync2(const glm::quat& curSync, const glm::quat& newSync) { glm::quat dRot = QuatRotation(newSync, curSync); - D3DXQuaternionToAxisAngle(&dRot, &_rotSyncAxis2, &_rotSyncAngle2); + _rotSyncAxis2 = Vec3GlmToDx(glm::axis(dRot)); + _rotSyncAngle2 = glm::angle(dRot); float angle = abs(_rotSyncAngle2); if (angle > D3DX_PI) + { _rotSyncAngle2 = (2 * D3DX_PI - angle) * (_rotSyncAngle2 > 0 ? -1.0f : 1.0f); + } _rotSync2 = newSync; - D3DXVECTOR3 axis; - D3DXQuaternionToAxisAngle(&_rotSync2, &axis, &_rotSyncLength2); + D3DXVECTOR3 axis = Vec3GlmToDx(glm::axis(_rotSync2)); + _rotSyncLength2 = glm::angle(_rotSync2); SetSyncFrameEvent(true); } diff --git a/src/Rock3dGame/source/game/HudMenu.cpp b/src/Rock3dGame/source/game/HudMenu.cpp index 2813cbad..dd5104fa 100644 --- a/src/Rock3dGame/source/game/HudMenu.cpp +++ b/src/Rock3dGame/source/game/HudMenu.cpp @@ -1042,12 +1042,10 @@ void MiniMapFrame::BuildPath(WayPath& path, res::VertexData& data) for (float i = -smSlice; i <= smSlice; ++i) { float dAlpha = i/smSlice * alpha2; - glm::quat rot; - D3DXQuaternionRotationAxis(&rot, &ZVector, ccw ? dAlpha : -dAlpha); - D3DXMATRIX rotMat; - D3DXMatrixRotationQuaternion(&rotMat, &rot); - auto rotMatGLM = Matrix4DxToGlm(rotMat); // remove after D3DXMATRIX replacement - glm::vec2 vec = Vec2TransformNormal(smVec, rotMatGLM); + glm::quat rot = glm::angleAxis(ccw ? dAlpha : -dAlpha, Vec3DxToGlm(ZVector)); + D3DXMATRIX rotMat = Matrix4GlmToDx(glm::toMat4(rot)); + auto rotMatGLM = Matrix4DxToGlm(rotMat); // remove after D3DXMATRIX replacement + glm::vec2 vec = Vec2TransformNormal(smVec, rotMatGLM); Node newNode; newNode.pos = smPos + vec * smRadius; diff --git a/src/Rock3dGame/source/game/Menu.cpp b/src/Rock3dGame/source/game/Menu.cpp index 3c0f0539..b7d32667 100644 --- a/src/Rock3dGame/source/game/Menu.cpp +++ b/src/Rock3dGame/source/game/Menu.cpp @@ -30,11 +30,11 @@ Menu::Menu(GameMode* game): _game(game), _state(msMain2), _loadingVisible(false) LSL_LOG("menu create cursor"); _cursor = CreatePlane(GetGUI()->GetRoot(), 0, "GUI\\cursor.png", true, IdentityVec2, gui::Material::bmTransparency); - _cursor->SetVisible(false); + _cursor->SetVisible(false); _cursor->SetFlag(gui::Widget::wfTopmost, true); - _cursor->SetTopmostLevel(MenuFrame::cTopmostCursor); + _cursor->SetTopmostLevel(MenuFrame::cTopmostCursor); - _audioSource = GetWorld()->GetLogic()->CreateSndSource(Logic::scEffects); + _audioSource = GetWorld()->GetLogic()->CreateSndSource(Logic::scEffects); for (int i = 0; i < cSoundShemeTypeEnd; ++i) _soundShemes[i] = new SoundSheme(this); @@ -51,7 +51,7 @@ Menu::Menu(GameMode* game): _game(game), _state(msMain2), _loadingVisible(false) _soundShemes[ssButton5]->clickDown(GetSound("Sounds\\UI\\showPlanet.ogg")); _soundShemes[ssButton5]->focused(GetSound("Sounds\\UI\\showPlanet.ogg")); - _soundShemes[ssStepper]->selectItem(GetSound("Sounds\\UI\\changeOption.ogg")); + _soundShemes[ssStepper]->selectItem(GetSound("Sounds\\UI\\changeOption.ogg")); LSL_LOG("menu create dialogs"); @@ -350,12 +350,9 @@ glm::vec2 Menu::StretchImage(gui::Material& material, const glm::vec2& size, boo glm::quat Menu::GetIsoRot() { - glm::quat rotZ; - D3DXQuaternionRotationAxis(&rotZ, &ZVector, -2.0f * D3DX_PI/3.0f); - glm::quat rotY; - D3DXQuaternionRotationAxis(&rotY, &YVector, 0); - glm::quat rotX; - D3DXQuaternionRotationAxis(&rotX, &XVector, -D3DX_PI/3.0f); + glm::quat rotZ = glm::angleAxis(-2.0f * D3DX_PI / 3.0f, Vec3DxToGlm(ZVector)); + glm::quat rotY = glm::angleAxis(0.0f, Vec3DxToGlm(YVector)); + glm::quat rotX = glm::angleAxis(-D3DX_PI / 3.0f, Vec3DxToGlm(XVector)); return rotZ * rotY * rotX; } @@ -485,7 +482,7 @@ void Menu::SetStartOptionsMenu(bool init) { if (init && !_startOptionsMenu) { - _startOptionsMenu = new n::StartOptionsMenu(this, GetGUI()->GetRoot()); + _startOptionsMenu = new n::StartOptionsMenu(this, GetGUI()->GetRoot()); _startOptionsMenu->ShowModal(true); } else if (!init && _startOptionsMenu) @@ -507,10 +504,10 @@ void Menu::ApplyState(State state) GetGUI()->SetInvertY(state == msInfo); ShowCursor(state != msHud && state != msInfo); - SetScreenFon(guiMode); - SetMainMenu2(state == msMain2); + SetScreenFon(guiMode); + SetMainMenu2(state == msMain2); SetRaceMenu2(state == msRace2); - SetHudMenu(state == msHud); + SetHudMenu(state == msHud); SetFinishMenu2(state == msFinish2); SetFinalMenu(state == msFinal); SetInfoMenu(state == msInfo || _loadingVisible); @@ -617,7 +614,7 @@ void Menu::DoPlayFinal() void Menu::OnDisconnectedPlayer(NetPlayer* sender) { if (sender->owner() && GetNet()->isClient() && _state != msMain2) - { + { ShowMessage(GetString(svWarning), GetString(svHintDisconnect), GetString(svOk), GetGUI()->GetVPSize()/2.0f, gui::Widget::waCenter, 0.0f, _disconnectEvent); ShowCursor(true); @@ -652,9 +649,9 @@ bool Menu::OnMouseMoveEvent(const MouseMove& mMove) pos.x += _cursor->GetSize().x/2; if (GetGUI()->GetInvertY()) - pos.y -= _cursor->GetSize().y/2; + pos.y -= _cursor->GetSize().y/2; else - pos.y += _cursor->GetSize().y/2; + pos.y += _cursor->GetSize().y/2; _cursor->SetPos(pos); @@ -681,7 +678,7 @@ bool Menu::OnHandleInput(const InputMessage& msg) GetNet()->race()->PushLine(inputText); /*if (!IsNetGame()) - { + { GameObject* car = GetPlayer() ? GetPlayer()->GetCar().gameObj : NULL; if (car && inputText == L"invulnerable") @@ -719,7 +716,7 @@ bool Menu::OnHandleInput(const InputMessage& msg) { VirtualKey dirKeys[cNavDirEnd] = {vkLeft, vkRight, vkUp, vkDown}; NavElement curNavElement; - ZeroMemory(&curNavElement, sizeof(curNavElement)); + ZeroMemory(&curNavElement, sizeof(curNavElement)); NavElementsList::const_iterator navElementsIter = _navElementsList.end(); --navElementsIter; @@ -759,7 +756,7 @@ bool Menu::OnHandleInput(const InputMessage& msg) for (int i = 0; i < cNavDirEnd; ++i) { if (dirKeys[i] == msg.key) - { + { if (curNavElement.widget) { if (curNavElement.nextWidget[i] != NULL) @@ -1170,7 +1167,7 @@ void Menu::StartMatch(Race::Mode mode, Difficulty difficulty, Race::Profile* pro } void Menu::ExitMatch(bool kicked) -{ +{ SetState(msMain2); if (IsNetGame()) @@ -1479,7 +1476,7 @@ void Menu::enableMineBug(bool value) if (IsNetGame()) GetNet()->race()->SetEnableMineBug(value); else - _game->enableMineBug(value); + _game->enableMineBug(value); } bool Menu::activeEnableMineBug() @@ -1530,7 +1527,7 @@ void Menu::UnregUser(IGameUser* user) } void Menu::SendEvent(unsigned id, EventData* data) -{ +{ _game->SendEvent(id, data); } @@ -1606,7 +1603,7 @@ gui::Button* Menu::CreateArrowButton(gui::Widget* parent, gui::Widget::Event* gu fonMat->SetBlending(gui::Material::bmTransparency); gui::Material* selMat = button->GetOrCreateSel(); - selMat->GetSampler().SetTex(GetTexture("GUI\\viewArrowSel.tga")); + selMat->GetSampler().SetTex(GetTexture("GUI\\viewArrowSel.tga")); selMat->SetBlending(gui::Material::bmTransparency); button->SetSize(GetImageSize(*fonMat) * size); @@ -1625,7 +1622,7 @@ gui::Button* Menu::CreateSpaceArrowButton(gui::Widget* parent, gui::Widget::Even fonMat->SetBlending(gui::Material::bmTransparency); gui::Material* selMat = button->GetOrCreateSel(); - selMat->GetSampler().SetTex(GetTexture("GUI\\spaceArrowSel.tga")); + selMat->GetSampler().SetTex(GetTexture("GUI\\spaceArrowSel.tga")); selMat->SetBlending(gui::Material::bmTransparency); button->SetSize(GetImageSize(*fonMat) * size); @@ -1644,8 +1641,8 @@ gui::Button* Menu::CreateMenuButton(const lsl::string& name, const std::string& if (norm != "") { gui::Material* fonMat = button->GetOrCreateFon(); - fonMat->GetSampler().SetTex(GetTexture(norm)); - fonMat->SetBlending(gui::Material::bmTransparency); + fonMat->GetSampler().SetTex(GetTexture(norm)); + fonMat->SetBlending(gui::Material::bmTransparency); normSize = normSize * GetImageSize(*fonMat); } @@ -1677,7 +1674,7 @@ gui::Button* Menu::CreateMenuButton(const lsl::string& name, const std::string& gui::Button* Menu::CreateMenuButton(StringValue name, const std::string& font, const std::string& norm, const std::string& sel, gui::Widget* parent, gui::Widget::Event* guiEvent, const glm::vec2& size, gui::Button::Style style, const D3DXCOLOR& textColor, SoundShemeType soundSheme) { - return CreateMenuButton(GetString(name), font, norm, sel, parent, guiEvent, size, style, textColor, soundSheme); + return CreateMenuButton(GetString(name), font, norm, sel, parent, guiEvent, size, style, textColor, soundSheme); } gui::Button* Menu::CreateMenuButton(const std::string& name, gui::Widget* parent, gui::Widget::Event* guiEvent, const glm::vec2& size, SoundShemeType soundSheme) @@ -1723,7 +1720,7 @@ gui::Label* Menu::CreateLabel(const std::string& name, gui::Widget* parent, cons gui::Label* Menu::CreateLabel(StringValue name, gui::Widget* parent, const std::string& font, const glm::vec2& size, gui::Text::HorAlign horAlign, gui::Text::VertAlign vertAlign, const D3DXCOLOR& color) { - return CreateLabel(GetString(name), parent, font, size, horAlign, vertAlign, color); + return CreateLabel(GetString(name), parent, font, size, horAlign, vertAlign, color); } gui::DropBox* Menu::CreateDropBox(gui::Widget* parent, gui::Widget::Event* guiEvent, const lsl::StringList& items) @@ -1768,7 +1765,7 @@ gui::ListBox* Menu::CreateListBox(gui::Widget* parent, gui::Widget::Event* guiEv listBox->GetOrCreateFon().SetColor(D3DXCOLOR(1.0f, 1.0f, 1.0f, 0.3f)); listBox->GetOrCreateFon().SetBlending(gui::Material::bmTransparency); - listBox->GetOrCreateFon().GetSampler().SetTex(GetTexture("GUI\\listBoxFon.tga")); + listBox->GetOrCreateFon().GetSampler().SetTex(GetTexture("GUI\\listBoxFon.tga")); listBox->GetOrCreateFrame().GetSampler().SetTex(GetTexture("GUI\\itemFrame.tga")); listBox->GetOrCreateFrame().SetBlending(gui::Material::bmTransparency); @@ -1784,9 +1781,9 @@ gui::ListBox* Menu::CreateListBox(gui::Widget* parent, gui::Widget::Event* guiEv gui::ProgressBar* Menu::CreateBar(gui::Widget* parent, gui::Widget::Event* guiEvent, const std::string& front, const std::string& back, gui::ProgressBar::Style style) { - gui::ProgressBar* bar = GetGUI()->CreateProgressBar(); + gui::ProgressBar* bar = GetGUI()->CreateProgressBar(); bar->SetParent(parent); - bar->SetPos(glm::vec2(0, 0)); + bar->SetPos(glm::vec2(0, 0)); bar->GetFront().GetSampler().SetTex(GetTexture(front)); bar->SetSize(GetImageSize(bar->GetFront())); bar->GetFront().SetBlending(gui::Material::bmTransparency); @@ -1807,7 +1804,7 @@ gui::ProgressBar* Menu::CreateBar(gui::Widget* parent, gui::Widget::Event* guiEv gui::ChargeBar* Menu::CreateChargeBar(gui::Widget* parent, gui::Widget::Event* guiEvent, unsigned maxCharge, unsigned curCharge) { gui::ChargeBar* chargeBar = GetGUI()->CreateChargeBar(); - chargeBar->SetParent(parent); + chargeBar->SetParent(parent); chargeBar->GetFrame().GetSampler().SetTex(GetTexture("GUI\\chargeFrame.tga")); chargeBar->GetFrame().SetBlending(gui::Material::bmTransparency); @@ -1881,7 +1878,7 @@ gui::Button* Menu::CreateCloseButton(gui::Widget* parent, gui::Widget::Event* gu fonMat->SetBlending(gui::Material::bmTransparency); gui::Material* selMat = button->GetOrCreateSel(); - selMat->GetSampler().SetTex(GetTexture("GUI\\closeButtonSel.tga")); + selMat->GetSampler().SetTex(GetTexture("GUI\\closeButtonSel.tga")); selMat->SetColor(D3DXCOLOR(1.0f, 1.0f, 1.0f, 0.75f)); selMat->SetBlending(gui::Material::bmTransparency); @@ -1927,7 +1924,7 @@ gui::StepperBox* Menu::CreateStepper(const StringList& items, gui::Widget* paren if (guiEvent) stepper->RegEvent(guiEvent); - stepper->SetItemsLoop(true); + stepper->SetItemsLoop(true); stepper->SetItems(items); stepper->SetSelIndex(0); @@ -2039,7 +2036,7 @@ void Menu::SetStepperEnabled(gui::StepperBox* stepper, bool enable) void Menu::OnProgress(float deltaTime) { if (_hudMenu) - _hudMenu->OnProgress(deltaTime); + _hudMenu->OnProgress(deltaTime); if (_mainMenu2) _mainMenu2->OnProgress(deltaTime); if (_raceMenu2) @@ -2062,9 +2059,9 @@ void Menu::OnProgress(float deltaTime) } if (_musicTime != -1.0f) - { + { const float cMusicDelay = 1.0f; - const float cMusicLife = 3.0f; + const float cMusicLife = 3.0f; float offset = ClampValue((_musicTime - 0.0f)/cMusicDelay, 0.0f, 1.0f) - ClampValue((_musicTime - cMusicDelay - cMusicLife)/cMusicDelay, 0.0f, 1.0f); glm::vec2 size = _musicDlg->size(); @@ -2333,7 +2330,7 @@ void Menu::SetDisplayMode(const lsl::Point& resolution) int Menu::GetDisplayModeIndex() { int modeInd = 0; - graph::DisplayMode mode; + graph::DisplayMode mode; mode.width = GetDisplayMode().x; mode.height = GetDisplayMode().y; @@ -2426,7 +2423,7 @@ void Menu::PlaySound(const lsl::string& soundName) void Menu::StopSound() { - _audioSource->Stop(); + _audioSource->Stop(); } void Menu::PlayMusic(snd::Sound* sound, const lsl::string& name, const lsl::string& band, bool showInfo) diff --git a/src/Rock3dGame/source/game/Player.cpp b/src/Rock3dGame/source/game/Player.cpp index 7e16f283..99672264 100644 --- a/src/Rock3dGame/source/game/Player.cpp +++ b/src/Rock3dGame/source/game/Player.cpp @@ -950,7 +950,7 @@ void Player::CarState::Update(float deltaTime) mat34.t[0], mat34.t[1], mat34.t[2], 1); pos3 = mat34.t.get(); - nxActor->getGlobalOrientationQuat().getXYZW(rot3); + nxActor->getGlobalOrientationQuat().getXYZW(reinterpret_cast(&rot3.x)); Vec3Rotate(XVector, rot3, dir3); //pos = glm::vec2(pos3); diff --git a/src/Rock3dGame/source/game/Race.cpp b/src/Rock3dGame/source/game/Race.cpp index f5f7c41e..67e2d8bf 100644 --- a/src/Rock3dGame/source/game/Race.cpp +++ b/src/Rock3dGame/source/game/Race.cpp @@ -1612,7 +1612,7 @@ void Workshop::LoadWeapons() projDesc.SetModel(_race->GetDB()->GetRecord(MapObjLib::ctEffects, "frostHit")); projDesc.SetModel2(_race->GetDB()->GetRecord(MapObjLib::ctEffects, "frost")); projDesc.pos = D3DXVECTOR3(0.7f, 0.0f, 0.3f); - D3DXQuaternionRotationAxis(&projDesc.rot, &YVector, D3DX_PI/24.0f); + projDesc.rot = glm::angleAxis(D3DX_PI / 24.0f, Vec3DxToGlm(YVector)); projDesc.size = D3DXVECTOR3(0.5f, 0.5f, 0.0f); projDesc.maxDist = 100.0f; projDesc.damage = 19.0f/0.5f; @@ -2474,7 +2474,7 @@ void Garage::FillStandartSlots(Car* car, const std::string& wheel, bool truba, c for (int i = 0; i < Player::cSlotTypeEnd; ++i) { PlaceSlot place; - + switch (i) { case Player::stWheel: @@ -2488,7 +2488,7 @@ void Garage::FillStandartSlots(Car* car, const std::string& wheel, bool truba, c place.items.push_back(&GetShop().GetSlot(wheel + "1")); place.items.push_back(&GetShop().GetSlot(wheel + "2")); } - place.items.push_back(&GetShop().GetSlot(wheel + "3")); + place.items.push_back(&GetShop().GetSlot(wheel + "3")); place.defItem = place.items.front().slot; place.lock = true; } @@ -2550,15 +2550,14 @@ void Garage::FillStandartSlots(Car* car, const std::string& wheel, bool truba, c if (spring) { place.show = false; - place.items.push_back(&GetShop().GetSlot("spring")); + place.items.push_back(&GetShop().GetSlot("spring")); } if (hyperDrive) { place.show = true; - glm::quat rot; - D3DXQuaternionRotationAxis(&rot, &ZVector, D3DX_PI); + glm::quat rot = glm::angleAxis(D3DX_PI, Vec3DxToGlm(ZVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("hyperdrive"), rot, *hyperDrive)); - } + } if (!place.items.empty()) place.defItem = place.items.back().slot; @@ -2568,7 +2567,7 @@ void Garage::FillStandartSlots(Car* car, const std::string& wheel, bool truba, c case Player::stMine: place.active = true; - place.show = false; + place.show = false; if (maslo) { @@ -2593,7 +2592,7 @@ void Garage::FillStandartSlots(Car* car, const std::string& wheel, bool truba, c if (!place.items.empty()) place.defItem = place.items.back().slot; place.lock = true; - break; + break; } car->SetSlot(Player::SlotType(i), place); @@ -2727,16 +2726,15 @@ void Garage::LoadCars() place.active = true; place.show = true; place.pos = D3DXVECTOR3(0.0f, 1.0f, 0.3f); - glm::quat rot; D3DXVECTOR3 offset; - D3DXQuaternionRotationAxis(&rot, &XVector, -D3DX_PI/3.0f); + glm::quat rot = glm::angleAxis(-D3DX_PI / 3.0f, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("rocketLauncher"), rot)); - D3DXQuaternionRotationAxis(&rot, &XVector, -D3DX_PI/3.0f); + rot = glm::angleAxis(-D3DX_PI / 3.0f, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("pulsator"), rot)); - D3DXQuaternionRotationAxis(&rot, &XVector, -D3DX_PI); + rot = glm::angleAxis(-D3DX_PI, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("fireGun"), rot)); offset = D3DXVECTOR3(1.25f, -0.3f, 0.05f); @@ -2749,13 +2747,12 @@ void Garage::LoadCars() place.active = true; place.show = true; place.pos = D3DXVECTOR3(0.0f, -1.0f, 0.3f); - glm::quat rot; D3DXVECTOR3 offset; - D3DXQuaternionRotationAxis(&rot, &XVector, D3DX_PI/3.0f); + glm::quat rot = glm::angleAxis(D3DX_PI / 3.0f, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("rocketLauncher"), rot)); - D3DXQuaternionRotationAxis(&rot, &XVector, D3DX_PI/3.0f); + rot = glm::angleAxis(D3DX_PI / 3.0f, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("pulsator"), rot)); place.items.push_back(&GetShop().GetSlot("fireGun")); @@ -2806,16 +2803,15 @@ void Garage::LoadCars() place.active = true; place.show = true; place.pos = D3DXVECTOR3(0.0f, 1.4f, 0.0f); - glm::quat rot; D3DXVECTOR3 offset; - D3DXQuaternionRotationAxis(&rot, &XVector, -D3DX_PI/2.0f); + glm::quat rot = glm::angleAxis(-D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("rocketLauncher"), rot)); - D3DXQuaternionRotationAxis(&rot, &XVector, -D3DX_PI/2.0f); + rot = glm::angleAxis(-D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("pulsator"), rot)); - D3DXQuaternionRotationAxis(&rot, &XVector, -D3DX_PI); + rot = glm::angleAxis(-D3DX_PI, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("fireGun"), rot)); offset = D3DXVECTOR3(0.85f, -0.8f, 0.0f); @@ -2823,17 +2819,17 @@ void Garage::LoadCars() place.items.push_back(&GetShop().GetSlot("torpedaWeapon")); - D3DXQuaternionRotationAxis(&rot, &XVector, -D3DX_PI/2.0f); + rot = glm::angleAxis(-D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("turel"), rot)); - D3DXQuaternionRotationAxis(&rot, &XVector, -D3DX_PI/2.0f); + rot = glm::angleAxis(-D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("phaseImpulse"), rot)); - D3DXQuaternionRotationAxis(&rot, &YVector, -D3DX_PI/24.0f); + rot = glm::angleAxis(-D3DX_PI / 24.0f, Vec3DxToGlm(YVector)); offset = D3DXVECTOR3(0.85f, -0.6f, 0.0f); place.items.push_back(PlaceItem(&GetShop().GetSlot("mortira"), rot, offset)); - D3DXQuaternionRotationAxis(&rot, &XVector, -D3DX_PI/2.0f); + rot = glm::angleAxis(-D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("hyperBlaster"), rot)); car->SetSlot(Player::stWeapon2, place); @@ -2843,13 +2839,12 @@ void Garage::LoadCars() place.active = true; place.show = true; place.pos = D3DXVECTOR3(0.0f, -1.4f, 0.0f); - glm::quat rot; D3DXVECTOR3 offset; - D3DXQuaternionRotationAxis(&rot, &XVector, D3DX_PI/2.0f); + glm::quat rot = glm::angleAxis(D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("rocketLauncher"), rot)); - D3DXQuaternionRotationAxis(&rot, &XVector, D3DX_PI/2.0f); + rot = glm::angleAxis(D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("pulsator"), rot)); place.items.push_back(&GetShop().GetSlot("fireGun")); @@ -2859,17 +2854,17 @@ void Garage::LoadCars() place.items.push_back(&GetShop().GetSlot("torpedaWeapon")); - D3DXQuaternionRotationAxis(&rot, &XVector, D3DX_PI/2.0f); + rot = glm::angleAxis(D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("turel"), rot)); - D3DXQuaternionRotationAxis(&rot, &XVector, D3DX_PI/2.0f); + rot = glm::angleAxis(D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("phaseImpulse"), rot)); - D3DXQuaternionRotationAxis(&rot, &YVector, -D3DX_PI/24.0f); + rot = glm::angleAxis(-D3DX_PI / 24.0f, Vec3DxToGlm(YVector)); offset = D3DXVECTOR3(0.85f, 0.6f, 0.0f); place.items.push_back(PlaceItem(&GetShop().GetSlot("mortira"), rot, offset)); - D3DXQuaternionRotationAxis(&rot, &XVector, D3DX_PI/2.0f); + rot = glm::angleAxis(D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("hyperBlaster"), rot)); car->SetSlot(Player::stWeapon3, place); @@ -2913,16 +2908,15 @@ void Garage::LoadCars() place.active = true; place.show = true; place.pos = D3DXVECTOR3(0.2f, 0.6f, 0.25f); - glm::quat rot; D3DXVECTOR3 offset; - D3DXQuaternionRotationAxis(&rot, &XVector, -D3DX_PI/3.0f); + glm::quat rot = glm::angleAxis(-D3DX_PI / 3.0f, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("rocketLauncher"), rot)); - D3DXQuaternionRotationAxis(&rot, &XVector, -D3DX_PI/3.0f); + rot = glm::angleAxis(-D3DX_PI / 3.0f, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("pulsator"), rot)); - D3DXQuaternionRotationAxis(&rot, &XVector, -D3DX_PI); + rot = glm::angleAxis(-D3DX_PI, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("fireGun"), rot)); //offset = D3DXVECTOR3(1.2f, -0.05f, -0.1f); @@ -2930,16 +2924,16 @@ void Garage::LoadCars() place.items.push_back(&GetShop().GetSlot("torpedaWeapon")); - D3DXQuaternionRotationAxis(&rot, &XVector, -D3DX_PI/3.0f); + rot = glm::angleAxis(-D3DX_PI / 3.0f, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("turel"), rot)); - D3DXQuaternionRotationAxis(&rot, &XVector, -D3DX_PI/3.0f); + rot = glm::angleAxis(-D3DX_PI / 3.0f, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("phaseImpulse"), rot)); - D3DXQuaternionRotationAxis(&rot, &YVector, -D3DX_PI/24.0f); + rot = glm::angleAxis(-D3DX_PI / 24.0f, Vec3DxToGlm(YVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("mortira"), rot)); - D3DXQuaternionRotationAxis(&rot, &XVector, -D3DX_PI/3.0f); + rot = glm::angleAxis(-D3DX_PI / 3.0f, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("hyperBlaster"), rot)); car->SetSlot(Player::stWeapon2, place); @@ -2949,13 +2943,12 @@ void Garage::LoadCars() place.active = true; place.show = true; place.pos = D3DXVECTOR3(0.2f, -0.6f, 0.25f); - glm::quat rot; D3DXVECTOR3 offset; - D3DXQuaternionRotationAxis(&rot, &XVector, D3DX_PI/3.0f); + glm::quat rot = glm::angleAxis(D3DX_PI / 3.0f, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("rocketLauncher"), rot)); - D3DXQuaternionRotationAxis(&rot, &XVector, D3DX_PI/3.0f); + rot = glm::angleAxis(D3DX_PI / 3.0f, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("pulsator"), rot)); place.items.push_back(&GetShop().GetSlot("fireGun")); @@ -2965,16 +2958,16 @@ void Garage::LoadCars() place.items.push_back(&GetShop().GetSlot("torpedaWeapon")); - D3DXQuaternionRotationAxis(&rot, &XVector, D3DX_PI/3.0f); + rot = glm::angleAxis(D3DX_PI / 3.0f, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("turel"), rot)); - D3DXQuaternionRotationAxis(&rot, &XVector, D3DX_PI/3.0f); + rot = glm::angleAxis(D3DX_PI / 3.0f, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("phaseImpulse"), rot)); - D3DXQuaternionRotationAxis(&rot, &YVector, -D3DX_PI/24.0f); + rot = glm::angleAxis(-D3DX_PI / 24.0f, Vec3DxToGlm(YVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("mortira"), rot)); - D3DXQuaternionRotationAxis(&rot, &XVector, D3DX_PI/3.0f); + rot = glm::angleAxis(D3DX_PI / 3.0f, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("hyperBlaster"), rot)); car->SetSlot(Player::stWeapon3, place); @@ -3012,16 +3005,15 @@ void Garage::LoadCars() place.active = true; place.show = true; place.pos = D3DXVECTOR3(0.3f, 0.8f, 0.4f); - glm::quat rot; D3DXVECTOR3 offset; - D3DXQuaternionRotationAxis(&rot, &XVector, -D3DX_PI/2.0f); + glm::quat rot = glm::angleAxis(-D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("rocketLauncher"), rot)); - D3DXQuaternionRotationAxis(&rot, &XVector, -D3DX_PI/2.0f); + rot = glm::angleAxis(-D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("pulsator"), rot)); - D3DXQuaternionRotationAxis(&rot, &XVector, -D3DX_PI); + rot = glm::angleAxis(-D3DX_PI, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("fireGun"), rot)); offset = D3DXVECTOR3(0.95f, -0.1f, -0.1f); @@ -3029,16 +3021,16 @@ void Garage::LoadCars() place.items.push_back(&GetShop().GetSlot("torpedaWeapon")); - D3DXQuaternionRotationAxis(&rot, &XVector, -D3DX_PI/2.0f); + rot = glm::angleAxis(-D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("turel"), rot)); - D3DXQuaternionRotationAxis(&rot, &XVector, -D3DX_PI/2.0f); + rot = glm::angleAxis(-D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("phaseImpulse"), rot)); - D3DXQuaternionRotationAxis(&rot, &YVector, -D3DX_PI/24.0f); + rot = glm::angleAxis(-D3DX_PI / 24.0f, Vec3DxToGlm(YVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("mortira"), rot)); - D3DXQuaternionRotationAxis(&rot, &XVector, -D3DX_PI/2.0f); + rot = glm::angleAxis(-D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("hyperBlaster"), rot)); car->SetSlot(Player::stWeapon2, place); @@ -3048,13 +3040,12 @@ void Garage::LoadCars() place.active = true; place.show = true; place.pos = D3DXVECTOR3(0.3f, -0.8f, 0.4f); - glm::quat rot; D3DXVECTOR3 offset; - D3DXQuaternionRotationAxis(&rot, &XVector, D3DX_PI/2.0f); + glm::quat rot = glm::angleAxis(D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("rocketLauncher"), rot)); - D3DXQuaternionRotationAxis(&rot, &XVector, D3DX_PI/2.0f); + rot = glm::angleAxis(D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("pulsator"), rot)); place.items.push_back(&GetShop().GetSlot("fireGun")); @@ -3064,16 +3055,16 @@ void Garage::LoadCars() place.items.push_back(&GetShop().GetSlot("torpedaWeapon")); - D3DXQuaternionRotationAxis(&rot, &XVector, D3DX_PI/2.0f); + rot = glm::angleAxis(D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("turel"), rot)); - D3DXQuaternionRotationAxis(&rot, &XVector, D3DX_PI/2.0f); + rot = glm::angleAxis(D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("phaseImpulse"), rot)); - D3DXQuaternionRotationAxis(&rot, &YVector, -D3DX_PI/24.0f); + rot = glm::angleAxis(-D3DX_PI / 24.0f, Vec3DxToGlm(YVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("mortira"), rot)); - D3DXQuaternionRotationAxis(&rot, &XVector, D3DX_PI/2.0f); + rot = glm::angleAxis(D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("hyperBlaster"), rot)); car->SetSlot(Player::stWeapon3, place); @@ -3084,8 +3075,7 @@ void Garage::LoadCars() place.active = true; place.show = true; place.pos = D3DXVECTOR3(1.4f, 0.0f, 0.6f); - D3DXVECTOR3 offset; - glm::quat rot; + //D3DXVECTOR3 offset; place.items.push_back(&GetShop().GetSlot("rocketLauncher")); @@ -3366,7 +3356,7 @@ Slot* Garage::InstalSlot(Player* player, Player::SlotType type, Car* car, Slot* LSL_ASSERT(placeItem); - pos = place.pos + placeItem->offset; + pos = place.pos + placeItem->offset; rot = placeItem->rot; } diff --git a/src/Rock3dGame/source/game/RaceMenu2.cpp b/src/Rock3dGame/source/game/RaceMenu2.cpp index b0dcd928..530f5282 100644 --- a/src/Rock3dGame/source/game/RaceMenu2.cpp +++ b/src/Rock3dGame/source/game/RaceMenu2.cpp @@ -41,8 +41,7 @@ void CarFrame::OnProgress(float deltaTime) if (_secretMapObj->GetGameObj().GetGrActor().GetVisible()) { glm::quat rot = _secretMapObj->GetGameObj().GetRot(); - glm::quat dRot; - D3DXQuaternionRotationAxis(&dRot, &ZVector, 2.0f * D3DX_PI * deltaTime * 0.1f); + glm::quat dRot = glm::angleAxis(2.0f * D3DX_PI * deltaTime * 0.1f, Vec3DxToGlm(ZVector)); _secretMapObj->GetGameObj().SetRot(dRot * rot); } } @@ -103,8 +102,7 @@ void CarFrame::SetCar(Garage::Car* value, const D3DXCOLOR& color, bool secret) if ((*iter)->invertWheel) { - glm::quat rot; - D3DXQuaternionRotationAxis(&rot, &D3DXVECTOR3(0, 0, 1), D3DX_PI); + glm::quat rot = glm::angleAxis(D3DX_PI, glm::vec3(0, 0, 1)); (*iter)->SetRot(rot); } @@ -1095,8 +1093,7 @@ WorkshopFrame::WorkshopFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent float size = std::min(slot.plane->GetSize().x, slot.plane->GetSize().y); slot.viewport->SetSize(size, size); - glm::quat quat; - D3DXQuaternionRotationAxis(&quat, &ZVector, D3DX_PI/2.0f); + glm::quat quat = glm::angleAxis(D3DX_PI / 2.0f, Vec3DxToGlm(ZVector)); slot.viewport->SetRot3dSpeed(quat); slot.mesh3d = menu->CreateMesh3d(slot.viewport, NULL, NULL); @@ -1167,10 +1164,9 @@ gui::ViewPort3d* WorkshopFrame::AddGood(Slot* slot, int index, int count) gui::Mesh3d* mesh3d = static_cast(viewPort->GetBox()->GetChildren().front()); mesh3d->GetOrCreateMaterial()->GetSampler().SetFiltering(graph::BaseSampler::sfAnisotropic); - glm::quat quat; - D3DXQuaternionRotationAxis(&quat, &ZVector, D3DX_PI/2.0f); + glm::quat quat = glm::angleAxis(D3DX_PI / 2.0f, Vec3DxToGlm(ZVector)); viewPort->SetRot3dSpeed(quat); - D3DXQuaternionRotationAxis(&quat, &ZVector, 2.0f * D3DX_PI * index / count); + quat = glm::angleAxis(2.0f * D3DX_PI * index / count, Vec3DxToGlm(ZVector)); viewPort->GetBox()->SetRot(quat * viewPort->GetBox()->GetRot()); } @@ -2099,10 +2095,9 @@ GamersFrame::GamersFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent): M _space->SetAnchor(gui::Widget::waCenter); _viewport = menu->CreateViewPort3d(root(), NULL, "", gui::ViewPort3d::msAnim, false); - glm::quat quat; - D3DXQuaternionRotationAxis(&quat, &ZVector, D3DX_PI/24.0f); + glm::quat quat = glm::angleAxis(D3DX_PI / 24.0f, Vec3DxToGlm(ZVector)); _viewport->SetRot3dSpeed(quat); - D3DXQuaternionRotationAxis(&quat, &XVector, D3DX_PI/2.0f); + quat = glm::angleAxis(D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); _viewport->GetBox()->SetRot(quat); _mesh3d = menu->CreateMesh3d(_viewport, NULL, NULL); @@ -2373,8 +2368,7 @@ AngarFrame::AngarFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent): Men _planetBoss = menu->CreatePlane(_planetInfo, this, "", true, IdentityVec2, gui::Material::bmTransparency); _planetBossCar = menu->CreateViewPort3d(_planetInfo, NULL, "", gui::ViewPort3d::msAnim); - glm::quat quat; - D3DXQuaternionRotationAxis(&quat, &ZVector, D3DX_PI/2.0f); + glm::quat quat = glm::angleAxis(D3DX_PI / 2.0f, Vec3DxToGlm(ZVector)); _planetBossCar->SetRot3dSpeed(quat); for (int i = 0; i < cMenuItemEnd; ++i) @@ -2416,10 +2410,9 @@ AngarFrame::PlanetBox& AngarFrame::AddPlanet(Planet* planet, int index) box = &_planets.back(); box->viewport = menu()->CreateMesh3dBox(_planetGrid, this, planet->GetMesh(), planet->GetTexture(), gui::ViewPort3d::msStatic, Menu::ssButton5); - glm::quat quat; - D3DXQuaternionRotationAxis(&quat, &ZVector, D3DX_PI/24.0f); + glm::quat quat = glm::angleAxis(D3DX_PI / 24.0f, Vec3DxToGlm(ZVector)); box->viewport->SetRot3dSpeed(quat); - D3DXQuaternionRotationAxis(&quat, &XVector, D3DX_PI/2.0f); + quat = glm::angleAxis(D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); box->viewport->GetBox()->SetRot(quat); box->viewport->SetSize(glm::vec2(180.0f, 180.0f)); gui::Mesh3d* mesh3d = static_cast(box->viewport->GetBox()->GetChildren().front()); @@ -3191,8 +3184,7 @@ RaceMainFrame::RaceMainFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent _speedBarValue->SetPos(glm::vec2(_speedBar->GetSize().x/2 - 15.0f, 0.0f)); _viewportCar = menu->CreateViewPort3d(_topPanel, NULL, "", gui::ViewPort3d::msAnim); - glm::quat quat; - D3DXQuaternionRotationAxis(&quat, &ZVector, D3DX_PI/2.0f); + glm::quat quat = glm::angleAxis(D3DX_PI / 2.0f, Vec3DxToGlm(ZVector)); _viewportCar->SetRot3dSpeed(quat); _playerGrid = menu->CreateDummy(root(), NULL); @@ -3220,11 +3212,10 @@ RaceMainFrame::RaceMainFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent _slots[i] = menu->CreateMesh3dBox(_topPanel, NULL, NULL, NULL, gui::ViewPort3d::msAnim); _slots[i]->SetSize(glm::vec2(50.0f, 50.0f)); - glm::quat quat; - D3DXQuaternionRotationAxis(&quat, &ZVector, D3DX_PI/2.0f); + glm::quat quat = glm::angleAxis(D3DX_PI / 2.0f, Vec3DxToGlm(ZVector)); _slots[i]->SetRot3dSpeed(quat); - D3DXQuaternionRotationAxis(&quat, &ZVector, 2.0f * D3DX_PI * i / 6.0f); + quat = glm::angleAxis(2.0f * D3DX_PI * i / 6.0f, Vec3DxToGlm(ZVector)); _slots[i]->GetBox()->SetRot(quat * _slots[i]->GetBox()->GetRot()); } @@ -3288,8 +3279,7 @@ RaceMainFrame::PlayerBox* RaceMainFrame::AddPlayer(NetPlayer* netPlayer, unsigne newBox.readyState = menu()->CreatePlane(newBox.bgRoot, NULL, "", false, IdentityVec2, gui::Material::bmTransparency); newBox.viewportCar = menu()->CreateViewPort3d(newBox.bgRoot, NULL, "", gui::ViewPort3d::msAnim); - glm::quat quat; - D3DXQuaternionRotationAxis(&quat, &ZVector, D3DX_PI/2.0f); + glm::quat quat = glm::angleAxis(D3DX_PI / 2.0f, Vec3DxToGlm(ZVector)); newBox.viewportCar->SetRot3dSpeed(quat); _players.push_back(newBox); diff --git a/src/Rock3dGame/source/game/Weapon.cpp b/src/Rock3dGame/source/game/Weapon.cpp index 5d00d2de..a821d729 100644 --- a/src/Rock3dGame/source/game/Weapon.cpp +++ b/src/Rock3dGame/source/game/Weapon.cpp @@ -11,7 +11,7 @@ namespace game { Proj::Proj(): _pxBox(0), _ignoreContactProj(false), _model(0), _model2(0), _weapon(0), _playerId(cUndefPlayerId), _sprite(0), _tick1(0), _time1(0), _state1(false), _vec1(NullVector) -{ +{ } Proj::~Proj() @@ -74,8 +74,8 @@ void Proj::FreeModel(bool remove) if (remove) GetIncludeList().Delete(_model); - lsl::SafeRelease(_model); - } + lsl::SafeRelease(_model); + } } void Proj::InitModel2() @@ -140,7 +140,7 @@ void Proj::InsertProjToGraph(GraphManager* graph) desc.order = graph::Actor::goEffect; desc.props.set(graph::Actor::gpColor); desc.props.set(graph::Actor::gpDynamic); - //desc.props.set(graph::Actor::gpMorph); + //desc.props.set(graph::Actor::gpMorph); GetGrActor().SetGraph(graph, desc); } @@ -236,14 +236,14 @@ void Proj::SetShot(const ShotDesc& value) { if (_shot.GetTargetMapObj()) { - _shot.GetTargetMapObj()->GetGameObj().RemoveListener(this); + _shot.GetTargetMapObj()->GetGameObj().RemoveListener(this); } _shot = value; if (_shot.GetTargetMapObj()) { - _shot.GetTargetMapObj()->GetGameObj().InsertListener(this); + _shot.GetTargetMapObj()->GetGameObj().InsertListener(this); } } @@ -333,7 +333,7 @@ D3DXVECTOR3 Proj::CalcSpeed(GameObject* weapon) speed = std::max(speed, _desc.speedRelativeMin + std::max(D3DXVec3Dot(&dir, &weapon->GetPxVelocityLerp()), 0.0f)); } - float cosa = abs(D3DXVec3Dot(&dir, &D3DXVECTOR3(0, 0, 1))); + float cosa = abs(D3DXVec3Dot(&dir, &D3DXVECTOR3(0, 0, 1))); if (cosa < 0.707f) { dir.z = 0; @@ -391,7 +391,7 @@ void Proj::RocketContact(const px::Scene::OnContactEvent& contact) dir /= dirLength; D3DXVECTOR3 contactDir = GetContactPoint(contact); - //D3DXVec3Normalize(&contactDir, &contactDir); + //D3DXVec3Normalize(&contactDir, &contactDir); D3DXVec3Cross(&contactDir, &contactDir, &dir); //NxVec3 vec3(RandomRange(-1.0f, 1.0f), 0, RandomRange(-1.0f, 1.0f)); @@ -418,7 +418,7 @@ void Proj::RocketUpdate(float deltaTime) NxVec3 pos = GetPxActor().GetNxActor()->getGlobalPosition(); NxRay nxRay(pos + NxVec3(0, 0, cTrackHeight), NxVec3(0, 0, -1.0f)); - NxRaycastHit hit; + NxRaycastHit hit; NxShape* hitShape = GetLogic()->GetPxScene()->GetNxScene()->raycastClosestShape(nxRay, NX_STATIC_SHAPES, hit, 1 << px::Scene::cdgTrackPlane, NX_MAX_F32, NX_RAYCAST_SHAPE | NX_RAYCAST_IMPACT); if (hitShape) @@ -568,7 +568,7 @@ bool Proj::MinePrepare(const ShotContext& ctx, bool lockMine) AABB aabb = ComputeAABB(true); GetPxActor().SetFlag(NX_AF_DISABLE_RESPONSE, true); - _time1 = 0.0f; + _time1 = 0.0f; if (ctx.projMat) { @@ -588,7 +588,7 @@ bool Proj::MinePrepare(const ShotContext& ctx, bool lockMine) if (hitShape && hitShape->getGroup() != px::Scene::cdgShotTrack) //&& hit.distance < _desc.projMaxDist) { - float offs = std::max(-aabb.min.z, 0.01f); + float offs = std::max(-aabb.min.z, 0.01f); D3DXVECTOR3 normal = hit.worldNormal.get(); SetWorldPos(D3DXVECTOR3(hit.worldImpact.get()) + ZVector * offs); @@ -639,7 +639,7 @@ float Proj::MineUpdate(float deltaTime, float delay) bool Proj::MasloPrepare(const ShotContext& ctx) { if (MinePrepare(ctx, true)) - { + { _model->GetGameObj().SetScale(0.0f); return true; } @@ -784,7 +784,7 @@ void Proj::TorpedaUpdate(float deltaTime) D3DXVECTOR3 pos = this->GetWorldPos(); D3DXVECTOR3 dir = targPos - pos; - float dist = D3DXVec3Length(&dir); + float dist = D3DXVec3Length(&dir); if (dist > 1.0f) D3DXVec3Normalize(&dir, &dir); else @@ -793,9 +793,13 @@ void Proj::TorpedaUpdate(float deltaTime) glm::quat rot, rot1; QuatShortestArc(XVector, dir, rot1); if (_desc.angleSpeed > 0) - D3DXQuaternionSlerp(&rot, &this->GetRot(), &rot1, deltaTime * _desc.angleSpeed); + { + rot = glm::mix(this->GetRot(), rot1, deltaTime * _desc.angleSpeed); + } else + { rot = rot1; + } Vec3Rotate(XVector, rot, dir); this->SetRot(rot); @@ -846,7 +850,7 @@ GameObject* Proj::LaserUpdate(float deltaTime, bool distort) nxMask.bits2 = 0; nxMask.bits3 = 0; - NxRaycastHit rayhit; + NxRaycastHit rayhit; NxShape* hitShape = GetLogic()->GetPxScene()->GetNxScene()->raycastClosestShape(NxRay(NxVec3(shotPos + _desc.sizeAddPx), NxVec3(shotDir)), NX_ALL_SHAPES, rayhit, (1 << px::Scene::cdgDefault) | (1 << px::Scene::cdgShotTransparency) | (1 << px::Scene::cdgTrackPlane), _desc.maxDist, NX_RAYCAST_SHAPE | NX_RAYCAST_DISTANCE, &nxMask); GameObject* rayHitActor = hitShape ? GetGameObjFromShape(hitShape) : NULL; @@ -867,12 +871,12 @@ GameObject* Proj::LaserUpdate(float deltaTime, bool distort) if (_model) { - graph::Sprite* sprite = (graph::Sprite*)&_model->GetGameObj().GetGrActor().GetNodes().front(); + graph::Sprite* sprite = (graph::Sprite*)&_model->GetGameObj().GetGrActor().GetNodes().front(); glm::vec2 size = glm::vec2(scaleLaser, _desc.size.y); if (distort) { - float alpha = lsl::ClampValue(GetTimeLife() / GetMaxTimeLife(), 0.0f, 1.0f); + float alpha = lsl::ClampValue(GetTimeLife() / GetMaxTimeLife(), 0.0f, 1.0f); //alpha = lsl::ClampValue((alpha - 0.0f)/0.5f + 0.5f, 0.0f, 1.5f) - lsl::ClampValue((alpha - 0.7f)/0.3f * 1.5f, 0.0f, 1.5f); alpha = lsl::ClampValue((alpha - 0.0f)/0.5f * 1.5f + 0.5f, 0.0f, 2.0f) - lsl::ClampValue((alpha - 0.6f)/0.4f * 2.0f, 0.0f, 2.0f); @@ -940,12 +944,12 @@ void Proj::DrobilkaContact(const px::Scene::OnContactEvent& contact) _time1 = 0.5f; InitModel(); if (_model) - { + { D3DXVECTOR3 pnt = GetContactPoint(contact); _model->GetGameObj().SetWorldPos(pnt); } - DamageTarget(target, _desc.damage * contact.deltaTime); + DamageTarget(target, _desc.damage * contact.deltaTime); } } @@ -958,8 +962,7 @@ void Proj::DrobilkaUpdate(float deltaTime) SetWorldPos(pos); SetWorldRot(_weapon->GetWorldRot()); - glm::quat rot; - D3DXQuaternionRotationAxis(&rot, &XVector, _desc.angleSpeed * deltaTime); + glm::quat rot = glm::angleAxis(_desc.angleSpeed * deltaTime, Vec3DxToGlm(XVector)); _weapon->SetRot(_weapon->GetRot() * rot); } @@ -1184,7 +1187,7 @@ void Proj::ThunderContact(const px::Scene::OnContactEvent& contact) NxVec3 velNorm = velocity; velNorm.normalize(); - float angle = velNorm.dot(norm); + float angle = velNorm.dot(norm); if (abs(angle) > 0.1f) { D3DXPLANE plane; @@ -1207,7 +1210,7 @@ void Proj::ThunderUpdate(float deltaTime) { RocketUpdate(deltaTime); - _time1 -= deltaTime; + _time1 -= deltaTime; } bool Proj::ResonansePrepare(GameObject* weapon) @@ -1224,8 +1227,7 @@ void Proj::ResonanseUpdate(float deltaTime) { RocketUpdate(deltaTime); - glm::quat dRot; - D3DXQuaternionRotationAxis(&dRot, &XVector, _desc.angleSpeed * deltaTime); + glm::quat dRot = glm::angleAxis(_desc.angleSpeed * deltaTime, Vec3DxToGlm(XVector)); SetRot(dRot * GetRot()); } @@ -1263,7 +1265,7 @@ void Proj::OnContact(const px::Scene::OnContactEvent& contact) { case ptRocket: RocketContact(contact); - break; + break; case ptTorpeda: TorpedaContact(contact); @@ -1345,14 +1347,14 @@ void Proj::OnContact(const px::Scene::OnContactEvent& contact) ResonanseContact(contact); break; } - } + } } void Proj::SaveSource(lsl::SWriter* writer) { _MyBase::SaveSource(writer); - lsl::SWriter* proj = writer->NewDummyNode("proj"); + lsl::SWriter* proj = writer->NewDummyNode("proj"); _desc.SaveTo(proj, this); } @@ -1360,7 +1362,7 @@ void Proj::LoadSource(lsl::SReader* reader) { _MyBase::LoadSource(reader); - lsl::SReader* proj = reader->ReadValue("proj"); + lsl::SReader* proj = reader->ReadValue("proj"); _desc.LoadFrom(proj, this); } @@ -1415,7 +1417,7 @@ void Proj::OnProgress(float deltaTime) case ptMineRip: MineRipUpdate(deltaTime); - break; + break; case ptMineProton: MineProtonUpdate(deltaTime); @@ -1444,7 +1446,7 @@ void Proj::OnProgress(float deltaTime) case ptResonanse: ResonanseUpdate(deltaTime); break; - } + } } bool Proj::PrepareProj(GameObject* weapon, const ShotContext& ctx) @@ -1458,7 +1460,7 @@ bool Proj::PrepareProj(GameObject* weapon, const ShotContext& ctx) timeLife = _desc.maxDist / _desc.speed; SetMaxTimeLife(std::max(timeLife, _desc.minTimeLife.GetValue())); - bool res = true; + bool res = true; switch (_desc.type) { case ptRocket: @@ -1507,7 +1509,7 @@ bool Proj::PrepareProj(GameObject* weapon, const ShotContext& ctx) case ptMine: res = MinePrepare(ctx, true); - break; + break; case ptMineRip: res = MineRipPrepare(ctx); @@ -1515,11 +1517,11 @@ bool Proj::PrepareProj(GameObject* weapon, const ShotContext& ctx) case ptMinePiece: res = MinePiecePrepare(ctx); - break; + break; case ptMineProton: res = MineProtonPrepare(ctx); - break; + break; case ptFire: res = FirePrepare(weapon); @@ -1575,7 +1577,7 @@ bool Proj::PrepareProj(GameObject* weapon, const ShotContext& ctx) //Игнорируем контакты снаряда с родителем (т.е. с самим собой) if (_ignoreContactProj && weapon && weapon->GetPxActor().GetNxActor()) - { + { GetPxActor().GetScene()->GetNxScene()->setActorPairFlags(*weapon->GetPxActor().GetNxActor(), *GetPxActor().GetNxActor(), NX_IGNORE_PAIR); } @@ -1593,7 +1595,7 @@ void Proj::MineContact(GameObject* target, const D3DXVECTOR3& point) } DamageTarget(target, _desc.damage, dtMine); - AddContactForce(target, point, D3DXVECTOR3(0.0f, 0.0f, _desc.speed), NX_IMPULSE); + AddContactForce(target, point, D3DXVECTOR3(0.0f, 0.0f, _desc.speed), NX_IMPULSE); } const Proj::Desc& Proj::GetDesc() const @@ -1702,7 +1704,7 @@ void Weapon::LoadSource(lsl::SReader* reader) _MyBase::LoadSource(reader); Desc desc; - desc.LoadFrom(reader, this); + desc.LoadFrom(reader, this); SetDesc(desc); } @@ -1722,7 +1724,7 @@ void Weapon::OnProgress(float deltaTime) bool Weapon::Shot(const ShotDesc& shotDesc, ProjList* projList) { - Proj::ShotContext ctx; + Proj::ShotContext ctx; ctx.logic = GetLogic(); ctx.shot = shotDesc; diff --git a/src/Rock3dGame/source/net/NetPlayer.cpp b/src/Rock3dGame/source/net/NetPlayer.cpp index d1a292ff..267f5eea 100644 --- a/src/Rock3dGame/source/net/NetPlayer.cpp +++ b/src/Rock3dGame/source/net/NetPlayer.cpp @@ -581,11 +581,9 @@ void NetPlayer::ResponseStream(const net::NetMessage& msg, net::BitStream& strea car->SetPosSync(dPos); }*/ - glm::quat dRot; - QuatRotation(dRot, car->GetGrActor().GetRot(), rot); - D3DXVECTOR3 dRotAxis; - float dRotAngle; - D3DXQuaternionToAxisAngle(&dRot, &dRotAxis, &dRotAngle); + glm::quat dRot = QuatRotation(car->GetGrActor().GetRot(), rot); + D3DXVECTOR3 dRotAxis = Vec3GlmToDx(glm::axis(dRot)); + float dRotAngle = glm::angle(dRot); if (abs(dRotAngle) > D3DX_PI/24) { car->GetPxActor().SetRot(rot); diff --git a/src/Rock3dGame/source/snd/Audio.cpp b/src/Rock3dGame/source/snd/Audio.cpp index f3c8b477..21457b4f 100644 --- a/src/Rock3dGame/source/snd/Audio.cpp +++ b/src/Rock3dGame/source/snd/Audio.cpp @@ -1689,8 +1689,7 @@ void Source3d::ApplyX3dEffect() X3DAUDIO_LISTENER xList; ZeroMemory(&xList, sizeof(xList)); xList.Position = listener->pos; - D3DXMATRIX rotMat; - D3DXMatrixRotationQuaternion(&rotMat, &listener->rot); + D3DXMATRIX rotMat = Matrix4GlmToDx(glm::toMat4(listener->rot)); xList.OrientFront = D3DXVECTOR3(rotMat.m[0]); xList.OrientTop = D3DXVECTOR3(rotMat.m[2]); From 30fb2b506845d7838a399b978713963ae0849bc0 Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Mon, 21 Jun 2021 10:50:41 +0300 Subject: [PATCH 25/55] math: restore all projects builds, D3DXQUATERNION replaced with glm::quat everywhere --- src/CMakeLists.txt | 2 -- src/MapEditor/ClassView.cpp | 5 ++--- 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 30e5403e..70864202 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -15,7 +15,5 @@ add_subdirectory(MathLib) add_subdirectory(NetLib) add_subdirectory(Rock3dEngine) add_subdirectory(Rock3dGame) -if (FALSE) add_subdirectory(RRR3d) add_subdirectory(MapEditor) -endif() diff --git a/src/MapEditor/ClassView.cpp b/src/MapEditor/ClassView.cpp index aed6628d..6fb1fa60 100644 --- a/src/MapEditor/ClassView.cpp +++ b/src/MapEditor/ClassView.cpp @@ -134,7 +134,7 @@ void CClassView::UpdateList() r3d::IRecordNodeRef node; node.Assign(lib); - InsertItem(node, 0); + InsertItem(node, 0); } } @@ -159,8 +159,7 @@ void CClassView::SelectItem(const D3DXVECTOR3& mapObjPos) } if (_autoRot) { - D3DXQUATERNION rot; - D3DXQuaternionRotationYawPitchRoll(&rot, D3DX_PI/12 * RandomRange(-1.0f, 1.0f), D3DX_PI/12 * RandomRange(-1.0f, 1.0f), D3DX_PI/12 * RandomRange(-1.0f, 1.0f)); + glm::quat rot = glm::quat(glm::vec3(D3DX_PI/12 * RandomRange(-1.0f, 1.0f), D3DX_PI/12 * RandomRange(-1.0f, 1.0f), D3DX_PI/12 * RandomRange(-1.0f, 1.0f))); _newMapObj->SetRot(rot); } From 859b7a55bf765fba20279ca922126c5fffcc4302 Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Tue, 22 Jun 2021 09:23:24 +0300 Subject: [PATCH 26/55] math: fix multiplication order --- src/MathLib/header/lslMath.inl | 2 +- src/Rock3dEngine/source/graph/FxManager.cpp | 4 ++-- src/Rock3dEngine/source/graph/SceneManager.cpp | 1 + src/Rock3dEngine/source/gui/GUI.cpp | 4 ++-- src/Rock3dGame/source/edit/SceneControl.cpp | 2 +- src/Rock3dGame/source/game/CameraManager.cpp | 13 ++++++++----- src/Rock3dGame/source/game/Environment.cpp | 2 +- src/Rock3dGame/source/game/GameCar.cpp | 4 ++-- src/Rock3dGame/source/game/GameObject.cpp | 6 +++--- src/Rock3dGame/source/game/Menu.cpp | 5 ++++- src/Rock3dGame/source/game/RaceMenu2.cpp | 6 +++--- src/Rock3dGame/source/game/Weapon.cpp | 8 ++++---- 12 files changed, 32 insertions(+), 25 deletions(-) diff --git a/src/MathLib/header/lslMath.inl b/src/MathLib/header/lslMath.inl index 9b6e344f..f5a79085 100644 --- a/src/MathLib/header/lslMath.inl +++ b/src/MathLib/header/lslMath.inl @@ -458,7 +458,7 @@ inline float QuatAngle(const glm::quat& quat1, const glm::quat& quat2) inline glm::quat QuatRotation(const glm::quat& quat1, const glm::quat& quat2) { - return glm::inverse(quat1) * quat2; + return quat2 * glm::inverse(quat1); } inline const D3DXVECTOR3& QuatRotateVec3(D3DXVECTOR3& res, const D3DXVECTOR3& vec, const glm::quat& quat) diff --git a/src/Rock3dEngine/source/graph/FxManager.cpp b/src/Rock3dEngine/source/graph/FxManager.cpp index 7122c633..0b0ac6ec 100644 --- a/src/Rock3dEngine/source/graph/FxManager.cpp +++ b/src/Rock3dEngine/source/graph/FxManager.cpp @@ -1343,14 +1343,14 @@ void FxFlowEmitter::UpdateParticle(FxParticle* value, float dTime, bool init) D3DXVec3Normalize(&dir, &speed); glm::quat rot; QuatShortestArc(XVector, dir, rot); - particle->SetRot(rot * particle->speedRot); + particle->SetRot(particle->speedRot * rot); } else { glm::vec3 rotAxe = glm::axis(particle->speedRot); float rotAngle = glm::angle(particle->speedRot); glm::quat rotDt = glm::angleAxis(rotAngle * dTime, rotAxe); - particle->SetRot(particle->GetRot() * rotDt); + particle->SetRot(rotDt * particle->GetRot()); } particle->SetScale(particle->GetScale() + particle->speedScale * dTime); diff --git a/src/Rock3dEngine/source/graph/SceneManager.cpp b/src/Rock3dEngine/source/graph/SceneManager.cpp index be15c0e2..f4f8d0ca 100644 --- a/src/Rock3dEngine/source/graph/SceneManager.cpp +++ b/src/Rock3dEngine/source/graph/SceneManager.cpp @@ -133,6 +133,7 @@ void BaseSceneNode::ExtractRotation(_RotationStyle style) const case rsQuaternion: _rot = glm::quat_cast(Matrix4DxToGlm(_rotMat)); + //_rot = glm::quat(-_rot.w, _rot.x, _rot.y, _rot.z); break; case rsVectors: diff --git a/src/Rock3dEngine/source/gui/GUI.cpp b/src/Rock3dEngine/source/gui/GUI.cpp index 97c368e0..c875c46d 100644 --- a/src/Rock3dEngine/source/gui/GUI.cpp +++ b/src/Rock3dEngine/source/gui/GUI.cpp @@ -3524,7 +3524,7 @@ ViewPort3d::~ViewPort3d() void ViewPort3d::AnimProgress(float deltaTime) { - glm::quat rot = glm::mix(GetBox()->GetRot(), _rot3dSpeed * GetBox()->GetRot(), deltaTime); + glm::quat rot = glm::mix(GetBox()->GetRot(), GetBox()->GetRot() * _rot3dSpeed, deltaTime); GetBox()->SetRot(rot); } @@ -3570,7 +3570,7 @@ bool ViewPort3d::OnMouseOver(const MouseMove& mMove) //Вращение по одной оси, совпадающией с up mesh glm::quat rotZ = glm::angleAxis(D3DX_PI * mMove.dtCoord.x / 200.0f, Vec3DxToGlm(ZVector)); - GetBox()->SetRot(rotZ * GetBox()->GetRot()); + GetBox()->SetRot(GetBox()->GetRot() * rotZ); } } diff --git a/src/Rock3dGame/source/edit/SceneControl.cpp b/src/Rock3dGame/source/edit/SceneControl.cpp index fc0e382a..91378b41 100644 --- a/src/Rock3dGame/source/edit/SceneControl.cpp +++ b/src/Rock3dGame/source/edit/SceneControl.cpp @@ -188,7 +188,7 @@ bool SceneControl::Control::OnMouseMoveEvent(const game::MouseMove& mMove) glm::quat rotY = glm::angleAxis(angleY, Vec3DxToGlm(_owner->_edit->GetWorld()->GetCamera()->GetRight())); glm::quat rot = abs(angleZ) > abs(angleY) ? rotZ : rotY; - selNode->SetRot(_clStartRot * rot); + selNode->SetRot(rot * _clStartRot); return true; } diff --git a/src/Rock3dGame/source/game/CameraManager.cpp b/src/Rock3dGame/source/game/CameraManager.cpp index 0e63f923..457fda08 100644 --- a/src/Rock3dGame/source/game/CameraManager.cpp +++ b/src/Rock3dGame/source/game/CameraManager.cpp @@ -85,7 +85,7 @@ bool CameraManager::Control::OnMouseMoveEvent(const MouseMove& mMove) { glm::quat quatZ = glm::angleAxis(0.005f * (-mMove.dtCoord.x), Vec3DxToGlm(ZVector)); glm::quat quatRight = glm::angleAxis(0.005f * mMove.dtCoord.y, Vec3DxToGlm(right)); - rot = rot * quatRight * quatZ; + rot = quatZ * quatRight * rot; camera->SetRot(rot); _manager->SyncLight(); @@ -224,7 +224,7 @@ void CameraManager::Control::OnInputFrame(float deltaTime) glm::quat isoRotY = glm::angleAxis(cIsoAngY, Vec3DxToGlm(YVector)); glm::quat isoRotZ = glm::angleAxis(cIsoAngZ, Vec3DxToGlm(ZVector)); // - glm::quat cIsoRot = isoRotY * isoRotZ; + glm::quat cIsoRot = isoRotZ * isoRotY; const float speedMove = 20.0f * deltaTime; const float angleSpeed = D3DX_PI / 2.0f * deltaTime; @@ -342,6 +342,7 @@ void CameraManager::Control::OnInputFrame(float deltaTime) D3DXMATRIX velMat; MatrixRotationFromAxis(xVec, yVec, zVec, velMat); glm::quat velRot = glm::quat_cast(Matrix4DxToGlm(velMat)); + //velRot = glm::quat(-velRot.w, velRot.x, velRot.y, velRot.z); // glm::quat camQuat1 = rot; @@ -374,7 +375,7 @@ void CameraManager::Control::OnInputFrame(float deltaTime) D3DXVec3Lerp(&camPos, &camPos1, &camPos2, 8.0f * deltaTime);*/ glm::quat yRot = glm::angleAxis(D3DX_PI * 12.0f, glm::vec3(0, 1, 0)); - camQuat = yRot * camQuat; + camQuat = camQuat * yRot; pos = camPos; rot = camQuat; @@ -834,7 +835,7 @@ void CameraManager::GetObserverCoord(const D3DXVECTOR3& targetPos, float targetD } glm::quat dRotZ = glm::angleAxis(dAngZ, Vec3DxToGlm(ZVector)); - rot = rot * dRotZ; + rot = dRotZ * rot; if (_clampAngle.x != 0 || _clampAngle.y != 0) { @@ -880,6 +881,7 @@ void CameraManager::GetObserverCoord(const D3DXVECTOR3& targetPos, float targetD D3DXMATRIX rotMat; MatrixRotationFromAxis(xAxis, yAxis, zAxis, rotMat); rot = glm::quat_cast(Matrix4DxToGlm(rotMat)); + //rot = glm::quat(-rot.w, rot.x, rot.y, rot.z); if (dir != NULL) { @@ -912,7 +914,7 @@ void CameraManager::GetObserverCoord(const D3DXVECTOR3& targetPos, float targetD angUp = _clampAngle.w; dRotY = glm::angleAxis(dAngY, Vec3DxToGlm(yAxis)); - rot = rot * dRotY; + rot = dRotY * rot; } D3DXVECTOR3 xAxis; @@ -948,6 +950,7 @@ void CameraManager::GetObserverCoord(const D3DXVECTOR3& targetPos, float targetD D3DXMATRIX rotMat; MatrixRotationFromAxis(xAxis, yAxis, zAxis, rotMat); rot = glm::quat_cast(Matrix4DxToGlm(rotMat)); + //rot = glm::quat(-rot.w, rot.x, rot.y, rot.z); } } diff --git a/src/Rock3dGame/source/game/Environment.cpp b/src/Rock3dGame/source/game/Environment.cpp index 5fb077b6..baa32353 100644 --- a/src/Rock3dGame/source/game/Environment.cpp +++ b/src/Rock3dGame/source/game/Environment.cpp @@ -68,7 +68,7 @@ Environment::Environment(World* world): _world(world), _wheater(ewClody), _world glm::quat rot1 = glm::angleAxis(D3DX_PI / 4.0f, Vec3DxToGlm(YVector)); glm::quat rot2 = glm::angleAxis(-D3DX_PI / 4.0f, Vec3DxToGlm(ZVector)); - _sunRot = rot1 * rot2; + _sunRot = rot2 * rot1; //текстура по умолчанию. Обязательно должна быть! GetGraph()->SetSkyTex("Data\\World1\\Texture\\skyTex1.dds"); diff --git a/src/Rock3dGame/source/game/GameCar.cpp b/src/Rock3dGame/source/game/GameCar.cpp index 9f7ed475..d3ca6b13 100644 --- a/src/Rock3dGame/source/game/GameCar.cpp +++ b/src/Rock3dGame/source/game/GameCar.cpp @@ -195,11 +195,11 @@ void CarWheel::PxSyncWheel(float alpha) glm::quat quat1 = glm::angleAxis(_steerAngle, Vec3DxToGlm(ZVector)); glm::quat quat2 = glm::angleAxis(_summAngle, Vec3DxToGlm(YVector)); // NullQuaternion; - glm::quat resRot = quat2 * quat1; + glm::quat resRot = quat1 * quat2; if (invertWheel) { glm::quat invRot = glm::angleAxis(D3DX_PI, Vec3DxToGlm(ZVector)); - resRot = invRot * resRot; + resRot = resRot * invRot; } if (alpha < 1.0f) diff --git a/src/Rock3dGame/source/game/GameObject.cpp b/src/Rock3dGame/source/game/GameObject.cpp index 9519d0b7..d2b8cd14 100644 --- a/src/Rock3dGame/source/game/GameObject.cpp +++ b/src/Rock3dGame/source/game/GameObject.cpp @@ -312,7 +312,7 @@ void GameObject::OnFrame(float deltaTime, float pxAlpha) _rotSyncAngle = std::min(_rotSyncAngle + 1.3f * D3DX_PI * deltaTime, 0.0f); } glm::quat rot = glm::angleAxis(-_rotSyncAngle, Vec3DxToGlm(_rotSyncAxis)); - _grActor->SetRot(_grActor->GetRot() * rot); + _grActor->SetRot(rot * _grActor->GetRot()); } if (_posSyncDist2 > 0 && _posSyncDist2 < 5.0f) @@ -338,12 +338,12 @@ void GameObject::OnFrame(float deltaTime, float pxAlpha) } glm::quat rot = glm::angleAxis(-_rotSyncAngle2, Vec3DxToGlm(_rotSyncAxis2)); - _grActor->SetRot(_grActor->GetRot() * _rotSync2 * rot); + _grActor->SetRot(rot * _rotSync2 * _grActor->GetRot()); } else if (_rotSyncLength2 != 0) { _rotSyncAngle2 = 0.0f; - _grActor->SetRot(_grActor->GetRot() * _rotSync2); + _grActor->SetRot(_rotSync2 * _grActor->GetRot()); } } } diff --git a/src/Rock3dGame/source/game/Menu.cpp b/src/Rock3dGame/source/game/Menu.cpp index b7d32667..d2dc16ca 100644 --- a/src/Rock3dGame/source/game/Menu.cpp +++ b/src/Rock3dGame/source/game/Menu.cpp @@ -354,7 +354,10 @@ glm::quat Menu::GetIsoRot() glm::quat rotY = glm::angleAxis(0.0f, Vec3DxToGlm(YVector)); glm::quat rotX = glm::angleAxis(-D3DX_PI / 3.0f, Vec3DxToGlm(XVector)); - return rotZ * rotY * rotX; + //return rotZ * rotY * rotX; + return rotX * rotY * rotZ; + //return rotX * (rotY * rotZ); + //return (rotY * rotZ) * rotX; } void Menu::SetScreenFon(bool init) diff --git a/src/Rock3dGame/source/game/RaceMenu2.cpp b/src/Rock3dGame/source/game/RaceMenu2.cpp index 530f5282..0af71bb6 100644 --- a/src/Rock3dGame/source/game/RaceMenu2.cpp +++ b/src/Rock3dGame/source/game/RaceMenu2.cpp @@ -42,7 +42,7 @@ void CarFrame::OnProgress(float deltaTime) { glm::quat rot = _secretMapObj->GetGameObj().GetRot(); glm::quat dRot = glm::angleAxis(2.0f * D3DX_PI * deltaTime * 0.1f, Vec3DxToGlm(ZVector)); - _secretMapObj->GetGameObj().SetRot(dRot * rot); + _secretMapObj->GetGameObj().SetRot(rot * dRot); } } @@ -1167,7 +1167,7 @@ gui::ViewPort3d* WorkshopFrame::AddGood(Slot* slot, int index, int count) glm::quat quat = glm::angleAxis(D3DX_PI / 2.0f, Vec3DxToGlm(ZVector)); viewPort->SetRot3dSpeed(quat); quat = glm::angleAxis(2.0f * D3DX_PI * index / count, Vec3DxToGlm(ZVector)); - viewPort->GetBox()->SetRot(quat * viewPort->GetBox()->GetRot()); + viewPort->GetBox()->SetRot(viewPort->GetBox()->GetRot() * quat); } gui::PlaneFon* box = menu()->CreatePlane(viewPort, NULL, "GUI\\slot2Frame.png", true, IdentityVec2, gui::Material::bmTransparency); @@ -3216,7 +3216,7 @@ RaceMainFrame::RaceMainFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent _slots[i]->SetRot3dSpeed(quat); quat = glm::angleAxis(2.0f * D3DX_PI * i / 6.0f, Vec3DxToGlm(ZVector)); - _slots[i]->GetBox()->SetRot(quat * _slots[i]->GetBox()->GetRot()); + _slots[i]->GetBox()->SetRot(_slots[i]->GetBox()->GetRot() * quat); } for (int i = 0; i < cMenuItemEnd; ++i) diff --git a/src/Rock3dGame/source/game/Weapon.cpp b/src/Rock3dGame/source/game/Weapon.cpp index a821d729..6fcc17bf 100644 --- a/src/Rock3dGame/source/game/Weapon.cpp +++ b/src/Rock3dGame/source/game/Weapon.cpp @@ -44,10 +44,10 @@ void Proj::LocateProj(GameObject* weapon, bool pos, bool rot, const D3DXVECTOR3* { D3DXVECTOR3 dir; D3DXVec3Normalize(&dir, speed); - rot = rot * weapon->GetRot() * QuatShortestArc(XVector, dir); + rot = QuatShortestArc(XVector, dir) * weapon->GetRot() * rot; } else if (weapon) - rot = rot * weapon->GetWorldRot(); + rot = weapon->GetWorldRot() * rot; this->SetRot(rot); } @@ -963,7 +963,7 @@ void Proj::DrobilkaUpdate(float deltaTime) SetWorldRot(_weapon->GetWorldRot()); glm::quat rot = glm::angleAxis(_desc.angleSpeed * deltaTime, Vec3DxToGlm(XVector)); - _weapon->SetRot(_weapon->GetRot() * rot); + _weapon->SetRot(rot * _weapon->GetRot()); } if (_model && _model->GetGameObj().GetLiveState() != lsDeath && (_time1 -= deltaTime) <= 0) @@ -1229,7 +1229,7 @@ void Proj::ResonanseUpdate(float deltaTime) glm::quat dRot = glm::angleAxis(_desc.angleSpeed * deltaTime, Vec3DxToGlm(XVector)); - SetRot(dRot * GetRot()); + SetRot(GetRot() * dRot); } void Proj::OnDestroy(GameObject* sender) From 2f27927013de91714e5b117ee55482f5809ca77b Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Sat, 26 Jun 2021 14:07:25 +0300 Subject: [PATCH 27/55] math: fix items rotation in main menu --- src/MathLib/header/lslMath.inl | 2 +- src/Rock3dEngine/source/graph/FxManager.cpp | 2 +- src/Rock3dEngine/source/graph/SceneManager.cpp | 16 ++++++++-------- src/Rock3dGame/source/game/CameraManager.cpp | 6 +++--- src/Rock3dGame/source/game/GameBase.cpp | 2 +- src/Rock3dGame/source/game/HudMenu.cpp | 2 +- src/Rock3dGame/source/snd/Audio.cpp | 2 +- 7 files changed, 16 insertions(+), 16 deletions(-) diff --git a/src/MathLib/header/lslMath.inl b/src/MathLib/header/lslMath.inl index f5a79085..7bf1668a 100644 --- a/src/MathLib/header/lslMath.inl +++ b/src/MathLib/header/lslMath.inl @@ -87,7 +87,7 @@ inline void BuildWorldMatrix(const D3DXVECTOR3& pos, const D3DXVECTOR3& scale, c D3DXMATRIX scaleMat; D3DXMatrixScaling(&scaleMat, scale.x, scale.y, scale.z); - D3DXMATRIX rotMat = Matrix4GlmToDx(glm::toMat4(rot)); + D3DXMATRIX rotMat = Matrix4GlmToDx(glm::transpose(glm::mat4_cast(rot))); D3DXMATRIX transMat; D3DXMatrixTranslation(&transMat, pos.x, pos.y, pos.z); diff --git a/src/Rock3dEngine/source/graph/FxManager.cpp b/src/Rock3dEngine/source/graph/FxManager.cpp index 0b0ac6ec..033a6af1 100644 --- a/src/Rock3dEngine/source/graph/FxManager.cpp +++ b/src/Rock3dEngine/source/graph/FxManager.cpp @@ -38,7 +38,7 @@ void FxParticle::BuildWorldMat() const D3DXMATRIX scaleMat, rotMat, transMat; D3DXMatrixScaling(&scaleMat, _scale.x, _scale.y, _scale.z); - rotMat = Matrix4GlmToDx(glm::toMat4(_rot)); + rotMat = Matrix4GlmToDx(glm::transpose(glm::mat4_cast(_rot))); D3DXMatrixTranslation(&transMat, _pos.x, _pos.y, _pos.z); _worldMat = scaleMat * rotMat * transMat; diff --git a/src/Rock3dEngine/source/graph/SceneManager.cpp b/src/Rock3dEngine/source/graph/SceneManager.cpp index f4f8d0ca..87f5d633 100644 --- a/src/Rock3dEngine/source/graph/SceneManager.cpp +++ b/src/Rock3dEngine/source/graph/SceneManager.cpp @@ -133,7 +133,7 @@ void BaseSceneNode::ExtractRotation(_RotationStyle style) const case rsQuaternion: _rot = glm::quat_cast(Matrix4DxToGlm(_rotMat)); - //_rot = glm::quat(-_rot.w, _rot.x, _rot.y, _rot.z); + _rot = glm::quat(-_rot.w, _rot.x, _rot.y, _rot.z); break; case rsVectors: @@ -466,14 +466,14 @@ void BaseSceneNode::OnProgress(float deltaTime) D3DXVec3Normalize(&dir, &speedPos); glm::quat rot; QuatShortestArc(XVector, dir, rot); - SetRot(rot * speedRot); + SetRot(speedRot * rot); } else { glm::vec3 rotAxe = glm::axis(speedRot); float rotAngle = glm::angle(speedRot); glm::quat rotDt = glm::angleAxis(rotAngle * deltaTime, rotAxe); - SetRot(GetRot() * rotDt); + SetRot(rotDt * GetRot()); } SetScale(GetScale() + speedScale * deltaTime); @@ -922,7 +922,7 @@ D3DXMATRIX BaseSceneNode::GetRotMat() const { if (!_rotInvalidate.test(rsQuaternion)) { - _rotMat = Matrix4GlmToDx(glm::toMat4(_rot)); + _rotMat = Matrix4GlmToDx(glm::transpose(glm::mat4_cast(_rot))); } else { @@ -1028,14 +1028,14 @@ D3DXMATRIX BaseSceneNode::GetWorldCombMat(CombMatType type) const { D3DXMATRIX scaleMat = GetWorldScale(); - D3DXMATRIX rotMat = Matrix4GlmToDx(glm::toMat4(GetWorldRot())); + D3DXMATRIX rotMat = Matrix4GlmToDx(glm::transpose(glm::mat4_cast(GetWorldRot()))); return scaleMat * rotMat; } case cmtRotTrans: { - D3DXMATRIX rotMat = Matrix4GlmToDx(glm::toMat4(GetWorldRot())); + D3DXMATRIX rotMat = Matrix4GlmToDx(glm::transpose(glm::mat4_cast(GetWorldRot()))); D3DXMATRIX transMat; D3DXVECTOR3 pos = GetWorldPos(); @@ -1072,14 +1072,14 @@ glm::quat BaseSceneNode::GetWorldRot() const glm::quat res = GetRot(); const BaseSceneNode* curObj = this; while (curObj = curObj->GetParent()) - res *= curObj->GetRot(); + res = curObj->GetRot() * res; return res; } void BaseSceneNode::SetWorldRot(const glm::quat& value) { if (_parent) - return SetRot(value * _parent->GetWorldRot()); + return SetRot(_parent->GetWorldRot() * value); else return SetRot(value); } diff --git a/src/Rock3dGame/source/game/CameraManager.cpp b/src/Rock3dGame/source/game/CameraManager.cpp index 457fda08..03063afe 100644 --- a/src/Rock3dGame/source/game/CameraManager.cpp +++ b/src/Rock3dGame/source/game/CameraManager.cpp @@ -342,7 +342,7 @@ void CameraManager::Control::OnInputFrame(float deltaTime) D3DXMATRIX velMat; MatrixRotationFromAxis(xVec, yVec, zVec, velMat); glm::quat velRot = glm::quat_cast(Matrix4DxToGlm(velMat)); - //velRot = glm::quat(-velRot.w, velRot.x, velRot.y, velRot.z); + velRot = glm::quat(-velRot.w, velRot.x, velRot.y, velRot.z); // glm::quat camQuat1 = rot; @@ -881,7 +881,7 @@ void CameraManager::GetObserverCoord(const D3DXVECTOR3& targetPos, float targetD D3DXMATRIX rotMat; MatrixRotationFromAxis(xAxis, yAxis, zAxis, rotMat); rot = glm::quat_cast(Matrix4DxToGlm(rotMat)); - //rot = glm::quat(-rot.w, rot.x, rot.y, rot.z); + rot = glm::quat(-rot.w, rot.x, rot.y, rot.z); if (dir != NULL) { @@ -950,7 +950,7 @@ void CameraManager::GetObserverCoord(const D3DXVECTOR3& targetPos, float targetD D3DXMATRIX rotMat; MatrixRotationFromAxis(xAxis, yAxis, zAxis, rotMat); rot = glm::quat_cast(Matrix4DxToGlm(rotMat)); - //rot = glm::quat(-rot.w, rot.x, rot.y, rot.z); + rot = glm::quat(-rot.w, rot.x, rot.y, rot.z); } } diff --git a/src/Rock3dGame/source/game/GameBase.cpp b/src/Rock3dGame/source/game/GameBase.cpp index cb066bb8..b542c9ec 100644 --- a/src/Rock3dGame/source/game/GameBase.cpp +++ b/src/Rock3dGame/source/game/GameBase.cpp @@ -1269,7 +1269,7 @@ void PodushkaAnim::OnProgress(float deltaTime) { D3DXMATRIX localMat = _target->GetMat(); glm::quat rotQuat = glm::angleAxis(D3DX_PI * deltaTime * linSpeed * 0.1f, Vec3DxToGlm(XVector)); - D3DXMATRIX rotMat = Matrix4GlmToDx(glm::toMat4(rotQuat)); + D3DXMATRIX rotMat = Matrix4GlmToDx(glm::transpose(glm::mat4_cast(rotQuat))); const res::FaceGroup& fg = _target->GetMesh()->GetData()->faceGroups[_target->GetMeshId()]; D3DXVECTOR3 offset = (fg.minPos + fg.maxPos) / 2; diff --git a/src/Rock3dGame/source/game/HudMenu.cpp b/src/Rock3dGame/source/game/HudMenu.cpp index dd5104fa..a124dd59 100644 --- a/src/Rock3dGame/source/game/HudMenu.cpp +++ b/src/Rock3dGame/source/game/HudMenu.cpp @@ -1043,7 +1043,7 @@ void MiniMapFrame::BuildPath(WayPath& path, res::VertexData& data) { float dAlpha = i/smSlice * alpha2; glm::quat rot = glm::angleAxis(ccw ? dAlpha : -dAlpha, Vec3DxToGlm(ZVector)); - D3DXMATRIX rotMat = Matrix4GlmToDx(glm::toMat4(rot)); + D3DXMATRIX rotMat = Matrix4GlmToDx(glm::transpose(glm::mat4_cast(rot))); auto rotMatGLM = Matrix4DxToGlm(rotMat); // remove after D3DXMATRIX replacement glm::vec2 vec = Vec2TransformNormal(smVec, rotMatGLM); diff --git a/src/Rock3dGame/source/snd/Audio.cpp b/src/Rock3dGame/source/snd/Audio.cpp index 21457b4f..3b45a558 100644 --- a/src/Rock3dGame/source/snd/Audio.cpp +++ b/src/Rock3dGame/source/snd/Audio.cpp @@ -1689,7 +1689,7 @@ void Source3d::ApplyX3dEffect() X3DAUDIO_LISTENER xList; ZeroMemory(&xList, sizeof(xList)); xList.Position = listener->pos; - D3DXMATRIX rotMat = Matrix4GlmToDx(glm::toMat4(listener->rot)); + D3DXMATRIX rotMat = Matrix4GlmToDx(glm::transpose(glm::mat4_cast(listener->rot))); xList.OrientFront = D3DXVECTOR3(rotMat.m[0]); xList.OrientTop = D3DXVECTOR3(rotMat.m[2]); From 9745c15d7c58bd05f4c0255c8bca284fd9998d7a Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Sat, 26 Jun 2021 15:23:32 +0300 Subject: [PATCH 28/55] math: fix car rotation, replace glm::mix with glm::slerp --- src/Rock3dEngine/source/gui/GUI.cpp | 2 +- src/Rock3dGame/source/game/CameraManager.cpp | 8 ++++---- src/Rock3dGame/source/game/GameCar.cpp | 2 +- src/Rock3dGame/source/game/GameObject.cpp | 2 +- src/Rock3dGame/source/game/Weapon.cpp | 2 +- 5 files changed, 8 insertions(+), 8 deletions(-) diff --git a/src/Rock3dEngine/source/gui/GUI.cpp b/src/Rock3dEngine/source/gui/GUI.cpp index c875c46d..4a66b8ac 100644 --- a/src/Rock3dEngine/source/gui/GUI.cpp +++ b/src/Rock3dEngine/source/gui/GUI.cpp @@ -3524,7 +3524,7 @@ ViewPort3d::~ViewPort3d() void ViewPort3d::AnimProgress(float deltaTime) { - glm::quat rot = glm::mix(GetBox()->GetRot(), GetBox()->GetRot() * _rot3dSpeed, deltaTime); + glm::quat rot = glm::slerp(GetBox()->GetRot(), GetBox()->GetRot() * _rot3dSpeed, deltaTime); GetBox()->SetRot(rot); } diff --git a/src/Rock3dGame/source/game/CameraManager.cpp b/src/Rock3dGame/source/game/CameraManager.cpp index 03063afe..a25a1e5c 100644 --- a/src/Rock3dGame/source/game/CameraManager.cpp +++ b/src/Rock3dGame/source/game/CameraManager.cpp @@ -150,7 +150,7 @@ void CameraManager::Control::OnInputFrame(float deltaTime) D3DXVECTOR3 pos; D3DXVec3Lerp(&pos, &_manager->_flySPos, &_manager->_flyPos, alpha); - glm::quat rot = glm::mix(_manager->_flySRot, _manager->_flyRot, alpha); + glm::quat rot = glm::slerp(_manager->_flySRot, _manager->_flyRot, alpha); camera->SetPos(pos); camera->SetRot(rot); @@ -347,7 +347,7 @@ void CameraManager::Control::OnInputFrame(float deltaTime) // glm::quat camQuat1 = rot; glm::quat camQuat2 = velRot; - glm::quat camQuat = glm::mix(camQuat1, camQuat2, 6.0f * deltaTime); + glm::quat camQuat = glm::slerp(camQuat1, camQuat2, 6.0f * deltaTime); /*D3DXVECTOR3 camPos; Vec3Rotate(cCamTargetOff, camQuat, camPos); @@ -484,7 +484,7 @@ void CameraManager::Control::OnInputFrame(float deltaTime) if (leftDown && _staticVec2.z == 0.0f) { glm::vec2 dMPos2 = mPos - glm::vec2(_staticVec2.x, _staticVec2.y); - if (glm::length(dMPos2) > 15.0f) + if (glm::length(dMPos2) > 15.0f) _staticVec2.z = 1.0f; else leftDown = false; @@ -963,7 +963,7 @@ void CameraManager::GetObserverCoord(const D3DXVECTOR3& targetPos, float targetD if (camRot != NULL) { - camRot = &glm::mix(*camRot, rot, 6.0f * deltaTime); + *camRot = glm::slerp(*camRot, rot, 6.0f * deltaTime); } if (camPos != NULL && camRot != NULL) diff --git a/src/Rock3dGame/source/game/GameCar.cpp b/src/Rock3dGame/source/game/GameCar.cpp index d3ca6b13..a50d0a9b 100644 --- a/src/Rock3dGame/source/game/GameCar.cpp +++ b/src/Rock3dGame/source/game/GameCar.cpp @@ -204,7 +204,7 @@ void CarWheel::PxSyncWheel(float alpha) if (alpha < 1.0f) { - resRot = glm::mix(_pxPrevRot, resRot, alpha); + resRot = glm::slerp(_pxPrevRot, resRot, alpha); } else { diff --git a/src/Rock3dGame/source/game/GameObject.cpp b/src/Rock3dGame/source/game/GameObject.cpp index d2b8cd14..719cba64 100644 --- a/src/Rock3dGame/source/game/GameObject.cpp +++ b/src/Rock3dGame/source/game/GameObject.cpp @@ -236,7 +236,7 @@ void GameObject::OnPxSync(float alpha) if (alpha < 1.0f) { D3DXVec3Lerp(&_pxPosLerp, &_pxPrevPos, &_pxActor->GetPos(), alpha); - _pxRotLerp = glm::mix(_pxPrevRot, _pxActor->GetRot(), alpha); + _pxRotLerp = glm::slerp(_pxPrevRot, _pxActor->GetRot(), alpha); D3DXVec3Lerp(&_pxVelocityLerp, &_pxPrevVelocity, &pxVelocityLerp, alpha); } else diff --git a/src/Rock3dGame/source/game/Weapon.cpp b/src/Rock3dGame/source/game/Weapon.cpp index 6fcc17bf..3a1b9d27 100644 --- a/src/Rock3dGame/source/game/Weapon.cpp +++ b/src/Rock3dGame/source/game/Weapon.cpp @@ -794,7 +794,7 @@ void Proj::TorpedaUpdate(float deltaTime) QuatShortestArc(XVector, dir, rot1); if (_desc.angleSpeed > 0) { - rot = glm::mix(this->GetRot(), rot1, deltaTime * _desc.angleSpeed); + rot = glm::slerp(this->GetRot(), rot1, deltaTime * _desc.angleSpeed); } else { From 9304d9d51be514514bd1014b7d8053e18bf14707 Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Sat, 26 Jun 2021 15:41:08 +0300 Subject: [PATCH 29/55] trim spaces in the end of source code files --- src/LexStd/header/EulerAngles.h | 10 +- src/LexStd/header/lslAutoRef.h | 16 +- src/LexStd/header/lslBaseCollection.h | 32 +- src/LexStd/header/lslClassList.h | 2 +- src/LexStd/header/lslCollection.h | 8 +- src/LexStd/header/lslComponent.h | 2 +- src/LexStd/header/lslContainer.h | 18 +- src/LexStd/header/lslException.h | 2 +- src/LexStd/header/lslObject.h | 4 +- src/LexStd/header/lslResource.h | 14 +- src/LexStd/header/lslSDK.h | 16 +- src/LexStd/header/lslSafeContainer.h | 10 +- src/LexStd/header/lslSerialValue.h | 6 +- src/LexStd/header/lslSerialization.h | 34 +- src/LexStd/header/lslUpdateAble.h | 6 +- src/LexStd/header/lslUtility.h | 20 +- src/LexStd/source/EulerAngles.cpp | 2 +- src/LexStd/source/lslComponent.cpp | 16 +- src/LexStd/source/lslException.cpp | 4 +- src/LexStd/source/lslResource.cpp | 18 +- src/LexStd/source/lslSDK.cpp | 10 +- src/LexStd/source/lslSerialFileXml.cpp | 6 +- src/LexStd/source/lslSerialization.cpp | 30 +- src/MapEditor/ClassView.cpp | 10 +- src/MapEditor/ClassView.h | 8 +- src/MapEditor/FileView.cpp | 6 +- src/MapEditor/FileView.h | 4 +- src/MapEditor/MainFrm.cpp | 10 +- src/MapEditor/MainFrm.h | 4 +- src/MapEditor/MapEditor.cpp | 4 +- src/MapEditor/MapEditor.rc | 54 +- src/MapEditor/MapEditorDoc.cpp | 4 +- src/MapEditor/MapEditorDoc.h | 4 +- src/MapEditor/MapEditorView.cpp | 2 +- src/MapEditor/MapEditorView.h | 6 +- src/MapEditor/TraceView.cpp | 34 +- src/MapEditor/TraceView.h | 18 +- src/MapEditor/ViewTree.cpp | 6 +- src/MapEditor/ViewTree.h | 2 +- src/MapEditor/resource.h | 2 +- src/MapEditor/stdafx.h | 4 +- src/MapEditor/targetver.h | 4 +- src/MathLib/header/lslMath.h | 18 +- src/MathLib/header/lslMath.inl | 10 +- src/MathLib/header/lslVariant.h | 6 +- src/MathLib/header/r3dMath.h | 26 +- src/MathLib/source/r3dMath.cpp | 50 +- src/NetLib/header/net/NetChannel.h | 12 +- src/NetLib/header/net/NetClient.h | 8 +- src/NetLib/header/net/NetConnection.h | 10 +- src/NetLib/header/net/NetConnectionTCP.h | 4 +- src/NetLib/header/net/NetPlayer.h | 10 +- src/NetLib/header/net/NetServer.h | 6 +- src/NetLib/header/net/NetService.h | 8 +- src/NetLib/header/targetver.h | 4 +- src/NetLib/include/net/BitStream.h | 14 +- src/NetLib/include/net/INetChannel.h | 2 +- src/NetLib/include/net/INetPlayer.h | 4 +- src/NetLib/include/net/INetService.h | 6 +- src/NetLib/include/net/NetCommon.h | 6 +- src/NetLib/include/net/NetModel.h | 8 +- src/NetLib/source/net/BitStream.cpp | 24 +- src/NetLib/source/net/NetChannel.cpp | 10 +- src/NetLib/source/net/NetClient.cpp | 6 +- src/NetLib/source/net/NetConnection.cpp | 10 +- src/NetLib/source/net/NetConnectionTCP.cpp | 12 +- src/NetLib/source/net/NetModel.cpp | 4 +- src/NetLib/source/net/NetPlayer.cpp | 14 +- src/NetLib/source/net/NetServer.cpp | 22 +- src/NetLib/source/net/NetService.cpp | 26 +- src/RRR3d/RRR3d.cpp | 24 +- src/RRR3d/stdafx.h | 4 +- src/Rock3dEngine/header/GraphManager.h | 22 +- src/Rock3dEngine/header/graph/Actor.h | 4 +- src/Rock3dEngine/header/graph/ActorManager.h | 12 +- src/Rock3dEngine/header/graph/ContextInfo.h | 38 +- .../header/graph/Driver/D3D9RenderDriver.h | 2 +- src/Rock3dEngine/header/graph/Engine.h | 8 +- src/Rock3dEngine/header/graph/FxManager.h | 40 +- src/Rock3dEngine/header/graph/GrassField.h | 2 +- src/Rock3dEngine/header/graph/HDREffect.h | 2 +- .../header/graph/MappingShaders.h | 8 +- .../header/graph/MaterialLibrary.h | 20 +- src/Rock3dEngine/header/graph/OctreeSort.h | 18 +- .../header/graph/RenderToTexture.h | 12 +- src/Rock3dEngine/header/graph/SceneManager.h | 30 +- src/Rock3dEngine/header/graph/SceneNode.h | 8 +- src/Rock3dEngine/header/graph/Shader.h | 14 +- .../header/graph/ShadowMapRender.h | 6 +- src/Rock3dEngine/header/graph/SkyBox.h | 2 +- src/Rock3dEngine/header/graph/StdNode.h | 8 +- src/Rock3dEngine/header/graph/ToneMapping.h | 4 +- src/Rock3dEngine/header/graph/VideoResource.h | 24 +- src/Rock3dEngine/header/gui/GUI.h | 70 +-- .../header/include/graph/IActor.h | 6 +- src/Rock3dEngine/header/px/Physx.h | 42 +- src/Rock3dEngine/header/res/D3DXImageFile.h | 6 +- src/Rock3dEngine/header/res/GraphResource.h | 21 +- src/Rock3dEngine/source/GraphManager.cpp | 176 +++---- src/Rock3dEngine/source/graph/Actor.cpp | 4 +- .../source/graph/ActorManager.cpp | 20 +- src/Rock3dEngine/source/graph/BloomEffect.cpp | 30 +- src/Rock3dEngine/source/graph/ClearSurf.cpp | 4 +- src/Rock3dEngine/source/graph/ContextInfo.cpp | 58 +- src/Rock3dEngine/source/graph/DepthMap.cpp | 2 +- .../source/graph/Driver/D3D9RenderDriver.cpp | 8 +- .../source/graph/Driver/RenderDriver.cpp | 2 +- src/Rock3dEngine/source/graph/Engine.cpp | 50 +- src/Rock3dEngine/source/graph/FogPlane.cpp | 4 +- src/Rock3dEngine/source/graph/FxManager.cpp | 78 +-- .../source/graph/GaussianBlur.cpp | 14 +- src/Rock3dEngine/source/graph/GrassField.cpp | 30 +- src/Rock3dEngine/source/graph/HDREffect.cpp | 22 +- .../source/graph/MappingShaders.cpp | 24 +- .../source/graph/MaterialLibrary.cpp | 42 +- src/Rock3dEngine/source/graph/OctreeSort.cpp | 38 +- .../source/graph/RenderToTexture.cpp | 28 +- .../source/graph/SceneManager.cpp | 160 +++--- src/Rock3dEngine/source/graph/SceneNode.cpp | 4 +- src/Rock3dEngine/source/graph/Shader.cpp | 14 +- .../source/graph/ShadowMapRender.cpp | 44 +- src/Rock3dEngine/source/graph/SkyBox.cpp | 10 +- src/Rock3dEngine/source/graph/StdNode.cpp | 90 ++-- src/Rock3dEngine/source/graph/SunShaft.cpp | 6 +- src/Rock3dEngine/source/graph/ToneMapping.cpp | 4 +- .../source/graph/VideoResource.cpp | 88 ++-- src/Rock3dEngine/source/gui/GUI.cpp | 212 ++++---- src/Rock3dEngine/source/px/Physx.cpp | 124 ++--- src/Rock3dEngine/source/px/Stream.cpp | 4 +- src/Rock3dEngine/source/res/D3DXImageFile.cpp | 6 +- src/Rock3dEngine/source/res/GraphResource.cpp | 52 +- src/Rock3dEngine/source/res/R3DFile.cpp | 10 +- src/Rock3dGame/header/edit/Edit.h | 2 +- src/Rock3dGame/header/edit/Map.h | 6 +- src/Rock3dGame/header/edit/SceneControl.h | 6 +- src/Rock3dGame/header/edit/Trace.h | 10 +- src/Rock3dGame/header/game/AICar.h | 8 +- src/Rock3dGame/header/game/AIPlayer.h | 6 +- src/Rock3dGame/header/game/AchievmentModel.h | 52 +- src/Rock3dGame/header/game/CameraManager.h | 12 +- src/Rock3dGame/header/game/ControlManager.h | 12 +- src/Rock3dGame/header/game/DataBase.h | 18 +- src/Rock3dGame/header/game/DialogMenu2.h | 24 +- src/Rock3dGame/header/game/Environment.h | 12 +- src/Rock3dGame/header/game/FinalMenu.h | 2 +- src/Rock3dGame/header/game/FinishMenu.h | 2 +- src/Rock3dGame/header/game/GameBase.h | 16 +- src/Rock3dGame/header/game/GameCar.h | 20 +- src/Rock3dGame/header/game/GameEvent.h | 6 +- src/Rock3dGame/header/game/GameMode.h | 46 +- src/Rock3dGame/header/game/GameObject.h | 22 +- src/Rock3dGame/header/game/HudMenu.h | 28 +- src/Rock3dGame/header/game/HumanPlayer.h | 8 +- src/Rock3dGame/header/game/Logic.h | 20 +- src/Rock3dGame/header/game/MainMenu2.h | 66 +-- src/Rock3dGame/header/game/Map.h | 4 +- src/Rock3dGame/header/game/MapObj.h | 16 +- src/Rock3dGame/header/game/Menu.h | 30 +- src/Rock3dGame/header/game/MenuSystem.h | 2 +- src/Rock3dGame/header/game/OptionsMenu.h | 30 +- src/Rock3dGame/header/game/Player.h | 30 +- src/Rock3dGame/header/game/Race.h | 124 ++--- src/Rock3dGame/header/game/RaceMenu2.h | 60 +-- src/Rock3dGame/header/game/RecordLib.h | 8 +- src/Rock3dGame/header/game/ResourceManager.h | 50 +- src/Rock3dGame/header/game/RockCar.h | 4 +- src/Rock3dGame/header/game/Trace.h | 2 +- src/Rock3dGame/header/game/View.h | 6 +- src/Rock3dGame/header/game/Weapon.h | 54 +- src/Rock3dGame/header/game/World.h | 8 +- src/Rock3dGame/header/net/NetBase.h | 2 +- src/Rock3dGame/header/net/NetGame.h | 12 +- src/Rock3dGame/header/net/NetPlayer.h | 8 +- src/Rock3dGame/header/net/NetRace.h | 18 +- src/Rock3dGame/header/net/SteamCommon.h | 8 +- src/Rock3dGame/header/net/SteamService.h | 38 +- src/Rock3dGame/header/net/p2pauth.h | 2 +- src/Rock3dGame/header/snd/Audio.h | 36 +- src/Rock3dGame/header/targetver.h | 4 +- src/Rock3dGame/header/video/playback.h | 4 +- src/Rock3dGame/include/ICameraManager.h | 2 +- src/Rock3dGame/include/IDataBase.h | 2 +- src/Rock3dGame/include/IGameCar.h | 2 +- src/Rock3dGame/include/IView.h | 4 +- src/Rock3dGame/include/IWorld.h | 4 +- src/Rock3dGame/include/Rock3dGame.h | 4 +- src/Rock3dGame/source/Rock3dGame.cpp | 4 +- src/Rock3dGame/source/edit/EditDataBase.cpp | 4 +- src/Rock3dGame/source/edit/EditMap.cpp | 22 +- src/Rock3dGame/source/edit/EditTrace.cpp | 14 +- src/Rock3dGame/source/edit/SceneControl.cpp | 18 +- src/Rock3dGame/source/game/AICar.cpp | 62 +-- src/Rock3dGame/source/game/AIPlayer.cpp | 64 +-- .../source/game/AchievmentModel.cpp | 64 +-- src/Rock3dGame/source/game/CameraManager.cpp | 50 +- src/Rock3dGame/source/game/ControlManager.cpp | 34 +- src/Rock3dGame/source/game/DataBase.cpp | 90 ++-- src/Rock3dGame/source/game/DialogMenu2.cpp | 56 +- src/Rock3dGame/source/game/Environment.cpp | 64 +-- src/Rock3dGame/source/game/FinalMenu.cpp | 14 +- src/Rock3dGame/source/game/FinishMenu.cpp | 8 +- src/Rock3dGame/source/game/GameBase.cpp | 66 +-- src/Rock3dGame/source/game/GameCar.cpp | 124 ++--- src/Rock3dGame/source/game/GameMode.cpp | 112 ++-- src/Rock3dGame/source/game/GameObject.cpp | 46 +- src/Rock3dGame/source/game/HudMenu.cpp | 74 +-- src/Rock3dGame/source/game/HumanPlayer.cpp | 10 +- src/Rock3dGame/source/game/Logic.cpp | 22 +- src/Rock3dGame/source/game/MainMenu2.cpp | 174 +++--- src/Rock3dGame/source/game/Map.cpp | 26 +- src/Rock3dGame/source/game/MapObj.cpp | 16 +- src/Rock3dGame/source/game/Menu.cpp | 30 +- src/Rock3dGame/source/game/OptionsMenu.cpp | 100 ++-- src/Rock3dGame/source/game/Player.cpp | 106 ++-- src/Rock3dGame/source/game/Race.cpp | 494 +++++++++--------- src/Rock3dGame/source/game/RaceMenu2.cpp | 240 ++++----- src/Rock3dGame/source/game/RecordLib.cpp | 24 +- .../source/game/ResourceManager.cpp | 318 +++++------ src/Rock3dGame/source/game/Trace.cpp | 34 +- src/Rock3dGame/source/game/TraceGfx.cpp | 12 +- src/Rock3dGame/source/game/View.cpp | 12 +- src/Rock3dGame/source/game/Weapon.cpp | 34 +- src/Rock3dGame/source/game/World.cpp | 150 +++--- src/Rock3dGame/source/net/NetGame.cpp | 4 +- src/Rock3dGame/source/net/NetPlayer.cpp | 76 +-- src/Rock3dGame/source/net/NetRace.cpp | 34 +- src/Rock3dGame/source/net/SteamService.cpp | 98 ++-- src/Rock3dGame/source/net/p2pauth.cpp | 4 +- src/Rock3dGame/source/snd/Audio.cpp | 130 ++--- src/Rock3dGame/source/video/VideoPlayer.cpp | 2 +- src/Rock3dGame/source/video/playback.cpp | 22 +- src/Rock3dGame/source/video/video.cpp | 96 ++-- src/tools/rock3dExprot.ms | 118 ++--- 233 files changed, 3544 insertions(+), 3545 deletions(-) diff --git a/src/LexStd/header/EulerAngles.h b/src/LexStd/header/EulerAngles.h index 49860d76..a0acc929 100644 --- a/src/LexStd/header/EulerAngles.h +++ b/src/LexStd/header/EulerAngles.h @@ -1,7 +1,7 @@ /**** EulerAngles.h - Support for 24 angle schemes ****/ /* Ken Shoemake, 1993 */ #ifndef _H_EulerAngles -#define _H_EulerAngles +#define _H_EulerAngles /**** QuatTypes.h - Basic type declarations ****/ #ifndef _H_QuatTypes @@ -11,7 +11,7 @@ typedef struct {float x, y, z, w;} Quat; /* Quaternion */ enum QuatPart {X, Y, Z, W}; typedef float HMatrix[4][4]; /* Right-handed, for column vectors */ typedef Quat EulerAngles; /* (x,y,z)=ang 1,2,3, w=order code */ -#endif +#endif /*** Order type constants, constructors, extractors ***/ /* There are 24 possible conventions, designated by: */ @@ -26,8 +26,8 @@ typedef Quat EulerAngles; /* (x,y,z)=ang 1,2,3, w=order code */ /* {a,b,c,ord} means Rz(c)Ry(b)Rx(a), where Rz(c)v */ /* rotates v around Z by c radians. */ #define EulFrmS 0 -#define EulFrmR 1 -#define EulFrm(ord) ((unsigned)(ord)&1) +#define EulFrmR 1 +#define EulFrm(ord) ((unsigned)(ord)&1) #define EulRepNo 0 #define EulRepYes 1 #define EulRep(ord) (((unsigned)(ord)>>1)&1) @@ -77,4 +77,4 @@ Quat Eul_ToQuat(EulerAngles ea); void Eul_ToHMatrix(EulerAngles ea, HMatrix M); EulerAngles Eul_FromHMatrix(HMatrix M, int order); EulerAngles Eul_FromQuat(Quat q, int order); -#endif +#endif diff --git a/src/LexStd/header/lslAutoRef.h b/src/LexStd/header/lslAutoRef.h index b4391d4e..0c03b936 100644 --- a/src/LexStd/header/lslAutoRef.h +++ b/src/LexStd/header/lslAutoRef.h @@ -38,22 +38,22 @@ class BaseAutoRef for (_RefList::iterator iter = _nextRefList.begin(); iter != _nextRefList.end(); ++iter) { (*iter)->_prevRef = 0; - if (_prevRef) + if (_prevRef) { - (*iter)->_prevRef = _prevRef; + (*iter)->_prevRef = _prevRef; } - else if (iter != _nextRefList.begin()) + else if (iter != _nextRefList.begin()) { (*iter)->_prevRef = *_nextRefList.begin(); } - if ((*iter)->_prevRef) + if ((*iter)->_prevRef) (*iter)->_prevRef->_nextRefList.push_back(*iter); } _nextRefList.clear(); if (_prevRef) - _prevRef->_nextRefList.remove(this); + _prevRef->_nextRefList.remove(this); } return false; @@ -66,7 +66,7 @@ template class AutoRef: public BaseAutoRef { template friend class AutoRef; private: - typedef AutoRef<_Ref> _MyClass; + typedef AutoRef<_Ref> _MyClass; typedef BaseAutoRef _MyBase; typedef std::list<_MyClass*> _RefList; private: @@ -83,7 +83,7 @@ template class AutoRef: public BaseAutoRef void FreeRef() { bool isFree = _MyBase::FreeRef(_owner); - + //Проверка на гарантированное удаление ссылки LSL_ASSERT(!(isFree && _ref && _ref->GetRefCnt() > 1)); @@ -187,7 +187,7 @@ template class AutoRef: public BaseAutoRef bool operator!=(const _Ref* value) const { return _ref != value; - } + } }; } diff --git a/src/LexStd/header/lslBaseCollection.h b/src/LexStd/header/lslBaseCollection.h index 5a606748..aaa658f8 100644 --- a/src/LexStd/header/lslBaseCollection.h +++ b/src/LexStd/header/lslBaseCollection.h @@ -58,7 +58,7 @@ template class CollectionValue template class CollectionValue<_Item, void> { private: - _Item* _item; + _Item* _item; public: CollectionValue(): _item(0) {} CollectionValue(_Item* item): _item(item) {} @@ -85,7 +85,7 @@ template class CollectionValue<_Item, void> }; template class BaseCollection: public virtual lsl::Serializable -{ +{ public: typedef _Item Item; typedef CollectionValue<_Item, _IdType> Value; @@ -152,7 +152,7 @@ template class BaseCollection: public virtual lsl::S iterator Delete(iterator iter); void Delete(const Position& pos); iterator Delete(_Item* item); - iterator Delete(iterator sIter, iterator eIter); + iterator Delete(iterator sIter, iterator eIter); void Clear(); //Поиск @@ -233,7 +233,7 @@ template class ComCollec { private: typedef Collection<_Item, _IdType, _Arg, _ArgThis> _MyBase; - typedef ComCollection<_Item, _IdType, _Arg, _ArgThis> _MyClass; + typedef ComCollection<_Item, _IdType, _Arg, _ArgThis> _MyClass; public: static const char* const cDefItemName; typedef CollectionValue<_Item, _IdType> Value; @@ -276,7 +276,7 @@ template void BaseCollection<_Item, _IdType>::Insert template void BaseCollection<_Item, _IdType>::Remove(iterator iter) { - _cont.erase(iter); + _cont.erase(iter); } template void BaseCollection<_Item, _IdType>::Remove(iterator sIter, iterator eIter) @@ -335,7 +335,7 @@ template _Item& BaseCollection<_Item, _IdType>::AddI if (safe) { _cont.push_back(value); - + if (!IsLockNotify()) InsertItem(value); } @@ -345,7 +345,7 @@ template _Item& BaseCollection<_Item, _IdType>::AddI template _Item& BaseCollection<_Item, _IdType>::Add(const Value& value) { - return AddItem(value); + return AddItem(value); } template void BaseCollection<_Item, _IdType>::WriteItem(SWriter* writer, void* value) @@ -402,7 +402,7 @@ template void BaseCollection<_Item, _IdType>::Load(S template typename BaseCollection<_Item, _IdType>::iterator BaseCollection<_Item, _IdType>::Delete(iterator iter) { if (!IsLockNotify()) - RemoveItem(*iter); + RemoveItem(*iter); if (!IsLockDestr()) DestroyItem(*iter); @@ -419,7 +419,7 @@ template void BaseCollection<_Item, _IdType>::Delete LSL_ASSERT(_safeCont); if (!IsLockNotify()) - RemoveItem(pos->GetItem()); + RemoveItem(pos->GetItem()); if (!IsLockDestr()) DestroyItem(pos->GetItem()); @@ -436,13 +436,13 @@ template typename BaseCollection<_Item, _IdType>::it for (iterator iter = sIter; iter != eIter; ++iter) { if (!IsLockNotify()) - RemoveItem(*iter); + RemoveItem(*iter); if (!IsLockDestr()) DestroyItem(*iter); } bool safe = !(_safeCont && !_safeCont->SafeRemove(sIter, eIter)); - if (safe) + if (safe) return _cont.erase(sIter, eIter); return eIter; @@ -550,8 +550,8 @@ template _IdType BaseCollectionCL<_Item, { _IdType res = _IdType(0); if (const SReader::ValueDesc* desc = reader->ReadAttr("type")) - if (desc->type == SReader::vtInt) - desc->CastToFromInt(&res); + if (desc->type == SReader::vtInt) + desc->CastToFromInt(&res); else { std::string str; @@ -676,13 +676,13 @@ template void ComCollect template void ComCollection<_Item, _IdType, _Arg, _ArgThis>::Save(SWriter* writer) { CollectionTraits::Save(writer); - _MyBase::Save(writer); + _MyBase::Save(writer); } template void ComCollection<_Item, _IdType, _Arg, _ArgThis>::Load(SReader* reader) { CollectionTraits::Load(reader); - _MyBase::Load(reader); + _MyBase::Load(reader); } template _Item* ComCollection<_Item, _IdType, _Arg, _ArgThis>::Find(const std::string& name) @@ -708,7 +708,7 @@ template std::string Com { oss.seekp(nPos); oss< class BaseClassList: public O typedef std::map<_Key, BaseClassInst<_Key, _BaseClass, _Arg>*> _ClassList; public: typedef BaseClassInst<_Key, _BaseClass, _Arg> MyClassInst; - + typedef _Key Key; typedef _BaseClass BaseClass; typedef _Arg Arg; diff --git a/src/LexStd/header/lslCollection.h b/src/LexStd/header/lslCollection.h index b88f0e90..5571a4ee 100644 --- a/src/LexStd/header/lslCollection.h +++ b/src/LexStd/header/lslCollection.h @@ -35,7 +35,7 @@ template class Collection<_Item, _IdType, void, void virtual _Item* CreateItem(const _IdType& key); virtual void DestroyItem(_Item* value); - virtual void LoadItem(SReader* reader); + virtual void LoadItem(SReader* reader); public: virtual ~Collection(); @@ -54,7 +54,7 @@ template class Collection<_Item, void, virtual _Item* CreateItem(); virtual void DestroyItem(_Item* value); - virtual void LoadItem(SReader* reader); + virtual void LoadItem(SReader* reader); public: virtual ~Collection(); @@ -86,7 +86,7 @@ template class Collection<_Item, void, void, void>: public BaseColl virtual _Item* CreateItem(); virtual void DestroyItem(_Item* value); - virtual void LoadItem(SReader* reader); + virtual void LoadItem(SReader* reader); public: virtual ~Collection(); @@ -178,7 +178,7 @@ template Collection<_Item, void, _Arg, template _Item* Collection<_Item, void, _Arg, _ArgThis>::CreateItem() { - return new _Item(static_cast<_ArgThis>(this)); + return new _Item(static_cast<_ArgThis>(this)); } template void Collection<_Item, void, _Arg, _ArgThis>::DestroyItem(_Item* value) diff --git a/src/LexStd/header/lslComponent.h b/src/LexStd/header/lslComponent.h index e2e29fb0..ce3e8001 100644 --- a/src/LexStd/header/lslComponent.h +++ b/src/LexStd/header/lslComponent.h @@ -44,7 +44,7 @@ class Component: public virtual Object, public virtual UpdateAble, public virtua }; static const char* cDefItemName; -private: +private: std::string _name; //При восстановлении сслыки испольузется адресация пути по иерархиям(ссылки можно восстаналвивать только на компоненты) diff --git a/src/LexStd/header/lslContainer.h b/src/LexStd/header/lslContainer.h index 2427e33a..fef26152 100644 --- a/src/LexStd/header/lslContainer.h +++ b/src/LexStd/header/lslContainer.h @@ -130,7 +130,7 @@ template class Container: public BaseContainer<_Item> dupError, dupIgnore, dupAccept - }; + }; typedef _Item Item; typedef typename _Cont::iterator iterator; @@ -140,7 +140,7 @@ template class Container: public BaseContainer<_Item> typedef typename _Cont::reverse_iterator reverse_iterator; typedef typename _Cont::const_reverse_iterator const_reverse_iterator; private: - Duplicates _duplicates; + Duplicates _duplicates; _Cont _cont; _SafeCont* _safeCont; @@ -154,12 +154,12 @@ template class Container: public BaseContainer<_Item> Container(Duplicates duplicates = dupError); Container(const _MyClass& ref); ~Container(); - + void Insert(const _Item& item); void Remove(iterator iter); void Remove(const Position& pos); - void Remove(const _Item& item); - void Remove(iterator sIter, iterator eIter); + void Remove(const _Item& item); + void Remove(iterator sIter, iterator eIter); void Clear(); bool CheckDuplicate(const _Item& item) const; @@ -173,7 +173,7 @@ template class Container: public BaseContainer<_Item> iterator begin(); iterator end(); - const_iterator begin() const; + const_iterator begin() const; const_iterator end() const; reverse_iterator rbegin(); @@ -185,7 +185,7 @@ template class Container: public BaseContainer<_Item> _Item& front(); _Item& back(); - const _Item& front() const; + const _Item& front() const; const _Item& back() const; Position First(); @@ -285,7 +285,7 @@ template void Container<_Item>::Remove(iterator sIter, iterator eIt template void Container<_Item>::Clear() { bool safe = !(_safeCont && !_safeCont->SafeClear()); - + if (safe) Remove(begin(), end()); } @@ -298,7 +298,7 @@ template bool Container<_Item>::CheckDuplicate(const _Item& item) c switch (_duplicates) { case dupError: - LSL_ASSERT(!isFind); + LSL_ASSERT(!isFind); return !isFind; case dupIgnore: diff --git a/src/LexStd/header/lslException.h b/src/LexStd/header/lslException.h index dcb9e250..59978928 100644 --- a/src/LexStd/header/lslException.h +++ b/src/LexStd/header/lslException.h @@ -73,7 +73,7 @@ template void AppLog::Write(const _Value& value) std::ostream* stream = CreateStream(); - *stream << value; + *stream << value; #ifdef _CONSOLE std::cout << value; diff --git a/src/LexStd/header/lslObject.h b/src/LexStd/header/lslObject.h index 6807db9c..53046c3c 100644 --- a/src/LexStd/header/lslObject.h +++ b/src/LexStd/header/lslObject.h @@ -46,10 +46,10 @@ class ObjReference unsigned Release() const { LSL_ASSERT(_refCnt > 0); - + return --_refCnt; } - + unsigned GetRefCnt() const { return _refCnt; diff --git a/src/LexStd/header/lslResource.h b/src/LexStd/header/lslResource.h index fa76f92c..f47c1bc0 100644 --- a/src/LexStd/header/lslResource.h +++ b/src/LexStd/header/lslResource.h @@ -13,7 +13,7 @@ namespace lsl template class IOResource { public: - typedef _Resource Resource; + typedef _Resource Resource; public: virtual ~IOResource() {} @@ -29,7 +29,7 @@ class FileSystem static std::unique_ptr _instance; public: enum OpenMode {omText, omBinary}; - + static const DWORD cAppend = 0x1 << 0; static const DWORD cTruncate = 0x1 << 1; @@ -41,7 +41,7 @@ class FileSystem template std::basic_istream<_T, std::char_traits<_T>>* NewInStream(const std::string& fileName, OpenMode openMode, DWORD flags); template std::basic_ostream<_T, std::char_traits<_T>>* NewOutStream(const std::string& fileName, OpenMode openMode, DWORD flags); public: - FileSystem(const std::wstring& appPath); + FileSystem(const std::wstring& appPath); std::istream* NewInStream(const std::string& fileName, OpenMode openMode, DWORD flags); #ifdef _WIN32 // Not used at all @@ -51,7 +51,7 @@ class FileSystem std::ostream* NewOutStream(const std::string& fileName, OpenMode openMode, DWORD flags); std::wostream* NewOutStreamW(const std::string& fileName, OpenMode openMode, DWORD flags); - void FreeStream(std::ios_base* stream); + void FreeStream(std::ios_base* stream); bool FileExists(const std::string& fileName); @@ -111,7 +111,7 @@ class Resource: public CollectionItem void Reload(); //Обновление ресурса без пересоздания. Обычно загрузка данных из внешнего источника либо обновление состояния из-за изменившихся данных void Update(); - + //Состояние инициализации bool IsInit() const; @@ -130,7 +130,7 @@ class FileResource: public Resource private: std::string _fileName; protected: - virtual void DoLoadFromStream(std::istream& stream, const std::string& fileExt); + virtual void DoLoadFromStream(std::istream& stream, const std::string& fileExt); public: void LoadFromStream(std::istream& stream, const std::string& fileExt); void SaveToStream(std::ostream& stream, const std::string& fileExt); @@ -200,7 +200,7 @@ inline std::wstring GetAppPath() #ifdef _WIN32 // FIX_LINUX GetModuleFileNameW wchar_t buf[1024]; unsigned size = GetModuleFileNameW(NULL, buf, 1024); - + std::wstring res(buf, size); lsl::ExtractFilePath(res, res); diff --git a/src/LexStd/header/lslSDK.h b/src/LexStd/header/lslSDK.h index d81b88fd..dec2382b 100644 --- a/src/LexStd/header/lslSDK.h +++ b/src/LexStd/header/lslSDK.h @@ -23,19 +23,19 @@ class ThreadPool: public Object cFlagEnd }; typedef lsl::Bitset Flags; - + class UserWork: public virtual lsl::Object { private: std::string _name; volatile bool _execution; - volatile bool _terminating; + volatile bool _terminating; public: UserWork(const std::string& name = ""): _name(name), _execution(false), _terminating(false) {} - + virtual void Execute(Object* arg) = 0; - + const std::string& GetName() const { return _name; @@ -77,11 +77,11 @@ class ThreadPool: public Object virtual unsigned GetMinThreads() = 0; virtual void SetMinThreads(unsigned value) = 0; - virtual unsigned GetMaxThreads() = 0; + virtual unsigned GetMaxThreads() = 0; virtual void SetMaxThreads(unsigned value) = 0; }; -class LockedObj: public lsl::Object +class LockedObj: public lsl::Object { friend class SDK; private: @@ -117,7 +117,7 @@ class Profiler uint64_t time; bool updated; - }; + }; typedef std::stack SampleStack; public: typedef std::map Samples; @@ -148,7 +148,7 @@ class SDK: public lsl::Object public: // virtual ThreadPool* GetThreadPool() = 0; - //Многопоточная блокировка некоторой секции. Только один поток может получить доступ к ней + //Многопоточная блокировка некоторой секции. Только один поток может получить доступ к ней virtual LockedObj* CreateLockedObj() = 0; virtual void DestroyLockedObj(LockedObj* value) = 0; virtual void Lock(LockedObj* obj) = 0; diff --git a/src/LexStd/header/lslSafeContainer.h b/src/LexStd/header/lslSafeContainer.h index eaef0558..94a5b121 100644 --- a/src/LexStd/header/lslSafeContainer.h +++ b/src/LexStd/header/lslSafeContainer.h @@ -22,11 +22,11 @@ template class SafeContainer: public lsl::Object iterator _myIter; //некорректный итератор (был удален). К нему нельзя получать доступ bool _invalid; - public: + public: _Position(SafeContainer* owner, const iterator& iter): _owner(owner), _myIter(iter), _invalid(false) { _owner->InsertPos(this); - } + } virtual ~_Position() { _owner->RemovePos(this); @@ -42,7 +42,7 @@ template class SafeContainer: public lsl::Object } }; - typedef std::list<_Position*> _PosList; + typedef std::list<_Position*> _PosList; public: typedef _Item Item; typedef const lsl::AutoRef<_Position> Position; @@ -97,8 +97,8 @@ template class SafeContainer: public lsl::Object LSL_ASSERT(_safeMode); //некооректный указатель уже указывает на следующий элемент. Нужно только обнулить _invalid чтобы разркшить доступ - if (pos->_invalid) - pos->_invalid = false; + if (pos->_invalid) + pos->_invalid = false; else if (pos->_myIter != _cont->end()) ++pos->_myIter; } diff --git a/src/LexStd/header/lslSerialValue.h b/src/LexStd/header/lslSerialValue.h index be65c929..19587d31 100644 --- a/src/LexStd/header/lslSerialValue.h +++ b/src/LexStd/header/lslSerialValue.h @@ -268,7 +268,7 @@ template SWriter* SWriteValueRange(SWriter* writer, const char* na typedef SerialValue<_Value> MyVal; SWriter* child = writer->NewDummyNode(name); - + MyVal::Write(child, "min", value.GetMin()); MyVal::Write(child, "max", value.GetMax()); child->WriteValue("distrib", MyRange::cDistributionStr[value.GetDistrib()]); @@ -286,12 +286,12 @@ template SReader* SReadValueRange(SReader* reader, const char* nam { _Value tmp; std::string str; - + if (MyVal::Read(child, "min", tmp)) value.SetMin(tmp); if (MyVal::Read(child, "max", tmp)) value.SetMax(tmp); - + if (child->ReadValue("distrib", str)) { int res = lsl::ConvStrToEnum(str.c_str(), MyRange::cDistributionStr, MyRange::cDistributionEnd); diff --git a/src/LexStd/header/lslSerialization.h b/src/LexStd/header/lslSerialization.h index f8e67e8c..7fc0d9b5 100644 --- a/src/LexStd/header/lslSerialization.h +++ b/src/LexStd/header/lslSerialization.h @@ -15,7 +15,7 @@ struct SIOTraits { public: enum ValType {vtUnknown, vtInt, vtUInt, vtFloat, vtDouble, vtBool, vtChar}; - + struct ValueDesc { public: @@ -106,7 +106,7 @@ struct SIOTraits case vtFloat: outVal[i] = static_cast<_Type>(ToFloat()[i]); break; - + case vtDouble: outVal[i] = static_cast<_Type>(ToDouble()[i]); break; @@ -124,7 +124,7 @@ struct SIOTraits { int* tmp = new int[cnt]; CastTo(tmp, cnt); - for (int i = 0; i < cnt; ++i) + for (int i = 0; i < cnt; ++i) outVal[i] = static_cast<_Type>(tmp[i]); delete[] tmp; } @@ -136,7 +136,7 @@ struct SIOTraits //Для булевых значений sstream.setf(std::ios_base::boolalpha); - if (type == vtChar) + if (type == vtChar) sstream.write(ToChar(), cnt); else for (int i = 0; i < cnt; ++i) @@ -156,7 +156,7 @@ struct SIOTraits case vtFloat: sstream << ToFloat()[i]; break; - + case vtDouble: sstream << ToDouble()[i]; break; @@ -182,7 +182,7 @@ struct SIOTraits //Размер в байтах, если: //=0 - значение value = 0 //>0 - массив размером count, причем count - это количество элементов valType, если valType = vtUnknown, то количество байтов - int count; + int count; }; class Value: public ValueDesc @@ -200,7 +200,7 @@ struct SIOTraits } template bool AnalizeStream(const std::string& str) - { + { FreeMem(); std::stringstream stream(str); //Для булевых значений @@ -208,7 +208,7 @@ struct SIOTraits _Type* pValue = 0; int cnt = 0; - + while (!stream.eof()) { pValue = static_cast<_Type*>(realloc(pValue, (++cnt) * sizeof(_Type))); @@ -220,7 +220,7 @@ struct SIOTraits return false; } } - + value = pValue; count = cnt; return true; @@ -259,7 +259,7 @@ struct SIOTraits char* newMem = static_cast(malloc(memSize)); memcpy(newMem, desc.value, memSize); value = newMem; - } + } } void AssignFromString(const std::string& str) @@ -336,19 +336,19 @@ class SReader: public virtual SIOTraits _FixUpNames _fixUpNames; bool ResolveFixUp(_FixUpName& inOutName); - void FixUp(); + void FixUp(); protected: SReader(); public: //Операции с узлом //чтение аттрибутов узла virtual const ValueDesc* ReadAttr(const char* name) = 0; - + //Запрос на восстановление ссылки: //path - путь до искомого компонента, включая его имя //collItem - имя элемента коллекции, указывается если ищется //target - вызвавший узел, отправитель запроса. Он же будет получателем - //target != 0 - отложенный fixUp; + //target != 0 - отложенный fixUp; //target == 0 - fixUp в месте вызова, fixUpName не должен равняться нулю //fixUpName - информация о восстановлении bool AddFixUp(const std::string& path, const std::string& collItem, Serializable* target, _FixUpName* fixUpName); @@ -468,7 +468,7 @@ class SerialNode: protected Component, public virtual Object, public SWriter, pu void DelAttribute(Attributes::iterator value); void ClearAttributes(); void Clear(); - + SerialNode* FindChild(const std::string& name); SerialNode* FindNode(const std::string& name); @@ -488,8 +488,8 @@ class SerialNode: protected Component, public virtual Object, public SWriter, pu virtual lsl::Component* GetRoot(); virtual SerialNode* GetRootNode(); SerialNode* GetOwner(); - Elements& GetElements(); - const Attributes& GetAttributes() const; + Elements& GetElements(); + const Attributes& GetAttributes() const; }; class SerialNodes @@ -499,7 +499,7 @@ class SerialNodes typedef CollectionTraits _MyBase; public: typedef _List::iterator iterator; - typedef _List::const_iterator const_iterator; + typedef _List::const_iterator const_iterator; private: _List _list; SerialNode* _owner; diff --git a/src/LexStd/header/lslUpdateAble.h b/src/LexStd/header/lslUpdateAble.h index 03f99561..deeee777 100644 --- a/src/LexStd/header/lslUpdateAble.h +++ b/src/LexStd/header/lslUpdateAble.h @@ -18,7 +18,7 @@ class UpdateAble typedef std::map _UpdateMap; public: //допущение: аргумент Unite того же типа, что и сам класс метода - struct UpdateData + struct UpdateData { static unsigned GetUniqueId(); @@ -33,10 +33,10 @@ class UpdateAble { return 0; } - }; + }; private: unsigned _updateCount; - _UpdateMap _updateMap; + _UpdateMap _updateMap; protected: //Обработка принятых сообщений от внешних отправителей (возможно и от самого себя), здесь же может происходить отправление(или пересылка) сообщений новым приемникам. virtual void DoNotifyChanged(UpdateAble* sender, const UpdateData* data) = 0; diff --git a/src/LexStd/header/lslUtility.h b/src/LexStd/header/lslUtility.h index b009337e..5d35c6df 100644 --- a/src/LexStd/header/lslUtility.h +++ b/src/LexStd/header/lslUtility.h @@ -208,7 +208,7 @@ template class ClassMapList void Delete(const _Key& key); void Clear(); - _BaseClass& GetInstance(const _Key& key) const; + _BaseClass& GetInstance(const _Key& key) const; }; template class RegisterMapClass @@ -243,7 +243,7 @@ struct Point y -= value.y; return *this; - } + } operator int*() { @@ -272,7 +272,7 @@ template class Bitset: public std::bitset<_Bits> typedef std::bitset<_Bits> _MyBase; public: Bitset() {} - + explicit Bitset(unsigned long _Val): _MyBase(_Val) {} explicit Bitset(const std::string& value): _MyBase(value) {} }; @@ -341,13 +341,13 @@ template inline _Item FindItemByName(_Iter begin, _Ite for (_Iter iter = begin; iter != end; ++iter) if ((*iter)->GetName() == name && (*iter) != item) return (*iter); - return 0; + return 0; } inline int ConvStrToEnum(const char* str, const char* strList[], unsigned strListSize) { for (unsigned i = 0; i < strListSize; ++i) - if (strcmp(strList[i], str) == 0) + if (strcmp(strList[i], str) == 0) return i; return -1; @@ -413,7 +413,7 @@ template void ClassMapList<_Key, _BaseClass>::Dele template void ClassMapList<_Key, _BaseClass>::Clear() { for (typename _Map::iterator iter = _map.begin(); iter != _map.end(); ++iter) - delete iter->second; + delete iter->second; _map.clear(); } @@ -464,7 +464,7 @@ inline double GetTimeDbl() __int64 gTime, freq; QueryPerformanceCounter((LARGE_INTEGER*)&gTime); // Get current count QueryPerformanceFrequency((LARGE_INTEGER*)&freq); // Get processor freq - + return gTime/static_cast(freq); #else return 0.0; @@ -497,7 +497,7 @@ inline string StrFmt(const TCHAR* value, ...) delete[] buf; buf = new TCHAR[(++bufSize) * cBufSize]; } - + res = vsnprintf(buf, bufSize * cBufSize, value, arglist); } @@ -575,7 +575,7 @@ inline void StrExtractValues(const string& str, StringVec& vec, const lsl::strin } inline void StrExtractValues(const string& str, StringVec& vec, const TCHAR del = cStrComma) -{ +{ StrExtractValues(str, vec, lsl::string(1, del)); } @@ -588,7 +588,7 @@ inline void StrLinkValues(const StringVec& vec, string& str, const TCHAR del = c str += *iter; if (iter != --vec.end()) str += del; - } + } } } diff --git a/src/LexStd/source/EulerAngles.cpp b/src/LexStd/source/EulerAngles.cpp index a2e4e052..7bb0de53 100644 --- a/src/LexStd/source/EulerAngles.cpp +++ b/src/LexStd/source/EulerAngles.cpp @@ -4,7 +4,7 @@ /* Ken Shoemake, 1993 */ #include #include -#include "EulerAngles.h" +#include "EulerAngles.h" EulerAngles Eul_(float ai, float aj, float ah, int order) { diff --git a/src/LexStd/source/lslComponent.cpp b/src/LexStd/source/lslComponent.cpp index 9150ed1c..96636463 100644 --- a/src/LexStd/source/lslComponent.cpp +++ b/src/LexStd/source/lslComponent.cpp @@ -33,7 +33,7 @@ void Component::Save(SWriter* writer) void Component::Load(SReader* reader) { - if (storeName) + if (storeName) if (const SReader::ValueDesc* desc = reader->ReadAttr("name")) { std::string name; @@ -108,18 +108,18 @@ Component* Component::FindComponent(const std::string& name) ++curIter; } - return curComp; + return curComp; } Component* Component::AbsoluteFindComponent(const std::string& name) { std::string::const_iterator nextIter = std::find(name.begin(), name.end(), '\\'); - + std::string rootName(name.begin(), nextIter); if (rootName != _name) throw lsl::Error("Component* Component::AbsoluteFindComponent(const std::string& name)"); - std::string path(++nextIter, name.end()); + std::string path(++nextIter, name.end()); return FindComponent(path); } @@ -150,10 +150,10 @@ std::string Component::MakeUniqueName(const std::string& base) const { oss.seekp(nPos); oss<_elements->Remove(this); - if (value) + if (value) value->_elements->Insert(this); } } @@ -197,7 +197,7 @@ void Component::SetName(const std::string& value) _name = value; return; } - + LSL_ASSERT(false); } } diff --git a/src/LexStd/source/lslException.cpp b/src/LexStd/source/lslException.cpp index b71211e9..55805fd6 100644 --- a/src/LexStd/source/lslException.cpp +++ b/src/LexStd/source/lslException.cpp @@ -69,9 +69,9 @@ void Assert(const char* expression, const char* filePath, int line) "File '%s', Line %d\r\n" "Abort execution, allow assert Retry, or Ignore in future?", expression, filePath, line); - + //appLog << "assError: " << expression << " File: " << filePath << " Line: " << line << '\n'; - + #ifdef _WIN32 // FIX_LINUX MessageBox switch (::MessageBox(0, sText, "ASSERT ERROR", MB_ABORTRETRYIGNORE | MB_TASKMODAL)) { diff --git a/src/LexStd/source/lslResource.cpp b/src/LexStd/source/lslResource.cpp index 58e8d744..6a46dcb3 100644 --- a/src/LexStd/source/lslResource.cpp +++ b/src/LexStd/source/lslResource.cpp @@ -40,22 +40,22 @@ template std::basic_istream<_T, std::char_traits<_T>>* FileSystem::New break; } ioOpMode |= (flags & cAppend) ? std::ios::app : 0; - ioOpMode |= (flags & cTruncate) ? std::ios::trunc : 0; + ioOpMode |= (flags & cTruncate) ? std::ios::trunc : 0; std::wstring path = GetAppFilePath(fileName); std::basic_ifstream<_T, std::char_traits<_T>>* fs = new std::basic_ifstream<_T, std::char_traits<_T>>(path.c_str(), ioOpMode); LSL_ASSERT(fs); - if (fs->fail()) + if (fs->fail()) { fs->clear(); fs->open(fileName.c_str(), ioOpMode); if (fs->fail()) { - lsl::SafeDelete(fs); + lsl::SafeDelete(fs); throw EUnableToOpen(fileName); - } + } } return fs; @@ -79,7 +79,7 @@ template std::basic_ostream<_T, std::char_traits<_T>>* FileSystem::New std::basic_ofstream<_T, std::char_traits<_T>>* fs = new std::basic_ofstream<_T, std::char_traits<_T>>(path.c_str(), ioOpMode); LSL_ASSERT(fs); - if (fs->fail()) + if (fs->fail()) { fs->clear(); fs->open(fileName.c_str(), ioOpMode); @@ -87,7 +87,7 @@ template std::basic_ostream<_T, std::char_traits<_T>>* FileSystem::New { lsl::SafeDelete(fs); throw Error(std::string("Unable to write file ") + fileName); - } + } } return fs; @@ -127,7 +127,7 @@ std::wostream* FileSystem::NewOutStreamW(const std::string& fileName, OpenMode o void FileSystem::FreeStream(std::ios_base* stream) { - if (stream) + if (stream) delete stream; } @@ -181,7 +181,7 @@ unsigned Resource::Release() const if (_resTraits) _resTraits->OnReleaseItem(const_cast(this)); - + return ref; } @@ -192,7 +192,7 @@ void Resource::Init() _init = true; DoInit(); - + if (!_dynamic) DoUpdate(); diff --git a/src/LexStd/source/lslSDK.cpp b/src/LexStd/source/lslSDK.cpp index 11068857..b54afa41 100644 --- a/src/LexStd/source/lslSDK.cpp +++ b/src/LexStd/source/lslSDK.cpp @@ -110,7 +110,7 @@ Profiler* Profiler::_i; void Win32ThreadPool::QueueWork(UserWork* value, Object* arg, Flags flags) { DWORD dwFlags = 0; - + //tfBackground эмулируется с помощью tfLongFunc #ifdef _WIN32 // FIX_LINUX QueueUserWorkItem if (flags.test(tfLongFunc) || flags.test(tfBackground)) @@ -282,7 +282,7 @@ double Win32SDK::GetTimeDbl() __int64 gTime, freq; QueryPerformanceCounter((LARGE_INTEGER*)&gTime); // Get current count QueryPerformanceFrequency((LARGE_INTEGER*)&freq); // Get processor freq - + return gTime/static_cast(freq); #else return 0; @@ -307,11 +307,11 @@ void Profiler::ResetSample(SampleData& data) data.summDt = 0; data.maxDt = 0.0f; data.minDt = FLT_MAX; - data.updated = false; + data.updated = false; } void Profiler::Begin(const lsl::string& name) -{ +{ Samples::iterator iter = _samples.find(name); if (iter == _samples.end()) { @@ -344,7 +344,7 @@ void Profiler::End() iter->second.updated = true; iter->second.dt = dt; - iter->second.summDt += dt; + iter->second.summDt += dt; ++iter->second.frames; if (iter->second.maxDt < dt) diff --git a/src/LexStd/source/lslSerialFileXml.cpp b/src/LexStd/source/lslSerialFileXml.cpp index e5e1a48c..a722de1e 100644 --- a/src/LexStd/source/lslSerialFileXml.cpp +++ b/src/LexStd/source/lslSerialFileXml.cpp @@ -87,7 +87,7 @@ void LoadChunk(SerialNode& chunk, TiXmlNode& node) TiXmlPrinter printer; node.FirstChild()->Accept(&printer); chunk.SetValue(printer.Str()); - } + } else { TiXmlNode* iter = node.FirstChild(); @@ -102,11 +102,11 @@ void LoadChunk(SerialNode& chunk, TiXmlNode& node) } else //Это значение - if (iter->ToText()) + if (iter->ToText()) chunk.SetValue(iter->ToText()->ValueTStr()); iter = node.IterateChildren(iter); - } + } } } diff --git a/src/LexStd/source/lslSerialization.cpp b/src/LexStd/source/lslSerialization.cpp index 026133a0..b608c2a3 100644 --- a/src/LexStd/source/lslSerialization.cpp +++ b/src/LexStd/source/lslSerialization.cpp @@ -95,7 +95,7 @@ SWriter* SWriter::WriteRef(const char* name, const CollectionItem* item) if (item) { LSL_ASSERT(item->GetCollection()); - + SWriter* writer = WriteRef(name, item->GetCollection()); writer->WriteAttr(lsl::Serializable::cItem, item->GetName()); return writer; @@ -119,7 +119,7 @@ bool SReader::ResolveFixUp(_FixUpName& inOutName) } inOutName.component = GetRoot()->AbsoluteFindComponent(inOutName.path); - if (inOutName.component) + if (inOutName.component) if (!inOutName.nameCollItem.empty()) { CollectionTraits* coll = inOutName.GetComponent(); @@ -168,7 +168,7 @@ bool SReader::AddFixUp(const std::string& path, const std::string& collItem, Ser if (target) { _fixUpNames.push_back(fixUp); - return true; + return true; } else { @@ -182,10 +182,10 @@ bool SReader::AddFixUp(const std::string& path, const std::string& collItem, Ser bool SReader::AddFixUp(bool collItem, Serializable* target, _FixUpName* fixUpName) { _FixUpName fixUp; - if (GetRef(collItem, fixUp)) + if (GetRef(collItem, fixUp)) return AddFixUp(fixUp.path, fixUp.nameCollItem, target, fixUpName); - return false; + return false; } bool SReader::GetRef(bool collItem, _FixUpName& fixUpName) @@ -342,7 +342,7 @@ SReader* SerialNode::ReadRefNode(SReader* reader, const std::string& name, Seria { *outNode = 0; SReader* child = reader->ReadValue(name.c_str()); - if (child && ReadRefNodeFrom(child, outNode)) + if (child && ReadRefNodeFrom(child, outNode)) return child; return 0; @@ -368,7 +368,7 @@ void SerialNode::ResolveProxyRef() if (_linkSer->GetMasterSer()) { lsl::SerialNode* root = GetRootNode(); - + SerialNode* master = root->FindLinkSer(_linkSer->GetMasterSer()); if (master) { @@ -477,8 +477,8 @@ void SerialNode::SaveSerializable(Serializable* value) ++_linkSer->_lockCnt; //} - if (value->GetMasterSer()) - ++value->GetMasterSer()->_lockCnt; + if (value->GetMasterSer()) + ++value->GetMasterSer()->_lockCnt; //Если отсутствует мастер объект, то сохраняем данные else value->Save(this); @@ -547,7 +547,7 @@ void SerialNode::LoadSerializable(Serializable* value) AddRefSerLink(); _linkSer = value; _masterSer = masterSer; - _masterNode = masterNode; + _masterNode = masterNode; } } @@ -671,7 +671,7 @@ SerialNode* SerialNode::FindNode(const std::string& name) SWriter* SerialNode::BeginSave() { - if (_beginSave++ == 0) + if (_beginSave++ == 0) Clear(); return this; @@ -681,7 +681,7 @@ void SerialNode::EndSave() { LSL_ASSERT(_beginSave > 0); - if (--_beginSave == 0) + if (--_beginSave == 0) //Разрешение и подстановка путей для прокси ссылок ResolveProxyRef(); } @@ -697,7 +697,7 @@ void SerialNode::EndLoad() { LSL_ASSERT(_beginLoad > 0); - if (--_beginLoad == 0) + if (--_beginLoad == 0) //закончили чтение корневого компонента, время fixUp OnFixUp(); } @@ -708,14 +708,14 @@ void SerialNode::Save(Serializable* root) try { //Запись напрямую, т.е. без учета прокси ссылок - root->Save(this); + root->Save(this); } LSL_FINALLY(EndSave();) } void SerialNode::Load(Serializable* root) { - BeginLoad(); + BeginLoad(); try { //чтение напрямую, т.е. без учета прокси ссылок diff --git a/src/MapEditor/ClassView.cpp b/src/MapEditor/ClassView.cpp index 6fb1fa60..0506b7b8 100644 --- a/src/MapEditor/ClassView.cpp +++ b/src/MapEditor/ClassView.cpp @@ -46,7 +46,7 @@ BEGIN_MESSAGE_MAP(CClassView, CViewPane) ON_WM_PAINT() ON_WM_SETFOCUS() ON_COMMAND_RANGE(ID_SORTING_GROUPBYTYPE, ID_SORTING_SORTBYACCESS, OnSort) - ON_UPDATE_COMMAND_UI_RANGE(ID_SORTING_GROUPBYTYPE, ID_SORTING_SORTBYACCESS, OnUpdateSort) + ON_UPDATE_COMMAND_UI_RANGE(ID_SORTING_GROUPBYTYPE, ID_SORTING_SORTBYACCESS, OnUpdateSort) ON_NOTIFY(TVN_SELCHANGED, CLASS_TREE_VIEW, OnViewSelChanged) END_MESSAGE_MAP() @@ -69,7 +69,7 @@ CClassView::~CClassView() CClassView::MapDocEvent::MapDocEvent(CClassView* view): _view(view) { } - + void CClassView::MapDocEvent::ReleaseDoc() { _view->DeselectItem(); @@ -88,7 +88,7 @@ void CClassView::ReleaseItems() void CClassView::InsertItem(const r3d::IRecordNodeRef& node, HTREEITEM parent) { HTREEITEM itemNode = m_wndClassView.InsertItem(StdStrToCString(node->GetName()), 2, 2, parent); - SetItemData(itemNode, new ItemData(node, 0)); + SetItemData(itemNode, new ItemData(node, 0)); r3d::IMapObjRecRef record = node->FirstRecord(); while (record) @@ -133,9 +133,9 @@ void CClassView::UpdateList() r3d::IMapObjLibRef lib = GetDB()->GetMapObjLib(i); r3d::IRecordNodeRef node; node.Assign(lib); - + InsertItem(node, 0); - } + } } void CClassView::SelectItem(const D3DXVECTOR3& mapObjPos) diff --git a/src/MapEditor/ClassView.h b/src/MapEditor/ClassView.h index 66f603f3..68336e18 100644 --- a/src/MapEditor/ClassView.h +++ b/src/MapEditor/ClassView.h @@ -26,7 +26,7 @@ class CClassView : public CViewPane CClassView* _view; public: DelDataFunc(CClassView* view): _view(view) {} - + bool operator()(HTREEITEM item) const { ItemData* data = _view->GetItemData(item); @@ -58,7 +58,7 @@ class CClassView : public CViewPane void ReleaseItem(HTREEITEM item); void ReleaseItems(); void InsertItem(const r3d::IRecordNodeRef& node, HTREEITEM parent); - void DelItem(HTREEITEM node); + void DelItem(HTREEITEM node); void ClearList(); void UpdateList(); @@ -88,9 +88,9 @@ class CClassView : public CViewPane afx_msg void OnClassProperties(); afx_msg void OnNewFolder(); afx_msg void OnPaint(); - afx_msg void OnSetFocus(CWnd* pOldWnd); + afx_msg void OnSetFocus(CWnd* pOldWnd); afx_msg void OnSort(UINT id); - afx_msg void OnUpdateSort(CCmdUI* pCmdUI); + afx_msg void OnUpdateSort(CCmdUI* pCmdUI); afx_msg void OnViewSelChanged(NMHDR* arg, LRESULT* res); virtual void OnChangeActiveTab(bool active); diff --git a/src/MapEditor/FileView.cpp b/src/MapEditor/FileView.cpp index a7f4f8b9..18b1c46c 100644 --- a/src/MapEditor/FileView.cpp +++ b/src/MapEditor/FileView.cpp @@ -116,7 +116,7 @@ void CFileView::InsertCategory(unsigned i) { HTREEITEM itemCat = m_wndFileView.InsertItem(StdStrToCString(_mapDoc->GetCatName(i)), 0, 0, 0); SetItemData(itemCat, new ItemData(0, i)); - + r3d::IMapObjRef mapObj = _mapDoc->GetFirst(i); while (mapObj) { @@ -135,7 +135,7 @@ HTREEITEM CFileView::FindCatItem(unsigned i) LSL_ASSERT(data); if (data->catIndex == i) return item; - + item = m_wndFileView.GetNextSiblingItem(item); } @@ -177,7 +177,7 @@ void CFileView::SelectItem(HTREEITEM item) ItemData* selItem = GetItemData(item); m_wndFileView.SelectItem(item); } - else + else DeselectItem(); } diff --git a/src/MapEditor/FileView.h b/src/MapEditor/FileView.h index 7f432ed0..87da0b1b 100644 --- a/src/MapEditor/FileView.h +++ b/src/MapEditor/FileView.h @@ -26,7 +26,7 @@ class CFileView: public CViewPane CFileView* _view; public: DelDataFunc(CFileView* view): _view(view) {} - + bool operator()(HTREEITEM item) const { ItemData* data = _view->GetItemData(item); @@ -44,7 +44,7 @@ class CFileView: public CViewPane r3d::IMapObjRef _mapObj; public: FindItemByMapObjFunc(CFileView* view, const r3d::IMapObjRef& mapObj): _view(view), _mapObj(mapObj) {} - + bool operator()(HTREEITEM item) const { ItemData* data = _view->GetItemData(item); diff --git a/src/MapEditor/MainFrm.cpp b/src/MapEditor/MainFrm.cpp index 6ce6d019..d558d31f 100644 --- a/src/MapEditor/MainFrm.cpp +++ b/src/MapEditor/MainFrm.cpp @@ -20,7 +20,7 @@ END_MESSAGE_MAP() static UINT indicators[] = { - ID_SEPARATOR, + ID_SEPARATOR, ID_INDICATOR_CAPS, ID_INDICATOR_NUM, ID_INDICATOR_SCRL, @@ -85,7 +85,7 @@ BOOL CMainFrame::CreateDockingWindows() //Create Trace View CString strTraceName; bNameValid = strTraceName.LoadString(IDS_TRACEVIEW); - ASSERT(bNameValid); + ASSERT(bNameValid); if (!_traceView.Create(strTraceName, this, CRect(0, 0, 200, 200), TRUE, ID_VIEW_TRACEVIEW, WS_CHILD | WS_VISIBLE | WS_CLIPSIBLINGS | WS_CLIPCHILDREN | CBRS_LEFT | CBRS_FLOAT_MULTI)) { TRACE0("Failed to create Trace View window\n"); @@ -144,7 +144,7 @@ void CMainFrame::ViewSetFocus(CViewPane* view) if (_activeViewPane != view) { _activeViewPane = view; - + for (ViewPaneList::iterator iter = _viewPaneList.begin(); iter != _viewPaneList.end(); ++iter) (*iter)->OnChangeActiveTab(*iter == view); } @@ -251,7 +251,7 @@ int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct) bNameValid = toolBarName.LoadString(IDS_EDITMAP); ASSERT(bNameValid); _editMapToolBar.SetWindowText(toolBarName); - + CString strCustomize; bNameValid = strCustomize.LoadString(IDS_TOOLBAR_CUSTOMIZE); ASSERT(bNameValid); @@ -371,7 +371,7 @@ void CMainFrame::OnEditMapToolBarUpdateCommandUI(CCmdUI* pCmdUI) case IDTB_EDITMAP_SCALE: check = GetMapDoc()->GetSelMode() == r3d::ISceneControl::smScale; - break; + break; case IDTB_EDITMAP_SHOWBB: check = theApp.GetWorld()->GetEdit()->GetMap()->GetShowBBox(); diff --git a/src/MapEditor/MainFrm.h b/src/MapEditor/MainFrm.h index b3d4ec2a..a36503af 100644 --- a/src/MapEditor/MainFrm.h +++ b/src/MapEditor/MainFrm.h @@ -59,10 +59,10 @@ class CMainFrame : public CFrameWndEx bool OnMapViewMouseClickEvent(lsl::MouseKey key, lsl::KeyState state, const lsl::Point& coord); bool OnMapViewMouseMoveEvent(const lsl::Point& coord); bool OnMapViewKeyEvent(unsigned key, lsl::KeyState state); - + //Устанавливает активный документ для редактирования CMapEditorView* GetActiveMapView(); - void SetActiveMapView(CMapEditorView* value); + void SetActiveMapView(CMapEditorView* value); #ifdef _DEBUG virtual void AssertValid() const; diff --git a/src/MapEditor/MapEditor.cpp b/src/MapEditor/MapEditor.cpp index 7b33e5e8..7951d061 100644 --- a/src/MapEditor/MapEditor.cpp +++ b/src/MapEditor/MapEditor.cpp @@ -59,7 +59,7 @@ void CAboutDlg::DoDataExchange(CDataExchange* pDX) CMapEditorApp::CMapEditorApp(): _activeView(0), _world(0), _enableRender(true) { - m_bHiColorIcons = TRUE; + m_bHiColorIcons = TRUE; } void CMapEditorApp::InitR3D(CView* view) @@ -67,7 +67,7 @@ void CMapEditorApp::InitR3D(CView* view) r3d::IView::Desc desc; desc.fullscreen = false; desc.handle = view->GetSafeHwnd(); - desc.resolution = r3d::Point(800, 600); + desc.resolution = r3d::Point(800, 600); if (!_world) { diff --git a/src/MapEditor/MapEditor.rc b/src/MapEditor/MapEditor.rc index aca1cb0e..59d8d0d0 100644 --- a/src/MapEditor/MapEditor.rc +++ b/src/MapEditor/MapEditor.rc @@ -30,12 +30,12 @@ LANGUAGE LANG_RUSSIAN, SUBLANG_DEFAULT // TEXTINCLUDE // -1 TEXTINCLUDE +1 TEXTINCLUDE BEGIN "resource.h\0" END -2 TEXTINCLUDE +2 TEXTINCLUDE BEGIN "#ifndef APSTUDIO_INVOKED\r\n" "#include ""targetver.h""\r\n" @@ -44,7 +44,7 @@ BEGIN "\0" END -3 TEXTINCLUDE +3 TEXTINCLUDE BEGIN "#define _AFX_NO_OLE_RESOURCES\r\n" "#define _AFX_NO_TRACKER_RESOURCES\r\n" @@ -223,7 +223,7 @@ IDI_PROPERTIES_WND_HC ICON "res\\properties_wnd_hc.ico" // Menu // -IDR_MAINFRAME MENU +IDR_MAINFRAME MENU BEGIN POPUP "&File" BEGIN @@ -258,7 +258,7 @@ BEGIN END END -IDR_POPUP_EDIT MENU +IDR_POPUP_EDIT MENU BEGIN POPUP "Edit" BEGIN @@ -268,7 +268,7 @@ BEGIN END END -IDR_POPUP_SORT MENU +IDR_POPUP_SORT MENU BEGIN POPUP "Sorting" BEGIN @@ -279,7 +279,7 @@ BEGIN END END -IDR_POPUP_EXPLORER MENU +IDR_POPUP_EXPLORER MENU BEGIN POPUP "Explorer" BEGIN @@ -296,7 +296,7 @@ BEGIN END END -IDR_OUTPUT_POPUP MENU +IDR_OUTPUT_POPUP MENU BEGIN POPUP "Popup" BEGIN @@ -313,7 +313,7 @@ END // Accelerator // -IDR_MAINFRAME ACCELERATORS +IDR_MAINFRAME ACCELERATORS BEGIN "N", ID_FILE_NEW, VIRTKEY, CONTROL "O", ID_FILE_OPEN, VIRTKEY, CONTROL @@ -326,7 +326,7 @@ BEGIN VK_DELETE, ID_EDIT_CUT, VIRTKEY, SHIFT VK_INSERT, ID_EDIT_COPY, VIRTKEY, CONTROL VK_INSERT, ID_EDIT_PASTE, VIRTKEY, SHIFT - VK_F6, ID_NEXT_PANE, VIRTKEY + VK_F6, ID_NEXT_PANE, VIRTKEY VK_F6, ID_PREV_PANE, VIRTKEY, SHIFT END @@ -393,7 +393,7 @@ END // #ifdef APSTUDIO_INVOKED -GUIDELINES DESIGNINFO +GUIDELINES DESIGNINFO BEGIN IDD_ABOUTBOX, DIALOG BEGIN @@ -411,18 +411,18 @@ END // String Table // -STRINGTABLE +STRINGTABLE BEGIN IDR_MAINFRAME "MapEditor\n\nMapEditor\nMapEditor Files (*.r3dMap)\n.r3dMap\nMapEditor.Document\nMapEditor.Document" END -STRINGTABLE +STRINGTABLE BEGIN AFX_IDS_APP_TITLE "MapEditor" AFX_IDS_IDLEMESSAGE "Ready" END -STRINGTABLE +STRINGTABLE BEGIN ID_INDICATOR_EXT "EXT" ID_INDICATOR_CAPS "CAP" @@ -432,7 +432,7 @@ BEGIN ID_INDICATOR_REC "REC" END -STRINGTABLE +STRINGTABLE BEGIN ID_FILE_NEW "Create a new document\nNew" ID_FILE_OPEN "Open an existing document\nOpen" @@ -441,13 +441,13 @@ BEGIN ID_FILE_SAVE_AS "Save the active document with a new name\nSave As" END -STRINGTABLE +STRINGTABLE BEGIN ID_APP_ABOUT "Display program information, version number and copyright\nAbout" ID_APP_EXIT "Quit the application; prompts to save documents\nExit" END -STRINGTABLE +STRINGTABLE BEGIN ID_FILE_MRU_FILE1 "Open this document" ID_FILE_MRU_FILE2 "Open this document" @@ -467,18 +467,18 @@ BEGIN ID_FILE_MRU_FILE16 "Open this document" END -STRINGTABLE +STRINGTABLE BEGIN ID_NEXT_PANE "Switch to the next window pane\nNext Pane" ID_PREV_PANE "Switch back to the previous window pane\nPrevious Pane" END -STRINGTABLE +STRINGTABLE BEGIN ID_WINDOW_SPLIT "Split the active window into panes\nSplit" END -STRINGTABLE +STRINGTABLE BEGIN ID_EDIT_CLEAR "Erase the selection\nErase" ID_EDIT_CLEAR_ALL "Erase everything\nErase All" @@ -493,12 +493,12 @@ BEGIN ID_EDIT_REDO "Redo the previously undone action\nRedo" END -STRINGTABLE +STRINGTABLE BEGIN ID_VIEW_STATUS_BAR "Show or hide the status bar\nToggle Status Bar" END -STRINGTABLE +STRINGTABLE BEGIN AFX_IDS_SCSIZE "Change the window size" AFX_IDS_SCMOVE "Change the window position" @@ -509,13 +509,13 @@ BEGIN AFX_IDS_SCCLOSE "Close the active window and prompts to save the documents" END -STRINGTABLE +STRINGTABLE BEGIN AFX_IDS_SCRESTORE "Restore the window to normal size" AFX_IDS_SCTASKLIST "Activate Task List" END -STRINGTABLE +STRINGTABLE BEGIN IDS_STATUS_PANE1 "Pane 1" IDS_STATUS_PANE2 "Pane 2" @@ -525,7 +525,7 @@ BEGIN IDS_TRACEVIEW "Trace View" END -STRINGTABLE +STRINGTABLE BEGIN IDS_FILE_VIEW "File View" IDS_CLASS_VIEW "Class View" @@ -533,13 +533,13 @@ BEGIN IDS_PROPERTIES_WND "Properties" END -STRINGTABLE +STRINGTABLE BEGIN IDS_EXPLORER "Explorer" IDS_EDIT_MENU "Edit" END -STRINGTABLE +STRINGTABLE BEGIN IDS_BUILD_TAB "Build" IDS_DEBUG_TAB "Debug" diff --git a/src/MapEditor/MapEditorDoc.cpp b/src/MapEditor/MapEditorDoc.cpp index 11c16e52..8bb56a76 100644 --- a/src/MapEditor/MapEditorDoc.cpp +++ b/src/MapEditor/MapEditorDoc.cpp @@ -151,7 +151,7 @@ void CMapEditorDoc::UnregObserver(MapDocObserver* observer) r3d::IMapObjRef CMapEditorDoc::AddMapObj(const r3d::IMapObjRecRef& record) { r3d::IMapObjRef res = GetMap()->AddMapObj(record); - + for (ObserverList::iterator iter = _observerList.begin(); iter != _observerList.end(); ++iter) (*iter)->OnAddMapObj(res); @@ -224,7 +224,7 @@ void CMapEditorDoc::SelectWayPoint(const r3d::IWayPointRef& point, const r3d::IT if (_selWayPoint != point && (!_selWayPoint || !_selWayPoint->Equal(point.Pnt()))) { ClearSelection(); - + _selWayPoint = point; r3d::IScNodeContRef control = _selWayPoint ? GetTrace()->GetPointControl(_selWayPoint, mEvent) : 0; GetScControl()->SelectNode(control); diff --git a/src/MapEditor/MapEditorDoc.h b/src/MapEditor/MapEditorDoc.h index f09ccb62..0e367333 100644 --- a/src/MapEditor/MapEditorDoc.h +++ b/src/MapEditor/MapEditorDoc.h @@ -32,7 +32,7 @@ class CMapEditorDoc : public CDocument //Объект может быть уничтожен! CMapEditorDoc* doc = _doc; - for (ObserverList::Position pos = doc->_observerList.First(); MapDocObserver** iter = doc->_observerList.Current(pos); doc->_observerList.Next(pos)) + for (ObserverList::Position pos = doc->_observerList.First(); MapDocObserver** iter = doc->_observerList.Current(pos); doc->_observerList.Next(pos)) { (*iter)->OnAddMapObj(mapObj); (*iter)->OnSelectMapObj(mapObj); @@ -59,7 +59,7 @@ class CMapEditorDoc : public CDocument virtual BOOL OnNewDocument(); virtual BOOL OnSaveDocument(LPCTSTR lpszPathName); virtual BOOL OnOpenDocument(LPCTSTR lpszPathName); - virtual void OnCloseDocument(); + virtual void OnCloseDocument(); public: virtual ~CMapEditorDoc(); diff --git a/src/MapEditor/MapEditorView.cpp b/src/MapEditor/MapEditorView.cpp index 9bc5ff8a..54bb1884 100644 --- a/src/MapEditor/MapEditorView.cpp +++ b/src/MapEditor/MapEditorView.cpp @@ -148,7 +148,7 @@ void CMapEditorView::OnSize(UINT nType, int cx, int cy) r3d::IView::Desc desc; desc.fullscreen = false; desc.resolution = lsl::Point(cx, cy); - desc.handle = GetSafeHwnd(); + desc.handle = GetSafeHwnd(); GetR3DView()->Reset(desc); //GetR3DView()->SetCameraAspect(static_cast(cx) / cy); diff --git a/src/MapEditor/MapEditorView.h b/src/MapEditor/MapEditorView.h index 467e93c0..c4cf61f4 100644 --- a/src/MapEditor/MapEditorView.h +++ b/src/MapEditor/MapEditorView.h @@ -16,7 +16,7 @@ class CMapEditorView : public CView afx_msg void OnDestroy(); virtual void OnActivateFrame(UINT nState, CFrameWnd* pFrameWnd); virtual void OnUpdate(CView* pSender, LPARAM lHint, CObject* pHint); - + void OnMouseClickEvent(lsl::MouseKey key, lsl::KeyState state, const lsl::Point& coord, bool shift, bool ctrl); void OnMouseMoveEvent(const lsl::Point& coord, bool shift, bool ctrl); void OnKeyEvent(unsigned key, lsl::KeyState state); @@ -44,10 +44,10 @@ class CMapEditorView : public CView #ifdef _DEBUG virtual void AssertValid() const; virtual void Dump(CDumpContext& dc) const; -#endif +#endif }; -#ifndef _DEBUG +#ifndef _DEBUG inline CMapEditorDoc* CMapEditorView::GetDocument() const { return reinterpret_cast(m_pDocument); } #endif \ No newline at end of file diff --git a/src/MapEditor/TraceView.cpp b/src/MapEditor/TraceView.cpp index 3df54076..526049ba 100644 --- a/src/MapEditor/TraceView.cpp +++ b/src/MapEditor/TraceView.cpp @@ -31,7 +31,7 @@ class CTraceSplitView: public CView Invalidate(); } - virtual void OnDraw(CDC* pDC) + virtual void OnDraw(CDC* pDC) { if (GetParentFrame()->GetActiveView() == this) { @@ -44,7 +44,7 @@ class CTraceSplitView: public CView afx_msg void OnSize(UINT nType, int cx, int cy) { _MyBase::OnSize(nType, cx, cy); - + if (GetSafeHwnd() == NULL || _srcWnd == 0 || _srcWnd->GetSafeHwnd() == 0) return; @@ -65,7 +65,7 @@ class CTraceSplitView: public CView public: CTraceSplitView(): _srcWnd(0) {} virtual ~CTraceSplitView() {} - + CWnd* GetSrcWnd() {return _srcWnd;} void SetSrcWnd(CWnd* value) {_srcWnd = value;} }; @@ -74,7 +74,7 @@ BEGIN_MESSAGE_MAP(CTraceSplitView, CView) END_MESSAGE_MAP() IMPLEMENT_DYNCREATE(CTraceSplitView, CView) -class CFlatFrameWnd : public CFrameWnd +class CFlatFrameWnd : public CFrameWnd { DECLARE_DYNAMIC(CFlatFrameWnd); @@ -99,7 +99,7 @@ BEGIN_MESSAGE_MAP(CTraceView, CViewPane) ON_COMMAND(IDTB_EDITMAP_NONE, OnEditMapToolBarCommand) ON_NOTIFY(TVN_SELCHANGED, TRACE_TREEWP_VIEW, OnPointViewSelChanged) - ON_NOTIFY(TVN_SELCHANGED, TRACE_TREEPATH_VIEW, OnPathViewSelChanged) + ON_NOTIFY(TVN_SELCHANGED, TRACE_TREEPATH_VIEW, OnPathViewSelChanged) END_MESSAGE_MAP() @@ -130,11 +130,11 @@ int CTraceView::OnCreate(LPCREATESTRUCT lpCreateStruct) ccc.m_pNewDocTemplate = NULL; ccc.m_pLastView = NULL; ccc.m_pCurrentFrame = NULL; - // Because the CFRameWnd needs a window class, we will create a new one. + // Because the CFRameWnd needs a window class, we will create a new one. CString strMyClass = AfxRegisterWndClass(CS_VREDRAW | CS_HREDRAW, ::LoadCursor(NULL, IDC_ARROW), (HBRUSH) ::GetStockObject(WHITE_BRUSH), ::LoadIcon(NULL, IDI_APPLICATION)); // _flatFrame = new CFlatFrameWnd; - _flatFrame->Create(strMyClass, _T(""), WS_CHILD | WS_VISIBLE, rectDummy, this); + _flatFrame->Create(strMyClass, _T(""), WS_CHILD | WS_VISIBLE, rectDummy, this); _splitter.CreateStatic(_flatFrame, 2, 1); _splitter.ModifyStyleEx(WS_EX_CLIENTEDGE, 0, SWP_NOSIZE | SWP_NOMOVE | SWP_NOZORDER | SWP_NOACTIVATE); @@ -178,9 +178,9 @@ int CTraceView::OnCreate(LPCREATESTRUCT lpCreateStruct) CBitmap bmp; - bmp.LoadBitmap(IDB_CLASS_VIEW_24); + bmp.LoadBitmap(IDB_CLASS_VIEW_24); BITMAP bmpObj; - bmp.GetBitmap(&bmpObj); + bmp.GetBitmap(&bmpObj); _images.Create(16, bmpObj.bmHeight, ILC_MASK | ILC_COLOR24, 0, 0); _images.Add(&bmp, RGB(255, 0, 0)); // @@ -214,7 +214,7 @@ void CTraceView::InsertPointItem(r3d::IWayPointRef waypoint) CString strId; strId.Format(_T("wp %d"), waypoint->GetId()); HTREEITEM item = _pointView.InsertItem(strId, 1, 1, 0); - SetPointItemData(item, new PntItemData(waypoint)); + SetPointItemData(item, new PntItemData(waypoint)); } void CTraceView::RemovePointItem(HTREEITEM item) @@ -223,7 +223,7 @@ void CTraceView::RemovePointItem(HTREEITEM item) //При удалении последнего item, странно, но выделение не меняется (Событие OnChangedSelectedItem). Поэтому меняем вручную if (_pointView.GetCount() == 1) _pointView.SelectItem(0); - _pointView.DeleteItem(item); + _pointView.DeleteItem(item); } HTREEITEM CTraceView::FindPointItem(const r3d::IWayPointRef& point) @@ -395,10 +395,10 @@ void CTraceView::DelSelPath() PathItemData* data = GetPathItemData(item); r3d::IWayPathRef path = data ? data->path : 0; r3d::IWayNodeRef node = data ? data->node : 0; - RemovePathItem(item); + RemovePathItem(item); if (path) GetTrace()->DelPath(path); - if (node) + if (node) node->GetPath()->Delete(node); } } @@ -474,7 +474,7 @@ void CTraceView::SetPathItemData(HTREEITEM item, PathItemData* value) void CTraceView::AdjustLayout() { - if (GetSafeHwnd() == NULL) + if (GetSafeHwnd() == NULL) return; CRect rectClient; @@ -482,7 +482,7 @@ void CTraceView::AdjustLayout() int cyTlb = _toolBar.CalcFixedLayout(FALSE, TRUE).cy; - _toolBar.SetWindowPos(NULL, rectClient.left, rectClient.top, rectClient.Width(), cyTlb, SWP_NOACTIVATE | SWP_NOZORDER); + _toolBar.SetWindowPos(NULL, rectClient.left, rectClient.top, rectClient.Width(), cyTlb, SWP_NOACTIVATE | SWP_NOZORDER); _flatFrame->SetWindowPos(NULL, rectClient.left, rectClient.top + cyTlb, rectClient.Width(), rectClient.Height() - cyTlb, SWP_NOACTIVATE | SWP_NOZORDER); } @@ -521,7 +521,7 @@ void CTraceView::OnSetFocus(CWnd* pOldWnd) void CTraceView::OnCommandNew() { - if (IsActiveTreeView(&_pointView)) + if (IsActiveTreeView(&_pointView)) AddPoint(); if (IsActiveTreeView(&_pathView)) @@ -605,7 +605,7 @@ void CTraceView::SetMapDoc(CMapEditorDoc* value) if (_mapDoc) { _mapDoc->RegObserver(_mapDocEvent); - UpdateList(); + UpdateList(); } } } \ No newline at end of file diff --git a/src/MapEditor/TraceView.h b/src/MapEditor/TraceView.h index 23585e88..90a5ed6d 100644 --- a/src/MapEditor/TraceView.h +++ b/src/MapEditor/TraceView.h @@ -23,7 +23,7 @@ class CTraceView : public CViewPane CTraceView* _view; public: DelDataFunc(CTraceView* view): _view(view) {} - + bool operator()(HTREEITEM item) const { PntItemData* data = _view->GetPointItemData(item); @@ -41,7 +41,7 @@ class CTraceView : public CViewPane r3d::IWayPointRef _point; public: FindItemByPointFunc(CTraceView* view, const r3d::IWayPointRef& point): _view(view), _point(point) {} - + bool operator()(HTREEITEM item) const { PntItemData* data = _view->GetPointItemData(item); @@ -65,7 +65,7 @@ class CTraceView : public CViewPane CTraceView* _view; public: DelPathDataFunc(CTraceView* view): _view(view) {} - + bool operator()(HTREEITEM item) const { PathItemData* data = _view->GetPathItemData(item); @@ -83,7 +83,7 @@ class CTraceView : public CViewPane r3d::IWayPathRef _path; public: FindItemByPathFunc(CTraceView* view, const r3d::IWayPathRef& path): _view(view), _path(path) {} - + bool operator()(HTREEITEM item) const { PathItemData* data = _view->GetPathItemData(item); @@ -133,7 +133,7 @@ class CTraceView : public CViewPane } }; private: - CMapEditorDoc* _mapDoc; + CMapEditorDoc* _mapDoc; MapDocEvent* _mapDocEvent; //Функции обновления вида @@ -148,11 +148,11 @@ class CTraceView : public CViewPane // void ClearPointList(); void UpdatePointList(); - + //Список путей void ReleasePathItem(HTREEITEM item); void ReleasePathItems(); - // + // void InsertNodeItem(const r3d::IWayNodeRef& node, HTREEITEM parent); void InsertPathItem(r3d::IWayPathRef path); void RemovePathItem(HTREEITEM item); @@ -160,7 +160,7 @@ class CTraceView : public CViewPane // void ClearPathList(); void UpdatePathList(); - + //Общие функции void ClearList(); void UpdateList(); @@ -177,7 +177,7 @@ class CTraceView : public CViewPane void SelectPath(HTREEITEM item); void SelectPath(const r3d::IWayPathRef& path); // - void SelectNode(HTREEITEM item); + void SelectNode(HTREEITEM item); r3d::ITrace* GetTrace(); // diff --git a/src/MapEditor/ViewTree.cpp b/src/MapEditor/ViewTree.cpp index 2991eb0e..0b543a1a 100644 --- a/src/MapEditor/ViewTree.cpp +++ b/src/MapEditor/ViewTree.cpp @@ -10,7 +10,7 @@ static char THIS_FILE[] = __FILE__; #endif BEGIN_MESSAGE_MAP(CViewTree, CTreeCtrl) - ON_WM_KEYDOWN() + ON_WM_KEYDOWN() END_MESSAGE_MAP() BEGIN_MESSAGE_MAP(CViewPane, CDockablePane) @@ -114,7 +114,7 @@ void CViewPane::SetActive(bool active) LRESULT CViewPane::WindowProc(UINT message, WPARAM wParam, LPARAM lParam) { - + switch (message) { @@ -123,7 +123,7 @@ LRESULT CViewPane::WindowProc(UINT message, WPARAM wParam, LPARAM lParam) NMHDR* mes = (NMHDR*)lParam; UINT code = mes->code; bool sf = code == NM_SETFOCUS; - + int m = 0; ++m; break; diff --git a/src/MapEditor/ViewTree.h b/src/MapEditor/ViewTree.h index e2eb8ac4..294e0464 100644 --- a/src/MapEditor/ViewTree.h +++ b/src/MapEditor/ViewTree.h @@ -47,7 +47,7 @@ class CViewPane: public CDockablePane virtual BOOL OnNotify(WPARAM wParam, LPARAM lParam, LRESULT* pResult); afx_msg void OnSetFocus(CWnd* pOldWnd); - virtual void OnChangeActiveTab(bool active); + virtual void OnChangeActiveTab(bool active); virtual bool OnMapViewMouseClickEvent(lsl::MouseKey key, lsl::KeyState state, const lsl::Point& coord) {return false;} virtual bool OnMapViewMouseMoveEvent(const lsl::Point& coord) {return false;} virtual bool OnMapViewKeyEvent(unsigned key, lsl::KeyState state) {return false;} diff --git a/src/MapEditor/resource.h b/src/MapEditor/resource.h index 540d474e..ba172fe5 100644 --- a/src/MapEditor/resource.h +++ b/src/MapEditor/resource.h @@ -97,7 +97,7 @@ #define ID_CAM_LIGHT 32800 // Next default values for new objects -// +// #ifdef APSTUDIO_INVOKED #ifndef APSTUDIO_READONLY_SYMBOLS #define _APS_NEXT_RESOURCE_VALUE 314 diff --git a/src/MapEditor/stdafx.h b/src/MapEditor/stdafx.h index f374c3aa..d6a2a14a 100644 --- a/src/MapEditor/stdafx.h +++ b/src/MapEditor/stdafx.h @@ -112,7 +112,7 @@ template HTREEITEM ForEachTreeCtrlItem(CTreeCtrl& tree, HTREEITEM i if (res) return res; - child = tree.GetNextSiblingItem(child); + child = tree.GetNextSiblingItem(child); } return func(item) ? item : 0; @@ -127,7 +127,7 @@ template HTREEITEM ForEachTreeCtrlItem(CTreeCtrl& tree, _Func func) if (res) return res; - item = tree.GetNextSiblingItem(item); + item = tree.GetNextSiblingItem(item); } return 0; diff --git a/src/MapEditor/targetver.h b/src/MapEditor/targetver.h index 11730d5d..ea42c9d1 100644 --- a/src/MapEditor/targetver.h +++ b/src/MapEditor/targetver.h @@ -2,8 +2,8 @@ #pragma once // The following macros define the minimum required platform. The minimum required platform -// is the earliest version of Windows, Internet Explorer etc. that has the necessary features to run -// your application. The macros work by enabling all features available on platform versions up to and +// is the earliest version of Windows, Internet Explorer etc. that has the necessary features to run +// your application. The macros work by enabling all features available on platform versions up to and // including the version specified. // Modify the following defines if you have to target a platform prior to the ones specified below. diff --git a/src/MathLib/header/lslMath.h b/src/MathLib/header/lslMath.h index 1a0b5dde..ced4394d 100644 --- a/src/MathLib/header/lslMath.h +++ b/src/MathLib/header/lslMath.h @@ -151,10 +151,10 @@ template struct ValueRange { case vdLinear: return _min + (_max - _min) * range; - + default: LSL_ASSERT(false); - + return _min; } } @@ -257,9 +257,9 @@ template<> struct ValueRange if (_distrib == vdVolume) { _volume = _freq.x * _freq.y * _freq.z; - + LSL_ASSERT(_volume > 0); - + D3DXVECTOR3 leng = _max - _min; _step.x = _freq.x > 1 ? leng.x / (_freq.x - 1) : 0; _step.y = _freq.y > 1 ? leng.y / (_freq.y - 1) : 0; @@ -348,7 +348,7 @@ template<> struct ValueRange default: LSL_ASSERT(false); - + return _min; } } @@ -384,7 +384,7 @@ typedef ValueRange Vec3Range; Vec3Range operator*(const Vec3Range& val1, float val2); Vec3Range operator*(const Vec3Range& val1, const D3DXVECTOR3& val2); -//Объемная интерполяция пока схожа к кубической, хотя на самом деле нужна сферическая. Когда поверхность сферы ограничивается окружностью(двумя радиус векторами, которые определяют димаетр окружности на манер как сделано в BB), которая разбивается на сектора через углы. +//Объемная интерполяция пока схожа к кубической, хотя на самом деле нужна сферическая. Когда поверхность сферы ограничивается окружностью(двумя радиус векторами, которые определяют димаетр окружности на манер как сделано в BB), которая разбивается на сектора через углы. template<> struct ValueRange { public: @@ -413,9 +413,9 @@ template<> struct ValueRange if (_distrib == vdVolume) { _volume = _freq.x * _freq.y; - + LSL_ASSERT(_volume > 0); - + glm::vec2 leng(_max.x - _min.x, _max.y - _min.y); _step.x = _freq.x > 1 ? leng.x / (_freq.x - 1) : 0; _step.y = _freq.y > 1 ? leng.y / (_freq.y - 1) : 0; @@ -515,7 +515,7 @@ template<> struct ValueRange default: LSL_ASSERT(false); - + return _min; } } diff --git a/src/MathLib/header/lslMath.inl b/src/MathLib/header/lslMath.inl index 7bf1668a..1de45f14 100644 --- a/src/MathLib/header/lslMath.inl +++ b/src/MathLib/header/lslMath.inl @@ -368,15 +368,15 @@ inline bool operator<(const D3DXVECTOR3& vec1, float scalar) inline bool operator>(const D3DXVECTOR3& vec1, const D3DXVECTOR3& vec2) { - return vec1.x > vec2.x && - vec1.y > vec2.y && + return vec1.x > vec2.x && + vec1.y > vec2.y && vec1.z > vec2.z; } inline bool operator<(const D3DXVECTOR3& vec1, const D3DXVECTOR3& vec2) { - return vec1.x < vec2.x && - vec1.y < vec2.y && + return vec1.x < vec2.x && + vec1.y < vec2.y && vec1.z < vec2.z; } @@ -580,7 +580,7 @@ inline Vec3Range operator*(const Vec3Range& val1, const D3DXVECTOR3& val2) inline bool RayCastIntersectSphere(const D3DXVECTOR3& rayPos, const D3DXVECTOR3& rayVec, const D3DXVECTOR3& spherePos, float sphereRadius, float* t) { D3DXVECTOR3 v = rayPos - spherePos; - + float b = 2.0f * D3DXVec3Dot(&rayVec, &v); float c = D3DXVec3Dot(&v, &v) - sphereRadius * sphereRadius; diff --git a/src/MathLib/header/lslVariant.h b/src/MathLib/header/lslVariant.h index d22605e3..4a49e412 100644 --- a/src/MathLib/header/lslVariant.h +++ b/src/MathLib/header/lslVariant.h @@ -149,7 +149,7 @@ class VariantVec: private Variant using _MyBase::CheckType; using _MyBase::IsType; using _MyBase::AsType; - using _MyBase::Convert; + using _MyBase::Convert; using _MyBase::GetData; void SetData(const void* value, unsigned size); @@ -280,7 +280,7 @@ inline void Variant::AssignData(const void* value, Type type, unsigned count, un _type = type; _count = count; } - + inline void Variant::AssignData(const void* value, Type type, unsigned count) { AssignData(value, type, count, _data ? cTypeSize[_type] : 0, cTypeSize[type]); @@ -393,7 +393,7 @@ template inline void Variant::Convert(_Type* outVal, unsigned index case vtUInt: outVal[i] = static_cast(IsType()[i + index]); break; - + case vtFloat: outVal[i] = static_cast(IsType()[i + index]); break; diff --git a/src/MathLib/header/r3dMath.h b/src/MathLib/header/r3dMath.h index bed71e2f..b340a8ed 100644 --- a/src/MathLib/header/r3dMath.h +++ b/src/MathLib/header/r3dMath.h @@ -50,7 +50,7 @@ struct AABB //Edges are stored in this way: // Y - // Z /| + // Z /| // /|\ / // | /7---------/6(max) // |/ | / / | @@ -58,9 +58,9 @@ struct AABB // 4---------5 | // | 3- - -| -2 // | / | / - // |/ | / + // |/ | / // 0(min)----1/----->X - // + // typedef D3DXVECTOR3 Corners[8]; enum SpaceContains {scNoOverlap, scContainsFully, scContainsPartially}; @@ -118,7 +118,7 @@ struct AABB D3DXVECTOR3 GetCenter() const; D3DXVECTOR3 GetSizes() const; float GetDiameter() const; - float GetRadius() const; + float GetRadius() const; D3DXVECTOR3 GetVertex(unsigned index) const; D3DXPLANE GetPlane(unsigned index) const; //vertex[0] - min @@ -135,9 +135,9 @@ typedef int DirPlan[6]; struct BoundBox { - //Edges are stored in this way: + //Edges are stored in this way: // Y - // Z /| + // Z /| // /|\ / // | /7---------/6(max) // |/ | / / | @@ -145,17 +145,17 @@ struct BoundBox // 4---------5 | // | 3- - -| -2 // | / | / - // |/ | / + // |/ | / // 0(min)----1/----->X // - - static void Transform(const BoundBox& bb, const D3DXMATRIX& m, BoundBox& rOut); + + static void Transform(const BoundBox& bb, const D3DXMATRIX& m, BoundBox& rOut); BoundBox(); explicit BoundBox(const AABB& aabb); void SetPlan(const int numPlan, const float valeur); - void Transform(const D3DXMATRIX& m); + void Transform(const D3DXMATRIX& m); void ToAABB(AABB& aabb) const; @@ -174,7 +174,7 @@ struct Frustum static void CalculateCorners(Corners& pPoints, const D3DXMATRIX& invViewProj); void Refresh(const D3DXMATRIX& viewProjMat); - + SpaceContains ContainsAABB(const AABB& aabb) const; union @@ -184,7 +184,7 @@ struct Frustum D3DXPLANE left; D3DXPLANE top; D3DXPLANE right; - D3DXPLANE bottom; + D3DXPLANE bottom; D3DXPLANE pNear; D3DXPLANE pFar; }; @@ -229,7 +229,7 @@ const D3DXCOLOR clrGreen (0.0f, 1.0f, 0.0f, 1.0f); const D3DXCOLOR clrBlue (0.0f, 0.0f, 1.0f, 1.0f); const D3DXCOLOR clrYellow (1.0f, 1.0f, 0.0f, 1.0f); -const D3DXPLANE XPlane (1.0f, 0.0f, 0.0f, 0.0f); +const D3DXPLANE XPlane (1.0f, 0.0f, 0.0f, 0.0f); const D3DXPLANE YPlane (0.0f, 1.0f, 0.0f, 0.0f); const D3DXPLANE ZPlane (0.0f, 0.0f, 1.0f, 0.0f); const AABB NullAABB(0); diff --git a/src/MathLib/source/r3dMath.cpp b/src/MathLib/source/r3dMath.cpp index dd5803a7..7a1902c8 100644 --- a/src/MathLib/source/r3dMath.cpp +++ b/src/MathLib/source/r3dMath.cpp @@ -117,8 +117,8 @@ AABB2::SpaceContains AABB2::ContainsAABB(const AABB2& test) const test.min[1] < max[1]) if (test.min[0] >= min[0] && - test.min[1] >= min[1] && - + test.min[1] >= min[1] && + test.max[0] <= max[0] && test.max[1] <= max[1]) @@ -147,7 +147,7 @@ AABB::AABB() } AABB::AABB(float size) -{ +{ float maxS = std::max(size / 2.0f, 0.0f); float minS = -maxS; min = D3DXVECTOR3(minS, minS, minS); @@ -167,7 +167,7 @@ inline void AABB::Transform(const AABB& aabb, const D3DXMATRIX& m, AABB& rOut) { D3DXVECTOR3 oldMin = aabb.min; D3DXVECTOR3 oldMax = aabb.max; - D3DXVec3TransformCoord(&rOut.min, &oldMin, &m); + D3DXVec3TransformCoord(&rOut.min, &oldMin, &m); rOut.max = rOut.min; rOut.Include(Vec3TransformCoord(D3DXVECTOR3(oldMin[0], oldMin[1], oldMax[2]), m)); @@ -261,7 +261,7 @@ void AABB::ExtractCorners(Corners& corners) const corners[4] = D3DXVECTOR3(max[0], min[1], min[2]); corners[5] = D3DXVECTOR3(max[0], min[1], max[2]); corners[6] = D3DXVECTOR3(max[0], max[1], min[2]); - corners[7] = D3DXVECTOR3(max[0], max[1], max[2]); + corners[7] = D3DXVECTOR3(max[0], max[1], max[2]); } bool AABB::ContainsPoint(const D3DXVECTOR3& point) const @@ -282,7 +282,7 @@ AABB::SpaceContains AABB::ContainsAABB(const AABB& test) const if (test.min[0] >= min[0] && test.min[1] >= min[1] && test.min[2] >= min[2] && - + test.max[0] <= max[0] && test.max[1] <= max[1] && test.max[2] <= max[2]) @@ -320,7 +320,7 @@ bool AABB::LineCastIntersect(const D3DXVECTOR3& lineStart, const D3DXVECTOR3& li farVec = lineStart + lineVec * tFar; return true; } - return false; + return false; } unsigned AABB::RayCastIntersect(const D3DXVECTOR3& rayStart, const D3DXVECTOR3& rayVec, float& tNear, float& tFar) const @@ -366,7 +366,7 @@ bool AABB::AABBLineCastIntersect(const AABB& aabb, const D3DXVECTOR3& rayVec, fl { float t = AbsMin(tNear, tFar); minDist = (res) ? AbsMin(minDist, t) : t; - res = true; + res = true; } //Обратное направление curV = GetVertex(i); @@ -424,7 +424,7 @@ bool AABB::AABBLineCastIntersect(const AABB& start, const D3DXVECTOR3& vec, cons { float t = AbsMin(tNear, tFar); minDist = (res) ? AbsMin(minDist, t) : t; - res = true; + res = true; } if (start.LineCastIntersect(testBB.v[i], -vec, tNear, tFar)) { @@ -474,7 +474,7 @@ bool AABB::AABBRayCastIntersect(const AABB& aabb, const D3DXVECTOR3& rayVec, flo if (RayCastIntersect(curV, rayVec, tNear, tFar)) { minDist = (res) ? AbsMin(minDist, tNear) : tNear; - res = true; + res = true; } //Обратное направление curV = GetVertex(i); @@ -527,7 +527,7 @@ D3DXVECTOR3 AABB::GetVertex(unsigned index) const switch (index) { case 0: - return min; + return min; case 1: return D3DXVECTOR3(max.x, min.y, min.z); @@ -553,7 +553,7 @@ D3DXVECTOR3 AABB::GetVertex(unsigned index) const default: LSL_ASSERT(false); return NullVector; - } + } } D3DXPLANE AABB::GetPlane(unsigned index) const @@ -592,19 +592,19 @@ D3DXPLANE AABB::GetPlane(unsigned index) const D3DXVECTOR3 AABB::GetPlaneVert(unsigned index, unsigned vertex) const { /*D3DXPLANE plane = GetPlane(index); - D3DXVECTOR3 norm(plane); - D3DXVECTOR3 invNorm = IdentityVector - D3DXVECTOR3(abs(norm.x), abs(norm.y), abs(norm.z)); - + D3DXVECTOR3 norm(plane); + D3DXVECTOR3 invNorm = IdentityVector - D3DXVECTOR3(abs(norm.x), abs(norm.y), abs(norm.z)); + D3DXVECTOR3 fixCoord; D3DXVec3Scale(norm, GetSizes()/2, fixCoord); D3DXVECTOR3 fixCenter; D3DXVec3Scale(norm, GetCenter(), fixCenter); fixCoord += fixCenter; - + D3DXVECTOR3 res; switch (vertex) { - case 0: + case 0: D3DXVec3Scale(min, invNorm, res); return res + fixCoord; @@ -651,7 +651,7 @@ D3DXVECTOR3 AABB::GetPlaneVert(unsigned index, unsigned vertex) const break; default: - LSL_ASSERT(false); + LSL_ASSERT(false); } return GetVertex(bufInd[vertex]); @@ -685,8 +685,8 @@ void BoundBox::Transform(const BoundBox& bb, const D3DXMATRIX& m, BoundBox& rOut void BoundBox::SetPlan(const int numPlan, const float valeur) { - for (int i = 0; i < 4; ++i) - v[cBBPlans[numPlan][i]][cDirPlan[numPlan]] = valeur; + for (int i = 0; i < 4; ++i) + v[cBBPlans[numPlan][i]][cDirPlan[numPlan]] = valeur; } void BoundBox::Transform(const D3DXMATRIX& m) @@ -781,12 +781,12 @@ Frustum::SpaceContains Frustum::ContainsAABB(const AABB& aabb) const inCount = 8; PointIn = true; - for (int iCorner = 0; iCorner < 8; ++iCorner) + for (int iCorner = 0; iCorner < 8; ++iCorner) if (D3DXPlaneDotCoord(&planes[iPlane], &corners[iCorner]) < 0) { PointIn = false; --inCount; - } + } if (!inCount) return scNoOverlap; @@ -808,7 +808,7 @@ bool RayCastIntersectPlane(const D3DXVECTOR3& rayStart, const D3DXVECTOR3& rayVe { const float EPSILON = 1.0e-10f; - float d = D3DXPlaneDotNormal(&plane, &rayVec); + float d = D3DXPlaneDotNormal(&plane, &rayVec); if (abs(d) > EPSILON) { outT = -D3DXPlaneDotCoord(&plane, &rayStart) / d; @@ -861,7 +861,7 @@ void GetSampleOffsetsDownScale3x3(DWORD dwWidth, DWORD dwHeight, glm::vec2 avSam // Sample from the 9 surrounding points. int index = 0; - for (int y = -1; y <= 1; ++y) + for (int y = -1; y <= 1; ++y) for (int x = -1; x <= 1; ++x) { avSampleOffsets[index].x = x * tU; @@ -876,7 +876,7 @@ void GetSampleOffsetsDownScale4x4(DWORD dwWidth, DWORD dwHeight, glm::vec2 avSam float tU = 1.0f / dwWidth; float tV = 1.0f / dwHeight; - // Sample from 4 surrounding points. + // Sample from 4 surrounding points. int index = 0; for( int y = -1; y < 3; y++ ) { diff --git a/src/NetLib/header/net/NetChannel.h b/src/NetLib/header/net/NetChannel.h index d541340f..cfbce914 100644 --- a/src/NetLib/header/net/NetChannel.h +++ b/src/NetLib/header/net/NetChannel.h @@ -43,7 +43,7 @@ typedef std::map NetStates; class INetChannelUser { -public: +public: virtual void OnReceiveState(const NetMessage& msg, const NetStateHeader& header, const streambuf::const_buffers_type& bufs, const Endpoint& remoteEndpoint) {} virtual void OnSend(std::size_t numBytes) {} virtual void OnIOFailed(const error_code& error) {} @@ -73,8 +73,8 @@ class NetChannel: public INetChannel, INetChannelImplUser bool _dataIsWrite; streambuf _outputData; NetStates _outputStates; - - void DataRead(bool fromOutput); + + void DataRead(bool fromOutput); void DataWrite(); void DataSend(const Endpoint& endpoint, const streambuf::const_buffers_type& bufs); void DataSend(const EndpointList& endpointList, const streambuf::const_buffers_type& bufs); @@ -98,13 +98,13 @@ class NetChannel: public INetChannel, INetChannelImplUser void SendState(const EndpointList& endpointList, const NetStateHeader& header, const streambuf::const_buffers_type& bufs); void SendState(const Endpoint& endpoint, const NetStateHeader& header, const streambuf::const_buffers_type& bufs); - + void StartReceiveResponseOut(); void StopReceiveResponseOut(); void Process(unsigned time); - void Dispatch(); - + void Dispatch(); + unsigned ping() const; unsigned pingTime() const; unsigned bytesSend() const; diff --git a/src/NetLib/header/net/NetClient.h b/src/NetLib/header/net/NetClient.h index ff3cb349..cd1147fd 100644 --- a/src/NetLib/header/net/NetClient.h +++ b/src/NetLib/header/net/NetClient.h @@ -9,10 +9,10 @@ namespace net class NetClient: public NetPlayer, INetConnectionUser { -private: - NetConnection* _connection; +private: + NetConnection* _connection; bool _connected; -protected: +protected: virtual void SendCmd(const NetCmdHeader& header, const streambuf::const_buffers_type& bufs); virtual void OnProcessCmd(const NetMessage& msg, const NetCmdHeader& header, streambuf& streambuf, std::istream& stream); @@ -22,7 +22,7 @@ class NetClient: public NetPlayer, INetConnectionUser virtual void OnDisconnected(NetConnection* sender); virtual void OnConnectionFailed(NetConnection* sender, const error_code& error); - virtual void OnReceiveCmd(const NetMessage& msg, const NetCmdHeader& header, const streambuf::const_buffers_type& bufs); + virtual void OnReceiveCmd(const NetMessage& msg, const NetCmdHeader& header, const streambuf::const_buffers_type& bufs); virtual void OnProcess(unsigned time); virtual void OnDispatch(); diff --git a/src/NetLib/header/net/NetConnection.h b/src/NetLib/header/net/NetConnection.h index 18d2d9d3..f412c3e7 100644 --- a/src/NetLib/header/net/NetConnection.h +++ b/src/NetLib/header/net/NetConnection.h @@ -15,7 +15,7 @@ class NetConnection; class INetConnectionUser { -public: +public: virtual void OnConnected(NetConnection* sender) {} virtual void OnDisconnected(NetConnection* sender) {} virtual void OnConnectionFailed(NetConnection* sender, const error_code& error) {} @@ -23,7 +23,7 @@ class INetConnectionUser }; class NetConnection: public INetConnection, INetConnectionImplUser -{ +{ private: NetService* _net; unsigned _id; @@ -36,7 +36,7 @@ class NetConnection: public INetConnection, INetConnectionImplUser unsigned _bytesReceived; bool _cmdIsWrite; - bool _cmdIsRead; + bool _cmdIsRead; NetDatagramHeader _inputDatagram; NetCmdHeader _inputCmdHeader; streambuf _inputCmd; @@ -44,7 +44,7 @@ class NetConnection: public INetConnection, INetConnectionImplUser //async model //same for rpc - + void CmdRead(); void CmdWrite(); //template bool CmdReceive(const MutableBufferSequence& bufs, bool (NetConnection::*handler)(unsigned numBytes, bool success)); @@ -66,7 +66,7 @@ class NetConnection: public INetConnection, INetConnectionImplUser bool Connect(const Endpoint& endpoint); void Close(); bool IsOpen() const; - + void SendCmd(const streambuf::const_buffers_type& bufs, unsigned size); void SendCmd(const NetCmdHeader& header, const streambuf::const_buffers_type& bufs); diff --git a/src/NetLib/header/net/NetConnectionTCP.h b/src/NetLib/header/net/NetConnectionTCP.h index a833ee5f..508d6c4c 100644 --- a/src/NetLib/header/net/NetConnectionTCP.h +++ b/src/NetLib/header/net/NetConnectionTCP.h @@ -23,7 +23,7 @@ class NetAcceptorTCP: public INetAcceptorImpl tcp::acceptor& acceptor(); }; - + class NetConnectionTCP: public INetConnectionImpl { private: @@ -44,7 +44,7 @@ class NetConnectionTCP: public INetConnectionImpl virtual bool Send(const void* data, unsigned size); virtual bool Receive(void* data, unsigned size, unsigned& numBytes); - virtual bool IsAvailable(unsigned& size); + virtual bool IsAvailable(unsigned& size); virtual void Accept(); virtual bool Connect(const Endpoint& endpoint); diff --git a/src/NetLib/header/net/NetPlayer.h b/src/NetLib/header/net/NetPlayer.h index 40f56f35..350f6012 100644 --- a/src/NetLib/header/net/NetPlayer.h +++ b/src/NetLib/header/net/NetPlayer.h @@ -11,7 +11,7 @@ class NetPlayer: public INetPlayer { NetCmdHeader header; streambuf streambuf; - std::ostream stream; + std::ostream stream; Cmd(): stream(&streambuf) {} }; @@ -39,14 +39,14 @@ class NetPlayer: public INetPlayer private: unsigned _id; Cmd _cmdBuf[cCmdMax]; - unsigned _cmdIndex; + unsigned _cmdIndex; - NetModel* NewModel(unsigned modelId, unsigned id, bool owner, unsigned ownerId, std::istream& stream); + NetModel* NewModel(unsigned modelId, unsigned id, bool owner, unsigned ownerId, std::istream& stream); protected: NetService* _net; Models _models; SyncModels _syncModels; - + void RegSyncModel(NetModel* model); void UnregSyncModel(NetModel* model); @@ -76,7 +76,7 @@ class NetPlayer: public INetPlayer bool TestTarget(unsigned target, unsigned id, unsigned sender) const; //id = cDefCmd - default, non model target - //id > 0 - model id + //id > 0 - model id std::ostream& NewCmd(unsigned id, unsigned target, unsigned rpc); std::ostream& NewModel(unsigned modelId); void CloseCmd(); diff --git a/src/NetLib/header/net/NetServer.h b/src/NetLib/header/net/NetServer.h index d22cae64..79c65ee6 100644 --- a/src/NetLib/header/net/NetServer.h +++ b/src/NetLib/header/net/NetServer.h @@ -34,7 +34,7 @@ class NetServer: public NetPlayer, INetConnectionUser typedef std::vector CmdList; public: typedef lsl::Vector Connections; -private: +private: unsigned _port; bool _started; unsigned _lastModelId; @@ -47,7 +47,7 @@ class NetServer: public NetPlayer, INetConnectionUser void NewConnection(NetConnection* connection); void ReleaseConnection(NetConnection* connection); -protected: +protected: void ProcessCmd(const NetMessage& msg, const NetCmdHeader& header, const streambuf::const_buffers_type& bufs); virtual void SendCmd(const NetCmdHeader& header, const streambuf::const_buffers_type& bufs); virtual void OnProcessCmd(const NetMessage& msg, const NetCmdHeader& header, streambuf& streambuf, std::istream& stream); @@ -58,7 +58,7 @@ class NetServer: public NetPlayer, INetConnectionUser virtual void OnDisconnected(NetConnection* sender); virtual void OnConnectionFailed(NetConnection* sender, const error_code& error); - virtual void OnReceiveCmd(const NetMessage& msg, const NetCmdHeader& header, const streambuf::const_buffers_type& bufs); + virtual void OnReceiveCmd(const NetMessage& msg, const NetCmdHeader& header, const streambuf::const_buffers_type& bufs); virtual void OnProcess(unsigned time); virtual void OnDispatch(); diff --git a/src/NetLib/header/net/NetService.h b/src/NetLib/header/net/NetService.h index 22cbf0d1..a0c2339a 100644 --- a/src/NetLib/header/net/NetService.h +++ b/src/NetLib/header/net/NetService.h @@ -20,11 +20,11 @@ class NetService: public INetService, INetChannelUser static const unsigned cBufTickCount = 5; private: - INetServiceUser* _user; + INetServiceUser* _user; INetAcceptorImpl* _netAcceptorImpl; bool _netAcceptorImplCreated; - bool _init; + bool _init; unsigned _time; unsigned _lastSyncTime; unsigned _syncRate; @@ -62,7 +62,7 @@ class NetService: public INetService, INetChannelUser void SendPing(); io_service& ioService(); - + virtual bool OnConnected(INetConnection* sender); virtual bool OnDisconnected(INetConnection* sender); virtual bool OnConnectionFailed(INetConnection* sender, unsigned error); @@ -81,7 +81,7 @@ class NetService: public INetService, INetChannelUser bool IsInit() const; void StartServer(unsigned port, INetAcceptorImpl* acceptor); - bool Connect(const Endpoint& endpoint, INetAcceptorImpl* acceptor); + bool Connect(const Endpoint& endpoint, INetAcceptorImpl* acceptor); void Close(); bool IsClosed() const; diff --git a/src/NetLib/header/targetver.h b/src/NetLib/header/targetver.h index 6fe8eb79..5697f1a7 100644 --- a/src/NetLib/header/targetver.h +++ b/src/NetLib/header/targetver.h @@ -1,8 +1,8 @@ #pragma once // The following macros define the minimum required platform. The minimum required platform -// is the earliest version of Windows, Internet Explorer etc. that has the necessary features to run -// your application. The macros work by enabling all features available on platform versions up to and +// is the earliest version of Windows, Internet Explorer etc. that has the necessary features to run +// your application. The macros work by enabling all features available on platform versions up to and // including the version specified. // Modify the following defines if you have to target a platform prior to the ones specified below. diff --git a/src/NetLib/include/net/BitStream.h b/src/NetLib/include/net/BitStream.h index fa7200b5..fe5a2e2d 100644 --- a/src/NetLib/include/net/BitStream.h +++ b/src/NetLib/include/net/BitStream.h @@ -42,7 +42,7 @@ struct BitValue } vecVal; void* ptr; - char* str; + char* str; }; BitValue(): _w1(0), _w2(0), _w3(0), _w4(0), type(cBitTypeEnd), size(0) {} @@ -113,7 +113,7 @@ struct BitValue } template static void Make(BitValue& bitVal, const _Type& val, BitType type); - template static BitValue Make(const _Type& val, BitType type); + template static BitValue Make(const _Type& val, BitType type); template static void Get(const BitValue& bitVal, _Type& val); NETLIB_API static void Make(BitValue& bitVal, void* val, unsigned size); @@ -156,14 +156,14 @@ class BitStream bool _isReading; mutable unsigned _changedCount; mutable unsigned _updatedCount; - mutable bool _isSleeping; + mutable bool _isSleeping; Val& Get(); void Next(); void ValUpdated(const Val& val, bool updated) const; void ValChanged(const Val& val, bool changed) const; public: - NETLIB_API BitStream(); + NETLIB_API BitStream(); NETLIB_API void Reset(bool isWriting, bool isReading, unsigned time); NETLIB_API void Clear(); @@ -176,7 +176,7 @@ class BitStream NETLIB_API bool isChanged() const; NETLIB_API bool isUpdated() const; NETLIB_API bool isSleeping() const; - NETLIB_API bool isPutSleep() const; + NETLIB_API bool isPutSleep() const; NETLIB_API void Read(std::istream& stream); NETLIB_API void Write(std::ostream& stream, bool diff, bool changed, bool updated) const; @@ -186,7 +186,7 @@ class BitStream NETLIB_API void Serialize(BYTE& value); NETLIB_API void Serialize(char& value); - NETLIB_API void Serialize(bool& value); + NETLIB_API void Serialize(bool& value); NETLIB_API void Serialize(unsigned& value); NETLIB_API void Serialize(int& value); NETLIB_API void Serialize(long& value); @@ -232,7 +232,7 @@ template inline void BitValue::Get(const BitValue& bitVal, _Type& v inline void BitValue::Make(BitValue& bitVal, void* val, unsigned size) { - bitVal.AssignData(val, size); + bitVal.AssignData(val, size); bitVal.type = btData; bitVal.size = size; } diff --git a/src/NetLib/include/net/INetChannel.h b/src/NetLib/include/net/INetChannel.h index b0214b55..184b6c2a 100644 --- a/src/NetLib/include/net/INetChannel.h +++ b/src/NetLib/include/net/INetChannel.h @@ -5,7 +5,7 @@ namespace net class INetChannel { -public: +public: virtual unsigned ping() const = 0; virtual unsigned pingTime() const = 0; virtual unsigned bytesSend() const = 0; diff --git a/src/NetLib/include/net/INetPlayer.h b/src/NetLib/include/net/INetPlayer.h index 1e348e69..b5b9d000 100644 --- a/src/NetLib/include/net/INetPlayer.h +++ b/src/NetLib/include/net/INetPlayer.h @@ -6,12 +6,12 @@ namespace net { class INetPlayer -{ +{ friend class NetModel; public: typedef std::map Models; - static const unsigned cDefCmd = 0; + static const unsigned cDefCmd = 0; protected: virtual void RegSyncModel(NetModel* model) = 0; virtual void UnregSyncModel(NetModel* model) = 0; diff --git a/src/NetLib/include/net/INetService.h b/src/NetLib/include/net/INetService.h index b208d1f0..bad9a16b 100644 --- a/src/NetLib/include/net/INetService.h +++ b/src/NetLib/include/net/INetService.h @@ -11,7 +11,7 @@ namespace net class INetServiceUser { -public: +public: virtual bool OnConnected(INetConnection* sender) {return true;} virtual void OnDisconnected(INetConnection* sender) {} virtual void OnConnectionFailed(INetConnection* sender, unsigned error) {} @@ -33,7 +33,7 @@ class IStreamBuf }; class INetService -{ +{ public: typedef lsl::ClassList ModelClasses; typedef std::vector EndpointList; @@ -64,7 +64,7 @@ class INetService virtual INetChannel* channel() = 0; - virtual INetPlayer* player() = 0; + virtual INetPlayer* player() = 0; virtual bool isServer() const = 0; virtual bool isClient() const = 0; diff --git a/src/NetLib/include/net/NetCommon.h b/src/NetLib/include/net/NetCommon.h index b14351b9..ab4e8426 100644 --- a/src/NetLib/include/net/NetCommon.h +++ b/src/NetLib/include/net/NetCommon.h @@ -48,7 +48,7 @@ struct NetMessage mutable bool _discard; public: unsigned sender; - unsigned time; + unsigned time; NetMessage(): _discard(false), sender(cUndefPlayer), time(0) {} NetMessage(unsigned mSender, unsigned mTime): _discard(false), sender(mSender), time(mTime) {} @@ -97,7 +97,7 @@ struct Endpoint { std::string address; unsigned addressLong; - unsigned port; + unsigned port; Endpoint() {} Endpoint(const std::string& mAddress, unsigned mPort): addressLong(0), address(mAddress), port(mPort) {} @@ -357,7 +357,7 @@ template inline unsigned Write(std::ostream& stream, const std::basic_ template inline unsigned Read(std::istream& stream, std::basic_string<_T>& value, unsigned size) { - value.resize(size); + value.resize(size); Read(stream, const_cast::pointer>(value.data()), sizeof(std::basic_string<_T>::value_type) * size); return size; } diff --git a/src/NetLib/include/net/NetModel.h b/src/NetLib/include/net/NetModel.h index d38a8a6a..12a9dbe1 100644 --- a/src/NetLib/include/net/NetModel.h +++ b/src/NetLib/include/net/NetModel.h @@ -38,13 +38,13 @@ class NetModel unsigned _syncStatePriority; protected: NETLIB_API virtual void OnDescWrite(const NetMessage& msg, std::ostream& stream) {} - NETLIB_API virtual void OnStateRead(const NetMessage& msg, const NetCmdHeader& header, std::istream& stream) {} + NETLIB_API virtual void OnStateRead(const NetMessage& msg, const NetCmdHeader& header, std::istream& stream) {} NETLIB_API virtual void OnStateWrite(const NetMessage& msg, std::ostream& stream) {} NETLIB_API std::ostream& NewRPC(unsigned target, unsigned rpc); NETLIB_API void CloseRPC(); NETLIB_API virtual void CallRPC(const NetMessage& msg, const NetCmdHeader& header, std::istream& stream) = 0; - + NETLIB_API virtual void OnSerialize(const NetMessage& msg, BitStream& stream) {} public: NETLIB_API NetModel(const Desc& desc); @@ -52,10 +52,10 @@ class NetModel NETLIB_API void ProcessCmd(const NetMessage& msg, const NetCmdHeader& header, std::istream& stream); NETLIB_API void Serialize(const NetMessage& msg, BitStream& stream); - + NETLIB_API void DescWrite(const NetMessage& msg, std::ostream& stream); NETLIB_API void StateRead(const NetMessage& msg, const NetCmdHeader& header, std::istream& stream); - NETLIB_API void StateWrite(const NetMessage& msg, std::ostream& stream); + NETLIB_API void StateWrite(const NetMessage& msg, std::ostream& stream); NETLIB_API void Sync(unsigned target); NETLIB_API void Sync(); diff --git a/src/NetLib/source/net/BitStream.cpp b/src/NetLib/source/net/BitStream.cpp index fba6ae19..fd8364d8 100644 --- a/src/NetLib/source/net/BitStream.cpp +++ b/src/NetLib/source/net/BitStream.cpp @@ -19,7 +19,7 @@ BitStream::Val& BitStream::Get() if (_pos >= _values.size()) { _pos = _values.size(); - _values.resize(_pos + 1); + _values.resize(_pos + 1); } return _values[_pos]; @@ -59,16 +59,16 @@ void BitStream::ValChanged(const Val& val, bool changed) const void BitStream::Reset(bool isWriting, bool isReading, unsigned time) { _deltaTime = !_isSleeping ? time - _time : 0; - _time = time; + _time = time; _isWriting = isWriting; - _isReading = isReading; + _isReading = isReading; _pos = 0; } void BitStream::Clear() { - _isSleeping = true; + _isSleeping = true; _time = 0; _deltaTime = 0; _isWriting = false; @@ -76,7 +76,7 @@ void BitStream::Clear() _pos = 0; _values.clear(); - _changedCount = 0; + _changedCount = 0; _updatedCount = 0; } @@ -129,7 +129,7 @@ void BitStream::Read(std::istream& stream) { ValHeader header; net::Read(stream, &header.typeHeader, sizeof(header.typeHeader)); - _isSleeping = header.typeHeader.sleeping; + _isSleeping = header.typeHeader.sleeping; while (header.typeHeader.type != cBitTypeEnd) { @@ -149,7 +149,7 @@ void BitStream::Read(std::istream& stream) { header.size = BitValue::GetSize((BitType)header.typeHeader.type); net::Read(stream, &val, header.size); - } + } val.bit.type = (BitType)header.typeHeader.type; val.bit.size = header.size; ValUpdated(val, true); @@ -182,14 +182,14 @@ void BitStream::Write(std::ostream& stream, bool diff, bool changed, bool update header.typeHeader.type = _values[i].bit.type; header.typeHeader.sleeping = _isSleeping; header.pos = i; - header.size = _values[i].bit.size; + header.size = _values[i].bit.size; if (header.typeHeader.type == btData) { net::Write(stream, &header, sizeof(header)); } else - { + { net::Write(stream, &header.typeHeader, sizeof(header.typeHeader)); net::Write(stream, header.pos); } @@ -206,10 +206,10 @@ void BitStream::Write(std::ostream& stream, bool diff, bool changed, bool update void BitStream::Serialize(BitValue& value, bool equal) { if (_isReading) - { + { Val& val = Get(); ValUpdated(val, false); - ValChanged(val, false); + ValChanged(val, false); if (!equal) value = val.bit; @@ -222,7 +222,7 @@ void BitStream::Serialize(BitValue& value, bool equal) Val& val = Get(); val.bit = value; ValUpdated(val, false); - ValChanged(val, true); + ValChanged(val, true); _isSleeping = false; } Next(); diff --git a/src/NetLib/source/net/NetChannel.cpp b/src/NetLib/source/net/NetChannel.cpp index 44120441..d6acebf1 100644 --- a/src/NetLib/source/net/NetChannel.cpp +++ b/src/NetLib/source/net/NetChannel.cpp @@ -73,7 +73,7 @@ void NetChannel::DataWrite() } unsigned headerSize = NetStateHeader::SizeOf(); - unsigned offset = 0; + unsigned offset = 0; for (OutputMap::const_iterator iter = outputMap.begin(); iter != outputMap.end(); ++iter) { @@ -153,7 +153,7 @@ bool NetChannel::DataReceive(bool fromOutput, bool (NetChannel::*handler)(unsign { unsigned numBytes; bool success = _impl->Receive(buffer_cast(_inputData.prepare(avSize)), avSize, numBytes, _remoteEndpoint, fromOutput); - + bool handleSuccess = (this->*handler)(numBytes, success); if (success && !handleSuccess) @@ -177,8 +177,8 @@ bool NetChannel::OnReceive(unsigned numBytes, bool success) return false; } - _bytesReceived += numBytes; - unsigned headerSize = NetStateHeader::SizeOf(); + _bytesReceived += numBytes; + unsigned headerSize = NetStateHeader::SizeOf(); while (numBytes >= headerSize) { @@ -312,7 +312,7 @@ void NetChannel::StopReceiveResponseOut() } void NetChannel::Process(unsigned time) -{ +{ if (IsOpen()) { bool isBind = IsBind(); diff --git a/src/NetLib/source/net/NetClient.cpp b/src/NetLib/source/net/NetClient.cpp index db8ba8ba..aab41f10 100644 --- a/src/NetLib/source/net/NetClient.cpp +++ b/src/NetLib/source/net/NetClient.cpp @@ -31,7 +31,7 @@ void NetClient::OnProcessCmd(const NetMessage& msg, const NetCmdHeader& header, Read(stream, id); LSL_LOG(lsl::StrFmt("NetClient SetPlayerId id=%d", id)); - + this->id(id); _connected = true; @@ -88,12 +88,12 @@ void NetClient::OnReceiveCmd(const NetMessage& msg, const NetCmdHeader& header, void NetClient::OnProcess(unsigned time) { - _connection->Process(time); + _connection->Process(time); } void NetClient::OnDispatch() { - _connection->Dispatch(); + _connection->Dispatch(); } bool NetClient::Connect(const Endpoint& endpoint) diff --git a/src/NetLib/source/net/NetConnection.cpp b/src/NetLib/source/net/NetConnection.cpp index 0424d99d..ed28aa26 100644 --- a/src/NetLib/source/net/NetConnection.cpp +++ b/src/NetLib/source/net/NetConnection.cpp @@ -15,7 +15,7 @@ NetConnection::NetConnection(NetService* net, unsigned id, INetConnectionUser* u NetConnection::~NetConnection() { _impl->UnRegUser(this); - _user = NULL; + _user = NULL; Close(); _net->acceptorImpl()->ReleaseConnection(_impl); @@ -39,7 +39,7 @@ void NetConnection::CmdWrite() { _cmdIsWrite = true; - NetDatagramHeader datagramHeader; + NetDatagramHeader datagramHeader; datagramHeader.time = _net->time(); unsigned datagramSize = sizeof(datagramHeader); buffer_copy(_outputCmd.prepare(datagramSize), buffer(&datagramHeader, datagramSize), datagramSize); @@ -165,9 +165,9 @@ void NetConnection::OnSend(unsigned numBytes, bool success) _bytesSend += numBytes; _outputCmd.consume(numBytes); _cmdIsWrite = false; - + if (!success) - { + { OnDisconnected(); return; } @@ -209,7 +209,7 @@ void NetConnection::SendCmd(const NetCmdHeader& header, const streambuf::const_b } void NetConnection::Process(unsigned time) -{ +{ if (IsOpen()) { CmdRead(); diff --git a/src/NetLib/source/net/NetConnectionTCP.cpp b/src/NetLib/source/net/NetConnectionTCP.cpp index 0d84ef8b..c155027c 100644 --- a/src/NetLib/source/net/NetConnectionTCP.cpp +++ b/src/NetLib/source/net/NetConnectionTCP.cpp @@ -13,7 +13,7 @@ NetAcceptorTCP::~NetAcceptorTCP() { Close(); } - + void NetAcceptorTCP::Listen(const Endpoint& endpoint) { if (_isOpen) @@ -59,7 +59,7 @@ tcp::acceptor& NetAcceptorTCP::acceptor() return _acceptor; } - + NetConnectionTCP::NetConnectionTCP(NetAcceptorTCP* owner): _owner(owner), _socket(owner->acceptor().get_io_service()), _isOpen(false), _beep(false), _beepCount(0), _isConnected(false) @@ -113,7 +113,7 @@ void NetConnectionTCP::OnSendCmd(const error_code& error, std::size_t numBytes) { if (!_isOpen) return; - + if (error) { LSL_LOG("OnSendCmd msg=" + error.message()); @@ -182,7 +182,7 @@ void NetConnectionTCP::Accept() Close(); _isOpen = true; - + _owner->acceptor().async_accept(_socket, boost::bind(&NetConnectionTCP::OnAccepted, this, boost::asio::placeholders::error)); } @@ -281,7 +281,7 @@ void NetChannelTCP::OnSend(const error_code& error, std::size_t numBytes) { if (!_isOpen) return; - + if (error) { LSL_LOG("OnSendCmd msg=" + error.message()); @@ -346,7 +346,7 @@ void NetChannelTCP::Open(bool broadcast) if (!_isOpen) { _isOpen = true; - + _broadcast = broadcast; OpenWriter(broadcast); diff --git a/src/NetLib/source/net/NetModel.cpp b/src/NetLib/source/net/NetModel.cpp index eea5204a..d16a3e0f 100644 --- a/src/NetLib/source/net/NetModel.cpp +++ b/src/NetLib/source/net/NetModel.cpp @@ -34,7 +34,7 @@ void NetModel::ProcessCmd(const NetMessage& msg, const NetCmdHeader& header, std //__int64 time1, time2, cpu; //QueryPerformanceFrequency((LARGE_INTEGER*)&cpu); - //QueryPerformanceCounter((LARGE_INTEGER*)&time1); + //QueryPerformanceCounter((LARGE_INTEGER*)&time1); CallRPC(msg, header, stream); @@ -90,7 +90,7 @@ void NetModel::syncState(SyncState value) if (_syncState != ssOff) _player->UnregSyncModel(this); - _syncState = value; + _syncState = value; if (_syncState != ssOff) _player->RegSyncModel(this); diff --git a/src/NetLib/source/net/NetPlayer.cpp b/src/NetLib/source/net/NetPlayer.cpp index 2cb455cb..ef151e7f 100644 --- a/src/NetLib/source/net/NetPlayer.cpp +++ b/src/NetLib/source/net/NetPlayer.cpp @@ -40,10 +40,10 @@ NetPlayer::Cmd& NetPlayer::DoNewCmd(unsigned id, unsigned target, unsigned rpc) LSL_ASSERT(_cmdIndex < cCmdMax); Cmd& cmd = _cmdBuf[_cmdIndex]; - ++_cmdIndex; + ++_cmdIndex; cmd.header.size = 0; - cmd.header.id = id; + cmd.header.id = id; cmd.header.target = target; cmd.header.rpc = rpc; @@ -74,7 +74,7 @@ void NetPlayer::ProcessCmd(const NetMessage& msg, const NetCmdHeader& header, co Read(stream, &header2, sizeof(header2)); LSL_LOG(lsl::StrFmt("cNewModelRPC modelId=%d id=%d, ownerId=%d", header2.modelId, header2.id, header2.ownerId)); - + NetModel* model = NewModel(header2.modelId, header2.id, header2.ownerId == id(), header2.ownerId, stream); if (streambuf.size() > 0) { @@ -101,7 +101,7 @@ void NetPlayer::ProcessCmd(const NetMessage& msg, const NetCmdHeader& header, co DeleteModel(model, true); break; } - } + } return; } @@ -172,7 +172,7 @@ void NetPlayer::CloseCmd() Cmd& cmd = _cmdBuf[_cmdIndex - 1]; unsigned size = cmd.streambuf.size(); - cmd.header.size = size; + cmd.header.size = size; SendCmd(cmd.header, cmd.streambuf.data()); cmd.streambuf.consume(size); @@ -238,7 +238,7 @@ void NetPlayer::Process(unsigned time, bool syncRate) std::ostream stream(&streambuf); for (SyncModels::iterator iter = _syncModels.begin(); iter != _syncModels.end(); ++iter) - { + { SyncModel& syncModel = iter->second; if (!syncModel.model->owner() || (syncModel.model->syncStatePriority() == cSyncStatePriorityDef && !syncRate)) continue; @@ -273,7 +273,7 @@ void NetPlayer::Dispatch() for (SyncModels::iterator iter = _syncModels.begin(); iter != _syncModels.end(); ++iter) { - SyncModel& synModel = iter->second; + SyncModel& synModel = iter->second; if (synModel.model->owner() || !synModel.bitStream.isUpdated()) continue; diff --git a/src/NetLib/source/net/NetServer.cpp b/src/NetLib/source/net/NetServer.cpp index e85c170e..234079e9 100644 --- a/src/NetLib/source/net/NetServer.cpp +++ b/src/NetLib/source/net/NetServer.cpp @@ -5,7 +5,7 @@ namespace net { - + NetServer::NetServer(NetService* net): NetPlayer(net, cServerPlayer), _started(false), _port(0), _lastModelId(0), _processCmdRef(0), _newConnection(NULL) { } @@ -21,7 +21,7 @@ void NetServer::NewConnection(NetConnection* connection) if (_newConnection == NULL) _newConnection = _net->NewConnection(cUndefPlayer, this); - _newConnection->Accept(); + _newConnection->Accept(); } void NetServer::ReleaseConnection(NetConnection* connection) @@ -35,7 +35,7 @@ void NetServer::ReleaseConnection(NetConnection* connection) } void NetServer::ProcessCmd(const NetMessage& msg, const NetCmdHeader& header, const streambuf::const_buffers_type& bufs) -{ +{ ++_processCmdRef; int pos = _processCmdList.size(); @@ -78,7 +78,7 @@ void NetServer::ProcessCmd(const NetMessage& msg, const NetCmdHeader& header, co } void NetServer::SendCmd(const NetCmdHeader& header, const streambuf::const_buffers_type& bufs) -{ +{ ProcessCmd(NetMessage(id(), _net->time()), header, bufs); } @@ -93,7 +93,7 @@ void NetServer::OnProcessCmd(const NetMessage& msg, const NetCmdHeader& header, BYTE modelId; net::Read(stream, modelId); unsigned dataSize = streambuf.size(); - const void* data = dataSize > 0 ? buffer_cast(streambuf.data()) : NULL; + const void* data = dataSize > 0 ? buffer_cast(streambuf.data()) : NULL; ModelHeader header2; header2.id = ++_lastModelId; @@ -125,7 +125,7 @@ void NetServer::SendState(const NetStateHeader& header, const streambuf::const_b NetConnection* connection = *iter; if (!connection->IsOpen() || !TestTarget(target, connection->id(), id())) continue; - + endpointList.push_back(connection->remoteEndpoint()); } @@ -154,7 +154,7 @@ void NetServer::OnConnected(NetConnection* sender) break; } } - + sender->id(newId); if (_connections.size() < cPlayerMaxCount && _net->OnConnected(sender)) @@ -197,12 +197,12 @@ void NetServer::OnConnected(NetConnection* sender) continue; syncModel.bitStream.Write(stream, false, false, false); - + NetStateHeader header; header.id = iter->first; header.size = streambuf.size(); SendState(header, streambuf.data(), sender->id()); - + streambuf.consume(streambuf.size()); } @@ -250,7 +250,7 @@ void NetServer::OnProcess(unsigned time) std::ostream stream(&streambuf); for (SyncModels::iterator iter = _syncModels.begin(); iter != _syncModels.end(); ++iter) - { + { SyncModel& syncModel = iter->second; if (syncModel.model->owner()) continue; @@ -337,7 +337,7 @@ unsigned NetServer::port() const void NetServer::Disconnect(NetConnection* connection) { connection->Close(); - DeleteModels(connection->id(), false); + DeleteModels(connection->id(), false); ReleaseConnection(connection); } diff --git a/src/NetLib/source/net/NetService.cpp b/src/NetLib/source/net/NetService.cpp index 9ca05c16..6b706f19 100644 --- a/src/NetLib/source/net/NetService.cpp +++ b/src/NetLib/source/net/NetService.cpp @@ -114,7 +114,7 @@ NetChannel* NetService::NewChannel(INetChannelUser* user) { if (_channels.size() > 0 && _bufChannelTick > cBufTickCount) { - NetChannel* channel = _channels.front(); + NetChannel* channel = _channels.front(); channel->user(user); _channels.pop_front(); _bufChannelTick = 0; @@ -151,7 +151,7 @@ void NetService::SendPing() header.id = NetPlayer::cPing; header.sender = cLocalPlayer; header.size = 0; - + _netChannel->SendState(Endpoint(ip::address_v4::broadcast().to_ulong(), _pingPort), header, streambuf::const_buffers_type(NULL, 0)); } @@ -199,11 +199,11 @@ void NetService::OnReceiveCmd(const NetMessage& msg, const NetCmdHeader& header, void NetService::OnReceiveState(const NetMessage& msg, const NetStateHeader& header, const streambuf::const_buffers_type& bufs, const Endpoint& remoteEndpoint) { //LSL_TRACE(lsl::StrFmt("NetService::OnReceiveState id=%d target=%d size=%d", header.id, header.target, header.size)); - + if (header.id == NetPlayer::cPing) { tcp::endpoint tcpEndpoint; - GetEndpointTCP(remoteEndpoint, tcpEndpoint); + GetEndpointTCP(remoteEndpoint, tcpEndpoint); LSL_TRACE(lsl::StrFmt("NetService::OnReceiveState=cPing sender=%d address=%s port=%d", header.sender, tcpEndpoint.address().to_string().c_str(), tcpEndpoint.port())); @@ -213,7 +213,7 @@ void NetService::OnReceiveState(const NetMessage& msg, const NetStateHeader& hea header.id = NetPlayer::cPing; header.sender = cServerPlayer; header.size = 0; - + _netChannel->SendState(remoteEndpoint, header, streambuf::const_buffers_type(NULL, 0)); } else if (header.sender == cServerPlayer) @@ -245,7 +245,7 @@ void NetService::OnIOFailed(const error_code& error) void NetService::Process(unsigned time) { - _time = time; + _time = time; //receive async events (may immediately dispatched or collected depends from current async model) error_code error; @@ -264,7 +264,7 @@ void NetService::Process(unsigned time) if (_netClient) _netClient->Dispatch(); if (_netServer) - _netServer->Dispatch(); + _netServer->Dispatch(); NetPlayer* player = this->player(); if (player) @@ -291,7 +291,7 @@ void NetService::Process(unsigned time) if (_time - _pingStartTime > _pingTime) { - CancelPing(); + CancelPing(); if (_user) _user->OnPingComplete(); } @@ -334,7 +334,7 @@ void NetService::StartServer(unsigned port, INetAcceptorImpl* acceptor) Close(); protocolImpl(acceptor); - + _netServer = new NetServer(this); _netServer->Start(port); } @@ -377,7 +377,7 @@ void NetService::Ping(unsigned remotePort, unsigned time, unsigned sendPeriod) _pingStartTime = _time; _netChannel->StartReceiveResponseOut(); - SendPing(); + SendPing(); } void NetService::CancelPing() @@ -523,7 +523,7 @@ bool NetService::GetAdapterAddresses(lsl::StringVec& addrVec) const const unsigned WORKING_BUFFER_SIZE = 15000; const unsigned MAX_TRIES = 3; - IP_ADAPTER_ADDRESSES* addresses = NULL; + IP_ADAPTER_ADDRESSES* addresses = NULL; unsigned long outBufLen = WORKING_BUFFER_SIZE; unsigned dwRetVal = 0; unsigned Iterations = 0; @@ -554,7 +554,7 @@ bool NetService::GetAdapterAddresses(lsl::StringVec& addrVec) const while ((dwRetVal == ERROR_BUFFER_OVERFLOW) && (Iterations < MAX_TRIES)); if (addresses == NULL) - return false; + return false; IP_ADAPTER_ADDRESSES* address = addresses; @@ -568,7 +568,7 @@ bool NetService::GetAdapterAddresses(lsl::StringVec& addrVec) const { if (uniAddr->Address.iSockaddrLength == sizeof(sockaddr_in)) { - sockaddr_in* ad = ((sockaddr_in*)uniAddr->Address.lpSockaddr); + sockaddr_in* ad = ((sockaddr_in*)uniAddr->Address.lpSockaddr); addrVec.push_back(inet_ntoa(ad->sin_addr)); } diff --git a/src/RRR3d/RRR3d.cpp b/src/RRR3d/RRR3d.cpp index dd6e24dc..2cc49732 100644 --- a/src/RRR3d/RRR3d.cpp +++ b/src/RRR3d/RRR3d.cpp @@ -52,7 +52,7 @@ DWORD GetWndStyles(bool fullScreen) else { return WS_OVERLAPPEDWINDOW | WS_VISIBLE; - } + } } DWORD GetExtWndStyles(bool fullScreen) @@ -71,7 +71,7 @@ LRESULT CALLBACK MainWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lPar { switch (message) { - case WM_DESTROY: + case WM_DESTROY: PostQuitMessage(0); return 0; @@ -84,7 +84,7 @@ LRESULT CALLBACK MainWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lPar return 0; } - case WM_KEYUP: + case WM_KEYUP: OnKeyEvent(wParam, lsl::ksUp, false); return 0; @@ -135,11 +135,11 @@ LRESULT CALLBACK MainWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lPar OnMouseMoveEvent(lsl::Point(points.x, points.y), (wParam & MK_SHIFT) ? true : false, (wParam & MK_CONTROL) ? true : false); return 0; - } + } case WM_SETCURSOR: // Turn off window cursor -#ifndef _DEBUG +#ifndef _DEBUG SetCursor(0); #endif return 0; @@ -171,7 +171,7 @@ int MainLoop() int resetInputFrames = 0; while (true) - { + { bool inputWasReset = rock3dWorld->InputWasReset(); if (inputWasReset && (++resetInputFrames) >= 3) @@ -261,8 +261,8 @@ int APIENTRY _tWinMain(HINSTANCE hInstance, wc.lpszClassName = _T("Rock3D"); wc.hIconSm = LoadIcon(hInstance, MAKEINTRESOURCE(108)); RegisterClassEx(&wc); - mainWindow = CreateWindowEx(GetExtWndStyles(fullScreen), _T("Rock3D"), _T(""), GetWndStyles(fullScreen), pnt.x, pnt.y, rect.right - rect.left, rect.bottom - rect.top, 0, 0, hInstance, 0); - + mainWindow = CreateWindowEx(GetExtWndStyles(fullScreen), _T("Rock3D"), _T(""), GetWndStyles(fullScreen), pnt.x, pnt.y, rect.right - rect.left, rect.bottom - rect.top, 0, 0, hInstance, 0); + r3d::IView::Desc desc; desc.fullscreen = fullScreen; desc.handle = mainWindow; @@ -270,9 +270,9 @@ int APIENTRY _tWinMain(HINSTANCE hInstance, rock3dWorld = r3d::CreateWorld(desc, true); rock3dWorld->RunGame(); - + lsl::appLog.Append("Run..."); - + exitResult = MainLoop(); lsl::appLog.Append("Terminate..."); @@ -282,7 +282,7 @@ int APIENTRY _tWinMain(HINSTANCE hInstance, //lsl искл. Автоматически записывается в лог и делает assert catch (const lsl::Error& err) { - ErrMessage(err.what()); + ErrMessage(err.what()); } //отключаем стд исключения чтобы точнее поймать их место в дебагере #ifndef _DEBUG @@ -307,7 +307,7 @@ int APIENTRY _tWinMain(HINSTANCE hInstance, lsl::appLog.Append("Exit"); lsl::FileSystem::Release(); -#ifdef DEBUG_MEMORY +#ifdef DEBUG_MEMORY _CrtMemDumpAllObjectsSince(&_ms); //_CrtDumpMemoryLeaks(); #endif diff --git a/src/RRR3d/stdafx.h b/src/RRR3d/stdafx.h index 2b74c8a8..b8dfc5f3 100644 --- a/src/RRR3d/stdafx.h +++ b/src/RRR3d/stdafx.h @@ -1,8 +1,8 @@ #pragma once // The following macros define the minimum required platform. The minimum required platform -// is the earliest version of Windows, Internet Explorer etc. that has the necessary features to run -// your application. The macros work by enabling all features available on platform versions up to and +// is the earliest version of Windows, Internet Explorer etc. that has the necessary features to run +// your application. The macros work by enabling all features available on platform versions up to and // including the version specified. // Modify the following defines if you have to target a platform prior to the ones specified below. diff --git a/src/Rock3dEngine/header/GraphManager.h b/src/Rock3dEngine/header/GraphManager.h index 1acb7309..463e5e7b 100644 --- a/src/Rock3dEngine/header/GraphManager.h +++ b/src/Rock3dEngine/header/GraphManager.h @@ -57,7 +57,7 @@ class GraphManager: public lsl::Component { osReflWater = 0, osViewCubeMap, - osViewDepth, + osViewDepth, osShadowCast, osShadowMapp, @@ -146,8 +146,8 @@ class GraphManager: public lsl::Component enum ReflMappMode { rmColorLayer, rmLackLayer }; private: graph::Engine* _engine; - gui::Manager* _gui; - + gui::Manager* _gui; + bool _graphOptions[cGraphOptionEnd]; GraphQuality _graphQuality[cGraphOptionEnd]; @@ -179,7 +179,7 @@ class GraphManager: public lsl::Component graph::ReflRender* _reflRender; graph::Tex2DResource* _waterColor; - graph::Tex2DResource* _waterTexNorm; + graph::Tex2DResource* _waterTexNorm; graph::WaterPlane* _waterPlane; graph::PlaneNode* _waterNode; graph::Actor* _waterPlaneActor; @@ -202,7 +202,7 @@ class GraphManager: public lsl::Component graph::RenderToCubeTex* _scRenderCubeTex; unsigned _scRenderCubeTexRef; - + graph::DepthMapRender* _scDepthMap; unsigned _scDepthMapRef; @@ -234,7 +234,7 @@ class GraphManager: public lsl::Component bool _trueRefl; graph::ReflRender* _planarReflRender; - graph::PlanarReflMappShader* _planarReflShader; + graph::PlanarReflMappShader* _planarReflShader; graph::BumpMapShader* _bumpMapShader; @@ -345,7 +345,7 @@ class GraphManager: public lsl::Component void RenderDebug(); - void OctreeRender(OctreeScene scene, bool ignoreRayUsers, bool planarRefl = false); + void OctreeRender(OctreeScene scene, bool ignoreRayUsers, bool planarRefl = false); bool RenderWithShader(OctreeScene scene, bool ignoreRayUsers, graph::Shader* shader, bool checkLight, bool defRender); void RenderPlanarReflScene(graph::CameraCI& camera); void RenderEnvReflScene(graph::CameraCI& camera); @@ -355,7 +355,7 @@ class GraphManager: public lsl::Component void AdjustViewOrtho(graph::CameraCI& camera); void RenderShadow(graph::CameraCI& camera); void RenderCubeMap(graph::CameraCI& camera); - void RenderWaterRef(graph::CameraCI& camera); + void RenderWaterRef(graph::CameraCI& camera); void RenderDepthScene(graph::CameraCI& camera); public: GraphManager(HWND window, lsl::Point resolution, bool fullScreen); @@ -410,7 +410,7 @@ class GraphManager: public lsl::Component bool IsFilteringSupported(unsigned value) const; unsigned GetMultisampling() const; - void SetMultisampling(unsigned value); + void SetMultisampling(unsigned value); bool IsMultisamplingSupported(unsigned value) const; // @@ -438,7 +438,7 @@ class GraphManager: public lsl::Component //Камера graph::Camera* GetCamera(); void SetCamera(graph::Camera* value); - + const D3DXVECTOR3& GetCubeViewPos() const; void SetCubeViewPos(const D3DXVECTOR3& value); // @@ -456,7 +456,7 @@ class GraphManager: public lsl::Component bool GetGUIMode() const; void SetGUIMode(bool value); - + graph::DisplayMode GetDisplayMode() const; const graph::DisplayModes& GetDisplayModes() const; bool FindNearMode(const lsl::Point& resolution, graph::DisplayMode& mode, float aspect = 0) const; diff --git a/src/Rock3dEngine/header/graph/Actor.h b/src/Rock3dEngine/header/graph/Actor.h index 510bddb2..7303a393 100644 --- a/src/Rock3dEngine/header/graph/Actor.h +++ b/src/Rock3dEngine/header/graph/Actor.h @@ -18,7 +18,7 @@ class Actor: public IActor, public SceneNode friend GraphManager; friend class ActorManager; private: - typedef SceneNode _MyBase; + typedef SceneNode _MyBase; private: GraphManager* _graph; GraphDesc _graphDesc; @@ -43,7 +43,7 @@ class Actor: public IActor, public SceneNode GraphManager* GetGraph(); const GraphDesc& GetGraphDesc() const; - void SetGraph(GraphManager* graph, const GraphDesc& desc); + void SetGraph(GraphManager* graph, const GraphDesc& desc); //planar refl plane(norm(x, y, z), d(w)) //if not null then it is a track diff --git a/src/Rock3dEngine/header/graph/ActorManager.h b/src/Rock3dEngine/header/graph/ActorManager.h index 4116c69f..466adf77 100644 --- a/src/Rock3dEngine/header/graph/ActorManager.h +++ b/src/Rock3dEngine/header/graph/ActorManager.h @@ -32,7 +32,7 @@ class ActorManager scenes.clear(); scenes.resize(numScenes); - dynamic = false; + dynamic = false; culling = true; } @@ -109,7 +109,7 @@ class ActorManager { OctreeSort::Position pos; unsigned idState; - }; + }; typedef lsl::List GroupList; typedef std::map CameraCache; @@ -123,7 +123,7 @@ class ActorManager }; typedef std::map RayUsers; public: - typedef lsl::List UserList; + typedef lsl::List UserList; private: //Список рендеров для актеров GroupList _groupList; @@ -135,7 +135,7 @@ class ActorManager OctreeSort _octree; // Planars _planars; - + AnyGroup* _defGroup; CameraCache _cameraCache; RayUsers _rayUsers; @@ -145,8 +145,8 @@ class ActorManager void ReleaseGroup(Group* value); CameraCache::iterator CameraCull(const graph::CameraCI* camera); - - bool PullInRayTargetGroup(User* user, unsigned scene, const graph::CameraCI* camera, const D3DXVECTOR3& rayTarget, float rayTargetSize); + + bool PullInRayTargetGroup(User* user, unsigned scene, const graph::CameraCI* camera, const D3DXVECTOR3& rayTarget, float rayTargetSize); void RemoveRayUser(User* user); public: ActorManager(unsigned sceneCnt); diff --git a/src/Rock3dEngine/header/graph/ContextInfo.h b/src/Rock3dEngine/header/graph/ContextInfo.h index 14116937..7c2c7387 100644 --- a/src/Rock3dEngine/header/graph/ContextInfo.h +++ b/src/Rock3dEngine/header/graph/ContextInfo.h @@ -23,7 +23,7 @@ template class StateManager private: typedef std::map<_State, _Value> _States; public: - typedef typename _States::iterator iterator; + typedef typename _States::iterator iterator; private: _States _states; public: @@ -72,7 +72,7 @@ template class StateStack bool Push(const _State& state, const _Value& value) { States::iterator iter = _states.find(state); - if (iter == _states.end()) + if (iter == _states.end()) iter = _states.insert(_states.end(), States::value_type(state, ValueStatck())); bool res = !iter->second.empty() && iter->second.top().value == value; @@ -89,7 +89,7 @@ template class StateStack bool Pop(const _State& state) { States::iterator iter = _states.find(state); - + LSL_ASSERT(iter != _states.end()); bool res = iter->second.top().Release() == 0; @@ -134,7 +134,7 @@ class Renderable: public virtual lsl::Object //Экранный, внеэкранный буффер class RenderBuffer: public virtual lsl::Object -{ +{ public: virtual void Render(Engine& engine, IDirect3DSurface9* backBuffer, IDirect3DSurface9* dsSurface) = 0; }; @@ -182,7 +182,7 @@ struct LightDesc ambient = clrBlack; diffuse = clrWhite; specular = clrWhite; - + aspect = 1.0f; nearDist = 1.0f; range = 100.0f; @@ -191,7 +191,7 @@ struct LightDesc attenuation1 = 0; attenuation2 = 0; phi = D3DX_PI/2.0f; - theta = D3DX_PI/4.0f; + theta = D3DX_PI/4.0f; pos = NullVector; dir = XVector; @@ -203,7 +203,7 @@ struct LightDesc D3DXCOLOR ambient; D3DXCOLOR diffuse; D3DXCOLOR specular; - + //Соотношение сторон фрустума отдельного направления точечного, направленного источника света. Для конусного игнорируется. float aspect; float nearDist; @@ -214,13 +214,13 @@ struct LightDesc float attenuation2; float theta; float phi; - + D3DXVECTOR3 pos; D3DXVECTOR3 dir; D3DXVECTOR3 up; //Карта теней в пространстве текущей камеры - Tex2DResource* shadowMap; + Tex2DResource* shadowMap; }; class ContextInfo; @@ -235,7 +235,7 @@ class CameraCI: public virtual lsl::Object static public glm::vec2 ProjToView(const glm::vec2& coord, const glm::vec2& viewSize); private: CameraDesc _desc; - + D3DXMATRIX _worldMat; mutable D3DXMATRIX _matrices[cTransformEnd]; mutable D3DXMATRIX _invMatrices[cTransformEnd]; @@ -260,7 +260,7 @@ class CameraCI: public virtual lsl::Object unsigned IdState() const; bool ComputeZBounds(const AABB& aabb, float& minZ, float& maxZ) const; - void AdjustNearFarPlane(const AABB& aabb, float minNear, float maxFar); + void AdjustNearFarPlane(const AABB& aabb, float minNear, float maxFar); void GetProjPerspective(D3DXMATRIX& mat) const; void GetViewProjPerspective(D3DXMATRIX& mat) const; @@ -285,7 +285,7 @@ class CameraCI: public virtual lsl::Object const D3DXMATRIX& GetInvView() const; const D3DXMATRIX& GetInvProj() const; const D3DXMATRIX& GetInvViewProj() const; - const D3DXMATRIX& GetInvWVP() const; + const D3DXMATRIX& GetInvWVP() const; }; class LightCI: public lsl::Object @@ -309,7 +309,7 @@ class LightCI: public lsl::Object const LightDesc& GetDesc() const; void SetDesc(const LightDesc& value); - const CameraCI& GetCamera() const; + const CameraCI& GetCamera() const; }; class BaseShader @@ -323,7 +323,7 @@ class ContextInfo { public: static const unsigned cMaxTexSamplers = 8; - + static const TransformStateType ContextInfo::cTexTransform[8]; static DWORD defaultRenderStates[RENDER_STATE_END]; static DWORD defaultSamplerStates[SAMPLER_STATE_END]; @@ -341,21 +341,21 @@ class ContextInfo private: RenderDriver* _driver; - D3DXMATRIX _worldMat; + D3DXMATRIX _worldMat; std::vector _textureMatStack[cMaxTexSamplers]; - IDirect3DBaseTexture9* _textures[cMaxTexSamplers]; + IDirect3DBaseTexture9* _textures[cMaxTexSamplers]; int _maxTextureStage; MaterialDesc _material; - DWORD _renderStates[RENDER_STATE_END]; + DWORD _renderStates[RENDER_STATE_END]; DWORD _samplerStates[cMaxTexSamplers][SAMPLER_STATE_END]; DWORD _textureStageStates[cMaxTexSamplers][TEXTURE_STAGE_STATE_END]; bool _enableShadow; float _texDiffK; bool _invertingCullFace; - bool _ignoreMaterial; + bool _ignoreMaterial; CameraStack _cameraStack; ShaderStack _shaderStack; @@ -434,7 +434,7 @@ class ContextInfo void SetInvertingCullFace(bool value); bool GetIgnoreMaterial(); - void SetIgnoreMaterial(bool value); + void SetIgnoreMaterial(bool value); const ShaderStack& GetShaderStack() const; diff --git a/src/Rock3dEngine/header/graph/Driver/D3D9RenderDriver.h b/src/Rock3dEngine/header/graph/Driver/D3D9RenderDriver.h index 7832a364..fd1d0e47 100644 --- a/src/Rock3dEngine/header/graph/Driver/D3D9RenderDriver.h +++ b/src/Rock3dEngine/header/graph/Driver/D3D9RenderDriver.h @@ -12,7 +12,7 @@ namespace d3d9 class D3D9RenderDriver: public RenderDriver { private: - IDirect3D9* _d3d9; + IDirect3D9* _d3d9; IDirect3DDevice9* _d3dDevice9; IDirect3D9Ex* _d3d9Ex; IDirect3DDevice9Ex* _d3dDevice9Ex; diff --git a/src/Rock3dEngine/header/graph/Engine.h b/src/Rock3dEngine/header/graph/Engine.h index 2f90d002..29de0fab 100644 --- a/src/Rock3dEngine/header/graph/Engine.h +++ b/src/Rock3dEngine/header/graph/Engine.h @@ -26,7 +26,7 @@ class Engine: public lsl::Object IDirect3DSwapChain9* _swapChain; IDirect3DSurface9* _dsSurf; IDirect3DSurface9* _backBuff; - _VideoResList _videoResList; + _VideoResList _videoResList; //Текущее состояние устройства volatile bool _reset; @@ -97,7 +97,7 @@ class Engine: public lsl::Object void EndBackBufOut(); IDirect3DSurface9* GetDSSurf(); - void BeginMeshPT(); + void BeginMeshPT(); void EndMeshPT(); void RenderPlanePT(); void RenderSpritePT(const D3DXVECTOR3& pos, const D3DXVECTOR3& scale, float turnAngle, const D3DXVECTOR3* fixDirection, const D3DXMATRIX& localMat); @@ -113,7 +113,7 @@ class Engine: public lsl::Object static bool d3dxUse(); static void d3dxUse(bool value); - + RenderDriver& GetDriver() const; const D3DPRESENT_PARAMETERS& GetParams() const; @@ -143,7 +143,7 @@ class TextureStageStateManager private: typedef std::map _States; public: - typedef _States::iterator iterator; + typedef _States::iterator iterator; private: _States _states; public: diff --git a/src/Rock3dEngine/header/graph/FxManager.h b/src/Rock3dEngine/header/graph/FxManager.h index ff321a4e..1ba5d15d 100644 --- a/src/Rock3dEngine/header/graph/FxManager.h +++ b/src/Rock3dEngine/header/graph/FxManager.h @@ -22,7 +22,7 @@ class FxParticle: public lsl::Object D3DXVECTOR3 _pos; glm::quat _rot; D3DXVECTOR3 _scale; - + mutable D3DXMATRIX _worldMat; mutable bool _worldMatChanged; @@ -72,7 +72,7 @@ class FxParticleGroup: public lsl::Container }; class FxEmitter: public lsl::Object, public lsl::Serializable -{ +{ friend class FxParticleSystem; friend class FxManager; private: @@ -82,7 +82,7 @@ class FxEmitter: public lsl::Object, public lsl::Serializable enum MaxNumAction {mnaReplaceLatest = 0, mnaWaitingFree, cMaxNumActionEnd}; static const char* cMaxNumActionStr[cMaxNumActionEnd]; - enum StartType + enum StartType { //Относительно времени sotTime = 0, @@ -90,7 +90,7 @@ class FxEmitter: public lsl::Object, public lsl::Serializable sotDist, //Комбинированный, при выполнений хотябы одного условия из sotTime, sotDist sotCombine, - + // cStartTypeEnd }; @@ -108,7 +108,7 @@ class FxEmitter: public lsl::Object, public lsl::Serializable // mnaWaitingFree - Новые не создаются, ожидается уничтожение старых // mnaReplaceLatest - Убиваются самые старые частицы и взамен них создаются новые (по умолчанию). Из-за особенности реализации удаляются не самые старые! MaxNumAction maxNumAction; - //Время жизни (в сек.) одной частицы. + //Время жизни (в сек.) одной частицы. //0 - Время жизни не ограничено FloatRange life; //Смещение в создании (в сек.) частиц @@ -154,7 +154,7 @@ class FxEmitter: public lsl::Object, public lsl::Serializable FxParticleGroup* AddGroup(); void DelGroup(_GroupList::iterator iter); void DelGroup(const _GroupList::Position& pos); - void DelGroup(_GroupList::iterator stIter, _GroupList::iterator endIter); + void DelGroup(_GroupList::iterator stIter, _GroupList::iterator endIter); void DelGroup(FxParticleGroup* value); void ClearGroupList(); @@ -181,19 +181,19 @@ class FxEmitter: public lsl::Object, public lsl::Serializable //Запрос на создание num частиц с учетом условий ограничения void QueryCreateParticles(unsigned num, float deltaTime, const D3DXVECTOR3& offPos); - void QueryCreateGroup(float deltaTime, const D3DXVECTOR3& offPos); - + void QueryCreateGroup(float deltaTime, const D3DXVECTOR3& offPos); + virtual AABB LocalDimensions() const; virtual void OnProgress(float deltaTime); // virtual void Save(lsl::SWriter* writer); - virtual void Load(lsl::SReader* reader); + virtual void Load(lsl::SReader* reader); public: FxEmitter(FxParticleSystem* owner); virtual ~FxEmitter(); - void Reset(); + void Reset(); FxParticleSystem* GetSystem(); @@ -214,7 +214,7 @@ class FxEmitter: public lsl::Object, public lsl::Serializable D3DXVECTOR3 GetLocalPos(FxParticle* particle) const; D3DXVECTOR3 GetWorldPos(FxParticle* particle) const; - const D3DXMATRIX& GetMatrix() const; + const D3DXMATRIX& GetMatrix() const; }; class FxParticleSystem: public BaseSceneNode @@ -224,7 +224,7 @@ class FxParticleSystem: public BaseSceneNode typedef BaseSceneNode _MyBase; public: enum EmitterType {etBase = 0, etFlow, cEmitterTypeEnd}; - + class Emitters: public lsl::Collection { private: @@ -252,14 +252,14 @@ class FxParticleSystem: public BaseSceneNode typedef Emitters::ClassList ClassList; static ClassList classList; - enum ChildStyle + enum ChildStyle { //Прокси объекты, структура всех объектов одинакова csProxy = 0, //Уникальные объекты для каждой частицы - csUnique, - + csUnique, + cChildStyleEnd }; @@ -407,7 +407,7 @@ class FxTrailManager: public FxManager private: typedef FxManager _MyBase; public: - enum TypeDraw + enum TypeDraw { //Отрисовка по группам частиц каждая из которых со своим материалом tdPerGroup, @@ -419,7 +419,7 @@ class FxTrailManager: public FxManager void BuildVertexLine(res::VertexPT* vertex, const D3DXVECTOR3& pos, const D3DXVECTOR3& dir, const D3DXVECTOR3& camPos, float xTex); void DrawPath(graph::Engine& engine, FxParticleSystem* system, FxParticleGroup* group, res::VertexPT* vBuf, unsigned primCnt, unsigned sPrim); -protected: +protected: virtual void RenderGroup(graph::Engine& engine, FxEmitter* emitter, FxParticleGroup* group); virtual void RenderEmitter(graph::Engine& engine, FxEmitter* emitter); virtual void RenderSystem(graph::Engine& engine, FxParticleSystem* system); @@ -460,13 +460,13 @@ class FxFlowEmitter: public FxEmitter Vec3Range speedScale; Vec3Range acceleration; - D3DXVECTOR3 gravitation; + D3DXVECTOR3 gravitation; //Автоповорот по направлению скорости перемещения //true - включено bool autoRot; }; private: - FlowDesc _flowDesc; + FlowDesc _flowDesc; protected: virtual FxParticle* CreateParticle(); virtual void UpdateParticle(FxParticle* value, float dTime, bool init); @@ -477,7 +477,7 @@ class FxFlowEmitter: public FxEmitter FxFlowEmitter(FxParticleSystem* owner); const FlowDesc& GetFlowDesc() const; - void SetFlowDesc(const FlowDesc& value); + void SetFlowDesc(const FlowDesc& value); }; class FxPhysicsParticle: public FxParticle diff --git a/src/Rock3dEngine/header/graph/GrassField.h b/src/Rock3dEngine/header/graph/GrassField.h index d881b3f2..cc24eaa1 100644 --- a/src/Rock3dEngine/header/graph/GrassField.h +++ b/src/Rock3dEngine/header/graph/GrassField.h @@ -57,7 +57,7 @@ class GrassField: public BaseSceneNode float _fieldWidth; float _fieldHeight; FieldList _fieldList; - + void BuildField(); void DrawField(graph::Engine& engine, const Field& field); void Rebuild(); diff --git a/src/Rock3dEngine/header/graph/HDREffect.h b/src/Rock3dEngine/header/graph/HDREffect.h index 64a61fe5..8a66a49c 100644 --- a/src/Rock3dEngine/header/graph/HDREffect.h +++ b/src/Rock3dEngine/header/graph/HDREffect.h @@ -30,7 +30,7 @@ class HDRRender: public PostEffRender virtual ~HDRRender(); virtual void Render(Engine& engine); - + Tex2DResource* GetColorTex(); void SetColorTex(Tex2DResource* value); diff --git a/src/Rock3dEngine/header/graph/MappingShaders.h b/src/Rock3dEngine/header/graph/MappingShaders.h index 56afc65e..7efd9d8d 100644 --- a/src/Rock3dEngine/header/graph/MappingShaders.h +++ b/src/Rock3dEngine/header/graph/MappingShaders.h @@ -23,12 +23,12 @@ class LightShader: public Shader D3DXVECTOR3 _viewPos; float _texDiffK; - MacroBlock* _lightMacro[cLightTypeEnd][cLightPropEnd]; + MacroBlock* _lightMacro[cLightTypeEnd][cLightPropEnd]; D3DLIGHTTYPE _paramsLight; bool _paramsShadow; - unsigned _curLight; - D3DXCOLOR _fogColor; + unsigned _curLight; + D3DXCOLOR _fogColor; void InvalidateParams(D3DLIGHTTYPE value, bool shadow); protected: @@ -92,7 +92,7 @@ class BumpMapShader: public LightShader class RefrShader: public Shader { protected: - virtual void DoBeginDraw(Engine& engine); + virtual void DoBeginDraw(Engine& engine); public: RefrShader(); }; diff --git a/src/Rock3dEngine/header/graph/MaterialLibrary.h b/src/Rock3dEngine/header/graph/MaterialLibrary.h index f3b3042b..b2d094dd 100644 --- a/src/Rock3dEngine/header/graph/MaterialLibrary.h +++ b/src/Rock3dEngine/header/graph/MaterialLibrary.h @@ -14,13 +14,13 @@ namespace graph class BaseSampler { public: - enum Mode {tmDecal, tmModulate, tmReplace, tmLight, tmDefault}; + enum Mode {tmDecal, tmModulate, tmReplace, tmLight, tmDefault}; enum Type {st2d = 0, stCube, cSamplerTypeEnd}; enum Filtering {sfDefault, sfPoint, sfLinear, sfAnisotropic}; private: Type _type; lsl::AutoRef _tex; - bool _disabled; + bool _disabled; Filtering _filtering; unsigned _filteringLevel; @@ -47,8 +47,8 @@ class BaseSampler void Apply(Engine& engine, DWORD stage); void UnApply(Engine& engine, DWORD stage); - Type GetType() const; - + Type GetType() const; + TexResource* GetTex(); const TexResource* GetTex() const; IDirect3DBaseTexture9* GetTexSrc(); @@ -83,7 +83,7 @@ template class Sampler: public BaseSampler bool _createTex; protected: Sampler(Type type); -public: +public: virtual ~Sampler(); _Tex* GetTex(); @@ -129,7 +129,7 @@ class Samplers { private: typedef std::vector Cont; - typedef BaseSampler::Type SamplerType; + typedef BaseSampler::Type SamplerType; public: typedef lsl::ClassList ClassList; static ClassList classList; @@ -186,7 +186,7 @@ class Material enum Blending { bmOpaque = 0, - bmTransparency, + bmTransparency, bmAdditive }; enum AlphaTest @@ -221,7 +221,7 @@ class Material void ApplyBlending(Blending value); void ApplyAlphaTest(AlphaTest mode); public: - Material(); + Material(); void Apply(Engine& engine); void UnApply(Engine& engine); @@ -229,7 +229,7 @@ class Material const ColorRange& GetAmbient() const; void SetAmbient(const ColorRange& value); const ColorRange& GetDiffuse() const; - void SetDiffuse(const ColorRange& value); + void SetDiffuse(const ColorRange& value); const ColorRange& GetEmissive() const; void SetEmissive(const ColorRange& value); const ColorRange& GetSpecular() const; @@ -325,7 +325,7 @@ template _Tex* Sampler<_Tex>::GetOrCreateTex() _createTex = true; } - return GetTex(); + return GetTex(); } template void Sampler<_Tex>::SetTex(_Tex* value) diff --git a/src/Rock3dEngine/header/graph/OctreeSort.h b/src/Rock3dEngine/header/graph/OctreeSort.h index 28b1e062..4a071b92 100644 --- a/src/Rock3dEngine/header/graph/OctreeSort.h +++ b/src/Rock3dEngine/header/graph/OctreeSort.h @@ -65,7 +65,7 @@ class OctreeSort: public lsl::Object Node* _parent; //Список дочерних узлов NodeList _nodeList; - + //Список листьев по группам, т.е. все пользователя разделяются по группам с возможным дублированием Leaf* _leaf; //Массив списков уникальных объектов текущего и дочерних узлов отсортированный по группам @@ -91,7 +91,7 @@ class OctreeSort: public lsl::Object //Опреации над списком пользователей void InsertUser(UserNode* value, unsigned group); void InsertUser(const UserList& value); - void RemoveUser(UserNode* value, unsigned group); + void RemoveUser(UserNode* value, unsigned group); void ClearUser(unsigned group); void ClearUser(); @@ -136,9 +136,9 @@ class OctreeSort: public lsl::Object AABB _aabb; // lsl::Object* _data; - + //Список узлов в листья которых включен пользователь - NodeMap _nodeMap; + NodeMap _nodeMap; //Список групп в которые он добавлен lsl::BoolVec _groups; //Идентификатор прохода @@ -248,7 +248,7 @@ class OctreeSort: public lsl::Object } } } - + return 0; } @@ -296,7 +296,7 @@ class OctreeSort: public lsl::Object _stIterate = false; - if (_iterNode != _nodeList.end()) + if (_iterNode != _nodeList.end()) (*_iterNode)->Unlock(); } @@ -316,7 +316,7 @@ class OctreeSort: public lsl::Object //Определяем пересечение с реальным AABB объекта. Только если родительский нод не входит в камеру полностью next = _iterNode->contains != Frustum::scContainsFully && frustum.ContainsAABB(res->GetAABB()) == Frustum::scNoOverlap; } - } + } while (next); return res; @@ -338,7 +338,7 @@ class OctreeSort: public lsl::Object private: typedef lsl::Collection _MyBase; private: - OctreeSort* _owner; + OctreeSort* _owner; protected: virtual void InsertItem(const Value& value) { @@ -362,7 +362,7 @@ class OctreeSort: public lsl::Object return _MyBase::AddItem(new UserNode(_owner, aabb, groups)); } - }; + }; //Условия разбияния дерева, при нарушении любого из них разбиение прекращается //Минимальное количество объектов которое может быть в узле diff --git a/src/Rock3dEngine/header/graph/RenderToTexture.h b/src/Rock3dEngine/header/graph/RenderToTexture.h index 5ea55f6d..02371e16 100644 --- a/src/Rock3dEngine/header/graph/RenderToTexture.h +++ b/src/Rock3dEngine/header/graph/RenderToTexture.h @@ -32,7 +32,7 @@ template<> class RenderTarget: public lsl::Object IDirect3DSurface9* _surfRT; protected: virtual Tex2DResource* CreateRT(); - + void ApplyRT(Engine& engine, const RtFlags& flags); void UnApplyRT(Engine& engine); bool IsApplyRT() const; @@ -65,7 +65,7 @@ template<> class RenderTarget: public lsl::Object IDirect3DSurface9* _surfRT; protected: virtual TexCubeResource* CreateRT(); - + void ApplyRT(Engine& engine, const RtFlags& flags); void UnApplyRT(Engine& engine); bool IsApplyRT() const; @@ -92,15 +92,15 @@ template class GraphObjRender: public RenderTarget<_TexRes> virtual void BeginRT(Engine& engine, const RtFlags& flags) { LSL_ASSERT(!_isBeginRT); - - _isBeginRT = true; + + _isBeginRT = true; } virtual void EndRT(Engine& engine) { LSL_ASSERT(_isBeginRT); - - _isBeginRT = false; + + _isBeginRT = false; } bool IsBeginRT() const diff --git a/src/Rock3dEngine/header/graph/SceneManager.h b/src/Rock3dEngine/header/graph/SceneManager.h index a4fee626..8da8c972 100644 --- a/src/Rock3dEngine/header/graph/SceneManager.h +++ b/src/Rock3dEngine/header/graph/SceneManager.h @@ -42,7 +42,7 @@ class BaseSceneNode: public lsl::Component, protected IProgressUser _MyBase::InsertItem(item); - _owner->InsertChild(item); + _owner->InsertChild(item); } virtual void RemoveItem(Item& item) { @@ -89,7 +89,7 @@ class BaseSceneNode: public lsl::Component, protected IProgressUser static void RenderBB(graph::Engine& engine, const AABB& aabb, const D3DXCOLOR& colorBB); enum CombMatType {cmtScaleTrans, cmtScaleRot, cmtRotTrans}; - + enum NodeOpt {noDynStructure, NodeOptEnd}; typedef lsl::Bitset NodeOpts; private: @@ -129,7 +129,7 @@ class BaseSceneNode: public lsl::Component, protected IProgressUser mutable D3DXMATRIX _localMat; mutable D3DXMATRIX _invLocalMat; mutable D3DXMATRIX _worldMat; - mutable D3DXMATRIX _invWorldMat; + mutable D3DXMATRIX _invWorldMat; mutable AABB _aabbLocal; mutable AABB _aabbWorld; @@ -151,7 +151,7 @@ class BaseSceneNode: public lsl::Component, protected IProgressUser void InsertChildBBDyn(BaseSceneNode* value); void RemoveChildBBDyn(BaseSceneNode* value); - void SetDynBB(bool value); + void SetDynBB(bool value); protected: void BuildMatrix() const; void BuildWorldMatrix() const; @@ -171,7 +171,7 @@ class BaseSceneNode: public lsl::Component, protected IProgressUser // virtual void Save(lsl::SWriter* writer); virtual void Load(lsl::SReader* reader); - virtual void OnFixUp(const FixUpNames& fixUpNames); + virtual void OnFixUp(const FixUpNames& fixUpNames); public: BaseSceneNode(); virtual ~BaseSceneNode(); @@ -241,7 +241,7 @@ class BaseSceneNode: public lsl::Component, protected IProgressUser //Поворот по координатным осям const D3DXVECTOR3& GetDir() const; void SetDir(const D3DXVECTOR3& value); - D3DXVECTOR3 GetRight() const; + D3DXVECTOR3 GetRight() const; void SetRight(const D3DXVECTOR3& value); const D3DXVECTOR3& GetUp() const; void SetUp(const D3DXVECTOR3& value); @@ -315,11 +315,11 @@ class BaseSceneNode: public lsl::Component, protected IProgressUser //Кадр анимации при animMode = amManual float frame; - bool showBB; - bool showBBIncludeChild; + bool showBB; + bool showBBIncludeChild; D3DXCOLOR colorBB; bool storeCoords; - bool invertCullFace; + bool invertCullFace; D3DXVECTOR3 speedPos; D3DXVECTOR3 speedScale; @@ -369,7 +369,7 @@ class Camera: public BaseSceneNode //Длина стороны вида(плоскость проекции zNear), в пространстве камеры //Пока используется только для ортографической проекции float GetWidth() const; - void SetWidth(float value); + void SetWidth(float value); //Форматное отношение сторон вида float GetAspect() const; void SetAspect(float value); @@ -382,13 +382,13 @@ class Camera: public BaseSceneNode // float GetFar() const; void SetFar(float value); - // + // CameraStyle GetStyle() const; void SetStyle(CameraStyle value); }; class LightSource: public BaseSceneNode -{ +{ private: typedef BaseSceneNode _MyBase; private: @@ -436,7 +436,7 @@ class LightSource: public BaseSceneNode float GetPhi() const; void SetPhi(float value); - + float GetTheta() const; void SetTheta(float value); @@ -460,7 +460,7 @@ class SceneManager: public lsl::Component, public graph::Renderable void InsertObject(BaseSceneNode* object); void RemoveObject(BaseSceneNode* object); - + const Objects& GetObjects() const; SceneRender* GetSceneRender(); @@ -480,7 +480,7 @@ class SceneRender: public lsl::Object void InsertScene(SceneManager* value); void RemoveScene(SceneManager* value); - + const SceneList& GetSceneList() const; }; diff --git a/src/Rock3dEngine/header/graph/SceneNode.h b/src/Rock3dEngine/header/graph/SceneNode.h index a809fbc0..da347f3d 100644 --- a/src/Rock3dEngine/header/graph/SceneNode.h +++ b/src/Rock3dEngine/header/graph/SceneNode.h @@ -42,14 +42,14 @@ class SceneNode: public BaseSceneNode }; class Proxy: public BaseSceneNode - { + { private: SceneNode* _owner; protected: virtual void DoRender(graph::Engine& engine) { _owner->RenderProxy(engine, this); - } + } public: Proxy() {} Proxy(SceneNode* owner): _owner(owner) {} @@ -66,7 +66,7 @@ class SceneNode: public BaseSceneNode { _MyBase::InsertItem(value); - value->SetOwner(_owner); + value->SetOwner(_owner); } public: ProxyList(SceneNode* owner): _owner(owner) {} @@ -77,7 +77,7 @@ class SceneNode: public BaseSceneNode } }; - static void InitClassList(); + static void InitClassList(); private: Nodes* _nodes; ProxyList* _proxyList; diff --git a/src/Rock3dEngine/header/graph/Shader.h b/src/Rock3dEngine/header/graph/Shader.h index 08454f16..7314b865 100644 --- a/src/Rock3dEngine/header/graph/Shader.h +++ b/src/Rock3dEngine/header/graph/Shader.h @@ -68,7 +68,7 @@ class Shader: public VideoResource, public BaseShader if (_effect) _effect->Release(); - _effect = value; + _effect = value; } } @@ -97,7 +97,7 @@ class Shader: public VideoResource, public BaseShader { if (param) _effect->SetTexture(param, texture); - } + } D3DXHANDLE GetTech(const std::string& name) { @@ -189,9 +189,9 @@ class Shader: public VideoResource, public BaseShader bool reload = Size() == 1 && engine; if (reload) _owner->Free(); - + res = &_MyBase::AddItem(new MacroBlock(macros)); - + if (reload) _owner->Init(*engine); } @@ -218,7 +218,7 @@ class Shader: public VideoResource, public BaseShader }; private: //Данные шейдера - lsl::BinaryResource* _data; + lsl::BinaryResource* _data; bool _createData; //Параметры Values _values; @@ -245,11 +245,11 @@ class Shader: public VideoResource, public BaseShader //Общее число внтуренних проходов текущей техники unsigned _cntPass; //Текущий внутренний проход - unsigned _numPass; + unsigned _numPass; //Применение эффекта unsigned _apply; //Применение техники - unsigned _applyTech; + unsigned _applyTech; //Применение внутреннего прохода unsigned _applyPass; //Пул эффектов diff --git a/src/Rock3dEngine/header/graph/ShadowMapRender.h b/src/Rock3dEngine/header/graph/ShadowMapRender.h index 1224471c..193fb88c 100644 --- a/src/Rock3dEngine/header/graph/ShadowMapRender.h +++ b/src/Rock3dEngine/header/graph/ShadowMapRender.h @@ -25,7 +25,7 @@ class ShadowMapShader: public Shader class ShadowMapRender: public GraphObjRender { private: - typedef GraphObjRender _MyBase; + typedef GraphObjRender _MyBase; public: static const unsigned cShadowMapSize; @@ -70,11 +70,11 @@ class ShadowMapRender: public GraphObjRender //Рендер объектов которые создают тень void BeginShadowCaster(Engine& engine); bool EndShadowCaster(Engine& engine, bool nextPass); - + //Рендер объектов которые принимают тень //Начало прохода void BeginShadowMapp(Engine& engine); - bool EndShadowMapp(Engine& engine, bool nextPass); + bool EndShadowMapp(Engine& engine, bool nextPass); //Начать рендер эффекта virtual void BeginRT(Engine& engine, const RtFlags& flags); diff --git a/src/Rock3dEngine/header/graph/SkyBox.h b/src/Rock3dEngine/header/graph/SkyBox.h index 181e2074..44879e12 100644 --- a/src/Rock3dEngine/header/graph/SkyBox.h +++ b/src/Rock3dEngine/header/graph/SkyBox.h @@ -18,7 +18,7 @@ class SkyBox: public Renderable CoordSystem _coordSystem; public: SkyBox(); - + virtual void WorldDimensions(AABB& aabb) const; virtual void Render(Engine& engine); virtual void ProgressTime(const float newTime, const float dt); diff --git a/src/Rock3dEngine/header/graph/StdNode.h b/src/Rock3dEngine/header/graph/StdNode.h index 1cd49f52..f00848e9 100644 --- a/src/Rock3dEngine/header/graph/StdNode.h +++ b/src/Rock3dEngine/header/graph/StdNode.h @@ -152,11 +152,11 @@ class MeshXNode: public BaseSceneNode class PlaneNode: public BaseSceneNode { - typedef BaseSceneNode _MyBase; + typedef BaseSceneNode _MyBase; private: graph::VBMesh _mesh; glm::vec2 _size; - + void DrawPlane(Engine& engine); void UpdateMesh(); protected: @@ -216,7 +216,7 @@ class Cylinder: public BaseSceneNode }; class Sprite: public BaseSceneNode -{ +{ private: typedef BaseSceneNode _MyBase; protected: @@ -291,7 +291,7 @@ class ScaleCoordSys: public BaseSceneNode enum DirMove {dmNone, dmX, dmY, dmZ, dmXYZ, cDirMoveEnd}; private: Sprite* _arrows[3]; - DirMove _curMove; + DirMove _curMove; protected: void CompBBPlanes(const D3DXVECTOR3& camPos, D3DXVECTOR3* bbPlanes); DirMove CompDirMove(const D3DXVECTOR3& rayStart, const D3DXVECTOR3& rayVec, const D3DXVECTOR3& camPos); diff --git a/src/Rock3dEngine/header/graph/ToneMapping.h b/src/Rock3dEngine/header/graph/ToneMapping.h index 92420a7a..5c515fa3 100644 --- a/src/Rock3dEngine/header/graph/ToneMapping.h +++ b/src/Rock3dEngine/header/graph/ToneMapping.h @@ -18,9 +18,9 @@ class ToneMapping: public PostEffRender virtual Tex2DResource* CreateRT(); public: virtual void Render(Engine& engine); - + Tex2DResource* GetColorTex(); - void SetColorTex(Tex2DResource* value); + void SetColorTex(Tex2DResource* value); Tex2DResource* GetBloomTex(); void SetBloomTex(Tex2DResource* value); Tex2DResource* GetHDRTex(); diff --git a/src/Rock3dEngine/header/graph/VideoResource.h b/src/Rock3dEngine/header/graph/VideoResource.h index ddbb69ca..c5460001 100644 --- a/src/Rock3dEngine/header/graph/VideoResource.h +++ b/src/Rock3dEngine/header/graph/VideoResource.h @@ -45,7 +45,7 @@ class VideoResource: public lsl::Resource, public IVideoResource class MemPoolResource: public VideoResource { -private: +private: D3DPOOL _memoryPool; DWORD _usage; public: @@ -57,7 +57,7 @@ class MemPoolResource: public VideoResource D3DPOOL GetMemoryPool() const; void SetMemoryPool(D3DPOOL value); DWORD GetUsage() const; - void SetUsage(DWORD value); + void SetUsage(DWORD value); }; class VBMesh: public MemPoolResource @@ -66,7 +66,7 @@ class VBMesh: public MemPoolResource res::VertexData* _data; bool _createData; unsigned _beginStream; - + IDirect3DVertexBuffer9* _vb; protected: void LoadData() const; @@ -104,14 +104,14 @@ class IndexedVBMesh: public MemPoolResource unsigned _beginStreamCnt; IDirect3DVertexBuffer9* _vb; - IDirect3DIndexBuffer9* _ib; + IDirect3DIndexBuffer9* _ib; protected: void LoadData() const; virtual void DoInit(); virtual void DoFree(); virtual void DoUpdate(); -public: +public: IndexedVBMesh(); virtual ~IndexedVBMesh(); @@ -129,7 +129,7 @@ class IndexedVBMesh: public MemPoolResource unsigned GetSubsetCount() const; const D3DXVECTOR3& GetMinPos() const; const D3DXVECTOR3& GetMaxPos() const; - + IDirect3DVertexBuffer9* GetVB(); IDirect3DIndexBuffer9* GetIB(); }; @@ -149,7 +149,7 @@ class MeshX: public MemPoolResource }; private: res::MeshData* _data; - bool _createData; + bool _createData; Prefab _prefab; Params _params; @@ -161,7 +161,7 @@ class MeshX: public MemPoolResource virtual void DoInit(); virtual void DoFree(); virtual void DoUpdate(); -public: +public: MeshX(); virtual ~MeshX(); @@ -195,7 +195,7 @@ class TexResource: public MemPoolResource TexResource(DWORD usage); IDirect3DBaseTexture9* GetTex(); - + unsigned GetLevelCnt() const; //value = 0 - генерация последовательности mip уровней до 1x1 void SetLevelCnt(unsigned value); @@ -263,7 +263,7 @@ class TexCubeResource: public TexResource res::CubeImageResource* GetOrCreateData(); void SetData(res::CubeImageResource* value); - IDirect3DCubeTexture9* GetTex(); + IDirect3DCubeTexture9* GetTex(); }; class RenderTargetResource: public VideoResource @@ -299,7 +299,7 @@ class RenderTargetResource: public VideoResource void SetFormat(D3DFORMAT value); bool GetLockable() const; - void SetLockable(bool value); + void SetLockable(bool value); D3DMULTISAMPLE_TYPE GetMultisampleType() const; void SetMultisampleType(D3DMULTISAMPLE_TYPE value); @@ -344,7 +344,7 @@ class DepthStencilSurfaceResource: public VideoResource void SetFormat(D3DFORMAT value); bool GetDiscard() const; - void SetDiscard(bool value); + void SetDiscard(bool value); D3DMULTISAMPLE_TYPE GetMultisampleType() const; void SetMultisampleType(D3DMULTISAMPLE_TYPE value); diff --git a/src/Rock3dEngine/header/gui/GUI.h b/src/Rock3dEngine/header/gui/GUI.h index 92c60c0a..44b6a689 100644 --- a/src/Rock3dEngine/header/gui/GUI.h +++ b/src/Rock3dEngine/header/gui/GUI.h @@ -24,7 +24,7 @@ struct MouseClick MouseKey key; KeyState state; bool shift1; - + //локальные координаты glm::vec2 coord; //мировые координаты @@ -58,13 +58,13 @@ class Material: public Object D3DXCOLOR _color; Blending _blending; AlphaTest _alphaTest; - + graph::Sampler2d _sampler; public: Material(); glm::vec2 GetImageSize(); - + const D3DXCOLOR& GetColor() const; void SetColor(const D3DXCOLOR& value); @@ -151,7 +151,7 @@ class BaseText: public Graphic AABB2 _textAABB; bool _textAABBChanged; - void BuildTextAABB(); + void BuildTextAABB(); protected: BaseText(Context* context); virtual ~BaseText(); @@ -196,7 +196,7 @@ class Text: public BaseText std::string _text; protected: Text(Context* context); - + virtual void DrawText(AABB2* aabb); public: const std::string& GetText() const; @@ -211,7 +211,7 @@ class TextW: public BaseText std::wstring _text; protected: TextW(Context* context); - + virtual void DrawText(AABB2* aabb); public: const std::wstring& GetText() const; @@ -348,7 +348,7 @@ class Plane3d: public Graphic3d glm::vec2 _size; protected: Plane3d(Context* context); - + virtual AABB LocalAABB() const; public: virtual void Draw(); @@ -400,7 +400,7 @@ class Context: public Object void InsertGraphic3d(Graphic3d* value); void RemoveGraphic3d(Graphic3d* value); void DeleteAllGraphics3d(); - + void ApplyMaterial(Material& material, float alpha); void UnApplyMaterial(Material& material); @@ -412,7 +412,7 @@ class Context: public Object graph::Engine& GetEngine(); graph::RenderDriver& GetDriver(); - graph::ContextInfo& GetCI(); + graph::ContextInfo& GetCI(); public: Context(graph::Engine* engine); virtual ~Context(); @@ -453,7 +453,7 @@ class Context: public Object class Widget: public Object, protected graph::IProgressUser { friend Manager; -protected: +protected: enum MatrixChange {mcLocal = 0, mcWorld, mcInvLocal, mcInvWorld, cMatrixChangeEnd}; typedef lsl::Bitset MatrixChanges; @@ -461,11 +461,11 @@ class Widget: public Object, protected graph::IProgressUser typedef lsl::Bitset AABBChanges; enum StructChange {scLocal = 0, scWorld, scChild}; -public: +public: typedef lsl::List Graphics; - typedef lsl::List Children; + typedef lsl::List Children; - enum Flag + enum Flag { //Всегда перехватывать сообщения от мыши если они зоне охвата. Установлен по умлочанию wfCathMouseMessages = 0, @@ -487,7 +487,7 @@ class Widget: public Object, protected graph::IProgressUser }; typedef lsl::Bitset Flags; - enum Anchor {waNone, waCenter, waLeft, waRight, waTop, waBottom, waLeftTop, waLeftBottom, waRightTop, waRightBottom}; + enum Anchor {waNone, waCenter, waLeft, waRight, waTop, waBottom, waLeftTop, waLeftBottom, waRightTop, waRightBottom}; public: class Event: public lsl::ObjReference { @@ -510,7 +510,7 @@ class Widget: public Object, protected graph::IProgressUser virtual bool OnMouseDown(Widget* sender, const MouseClick& mClick) {return false;} virtual bool OnMouseMove(Widget* sender, const MouseMove& mMove) {return false;} }; - + typedef lsl::Container EventList; private: Manager* _manager; @@ -533,14 +533,14 @@ class Widget: public Object, protected graph::IProgressUser mutable glm::vec2 _anchorVP; mutable glm::vec2 _pos; glm::vec2 _scale; - float _rot; + float _rot; bool _coord3d; D3DXVECTOR3 _pos3d; mutable D3DXMATRIX _matrix[cMatrixChangeEnd]; mutable MatrixChanges _matrixChanges; - + glm::vec2 _size; mutable AABB2 _localAABB; mutable AABB2 _worldAABB; @@ -549,7 +549,7 @@ class Widget: public Object, protected graph::IProgressUser mutable AABB2 _worldChildAABB; mutable AABBChanges _aabbChanges; - mutable int _alignChanged; + mutable int _alignChanged; bool _isMouseDown; bool _isMouseOver; bool _isMouseEnter; @@ -568,7 +568,7 @@ class Widget: public Object, protected graph::IProgressUser void AABBChanged(StructChange change = scLocal); bool ApplyMouseEnter(bool wasReset); - + //выравнивание //условия выравнивания: локальные координаты, локальный AABB, родительский AABB //корректировка только локальных координат согласно выравниванию @@ -576,7 +576,7 @@ class Widget: public Object, protected graph::IProgressUser //условия для выравнивания изменились void AlignChanged(); // - bool IsAligned() const; + bool IsAligned() const; protected: //Уведомления об изменениях //Локальные координаты @@ -599,10 +599,10 @@ class Widget: public Object, protected graph::IProgressUser //временной прогресс, для анимации virtual void OnProgress(float deltaTime) {} - + //События от менеджера //return true если событие обрабатывается - //перемещение мыши, + //перемещение мыши, virtual bool OnMouseDown(const MouseClick& mClick); virtual bool OnMouseMove(const MouseMove& mMove); @@ -647,7 +647,7 @@ class Widget: public Object, protected graph::IProgressUser void ShowModal(bool show); bool modal() const; - + void RegEvent(Event* value); void UnregEvent(Event* value); void SetEvent(Event* value); @@ -780,7 +780,7 @@ class Label: public Widget BaseText* _baseText; Text* _text; - TextW* _textW; + TextW* _textW; void CreateText(); void CreateTextW(); @@ -790,7 +790,7 @@ class Label: public Widget Label(Manager* manager); virtual ~Label(); - virtual void StructureChanged(StructChange change = scLocal); + virtual void StructureChanged(StructChange change = scLocal); public: AABB2 GetTextAABB(); void AdjustSizeByText(); @@ -851,7 +851,7 @@ class Button: public Widget void UpdateSelection(bool instant); protected: Button(Manager* manager); - virtual ~Button(); + virtual ~Button(); virtual void StructureChanged(StructChange change = scLocal); virtual void OnProgress(float deltaTime); @@ -982,7 +982,7 @@ class DropBox: public Widget Plane* _button; int _selInd; Text* _selItem; - + PlaneFon* _itemsFon; TextItems _textItems; @@ -1002,7 +1002,7 @@ class DropBox: public Widget virtual void StructureChanged(StructChange change = scLocal); - virtual bool OnClick(const MouseClick& mClick); + virtual bool OnClick(const MouseClick& mClick); public: const StringList& GetItems() const; void SetItems(const StringList& value); @@ -1174,7 +1174,7 @@ class ListBox: public Widget void ApplyFrame(); void RemoveFrame(); - public: + public: ListBox* GetListBox(); Widget* GetData(); @@ -1199,7 +1199,7 @@ class ListBox: public Widget MyEvent* _event; glm::vec2 _itemSize; - glm::vec2 _itemSpace; + glm::vec2 _itemSpace; Item* _selItem; Plane* _fon; @@ -1388,7 +1388,7 @@ class VolumeBar: public Widget virtual bool OnClick(Widget* sender, const MouseClick& mClick); }; -private: +private: float _volume; int _stepCount; ChildEvent* _childEvent; @@ -1467,7 +1467,7 @@ class ColorBox: public Widget Material& GetBox(); Material& GetCheck(); - + const D3DXCOLOR& GetColor() const; void SetColor(const D3DXCOLOR& value); @@ -1496,7 +1496,7 @@ class ColorList: public Widget bool operator!=(const MyCol& val) const {return box != val.box;} ColorBox* box; - }; + }; public: typedef lsl::List Colors; @@ -1591,14 +1591,14 @@ class Manager WidgetList _widgetList; Widgets _topmostWidgets; Widgets _modalWidgets; - Dummy* _root; + Dummy* _root; MouseClick _mClick; MouseMove _mMove; Widget* _clipWidget; bool _safeMode; - WidgetList _safeList; + WidgetList _safeList; void BeginSafeMode(); void EndSafeMode(); diff --git a/src/Rock3dEngine/header/include/graph/IActor.h b/src/Rock3dEngine/header/include/graph/IActor.h index 98e3dabb..b5a6e35f 100644 --- a/src/Rock3dEngine/header/include/graph/IActor.h +++ b/src/Rock3dEngine/header/include/graph/IActor.h @@ -5,7 +5,7 @@ namespace r3d { - + namespace graph { @@ -24,13 +24,13 @@ class IActor cLightingEnd }; - + enum GraphProp { gpReflWater = 0, //Отражается в воде gpReflScene, //Отражается на объектах сцены(относительно камеры) gpShadowCast, //Кастует тень - gpShadowApp, //Принимает тень + gpShadowApp, //Принимает тень gpColor, //Видим в сцене diff --git a/src/Rock3dEngine/header/px/Physx.h b/src/Rock3dEngine/header/px/Physx.h index beea8fe1..07de6276 100644 --- a/src/Rock3dEngine/header/px/Physx.h +++ b/src/Rock3dEngine/header/px/Physx.h @@ -1,11 +1,11 @@ #ifndef PHYSX_LIBRARY #define PHYSX_LIBRARY -#ifdef DEBUG_MEMORY +#ifdef DEBUG_MEMORY #pragma push_macro("new") #pragma push_macro("malloc") #pragma push_macro("free") - + #undef new #undef malloc #undef free @@ -82,7 +82,7 @@ class Scene: public lsl::Component //внешний актер, соотв индексу 1 Actor* actor; unsigned actorIndex; - + NxContactPair* pair; unsigned events; @@ -94,7 +94,7 @@ class Scene: public lsl::Component struct OnContactModifyEvent { //внешний актер, соотв индексу 1 - Actor* actor; + Actor* actor; unsigned actorIndex; const NxShape* shape0; @@ -152,7 +152,7 @@ class SceneUser: public lsl::Object //Необходимо разделить понятия менеджер физики(который реализует инициализацию сдк) и сцену(разделение физических пространств) class Manager: public lsl::Component -{ +{ friend NxPhysicsSDK& GetSDK(); friend NxCookingInterface& GetCooking(); private: @@ -164,8 +164,8 @@ class Manager: public lsl::Component static void InitSDK(); static void ReleaseSDK(); -private: - SceneList _sceneList; +private: + SceneList _sceneList; public: Manager(); virtual ~Manager(); @@ -203,7 +203,7 @@ class TriangleMesh: public lsl::CollectionItem NxTriangleMesh* tri; NxConvexMesh* convex; - + unsigned sumRef; unsigned triRef; unsigned convexRef; @@ -332,7 +332,7 @@ class PlaneShape: public Shape const D3DXVECTOR3& GetNormal() const; void SetNormal(const D3DXVECTOR3& value); - + float GetDist() const; void SetDist(float value); }; @@ -369,7 +369,7 @@ class SphereShape: public Shape public: static const ShapeType Type = stSphere; private: - float _radius; + float _radius; protected: virtual NxShapeDesc* CreateDesc(); @@ -527,22 +527,22 @@ class WheelShape: public Shape float GetRadius() const; void SetRadius(float value); - + float GetSuspensionTravel() const; void SetSuspensionTravel(float value); - + const NxSpringDesc& GetSuspension() const; void SetSuspension(const NxSpringDesc& value); - + const NxTireFunctionDesc& GetLongitudalTireForceFunction() const; void SetLongitudalTireForceFunction(const NxTireFunctionDesc& value); - + const NxTireFunctionDesc& GetLateralTireForceFunction() const; - void SetLateralTireForceFunction(const NxTireFunctionDesc& value); - + void SetLateralTireForceFunction(const NxTireFunctionDesc& value); + float GetInverseWheelMass() const; void SetInverseWheelMass(float value); - + UINT GetWheelFlags() const; void SetWheelFlags(UINT value); @@ -563,7 +563,7 @@ class Body: public lsl::Serializable NxBodyDesc _desc; protected: virtual void Save(lsl::SWriter* writer); - virtual void Load(lsl::SReader* reader); + virtual void Load(lsl::SReader* reader); public: Body(Actor* actor); @@ -589,7 +589,7 @@ class Shapes: public lsl::ComCollection public: typedef _MyBase::ClassList ClassList; static ClassList classList; - + static void RegisterClasses(); private: Actor* _owner; @@ -612,7 +612,7 @@ class Actor: public lsl::Object, public lsl::Serializable //Жесткая связь _parent - _child реализуется с помощью shape, поэтому координаты требуется преобразовывать вручную private: typedef NxArray _NxShapeDescList; -public: +public: typedef std::list Children; private: ActorUser* _owner; @@ -631,7 +631,7 @@ class Actor: public lsl::Object, public lsl::Serializable mutable glm::quat _rot; mutable D3DXVECTOR3 _scale; protected: - //Динамическая инициализация shape + //Динамическая инициализация shape void CreateNxShape(Shape* shape); void DestroyNxShape(Shape* shape); //Если nxShape создан, перезагружает его diff --git a/src/Rock3dEngine/header/res/D3DXImageFile.h b/src/Rock3dEngine/header/res/D3DXImageFile.h index ffed5bc1..46b6ffca 100644 --- a/src/Rock3dEngine/header/res/D3DXImageFile.h +++ b/src/Rock3dEngine/header/res/D3DXImageFile.h @@ -6,14 +6,14 @@ namespace r3d namespace res { - + class D3DXImageFile: public lsl::IOResource { public: static void RegistredFile(); static graph::RenderDriver* driver; -public: +public: virtual void LoadFromStream(Resource& outData, std::istream& stream); virtual void SaveToStream(const Resource& inData, std::ostream& stream); }; @@ -24,7 +24,7 @@ class D3DXCubeImageFile: public lsl::IOResource static void RegistredFile(); static graph::RenderDriver* driver; -public: +public: virtual void LoadFromStream(Resource& outData, std::istream& stream); virtual void SaveToStream(const Resource& inData, std::ostream& stream); }; diff --git a/src/Rock3dEngine/header/res/GraphResource.h b/src/Rock3dEngine/header/res/GraphResource.h index 091ee06f..620070d2 100644 --- a/src/Rock3dEngine/header/res/GraphResource.h +++ b/src/Rock3dEngine/header/res/GraphResource.h @@ -56,7 +56,7 @@ struct VertexPN D3DXVECTOR3 norm; VertexPN(); - VertexPN(D3DXVECTOR3 position, D3DXVECTOR3 normal); + VertexPN(D3DXVECTOR3 position, D3DXVECTOR3 normal); }; struct VertexPT @@ -71,10 +71,10 @@ struct VertexPT }; struct VertexPNT -{ +{ static const DWORD fvf = D3DFVF_XYZ | D3DFVF_NORMAL | D3DFVF_TEX1; - D3DVECTOR pos; + D3DVECTOR pos; D3DVECTOR norm; glm::vec2 tex; @@ -108,7 +108,7 @@ class VertexData: public lsl::BufferResource typedef VertexIter iterator; private: unsigned _vertexCount; - Format _format; + Format _format; bool _screenRHW; unsigned _vertexSize; @@ -119,7 +119,7 @@ class VertexData: public lsl::BufferResource void CalcDimensions(); protected: virtual void DoUpdate(); -public: +public: VertexData(); void Assign(const VertexData& value); @@ -192,14 +192,14 @@ struct VertexIter class IndexData: public lsl::BufferResource { private: - unsigned _indexCount; + unsigned _indexCount; D3DFORMAT _indexFormat; -public: +public: IndexData(); unsigned GetIndexSize() const; unsigned GetIndexCount() const; - void SetIndexCount(unsigned value); + void SetIndexCount(unsigned value); D3DFORMAT GetIndexFormat() const; void SetIndexFormat(D3DFORMAT value); virtual unsigned GetSize() const; @@ -210,7 +210,7 @@ class TriFaceData: public lsl::BufferResource private: unsigned _faceCount; D3DFORMAT _indexFormat; -public: +public: TriFaceData(); unsigned GetFaceCount() const; @@ -219,7 +219,7 @@ class TriFaceData: public lsl::BufferResource void SetIndexFormat(D3DFORMAT value); unsigned GetIndex(unsigned face, unsigned indTri) const; - + virtual unsigned GetSize() const; unsigned GetFaceSize() const; }; @@ -328,4 +328,3 @@ template TriFace<_IndexType>::TriFace(_IndexType vert1, _Index } #endif - \ No newline at end of file diff --git a/src/Rock3dEngine/source/GraphManager.cpp b/src/Rock3dEngine/source/GraphManager.cpp index bd9978bb..de017cfe 100644 --- a/src/Rock3dEngine/source/GraphManager.cpp +++ b/src/Rock3dEngine/source/GraphManager.cpp @@ -33,7 +33,7 @@ GraphManager::LightSrc::LightSrc(const LightDesc& desc): _enable(true), _shadowM GraphManager::LightSrc::~LightSrc() { - SetShadowMap(0); + SetShadowMap(0); delete _source; } @@ -47,7 +47,7 @@ void GraphManager::LightSrc::SetShadowMap(graph::ShadowMapRender* value) { if (ReplaceRef(_shadowMap, value)) { - if (_shadowMap) + if (_shadowMap) _source->SetShadowMap(0); _shadowMap = value; @@ -81,7 +81,7 @@ bool GraphManager::LightSrc::GetEnable() const void GraphManager::LightSrc::SetEnable(bool value) { - _enable = value; + _enable = value; } @@ -106,8 +106,8 @@ GraphManager::GraphManager(HWND window, lsl::Point resolution, bool fullScreen): _trueRefl = false; _planarReflRender = NULL; - _planarReflShader = NULL; - + _planarReflShader = NULL; + _bumpMapShader = 0; _skyTex = ""; @@ -257,8 +257,8 @@ void GraphManager::DetectCapabilities() LSL_LOG(lsl::StrFmt("dxgi adapter id=%d \n -desc=%s \n -vendorId=%d \n -deviceId=%d \n -subSysId=%d \n -revision=%d \n -videoMem=%d \n -sysMem=%d \n -sharedMem=%d \n -remote=%d", i, lsl::ConvertStrWToA(desc.Description).c_str(), desc.VendorId, desc.DeviceId, desc.SubSysId, desc.Revision, desc.DedicatedVideoMemory, desc.DedicatedSystemMemory, desc.SharedSystemMemory, (desc.Flags & DXGI_ADAPTER_FLAG_REMOTE) != 0)); - VideoAdapter adapter; - adapter.primary = false; + VideoAdapter adapter; + adapter.primary = false; adapter.desc = lsl::ConvertStrWToA(desc.Description); adapter.id = lsl::StrFmt("%d&%d&%d&%d", desc.VendorId, desc.DeviceId, desc.SubSysId, desc.Revision); adapter.vendorId = desc.VendorId; @@ -342,14 +342,14 @@ void GraphManager::DetectCapabilities() LSL_LOG(lsl::StrFmt("adapter id=%d \n -driver=%s \n -desc=%s \n -name=%s \n -whql=%d \n -vendorId=%d \n -deviceId=%d \n -subSysId=%d \n -revision=%d", i, adapter.Driver, adapter.Description, adapter.DeviceName, adapter.WHQLLevel != 0, adapter.VendorId, adapter.DeviceId, adapter.SubSysId, adapter.Revision)); } - + LSL_LOG(lsl::StrFmt("MaxAnisotropy = %d", caps.MaxAnisotropy)); LSL_LOG(lsl::StrFmt("MaxUserClipPlanes = %d", caps.MaxUserClipPlanes)); LSL_LOG(lsl::StrFmt("MaxTextureWidth = %d", caps.MaxTextureWidth)); LSL_LOG(lsl::StrFmt("MaxTextureHeight = %d", caps.MaxTextureHeight)); LSL_LOG(lsl::StrFmt("MaxTextureAspectRatio = %d", caps.MaxTextureAspectRatio)); LSL_LOG(lsl::StrFmt("MaxTextureBlendStages = %d", caps.MaxTextureBlendStages)); - LSL_LOG(lsl::StrFmt("MaxSimultaneousTextures = %d", caps.MaxSimultaneousTextures)); + LSL_LOG(lsl::StrFmt("MaxSimultaneousTextures = %d", caps.MaxSimultaneousTextures)); LSL_LOG(lsl::StrFmt("MaxPrimitiveCount = %d", caps.MaxPrimitiveCount)); LSL_LOG(lsl::StrFmt("MaxVertexIndex = %d", caps.MaxVertexIndex)); LSL_LOG(lsl::StrFmt("MaxVertexShader30InstructionSlots = %d", caps.MaxVertexShader30InstructionSlots)); @@ -472,7 +472,7 @@ void GraphManager::InitWaterPlane() desc.props.set(graph::Actor::gpColor); desc.props.set(graph::Actor::gpDynamic); //desc.order = graph::Actor::goEffect; - _waterPlaneActor->SetGraph(this, desc); + _waterPlaneActor->SetGraph(this, desc); _waterColor = new graph::Tex2DResource(); _waterColor->GetOrCreateData()->SetFileName("Data\\Effect\\waterColor.dds"); @@ -530,9 +530,9 @@ void GraphManager::UpdateWaterPlane() { _waterPlane->SetPos(_groundAABB.GetCenter()); _waterPlane->SetScale(scale); - //_waterPlane->SetSize(glm::vec2(_groundAABB.GetSizes()) / scale); + //_waterPlane->SetSize(glm::vec2(_groundAABB.GetSizes()) / scale); _waterPlane->SetSize(glm::vec2(_groundAABB.GetSizes().x, _groundAABB.GetSizes().y) / - scale); // remove after D3DXVECTOR3 replacement + scale); // remove after D3DXVECTOR3 replacement } } @@ -573,7 +573,7 @@ void GraphManager::InitGrassField() _grassMat = new graph::LibMaterial(); _grassMat->samplers.Add2d(_grassTex).SetFiltering(graph::BaseSampler::sfAnisotropic); - + graph::GrassField::GrassList list; graph::GrassField::GrassDesc desc(_grassMat); desc.tiles.clear(); @@ -605,7 +605,7 @@ void GraphManager::FreeGrassField() if (_grassField) { - lsl::SafeDelete(_grassField); + lsl::SafeDelete(_grassField); delete _grassMat; delete _grassTex; @@ -639,7 +639,7 @@ void GraphManager::InitDepthSurface() if (_depthSurfaceRef == 1) { - _depthSurface = new graph::DepthStencilSurfaceResource(); + _depthSurface = new graph::DepthStencilSurfaceResource(); _depthSurface->SetScreenScale(glm::vec2(1.0f, 1.0f)); _depthSurface->SetFormat(_engine->GetParams().AutoDepthStencilFormat); _depthSurface->Init(*_engine); @@ -650,7 +650,7 @@ void GraphManager::FreeDepthSurface() { LSL_ASSERT(_depthSurfaceRef > 0); - if (--_depthSurfaceRef == 0) + if (--_depthSurfaceRef == 0) delete _depthSurface; } @@ -662,8 +662,8 @@ void GraphManager::InitScRenderTex() { _scRenderTex = new graph::RenderToTexture(); graph::Tex2DResource* tex = _scRenderTex->GetOrCreateRT(); - tex->GetOrCreateData()->SetFormat(D3DFMT_A16B16G16R16F); - tex->SetScreenScale(glm::vec2(1.0f, 1.0f)); + tex->GetOrCreateData()->SetFormat(D3DFMT_A16B16G16R16F); + tex->SetScreenScale(glm::vec2(1.0f, 1.0f)); tex->Init(*_engine); ApplyMultisampling(); @@ -674,7 +674,7 @@ void GraphManager::FreeScRenderTex() { LSL_ASSERT(_scRenderTexRef > 0); - if (--_scRenderTexRef == 0) + if (--_scRenderTexRef == 0) { delete _scRenderTex; @@ -689,7 +689,7 @@ void GraphManager::InitCleanScTex() _cleanScTex = new graph::RenderToTexture(); graph::Tex2DResource* tex = _cleanScTex->GetOrCreateRT(); tex->GetOrCreateData()->SetFormat(D3DFMT_A16B16G16R16F); - tex->SetScreenScale(glm::vec2(1.0f, 1.0f)); + tex->SetScreenScale(glm::vec2(1.0f, 1.0f)); tex->Init(*_engine); } } @@ -698,7 +698,7 @@ void GraphManager::FreeCleanScTex() { LSL_ASSERT(_cleanScTexRef > 0); - if (--_cleanScTexRef == 0) + if (--_cleanScTexRef == 0) delete _cleanScTex; } @@ -708,9 +708,9 @@ void GraphManager::InitScRenderCubeTex() { _scRenderCubeTex = new graph::RenderToCubeTex(); graph::TexCubeResource* tex = _scRenderCubeTex->GetOrCreateRT(); - tex->GetOrCreateData()->SetFormat(_engine->GetParams().BackBufferFormat); + tex->GetOrCreateData()->SetFormat(_engine->GetParams().BackBufferFormat); tex->GetData()->SetWidth(512 * 6); - tex->Init(*_engine); + tex->Init(*_engine); } ++_scRenderCubeTexRef; @@ -767,7 +767,7 @@ void GraphManager::InitRefrEff() _refrShader->GetOrCreateData()->LoadFromFile("Data\\Shaders\\refract.fx"); _refrShader->Init(*_engine); - _refrShader->SetTexture("sceneTex", _cleanScTex->GetRT()); + _refrShader->SetTexture("sceneTex", _cleanScTex->GetRT()); } } @@ -821,7 +821,7 @@ void GraphManager::InitToneMap() _toneMap = new graph::ToneMapping(); _toneMap->SetRT(_scRenderTex->GetRT()); _toneMap->SetColorTex(_scRenderTex->GetRT()); - + _toneMap->shader.GetOrCreateData()->LoadFromFile("Data\\Shaders\\toneMapping.fx"); _toneMap->shader.Init(*_engine); } @@ -971,7 +971,7 @@ void GraphManager::FreeLightShadow(LightSrc* light) graph::ShadowMapRender* shadowMap = light->GetShadowMap(); light->SetShadowMap(0); - + delete shadowMap; } } @@ -1116,11 +1116,11 @@ void GraphManager::InitPlanarRefl() _planarReflShader = new graph::PlanarReflMappShader(); _planarReflShader->GetOrCreateData()->LoadFromFile("Data\\Shaders\\planarReflMapp.fx"); _planarReflShader->Init(*_engine); - _planarReflShader->SetReflTex(reflTex); + _planarReflShader->SetReflTex(reflTex); #ifdef PLANAR_REFL_DEBUG _planarActor = new graph::Actor(); - graph::PlaneNode* planeNode = &_planarActor->GetNodes().Add(); + graph::PlaneNode* planeNode = &_planarActor->GetNodes().Add(); planeNode->SetScale(100.0f); graph::Actor::GraphDesc desc; @@ -1229,12 +1229,12 @@ void GraphManager::InitPlaneFog(lsl::string texture, const glm::vec2& tileScale, { InitScDepthMap(); - _fogPlane = new graph::FogPlane(); - + _fogPlane = new graph::FogPlane(); + _fogPlane->SetDepthTex(_scDepthMap->GetRT()); _fogPlane->SetCloudsMat(_cloudsMat); _fogPlane->SetColor(_cloudColor); - _fogPlane->SetCloudIntens(_cloudIntensivity); + _fogPlane->SetCloudIntens(_cloudIntensivity); _fogPlane->shader.GetOrCreateData()->LoadFromFile("Data\\Shaders\\fogPlane.fx"); _fogPlane->shader.Init(*_engine); } @@ -1242,12 +1242,12 @@ void GraphManager::InitPlaneFog(lsl::string texture, const glm::vec2& tileScale, _fogPlane->SetSpeed(speed); } else if (_fogPlane != NULL) - { + { lsl::SafeDelete(_fogPlane); FreeScDepthMap(); } - _tileScale = tileScale; + _tileScale = tileScale; UpdateFogPlane(); } @@ -1275,7 +1275,7 @@ void GraphManager::UpdateFogPlane() pos.z = _cloudHeight; if (_fogPlane) - { + { _fogPlane->SetPos(pos); _fogPlane->SetScale(D3DXVECTOR3(_tileScale.x, _tileScale.y, 1.0f)); //_fogPlane->SetSize(glm::vec2(_groundAABB.GetSizes()) / _tileScale); @@ -1321,8 +1321,8 @@ void GraphManager::ApplyFog() void GraphManager::UnApplyFog() { - if (_fogRef) - _engine->GetContext().RestoreRenderState(graph::rsFogEnable); + if (_fogRef) + _engine->GetContext().RestoreRenderState(graph::rsFogEnable); } void GraphManager::ApplyMultisampling() @@ -1341,7 +1341,7 @@ void GraphManager::ApplyMultisampling() if (_msRT == NULL) { - _msRT = new graph::RenderTargetResource(); + _msRT = new graph::RenderTargetResource(); _msRT->SetScreenScale(glm::vec2(1.0f, 1.0f)); _msRT->SetFormat(_scRenderTex->GetRT()->GetData()->GetFormat()); } @@ -1353,7 +1353,7 @@ void GraphManager::ApplyMultisampling() { InitDepthSurface(); - _msDS = new graph::DepthStencilSurfaceResource(); + _msDS = new graph::DepthStencilSurfaceResource(); _msDS->SetScreenScale(glm::vec2(1.0f, 1.0f)); _msDS->SetFormat(_engine->GetParams().AutoDepthStencilFormat); } @@ -1403,7 +1403,7 @@ void GraphManager::PrepareActor(graph::Actor* actor, graph::ActorManager::UserDe resDesc.dynamic = actor->GetGraphDesc().props.test(Actor::gpDynamic); for (unsigned ind = 0; ind < cOctreeSceneEnd; ++ind) - { + { switch (ind) { case osReflWater: @@ -1493,7 +1493,7 @@ void GraphManager::PrepareActor(graph::Actor* actor, graph::ActorManager::UserDe void GraphManager::InsertActor(graph::Actor* value) { graph::ActorManager::UserDesc desc(cOctreeSceneEnd); - PrepareActor(value, desc); + PrepareActor(value, desc); _actorManager->InsertActor(desc); } @@ -1507,7 +1507,7 @@ bool LineCastIntersPlane(const D3DXVECTOR3& rayStart, const D3DXVECTOR3& rayVec, { const float EPSILON = 1.0e-10f; - float d = D3DXPlaneDotNormal(&plane, &rayVec); + float d = D3DXPlaneDotNormal(&plane, &rayVec); if (abs(d) > EPSILON) { outT = -D3DXPlaneDotCoord(&plane, &rayStart) / d; @@ -1561,7 +1561,7 @@ bool ComputeZBounds(graph::Engine& engine, const graph::CameraCI& camera, const D3DXVECTOR3 rayVec[4] = {D3DXVECTOR3(-1.0f, -1.0f, 1.0f), D3DXVECTOR3(1.0f, -1.0f, 1.0f), D3DXVECTOR3(-1.0f, 1.0f, 1.0f), D3DXVECTOR3(1.0f, 1.0f, 1.0f)}; D3DXVECTOR3 rayPos[4] = {D3DXVECTOR3(-1.0f, -1.0f, 0.0f), D3DXVECTOR3(1.0f, -1.0f, 0.0f), D3DXVECTOR3(-1.0f, 1.0f, 0.0f), D3DXVECTOR3(1.0f, 1.0f, 0.0f)}; - + for (int i = 0; i < 4; ++i) { D3DXVec3TransformCoord(&rayVec[i], &rayVec[i], &camera.GetInvViewProj()); @@ -1575,8 +1575,8 @@ bool ComputeZBounds(graph::Engine& engine, const graph::CameraCI& camera, const tFar = D3DXPlaneDotCoord(&posNearPlane, &(rayPos[i] + rayVec[i] * tFar)); if (tNear < minZ || !res) - minZ = tNear; - if (tFar > maxZ || !res) + minZ = tNear; + if (tFar > maxZ || !res) maxZ = tFar; res = true; @@ -1633,7 +1633,7 @@ void GraphManager::RenderDebug() _engine->GetContext().SetTexture(0, _hdrEff->GetRT()->GetTex()); DrawScreenQuad(*_engine, D3DXVECTOR4(0.0f, 0.6f, 0.2f, 0.8f)); }*/ - + /*if (_shadowRef) { unsigned i = 0; @@ -1836,7 +1836,7 @@ void GraphManager::RenderPlanarReflScene(graph::CameraCI& camera) aabb.min.x += border.x; aabb.min.y += border.z; aabb.min.z = pos.z + (height + aabb.min.x * sinb) / cosb; - aabb.max.x += border.y; + aabb.max.x += border.y; aabb.max.y += border.w; aabb.max.z = pos.z + (height + aabb.max.x * sinb) / cosb; AABB localAABB = aabb; @@ -1893,7 +1893,7 @@ void GraphManager::RenderEnvReflScene(graph::CameraCI& camera) _reflShader->Apply(*_engine); for (ActorList::const_iterator iter = actors.begin(); iter != actors.end(); ++iter) - { + { (*iter)->Render(*_engine); if ((*iter)->vec3().x != 0.0f) @@ -1922,7 +1922,7 @@ void GraphManager::RenderEnvReflScene(graph::CameraCI& camera) void GraphManager::RenderScenes(graph::CameraCI& camera) { ApplyFog(); - + if (_pixLightShader) _pixLightShader->SetViewPos(_camera->GetPos()); if (_bumpMapShader) @@ -1933,7 +1933,7 @@ void GraphManager::RenderScenes(graph::CameraCI& camera) _reflBumpShader->SetViewPos(_camera->GetPos()); if (_planarReflShader) _planarReflShader->SetViewPos(_camera->GetPos()); - + RenderWithShader(osColorPix, true, _pixLightShader, true, true); if (!RenderWithShader(osColorBump, true, _bumpMapShader, true, false)) @@ -1957,7 +1957,7 @@ void GraphManager::RenderScenes(graph::CameraCI& camera) _waterPlane->Render(*_engine); OctreeRender(osColorOpacity, false); - + //Рендерим с отключенной запись _engine->GetContext().SetRenderState(graph::rsZWriteEnable, false); @@ -1965,8 +1965,8 @@ void GraphManager::RenderScenes(graph::CameraCI& camera) _actorManager->RenderRayUsers(*_engine, 0.3f); //Спецэффекты в обязательо порядке с откл. записью OctreeRender(osColorEffect, false); - - _engine->GetContext().RestoreRenderState(graph::rsZWriteEnable); + + _engine->GetContext().RestoreRenderState(graph::rsZWriteEnable); OctreeRender(osColorLast, false); @@ -1993,7 +1993,7 @@ void GraphManager::AdjustViewOrtho(graph::CameraCI& camera) float maxZ = 0; bool computeView = false; - if (_actorManager->IsBuildOctree()) + if (_actorManager->IsBuildOctree()) { AABB aabb = _actorManager->GetWorldAABB(); aabb.Add(_groundAABB); @@ -2025,7 +2025,7 @@ void GraphManager::RenderShadow(graph::CameraCI& camera) if (_shadowRef && !_lightList.empty()) { - graph::CameraDesc camDesc = camera.GetDesc(); + graph::CameraDesc camDesc = camera.GetDesc(); bool disableCrop = true; for (LightList::iterator iter = _lightList.begin(); iter != _lightList.end(); ++iter) @@ -2042,13 +2042,13 @@ void GraphManager::RenderShadow(graph::CameraCI& camera) camera.AdjustNearFarPlane(_actorManager->GetWorldAABB(), camDesc.nearDist, camDesc.farDist); _engine->GetContext().ApplyCamera(&camera); - + for (LightList::iterator iter = _lightList.begin(); iter != _lightList.end(); ++iter) { LightSrc* light = *iter; graph::ShadowMapRender* shadowMap = light->GetShadowMap(); - + if (light->GetEnable() && shadowMap) { shadowMap->SetSplitSchemeLambda(camDesc.style == graph::csOrtho ? 0.1f : 0.7f); @@ -2064,13 +2064,13 @@ void GraphManager::RenderShadow(graph::CameraCI& camera) if (_actorManager->IsBuildOctree() && !disableCrop) light->GetSource()->AdjustNearFarPlane(_actorManager->GetWorldAABB(), light->GetDesc().nearDist, light->GetDesc().farDist); - + light->GetSource()->Apply(*_engine, 0); shadowMap->iLight = 0; - + shadowMap->BeginRT(*_engine, RtFlags(0, D3DCLEAR_ZBUFFER | D3DCLEAR_TARGET, 0xFFFFFFFF)); - + shadowMap->BeginShadowCaster(*_engine); do { @@ -2085,18 +2085,18 @@ void GraphManager::RenderShadow(graph::CameraCI& camera) OctreeRender(osShadowMapp, true); } while (!shadowMap->EndShadowMapp(*_engine, true)); - + shadowMap->EndRT(*_engine); - + light->GetSource()->UnApply(*_engine, 0); light->GetSource()->SetNear(light->GetDesc().nearDist); light->GetSource()->SetFar(light->GetDesc().farDist); } } - - _engine->GetContext().UnApplyCamera(&camera); - - //При рендере сцены не требуется оптмизированный фрустум, наоборот он может вызывать артефакты с небом, дождем... + + _engine->GetContext().UnApplyCamera(&camera); + + //При рендере сцены не требуется оптмизированный фрустум, наоборот он может вызывать артефакты с небом, дождем... if (camDesc.style != graph::csOrtho) camera.SetDesc(camDesc); } @@ -2115,7 +2115,7 @@ void GraphManager::RenderCubeMap(graph::CameraCI& camera) _scRenderCubeTex->BeginCubeSurf(*_engine); do { - OctreeRender(osViewCubeMap, 0); + OctreeRender(osViewCubeMap, 0); } while (!_scRenderCubeTex->EndCubeSurf(*_engine, true)); _scRenderCubeTex->EndRT(*_engine); @@ -2152,7 +2152,7 @@ void GraphManager::RenderDepthScene(graph::CameraCI& camera) OctreeRender(osViewDepth, 0); - _scDepthMap->EndRT(*_engine); + _scDepthMap->EndRT(*_engine); } } @@ -2211,13 +2211,13 @@ bool GraphManager::Render(float deltaTime, bool pause) RenderShadow(camera); _engine->GetContext().ApplyCamera(&camera); - + //Осветляем сцену для спец. эффектов (например для четкого кубемапа) _engine->GetContext().SetRenderState(graph::rsAmbient, clrWhite); //Рендер кубемапы сцены RenderCubeMap(camera); //Рендер текстуры водных отражений - RenderWaterRef(camera); + RenderWaterRef(camera); //Рендер глубины сцены RenderDepthScene(camera); @@ -2225,7 +2225,7 @@ bool GraphManager::Render(float deltaTime, bool pause) //Глобальное фоновое освещение, если включены тени то для объектов он расчитывается через рендер теней в лихт мапе(чтобы скрывать артефакты в тенях) _engine->GetContext().SetRenderState(graph::rsAmbient, _sceneAmbient); - + // unsigned i = 0; for (LightList::iterator iter = _lightList.begin(); iter != _lightList.end(); ++iter, ++i) @@ -2252,11 +2252,11 @@ bool GraphManager::Render(float deltaTime, bool pause) { IDirect3DSurface9* surf1; IDirect3DSurface9* surf2; - + if (_msRT) surf1 = _msRT->GetSurface(); else - _scRenderTex->GetRT()->GetTex()->GetSurfaceLevel(0, &surf1); + _scRenderTex->GetRT()->GetTex()->GetSurfaceLevel(0, &surf1); _cleanScTex->GetRT()->GetTex()->GetSurfaceLevel(0, &surf2); _engine->GetDriver().GetDevice()->StretchRect(surf1, 0, surf2, 0, D3DTEXF_NONE); @@ -2322,7 +2322,7 @@ bool GraphManager::Render(float deltaTime, bool pause) _nodeScene->Render(*_engine); //RenderDebug(); - _gui->Draw(); + _gui->Draw(); _engine->EndBackBufOut(); } @@ -2336,7 +2336,7 @@ bool GraphManager::Render(float deltaTime, bool pause) _preNodeScene->Render(*_engine); RenderScenes(camera); - + _nodeScene->Render(*_engine); _gui->Draw(); //RenderDebug(); @@ -2451,7 +2451,7 @@ void GraphManager::BuildOctree() AABB aabb; bool setAABB = false; - for (graph::ActorManager::UserList::const_iterator iter = _actorManager->GetUserList().begin(); iter != _actorManager->GetUserList().end(); ++iter) + for (graph::ActorManager::UserList::const_iterator iter = _actorManager->GetUserList().begin(); iter != _actorManager->GetUserList().end(); ++iter) if ((*iter)->GetActor() != _waterPlaneActor && (*iter)->GetActor() != _grassPlane && (*iter)->GetActor() != _fogPlaneActor) { if (!setAABB) @@ -2465,7 +2465,7 @@ void GraphManager::BuildOctree() glm::vec2 texDiffK = glm::vec2((*iter)->GetActor()->vec3().y, (*iter)->GetActor()->vec3().z); if ((abs(texDiffK.x) + abs(texDiffK.y)) > 0.0f && _lightList.size() > 0 && _lightList.front()->GetSource()->GetType() == D3DLIGHT_DIRECTIONAL) - { + { D3DXVECTOR3 norm = (*iter)->GetActor()->vec1(); D3DXVECTOR3 lightDir = _lightList.front()->GetSource()->GetDir(); float dot = D3DXVec3Dot(&norm, &ZVector); @@ -2531,7 +2531,7 @@ D3DXVECTOR3 GraphManager::ScreenToWorld(const lsl::Point& coord, const float z) float height = static_cast(GetWndHeight()); D3DXVECTOR3 screenVec(coord.x / width * viewPort.Width, coord.y / height * viewPort.Height, z); - + D3DXVec3Unproject(&screenVec, &screenVec, &viewPort, &_camera->GetContextInfo().GetProjMat(), &_camera->GetContextInfo().GetViewMat(), &IdentityMatrix); return screenVec;*/ @@ -2624,7 +2624,7 @@ void GraphManager::SetGraphOption(GraphOption option, bool value, GraphQuality q value ? InitHDREff() : FreeHDREff(); break; - case goShadow: + case goShadow: value ? InitShadowMap() : FreeShadowMap(); break; @@ -2632,11 +2632,11 @@ void GraphManager::SetGraphOption(GraphOption option, bool value, GraphQuality q value ? InitGrassField() : FreeGrassField(); break; - case goRefl: + case goRefl: value ? InitRefl() : FreeRefl(); break; - - case goTrueRefl: + + case goTrueRefl: value ? InitTrueRefl() : FreeTrueRefl(); break; @@ -2645,7 +2645,7 @@ void GraphManager::SetGraphOption(GraphOption option, bool value, GraphQuality q break; case goPixelLighting: - value ? InitPixLight() : FreePixLight(); + value ? InitPixLight() : FreePixLight(); break; case goBumpMap: @@ -2783,7 +2783,7 @@ void GraphManager::SetMultisampling(unsigned value) LSL_LOG(lsl::StrFmt("GraphManager::SetMultisampling value=%d", value).c_str()); _multisampling = value; - ApplyMultisampling(); + ApplyMultisampling(); } } @@ -2851,7 +2851,7 @@ float GraphManager::GetFogIntensivity() const void GraphManager::SetFogIntensivity(float value) { - if (_fogIntensivity != value) + if (_fogIntensivity != value) _fogIntensivity = value; } @@ -2877,7 +2877,7 @@ float GraphManager::GetCloudIntensivity() const void GraphManager::SetCloudIntensivity(float value) { - _cloudIntensivity = value; + _cloudIntensivity = value; if (_fogPlane) _fogPlane->SetCloudIntens(_cloudIntensivity); @@ -2927,7 +2927,7 @@ const D3DXVECTOR3& GraphManager::GetCubeViewPos() const void GraphManager::SetCubeViewPos(const D3DXVECTOR3& value) { - _cubeViewPos = value; + _cubeViewPos = value; } const GraphManager::OrthoTarget& GraphManager::GetOrthoTarget() const @@ -3014,7 +3014,7 @@ bool GraphManager::discreteVideoCard() const /*void Test() { HDEVINFO deviceInfoSet; - GUID *guidDev = (GUID*) &GUID_DEVCLASS_DISPLAY; + GUID *guidDev = (GUID*) &GUID_DEVCLASS_DISPLAY; deviceInfoSet = SetupDiGetClassDevs(guidDev, NULL, NULL, DIGCF_PRESENT | DIGCF_PROFILE); TCHAR buffer [4000]; DWORD buffersize =4000; @@ -3038,7 +3038,7 @@ bool GraphManager::discreteVideoCard() const for (int i = 0; i < nSize; ++i) { DEVPROPTYPE type; - SetupDiGetDeviceProperty(deviceInfoSet, &deviceInfoData, keys[i], &type, + SetupDiGetDeviceProperty(deviceInfoSet, &deviceInfoData, keys[i], &type, } //_tprintf (_T("%s\n"), buffer); diff --git a/src/Rock3dEngine/source/graph/Actor.cpp b/src/Rock3dEngine/source/graph/Actor.cpp index 739a0028..713d864f 100644 --- a/src/Rock3dEngine/source/graph/Actor.cpp +++ b/src/Rock3dEngine/source/graph/Actor.cpp @@ -24,7 +24,7 @@ void Actor::DoRender(graph::Engine& engine) { engine.GetContext().SetLightShadow(_graphDesc.props.test(gpShadowApp)); engine.GetContext().SetTexDiffK(_texDiffK); - + if (_graphDesc.lighting == glNone) engine.GetContext().SetRenderState(graph::rsLighting, false); @@ -41,7 +41,7 @@ void Actor::Save(lsl::SWriter* writer) _MyBase::Save(writer); writer->WriteRef("graph", _graph); - + writer->WriteValue("graphLighting", cLightingStr[_graphDesc.lighting]); std::stringstream stream; diff --git a/src/Rock3dEngine/source/graph/ActorManager.cpp b/src/Rock3dEngine/source/graph/ActorManager.cpp index d7176e88..98488543 100644 --- a/src/Rock3dEngine/source/graph/ActorManager.cpp +++ b/src/Rock3dEngine/source/graph/ActorManager.cpp @@ -29,7 +29,7 @@ void ActorManager::User::InitOctree() { _octreeUser = &_owner->_octree.GetUsers().Add(GetAABB(), _desc.scenes); _octreeUser->AddRef(); - _octreeUser->SetData(this); + _octreeUser->SetData(this); } } @@ -63,7 +63,7 @@ void ActorManager::User::SetGroup(Group* value) if (_group) _owner->AddRefGroup(_group); } -} +} AABB ActorManager::User::GetAABB() const { @@ -129,8 +129,8 @@ ActorManager::CameraCache::iterator ActorManager::CameraCull(const graph::Camera iterCamera = _cameraCache.insert(iterCamera, CameraCache::value_type(camera, CacheValue())); compCull = true; } - else - compCull = iterCamera->second.idState != camera->IdState(); + else + compCull = iterCamera->second.idState != camera->IdState(); if (compCull) { iterCamera->second.pos = _octree.Culling(frustum); @@ -204,7 +204,7 @@ void ActorManager::RemoveActor(User* value) if (value->GetDesc().scenes[i]) _dynUserList[i].Remove(value); } - + _userList.Remove(value); RemoveRayUser(value); @@ -322,8 +322,8 @@ const ActorManager::Planar& ActorManager::GetPlanar(Actor* actor) float dist = abs(testPlane.d - plane.d); float angle = abs(D3DXPlaneDotNormal(&testPlane, &D3DXVECTOR3(plane))); - if (dist < 0.5f && angle > 0.99f - //&& (planarIter == _planars.end() || + if (dist < 0.5f && angle > 0.99f + //&& (planarIter == _planars.end() || //(minDist >= dist && minAngle - angle < 0.002f) || //(minDist - dist > -0.1f && minAngle <= angle)) ) @@ -398,7 +398,7 @@ void ActorManager::Render(Engine& engine, unsigned scene, const graph::CameraCI* { User* myUser = *iter; - myUser->GetActor()->Render(engine); + myUser->GetActor()->Render(engine); } } @@ -410,7 +410,7 @@ void ActorManager::Render(Engine& engine, unsigned scene, bool ignoreRayUsers) void ActorManager::RenderRayUsers(Engine& engine, float opacity) { const float cSpeedOpacity = 0.25f; - + for (RayUsers::iterator iter = _rayUsers.begin(); iter != _rayUsers.end();) { User* user = iter->first; @@ -425,7 +425,7 @@ void ActorManager::RenderRayUsers(Engine& engine, float opacity) } rayUser.draw = false; - if (rayUser.overloap) + if (rayUser.overloap) rayUser.time = lsl::ClampValue(rayUser.time + engine.GetDt(), 0.0f, cSpeedOpacity); else rayUser.time -= engine.GetDt(); diff --git a/src/Rock3dEngine/source/graph/BloomEffect.cpp b/src/Rock3dEngine/source/graph/BloomEffect.cpp index bf49bd5c..7ee16af6 100644 --- a/src/Rock3dEngine/source/graph/BloomEffect.cpp +++ b/src/Rock3dEngine/source/graph/BloomEffect.cpp @@ -13,7 +13,7 @@ void GetSamplesDownScale4x4(DWORD dwWidth, DWORD dwHeight, glm::vec2 avSampleOff float tU = 1.0f / dwWidth; float tV = 1.0f / dwHeight; - // Sample from 4 surrounding points. + // Sample from 4 surrounding points. int index = 0; for( int y = -1; y < 3; y++ ) { @@ -104,7 +104,7 @@ void BloomRender::Render(Engine& engine) //Синхонизация c RT _bloomTex.SyncFrom(GetRT()); - _bloomTex.Init(engine); + _bloomTex.Init(engine); @@ -114,17 +114,17 @@ void BloomRender::Render(Engine& engine) shader.SetValueDir("sampleOffsets4x4", samplerOffsets4x4, sizeof(samplerOffsets4x4)); shader.SetTextureDir("colorTex", _colorTex); - + ApplyRT(engine, RtFlags(0, 0)); shader.Apply(engine, GetLumTex() ? "techDown4x4BrightPass" :"techDown4x4BrightPassNoLum", 0); DrawScreenQuad(engine); - shader.UnApply(engine); + shader.UnApply(engine); UnApplyRT(engine); - - - //Blur pass + + + //Blur pass glm::vec2 offsets4x4[16]; glm::vec2 weights4x4[16]; @@ -139,13 +139,13 @@ void BloomRender::Render(Engine& engine) shader.SetValueDir("sampleOffsets4x4", samplerOffsets4x4, sizeof(samplerOffsets4x4)); shader.SetValueDir("sampleWeights4x4", samplerWeights4x4, sizeof(samplerWeights4x4)); shader.SetTextureDir("colorTex", GetRT()); - + IDirect3DSurface9* rtSurf; _bloomTex.GetTex()->GetSurfaceLevel(0, &rtSurf); engine.GetDriver().GetDevice()->SetRenderTarget(0, rtSurf); shader.Apply(engine, "techBloom", 0); - DrawScreenQuad(engine); + DrawScreenQuad(engine); shader.UnApply(engine); rtSurf->Release(); @@ -157,17 +157,17 @@ void BloomRender::Render(Engine& engine) samplerWeights4x4[i] = weights4x4[i].y; } shader.SetValueDir("sampleOffsets4x4", samplerOffsets4x4, sizeof(samplerOffsets4x4)); - shader.SetValueDir("sampleWeights4x4", samplerWeights4x4, sizeof(samplerWeights4x4)); + shader.SetValueDir("sampleWeights4x4", samplerWeights4x4, sizeof(samplerWeights4x4)); shader.SetTextureDir("colorTex", &_bloomTex); - + GetRT()->GetTex()->GetSurfaceLevel(0, &rtSurf); engine.GetDriver().GetDevice()->SetRenderTarget(0, rtSurf); shader.Apply(engine, "techBloom", 0); - DrawScreenQuad(engine); + DrawScreenQuad(engine); shader.UnApply(engine); - - rtSurf->Release(); + + rtSurf->Release(); } Tex2DResource* BloomRender::GetColorTex() @@ -177,7 +177,7 @@ Tex2DResource* BloomRender::GetColorTex() void BloomRender::SetColorTex(Tex2DResource* value) { - if (ReplaceRef(_colorTex, value)) + if (ReplaceRef(_colorTex, value)) _colorTex = value; } diff --git a/src/Rock3dEngine/source/graph/ClearSurf.cpp b/src/Rock3dEngine/source/graph/ClearSurf.cpp index c2b7767a..04816999 100644 --- a/src/Rock3dEngine/source/graph/ClearSurf.cpp +++ b/src/Rock3dEngine/source/graph/ClearSurf.cpp @@ -22,8 +22,8 @@ void ClearSurf::ApplyMode() void ClearSurf::Render(Engine& engine) { - shader.SetValueDir("color", _color); - + shader.SetValueDir("color", _color); + ApplyRT(engine, RtFlags(0, 0)); shader.Apply(engine); diff --git a/src/Rock3dEngine/source/graph/ContextInfo.cpp b/src/Rock3dEngine/source/graph/ContextInfo.cpp index 33cae806..d0cd535c 100644 --- a/src/Rock3dEngine/source/graph/ContextInfo.cpp +++ b/src/Rock3dEngine/source/graph/ContextInfo.cpp @@ -93,7 +93,7 @@ glm::vec2 CameraCI::ViewToProj(const glm::vec2& coord, const glm::vec2& viewSize float height = static_cast(GetWndHeight()); D3DXVECTOR3 screenVec(coord.x / width * viewPort.Width, coord.y / height * viewPort.Height, z); - + D3DXVec3Unproject(&screenVec, &screenVec, &viewPort, &_curCamera->GetContextInfo().GetProjMat(), &_curCamera->GetContextInfo().GetViewMat(), &IdentityMatrix); return screenVec;*/ @@ -163,7 +163,7 @@ Intersect FrustumAABBIntersect(const Frustum& frustum, bool incZ, const AABB& aa { Intersect ret = fiInside; int ePlane = incZ ? 6 : 4; - + for (int i = 0; i < ePlane; ++i) { D3DXVECTOR3 normal(frustum.planes[i].a, frustum.planes[i].b, frustum.planes[i].c); @@ -173,7 +173,7 @@ Intersect FrustumAABBIntersect(const Frustum& frustum, bool incZ, const AABB& aa { vMin.x = aabb.min.x; vMax.x = aabb.max.x; - } + } else { vMin.x = aabb.max.x; @@ -217,7 +217,7 @@ bool LineCastIntersPlane(const D3DXVECTOR3& rayStart, const D3DXVECTOR3& rayVec, { const float EPSILON = 1.0e-10f; - float d = D3DXPlaneDotNormal(&plane, &rayVec); + float d = D3DXPlaneDotNormal(&plane, &rayVec); if (abs(d) > EPSILON) { outT = -D3DXPlaneDotCoord(&plane, &rayStart) / d; @@ -274,7 +274,7 @@ bool CameraCI::ComputeZBounds(const AABB& aabb, float& minZ, float& maxZ) const BoundBox::Transform(box, GetViewProj(), projBox); //поиск по вершинам aabb - for (int i = 0; i < 8; ++i) + for (int i = 0; i < 8; ++i) //лежит ли точка в боксе if (abs(projBox.v[i].x) < 1.0f && abs(projBox.v[i].y) < 1.0f) { @@ -282,7 +282,7 @@ bool CameraCI::ComputeZBounds(const AABB& aabb, float& minZ, float& maxZ) const if (z > maxZ || !res) maxZ = z; - if (z < minZ || !res) + if (z < minZ || !res) minZ = z; res = true; @@ -291,7 +291,7 @@ bool CameraCI::ComputeZBounds(const AABB& aabb, float& minZ, float& maxZ) const //поиск через лучи из направляющих ребер фрустума D3DXVECTOR3 rayVec[4] = {D3DXVECTOR3(-1.0f, -1.0f, 1.0f), D3DXVECTOR3(1.0f, -1.0f, 1.0f), D3DXVECTOR3(-1.0f, 1.0f, 1.0f), D3DXVECTOR3(1.0f, 1.0f, 1.0f)}; D3DXVECTOR3 rayPos[4] = {D3DXVECTOR3(-1.0f, -1.0f, 0.0f), D3DXVECTOR3(1.0f, -1.0f, 0.0f), D3DXVECTOR3(-1.0f, 1.0f, 0.0f), D3DXVECTOR3(1.0f, 1.0f, 0.0f)}; - + for (int i = 0; i < 4; ++i) { D3DXVec3TransformCoord(&rayVec[i], &rayVec[i], &GetInvViewProj()); @@ -305,8 +305,8 @@ bool CameraCI::ComputeZBounds(const AABB& aabb, float& minZ, float& maxZ) const tFar = D3DXPlaneDotCoord(&posNearPlane, &(rayPos[i] + rayVec[i] * tFar)); if (tNear < minZ || !res) - minZ = tNear; - if (tFar > maxZ || !res) + minZ = tNear; + if (tFar > maxZ || !res) maxZ = tFar; res = true; @@ -368,8 +368,8 @@ bool CameraCI::ComputeZBounds(const AABB& aabb, float& minZ, float& maxZ) const minZ = z; if (z > maxZ || !res) maxZ = z; - - res = true; + + res = true; } } } @@ -385,7 +385,7 @@ void CameraCI::AdjustNearFarPlane(const AABB& aabb, float minNear, float maxFar) _desc.nearDist = std::max(fMinZ, minNear); _desc.farDist = std::min(fMaxZ, maxFar); - + DescChanged(); } @@ -431,7 +431,7 @@ void CameraCI::SetProjMat(const D3DXMATRIX& value) ProjMatChanged(); } -D3DXVECTOR3 CameraCI::ScreenToWorld(const glm::vec2& coord, float z, const glm::vec2& viewSize) const +D3DXVECTOR3 CameraCI::ScreenToWorld(const glm::vec2& coord, float z, const glm::vec2& viewSize) const { glm::vec2 projCoord = ViewToProj(coord, viewSize); D3DXVECTOR3 screenVec(projCoord.x, projCoord.y, z); @@ -444,7 +444,7 @@ D3DXVECTOR3 CameraCI::ScreenToWorld(const glm::vec2& coord, float z, const glm:: glm::vec2 CameraCI::WorldToScreen(const D3DXVECTOR3& coord, const glm::vec2& viewSize) const { D3DXVECTOR3 screenVec; - D3DXVec3TransformCoord(&screenVec, &coord, &GetViewProj()); + D3DXVec3TransformCoord(&screenVec, &coord, &GetViewProj()); glm::vec2 vec(screenVec.x, screenVec.y); return ProjToView(vec, viewSize); @@ -480,7 +480,7 @@ const D3DXMATRIX& CameraCI::GetTransform(Transform transform) const default: //Используется правостороння система координат (как в 3dMax-e) D3DXMatrixLookAtRH(&_matrices[transform], &_desc.pos, &(_desc.pos + _desc.dir), &_desc.up); - } + } break; case ctProj: @@ -622,14 +622,14 @@ void LightCI::AdjustNearFarPlane(const AABB& aabb, float minNear, float maxFar) BoundBox viewBox, projBox; BoundBox::Transform(box, _camera.GetView(), viewBox); BoundBox::Transform(box, _camera.GetViewProj(), projBox); - - for (int i = 0; i < 8; ++i) + + for (int i = 0; i < 8; ++i) { float z = -viewBox.v[i].z; - if (z > maxZ || !res) - maxZ = z; - if (z < minZ || !res) + if (z > maxZ || !res) + maxZ = z; + if (z < minZ || !res) minZ = z; res = true; @@ -695,7 +695,7 @@ ContextInfo::ContextInfo(RenderDriver* driver): _driver(driver), _enableShadow(f std::memcpy(_renderStates, defaultRenderStates, sizeof(defaultRenderStates)); for (int i = 0; i < cMaxTexSamplers; ++i) - { + { std::memcpy(_samplerStates[i], defaultSamplerStates, sizeof(defaultSamplerStates)); std::memcpy(_textureStageStates[i], defaultTextureStageStates, sizeof(defaultTextureStageStates)); } @@ -717,7 +717,7 @@ DWORD ContextInfo::InvertCullFace(DWORD curFace) break; case D3DCULL_CCW: return D3DCULL_CW; - break; + break; } return curFace; } @@ -753,7 +753,7 @@ void ContextInfo::SetLight(LightCI* light, DWORD lightIndex) d3dLight.Specular = light->_desc.specular; d3dLight.Theta = light->_desc.theta; d3dLight.Type = light->_desc.type; - + _driver->GetDevice()->SetLight(lightIndex, &d3dLight); } @@ -840,12 +840,12 @@ void ContextInfo::AddLight(LightCI* value) LSL_ASSERT(value && value->_owner == 0); unsigned id = (_lastLight == _lightList.end()) ? _lightList.size() : (*_lastLight)->_id + 1; - + Lights::const_iterator iter = _lastLight = _lightList.insert(_lastLight, value); value->_owner = this; value->_id = id; ++iter; - //Места нет, берем конец списка + //Места нет, берем конец списка if (!(iter != _lightList.end() && (*iter)->_id - id > 1)) _lastLight = _lightList.end(); @@ -878,7 +878,7 @@ bool ContextInfo::GetLightEnable(LightCI* light) const void ContextInfo::SetLightEnable(LightCI* light, bool value) { - if (_lightEnable.Push(light, value)) + if (_lightEnable.Push(light, value)) SetLightEnable(light->_id, value); } @@ -993,7 +993,7 @@ void ContextInfo::SetRenderState(RenderState type, DWORD value) if (type == rsCullMode && _invertingCullFace) value = InvertCullFace(value); if (_renderStates[type] != value) - { + { _renderStates[type] = value; _driver->SetRenderState(type, value); } @@ -1010,7 +1010,7 @@ IDirect3DBaseTexture9* ContextInfo::GetTexture(DWORD sampler) } void ContextInfo::SetTexture(DWORD sampler, IDirect3DBaseTexture9* value) -{ +{ if (_textures[sampler] != value) { _textures[sampler] = value; @@ -1065,7 +1065,7 @@ void ContextInfo::SetTextureStageState(DWORD sampler, TextureStageState type, DW { _textureStageStates[sampler][type] = value; if (!_ignoreMaterial) - _driver->SetTextureStageState(sampler, type, value); + _driver->SetTextureStageState(sampler, type, value); } } diff --git a/src/Rock3dEngine/source/graph/DepthMap.cpp b/src/Rock3dEngine/source/graph/DepthMap.cpp index a4f2cf9f..26ed858b 100644 --- a/src/Rock3dEngine/source/graph/DepthMap.cpp +++ b/src/Rock3dEngine/source/graph/DepthMap.cpp @@ -75,7 +75,7 @@ void DepthMapRender::EndRT(Engine& engine) shader.UnApply(engine); - UnApplyRT(engine); + UnApplyRT(engine); } const D3DXMATRIX& DepthMapRender::GetViewProjMat() const diff --git a/src/Rock3dEngine/source/graph/Driver/D3D9RenderDriver.cpp b/src/Rock3dEngine/source/graph/Driver/D3D9RenderDriver.cpp index 9f0d8cee..fa40c807 100644 --- a/src/Rock3dEngine/source/graph/Driver/D3D9RenderDriver.cpp +++ b/src/Rock3dEngine/source/graph/Driver/D3D9RenderDriver.cpp @@ -54,7 +54,7 @@ void D3D9RenderDriver::Init(D3DPRESENT_PARAMETERS& d3dpp, bool d3dEx) d3dEx = false; _d3d9Ex = NULL; } - + _d3d9 = Direct3DCreate9(D3D_SDK_VERSION); if (_d3d9 == 0) @@ -63,7 +63,7 @@ void D3D9RenderDriver::Init(D3DPRESENT_PARAMETERS& d3dpp, bool d3dEx) throw EInitD3D9Failed(); } - } + } hr = _d3d9->GetDeviceCaps(D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, &_d3dCaps9); @@ -91,7 +91,7 @@ void D3D9RenderDriver::Init(D3DPRESENT_PARAMETERS& d3dpp, bool d3dEx) for (unsigned i = 0; i < _d3d9->GetAdapterModeCount(D3DADAPTER_DEFAULT, D3DFMT_X8R8G8B8); ++i) { - D3DDISPLAYMODE d3dMode; + D3DDISPLAYMODE d3dMode; _d3d9->EnumAdapterModes(D3DADAPTER_DEFAULT, D3DFMT_X8R8G8B8, i, &d3dMode); DisplayMode mode; @@ -195,7 +195,7 @@ unsigned D3D9RenderDriver::FindPrefRate() { const unsigned prefHZ = 60; unsigned minHz = 0; - + for (DisplayModes::const_iterator iter = _displayModes.begin(); iter != _displayModes.end(); ++iter) if (iter->refreshRate != 0 && ((iter->refreshRate >= prefHZ && minHz > iter->refreshRate) || (iter->refreshRate <= prefHZ && minHz < iter->refreshRate) || minHz == 0)) minHz = iter->refreshRate; diff --git a/src/Rock3dEngine/source/graph/Driver/RenderDriver.cpp b/src/Rock3dEngine/source/graph/Driver/RenderDriver.cpp index 700308c1..ab393517 100644 --- a/src/Rock3dEngine/source/graph/Driver/RenderDriver.cpp +++ b/src/Rock3dEngine/source/graph/Driver/RenderDriver.cpp @@ -44,7 +44,7 @@ bool RenderDriver::FindNearMode(const lsl::Point& resolution, DisplayMode& mode, for (unsigned i = 0; i < GetDisplayModes().size(); ++i) { - DisplayMode dispMode = GetDisplayModes()[i]; + DisplayMode dispMode = GetDisplayModes()[i]; float newAspect = dispMode.height != 0 ? dispMode.width /(float)dispMode.height : 0.0f; if (newAspect != 0 && (abs(minAspect - aspect) > abs(aspect - newAspect) || minAspect == 0.0f)) diff --git a/src/Rock3dEngine/source/graph/Engine.cpp b/src/Rock3dEngine/source/graph/Engine.cpp index aa788890..c3263dcb 100644 --- a/src/Rock3dEngine/source/graph/Engine.cpp +++ b/src/Rock3dEngine/source/graph/Engine.cpp @@ -20,8 +20,8 @@ bool Engine::_d3dxUse = true; Engine::Engine(HWND window, lsl::Point resolution, bool fullScreen, unsigned multisampling): _reset(true), _lost(false), _restart(true), _beginScene(false), _beginDraw(false), _dt(0), _pause(false), _filtering(0), _multisampling(0), _d3dQueryEvent(NULL) { - ZeroMemory(&_d3dpp, sizeof(_d3dpp)); - _d3dpp.BackBufferFormat = D3DFMT_A8R8G8B8; + ZeroMemory(&_d3dpp, sizeof(_d3dpp)); + _d3dpp.BackBufferFormat = D3DFMT_A8R8G8B8; _d3dpp.BackBufferCount = 1; _d3dpp.SwapEffect = D3DSWAPEFFECT_DISCARD; _d3dpp.EnableAutoDepthStencil = true; @@ -35,11 +35,11 @@ Engine::Engine(HWND window, lsl::Point resolution, bool fullScreen, unsigned mul _driver = new d3d9::D3D9RenderDriver(_d3dpp); _driver->GetDevice()->GetSwapChain(0, &_swapChain); - _driver->GetDevice()->GetDepthStencilSurface(&_dsSurf); + _driver->GetDevice()->GetDepthStencilSurface(&_dsSurf); CreateQueries(); - _context = new ContextInfo(_driver); + _context = new ContextInfo(_driver); _context->SetDefaults(); InitResources(); @@ -107,9 +107,9 @@ void Engine::DrawFPS() static double nTimeOfLastFPSUpdate = 0.0; static int nFrameCount = 0; - static char fpsString[255] = "Frames Per Second = "; + static char fpsString[255] = "Frames Per Second = "; if (nTimeOfLastFPSUpdate > 1.0f) // Update once a second - { + { sprintf_s(fpsString, "FPS - %4.2f \n 'C' - переключить камеру \n" "FixedFPS - %i \n", nFrameCount/nTimeOfLastFPSUpdate, (static_cast(1.0f/_dt) / 10) * 10); nTimeOfLastFPSUpdate = 0; @@ -119,7 +119,7 @@ void Engine::DrawFPS() ++nFrameCount; RECT destRect; SetRect(&destRect, 505, 5, 0, 0); - g_pd3dxFont->DrawText(0 , fpsString, -1, &destRect, DT_NOCLIP, D3DXCOLOR(1.0f, 0.0f, 0.0f, 1.0f)); + g_pd3dxFont->DrawText(0 , fpsString, -1, &destRect, DT_NOCLIP, D3DXCOLOR(1.0f, 0.0f, 0.0f, 1.0f)); } #endif @@ -179,7 +179,7 @@ void Engine::UpdateScreenQuad() float fWidth5 = _d3dpp.BackBufferWidth * quadVert.z - 0.5f; float fHeight5 = _d3dpp.BackBufferHeight * quadVert.w - 0.5f; - res::ScreenVertex vertBuf[4] = + res::ScreenVertex vertBuf[4] = { res::ScreenVertex(D3DXVECTOR4(fPosX, fPosY, 0.5f, 1.0f), glm::vec2(fLeftU, fTopV)), res::ScreenVertex(D3DXVECTOR4(fWidth5, fPosY, 0.5f, 1.0f), glm::vec2(fRightU, fTopV)), @@ -201,7 +201,7 @@ void Engine::UpdateScreenQuad() void Engine::InitResources() { { - res::VertexPT vertBuf[4] = + res::VertexPT vertBuf[4] = { res::VertexPT(D3DXVECTOR3(0.5f, -0.5f, 0.0f), glm::vec2(1, 1)), res::VertexPT(D3DXVECTOR3(0.5f, 0.5f, 0.0f), glm::vec2(1, 0)), @@ -244,10 +244,10 @@ bool Engine::ResetDevice() _context->SetDefaults(); _driver->GetDevice()->GetSwapChain(0, &_swapChain); - _driver->GetDevice()->GetDepthStencilSurface(&_dsSurf); + _driver->GetDevice()->GetDepthStencilSurface(&_dsSurf); CreateQueries(); - + for (_VideoResList::iterator iter = _videoResList.begin(); iter != _videoResList.end(); ++iter) (*iter)->OnResetDevice(); @@ -256,7 +256,7 @@ bool Engine::ResetDevice() #endif UpdateScreenQuad(); - + _reset = true; _restart = true; } @@ -277,12 +277,12 @@ void Engine::LostDevice() for (_VideoResList::iterator iter = _videoResList.begin(); iter != _videoResList.end(); ++iter) (*iter)->OnLostDevice(); - + lsl::SafeRelease(_swapChain); lsl::SafeRelease(_dsSurf); ReleaseQueries(); - } + } } void Engine::SetParams(HWND window, lsl::Point resolution, bool fullScreen, unsigned multisampling) @@ -293,7 +293,7 @@ void Engine::SetParams(HWND window, lsl::Point resolution, bool fullScreen, unsi _d3dpp.BackBufferWidth = resolution.x; _d3dpp.BackBufferHeight = resolution.y; _d3dpp.Windowed = !fullScreen; - + D3DMULTISAMPLE_TYPE type; unsigned quality; ToMultisampling(multisampling, type, quality); @@ -370,7 +370,7 @@ bool Engine::BeginScene() return false; } - return true; + return true; } bool Engine::EndScene() @@ -405,18 +405,18 @@ void Engine::GPUSync() // Force the driver to execute the commands from the command buffer. // Empty the command buffer and wait until the GPU is idle. unsigned numberOfPixelsDrawn; - while(S_FALSE == _d3dQueryBuf[1]->GetData( &numberOfPixelsDrawn, + while(S_FALSE == _d3dQueryBuf[1]->GetData( &numberOfPixelsDrawn, sizeof(DWORD), D3DGETDATA_FLUSH )) {} - } + } #else if (IsReset() && _d3dQueryEvent) - { + { while (_d3dQueryEvent->GetData(NULL, 0, D3DGETDATA_FLUSH) == S_FALSE); //переводим событие в состояние ресурса (issued state), как только буффер команд станет пустым событие самой перейдет в сигнальное состояние, это может произойти во время renderTime (время цпу), в результате даже если буффер снова заполнится то мы не будем ждать на цикле выше. Т.е. мы всегда имеем запас в кадр. Однако на экране будет лаг в один кадр. _d3dQueryEvent->Issue(D3DISSUE_END); - } + } #endif } @@ -504,7 +504,7 @@ void Engine::RenderPlanePT() BeginDraw(); _meshPlanePT.Draw(); } - while (!EndDraw(true)); + while (!EndDraw(true)); } void Engine::RenderSpritePT(const D3DXVECTOR3& pos, const D3DXVECTOR3& scale, float turnAngle, const D3DXVECTOR3* fixDirection, const D3DXMATRIX& localMat) @@ -522,7 +522,7 @@ void Engine::RenderSpritePT(const D3DXVECTOR3& pos, const D3DXVECTOR3& scale, fl switch (GetContext().GetCamera().GetDesc().style) { case csPerspective: - viewVec = pos - camera.GetDesc().pos; + viewVec = pos - camera.GetDesc().pos; D3DXVec3Normalize(&viewVec, &viewVec); break; @@ -560,7 +560,7 @@ void Engine::RenderSpritePT(const D3DXVECTOR3& pos, const D3DXVECTOR3& scale, fl MatrixSetTranslation(pos, worldMat); GetContext().SetWorldMat(worldMat); - + RenderPlanePT(); } @@ -580,7 +580,7 @@ void Engine::RenderScreenQuad(bool disableZBuf) _meshScreenQuad.Draw(); } while (!EndDraw(true)); - + GetContext().RestoreRenderState(rsCullMode); if (!disableZBuf) @@ -770,7 +770,7 @@ TextureStageStateManager::iterator TextureStageStateManager::end() void TextureStageStateManager::Apply(Engine& engine, DWORD stage) { - for (iterator iter = begin(); iter != end(); ++iter) + for (iterator iter = begin(); iter != end(); ++iter) engine.GetContext().SetTextureStageState(stage, iter->first, iter->second); } diff --git a/src/Rock3dEngine/source/graph/FogPlane.cpp b/src/Rock3dEngine/source/graph/FogPlane.cpp index e57be2d9..1c533a94 100644 --- a/src/Rock3dEngine/source/graph/FogPlane.cpp +++ b/src/Rock3dEngine/source/graph/FogPlane.cpp @@ -20,7 +20,7 @@ FogPlane::FogPlane(): _depthTex(0), _cloudsMat(0), _color(clrWhite), _cloudInten FogPlane::~FogPlane() { SetCloudsMat(0); - SetDepthTex(0); + SetDepthTex(0); } void FogPlane::DoRender(graph::Engine& engine) @@ -85,7 +85,7 @@ graph::LibMaterial* FogPlane::GetCloudsMat() void FogPlane::SetCloudsMat(graph::LibMaterial* value) { if (ReplaceRef(_cloudsMat, value)) - _cloudsMat = value; + _cloudsMat = value; } const D3DXCOLOR& FogPlane::GetColor() const diff --git a/src/Rock3dEngine/source/graph/FxManager.cpp b/src/Rock3dEngine/source/graph/FxManager.cpp index 033a6af1..5f838b2f 100644 --- a/src/Rock3dEngine/source/graph/FxManager.cpp +++ b/src/Rock3dEngine/source/graph/FxManager.cpp @@ -28,7 +28,7 @@ FxParticle::~FxParticle() { SetChild(0); } - + void FxParticle::BuildWorldMat() const { if (_worldMatChanged) @@ -70,7 +70,7 @@ const D3DXVECTOR3& FxParticle::GetPos() void FxParticle::SetPos(const D3DXVECTOR3& value) { _pos = value; - TransformChanged(); + TransformChanged(); } const glm::quat& FxParticle::GetRot() @@ -105,7 +105,7 @@ const D3DXMATRIX& FxParticle::GetMatrix() const AABB FxParticle::GetAABB() const { BuildAABB(); - + return _aabb; } @@ -136,16 +136,16 @@ FxEmitter::ParticleDesc::ParticleDesc() { maxNum = 100; maxNumAction = mnaWaitingFree; - + life = 1; startTime = 1; startDuration = 0; - startType = sotTime; + startType = sotTime; density = 1; - + startPos = NullVector; startRot = NullQuaternion; - startScale = IdentityVector; + startScale = IdentityVector; rangeLife = 0.0f; rangePos = NullVector; @@ -278,22 +278,22 @@ void FxEmitter::UpdateParticle(FxParticle* value, float dTime, bool init) pos += _particleDesc.rangePos.GetValue(CompRangeFrame(value->index)); scale += _particleDesc.rangeScale.GetValue(CompRangeFrame(value->index)); rot *= _particleDesc.rangeRot.GetValue(CompRangeFrame(value->index)); - - if (_worldCoordSys) + + if (_worldCoordSys) _owner->LocalToWorldCoord(pos, pos); value->SetPos(pos); value->SetScale(scale); value->SetRot(rot); - value->time = 0; + value->time = 0; } value->time += dTime; } void FxEmitter::UpdateGroup(FxParticleGroup* group, float dTime, bool init) -{ +{ } void FxEmitter::QueryCreateParticles(unsigned num, float deltaTime, const D3DXVECTOR3& offPos) @@ -307,7 +307,7 @@ void FxEmitter::QueryCreateParticles(unsigned num, float deltaTime, const D3DXVE unsigned crtNum = _particleDesc.maxNum == 0 ? num : std::min(_particleDesc.maxNum - _cntParticles, num); //Проверяем, если число создаваемых частиц crtNum меньше заданного num, то пытаемся освободить для них места - if (crtNum < num) + if (crtNum < num) switch (_particleDesc.maxNumAction) { case mnaReplaceLatest: @@ -318,7 +318,7 @@ void FxEmitter::QueryCreateParticles(unsigned num, float deltaTime, const D3DXVE FxParticleGroup::iterator first = (*group)->begin(); DelParticle(*first, last); - if ((*group)->Empty()) + if ((*group)->Empty()) DelGroup(group);*/ break; @@ -375,7 +375,7 @@ AABB FxEmitter::LocalDimensions() const D3DXVECTOR3 dimens = IdentityVector / 2 * _particleDesc.startScale.GetMax(); AABB res(_particleDesc.startPos.GetMin() - dimens, _particleDesc.startPos.GetMax() + dimens); - return res; + return res; } void FxEmitter::OnProgress(float deltaTime) @@ -387,7 +387,7 @@ void FxEmitter::OnProgress(float deltaTime) _lastPosQGroup = _worldCoordSys ? _owner->GetWorldPos() : _owner->GetPos(); _lastTimeQGroup = _curTime; } - + //Удаление и обновление оставшихся групп и частиц for (_GroupList::Position pos = _groupList.First(); FxParticleGroup** iter = _groupList.Current(pos); _groupList.Next(pos)) { @@ -428,7 +428,7 @@ if (!_modeFading) D3DXVECTOR3 dPos = _lastPosQGroup - (_worldCoordSys ? _owner->GetWorldPos() : _owner->GetPos()); float dPosTime = std::max(_curTime - _lastTimeQGroup, dTime); - unsigned numPart = 0; + unsigned numPart = 0; while (dTime > 0.0f) { QueryCreateGroup(dTime, dPos * dTime / dPosTime); @@ -522,15 +522,15 @@ void FxEmitter::Load(lsl::SReader* reader) lsl::SReadValue(child, "density", _particleDesc.density); lsl::SReadValue(child, "startPos", _particleDesc.startPos); lsl::SReadValue(child, "startScale", _particleDesc.startScale); - lsl::SReadValue(child, "startRot", _particleDesc.startRot); - + lsl::SReadValue(child, "startRot", _particleDesc.startRot); + lsl::SReadValue(child, "rangeLife", _particleDesc.rangeLife); lsl::SReadValue(child, "rangePos", _particleDesc.rangePos); lsl::SReadValue(child, "rangeScale", _particleDesc.rangeScale); lsl::SReadValue(child, "rangeRot", _particleDesc.rangeRot); } - reader->ReadValue("worldCoordSys", _worldCoordSys); + reader->ReadValue("worldCoordSys", _worldCoordSys); } void FxEmitter::Reset() @@ -612,7 +612,7 @@ FxParticleSystem::FxParticleSystem(): _fxManager(0), _childStyle(csProxy), _aabb _emitters = new Emitters(this); _emitters->SetClassList(&classList); - _child = new SceneNode(); + _child = new SceneNode(); _child->SetName("child"); _child->SetOwner(this); _child->SetParent(this); @@ -664,7 +664,7 @@ void FxParticleSystem::OnCreateParticle(FxParticle* value) child->SetParent(this); child->AssignFromSer(_child, GetRoot()); value->SetChild(child); - break; + break; } default: @@ -681,7 +681,7 @@ void FxParticleSystem::OnDestroyParticle(FxParticle* value) switch (_childStyle) { - case csProxy: + case csProxy: _child->GetProxyList().Delete(lsl::StaticCast(child)); break; @@ -739,7 +739,7 @@ void FxParticleSystem::Save(lsl::SWriter* writer) writer->WriteRef("fxManager", _fxManager); writer->WriteValue("emitters", _emitters); material.Save(writer, this); - + writer->WriteValue("child", _child); lsl::SWriteEnum(writer, "childStyle", _childStyle, cChildStyleStr, cChildStyleEnd); } @@ -764,8 +764,8 @@ void FxParticleSystem::OnFixUp(const FixUpNames& fixUpNames) for (FixUpNames::const_iterator iter = fixUpNames.begin(); iter != fixUpNames.end(); ++iter) { - if (iter->name == "fxManager") - SetFxManager(iter->GetComponent()); + if (iter->name == "fxManager") + SetFxManager(iter->GetComponent()); } material.OnFixUp(fixUpNames, this); @@ -795,7 +795,7 @@ void FxParticleSystem::DoRender(graph::Engine& engine) for (FxParticleGroup::iterator iter = group->begin(); iter != group->end(); ++iter) { LSL_ASSERT((*iter)->GetChild()); - + (*iter)->GetChild()->Render(engine); } } @@ -931,7 +931,7 @@ void FxManager::RenderEmitter(graph::Engine& engine, FxEmitter* emitter) emitter->GetSystem()->material.UnApply(engine); engine.GetContext().PopFrame(); - } + } } void FxManager::RenderSystem(graph::Engine& engine, FxParticleSystem* system) @@ -1026,7 +1026,7 @@ void FxPointSpritesManager::RenderSystem(graph::Engine& engine, FxParticleSystem engine.GetContext().RestoreRenderState(graph::rsPointScaleEnable); engine.GetContext().RestoreRenderState(graph::rsPointScaleA); engine.GetContext().RestoreRenderState(graph::rsPointScaleB); - engine.GetContext().RestoreRenderState(graph::rsPointScaleC); + engine.GetContext().RestoreRenderState(graph::rsPointScaleC); engine.GetContext().RestoreRenderState(graph::rsPointSizeMin); engine.GetContext().RestoreRenderState(graph::rsPointSizeMax); // @@ -1057,7 +1057,7 @@ void FxSpritesManager::RenderGroup(graph::Engine& engine, FxEmitter* emitter, Fx { D3DXVECTOR3 axe = Vec3GlmToDx(glm::axis(particle->GetRot())); float angle = glm::angle(particle->GetRot()); - + engine.RenderSpritePT(emitter->GetWorldPos(particle), particle->GetScale(), angle, 0, IdentityMatrix); } } @@ -1082,7 +1082,7 @@ void FxPlaneManager::RenderGroup(graph::Engine& engine, FxEmitter* emitter, FxPa D3DXMATRIX worldMat = particle->GetMatrix() * emitter->GetMatrix(); engine.GetContext().SetWorldMat(worldMat); - + engine.RenderPlanePT(); } @@ -1092,7 +1092,7 @@ void FxPlaneManager::RenderGroup(graph::Engine& engine, FxEmitter* emitter, FxPa FxNodeManager::FxNodeManager() { _node = new SceneNode(); - _node->SetOwner(this); + _node->SetOwner(this); } FxNodeManager::~FxNodeManager() @@ -1162,7 +1162,7 @@ void FxTrailManager::DrawPath(graph::Engine& engine, FxParticleSystem* system, F engine.GetDriver().GetDevice()->SetFVF(res::VertexPT::fvf); engine.GetDriver().GetDevice()->DrawPrimitiveUP(D3DPT_TRIANGLESTRIP, primCnt * 2, &vBuf[sPrim * 2], sizeof(res::VertexPT)); - + system->material.UnApply(engine); engine.GetContext().PopFrame(); } @@ -1210,7 +1210,7 @@ void FxTrailManager::RenderEmitter(graph::Engine& engine, FxEmitter* emitter) D3DXVec3Normalize(&dir, &dir); //Последняя позиция для вычисления направления D3DXVECTOR3 lastPos = pos1 - dir; - + //Последняя частица которая была отрисована unsigned lastPartDraw = 0; //Текущее число частиц @@ -1253,7 +1253,7 @@ void FxTrailManager::RenderEmitter(graph::Engine& engine, FxEmitter* emitter) lastPartDraw = numPartDraw - 1; } - } + } //Обращаемся к последней частице в роли которой выступает сам емиттер, и также строим линию из двух вершин dir = worldPos - lastPos; @@ -1263,7 +1263,7 @@ void FxTrailManager::RenderEmitter(graph::Engine& engine, FxEmitter* emitter) //Рисуем все оставшиеся частицы. Если режим typeDraw == tdLastGroup то рисуются все частицы, иначе только последняя DrawPath(engine, system, groups.back(), vertexBuf, numPartDraw - lastPartDraw - 1, lastPartDraw); - + delete[] vertexBuf; } @@ -1287,7 +1287,7 @@ void FxTrailManager::SetTrailWidth(float value) FxFlowEmitter::FxFlowEmitter(FxParticleSystem* owner): _MyBase(owner) -{ +{ } FxFlowEmitter::FlowDesc::FlowDesc() @@ -1367,9 +1367,9 @@ void FxFlowEmitter::Save(lsl::SWriter* writer) lsl::SWriteValue(child, "speedPos", _flowDesc.speedPos); lsl::SWriteValue(child, "speedRot", _flowDesc.speedRot); lsl::SWriteValue(child, "speedScale", _flowDesc.speedScale); - lsl::SWriteValue(child, "acceleration", _flowDesc.acceleration); + lsl::SWriteValue(child, "acceleration", _flowDesc.acceleration); lsl::SWriteValue(child, "gravitation", _flowDesc.gravitation); - + writer->WriteValue("autoRot", _flowDesc.autoRot); } } @@ -1383,7 +1383,7 @@ void FxFlowEmitter::Load(lsl::SReader* reader) lsl::SReadValue(child, "speedPos", _flowDesc.speedPos); lsl::SReadValue(child, "speedRot", _flowDesc.speedRot); lsl::SReadValue(child, "speedScale", _flowDesc.speedScale); - lsl::SReadValue(child, "acceleration", _flowDesc.acceleration); + lsl::SReadValue(child, "acceleration", _flowDesc.acceleration); lsl::SReadValue(child, "gravitation", _flowDesc.gravitation); reader->ReadValue("autoRot", _flowDesc.autoRot); diff --git a/src/Rock3dEngine/source/graph/GaussianBlur.cpp b/src/Rock3dEngine/source/graph/GaussianBlur.cpp index 3111ff43..3cd30300 100644 --- a/src/Rock3dEngine/source/graph/GaussianBlur.cpp +++ b/src/Rock3dEngine/source/graph/GaussianBlur.cpp @@ -16,7 +16,7 @@ void GaussianBlurShader::DoInit() _colorTex = GetEffect()->GetParameterByName(0, "colorTex"); _colorTexSizes = GetEffect()->GetParameterByName(0, "colorTexSizes"); - _techGaussianBlur = GetEffect()->GetTechniqueByName("techGaussianBlur"); + _techGaussianBlur = GetEffect()->GetTechniqueByName("techGaussianBlur"); } void GaussianBlurShader::DoUpdate() @@ -57,7 +57,7 @@ void GaussianBlurShader::DoApplyTech(Engine& engine) GaussianBlurRender::GaussianBlurRender(): _shader(0), _colorTex(0) -{ +{ } GaussianBlurRender::~GaussianBlurRender() @@ -95,7 +95,7 @@ void GaussianBlurRender::Render(Engine& engine, IDirect3DSurface9* backBuffer, I engine.EndDraw(); _shader->UnApply(engine); - engine.SetTexture(0, 0); + engine.SetTexture(0, 0); } Tex2DResource* GaussianBlurRender::GetColorTex() @@ -107,10 +107,10 @@ void GaussianBlurRender::SetColorTex(Tex2DResource* value) { if (_colorTex != value) { - if (_colorTex) + if (_colorTex) _colorTex->Release(); _colorTex = value; - if (_colorTex) + if (_colorTex) _colorTex->AddRef(); } } @@ -124,10 +124,10 @@ void GaussianBlurRender::SetShader(GaussianBlurShader* value) { if (_shader != value) { - if (_shader) + if (_shader) _shader->Release(); _shader = value; - if (_shader) + if (_shader) _shader->AddRef(); } } diff --git a/src/Rock3dEngine/source/graph/GrassField.cpp b/src/Rock3dEngine/source/graph/GrassField.cpp index af4ccf8c..ee7c7bf5 100644 --- a/src/Rock3dEngine/source/graph/GrassField.cpp +++ b/src/Rock3dEngine/source/graph/GrassField.cpp @@ -33,9 +33,9 @@ void GrassField::BuildField() //Вычисляем карту позиций int numX = static_cast(_fieldWidth * _density); - int numY = static_cast(_fieldHeight * _density); + int numY = static_cast(_fieldHeight * _density); //Общее число спрайтов - int maxSprites = numX * numY; + int maxSprites = numX * numY; //Шаг размещения D3DXVECTOR3 step(_fieldWidth/numX, _fieldHeight/numY, 0.0f); //Заполняем @@ -48,8 +48,8 @@ void GrassField::BuildField() //Суммарный вес float summWeight = 0; - for (unsigned i = 0; i < _grassList.size(); ++i) - for (unsigned j = 0; j < _grassList[i].tiles.size(); ++j) + for (unsigned i = 0; i < _grassList.size(); ++i) + for (unsigned j = 0; j < _grassList[i].tiles.size(); ++j) summWeight += _grassList[i].tiles[j].weight; float spritesPerWeight = maxSprites / summWeight; @@ -105,9 +105,9 @@ void GrassField::BuildField() spriteOff += numSprites; //Т.к. плоскость образуют два треугольника... _batchList[i].primCnt += numSprites * 2; - } + } } - data.Update(); + data.Update(); } void GrassField::DrawField(graph::Engine& engine, const Field& field) @@ -137,7 +137,7 @@ void GrassField::DrawField(graph::Engine& engine, const Field& field) } void GrassField::Rebuild() -{ +{ if (_width <=0 || _height <= 0 || _grassList.empty()) { _fieldList.clear(); @@ -162,9 +162,9 @@ void GrassField::Rebuild() for (int j = 0; j < fieldNumY; ++j) { int ind = i * fieldNumY + j; - _fieldList[ind].pos = D3DXVECTOR3((i + 0.5f) * _fieldWidth - _width / 2.0f, (j + 0.5f) * _fieldHeight - _height / 2.0f, 0.0f); + _fieldList[ind].pos = D3DXVECTOR3((i + 0.5f) * _fieldWidth - _width / 2.0f, (j + 0.5f) * _fieldHeight - _height / 2.0f, 0.0f); } - + BuildField(); } @@ -172,18 +172,18 @@ AABB GrassField::LocalDimensions() const { return AABB(D3DXVECTOR3(GetWidth(), GetHeight(), 2.0f)); } - + void GrassField::DoRender(graph::Engine& engine) { shader.Init(engine); - + shader.SetValueDir("wvpMatrix", engine.GetContext().GetCamera().GetWVP()); shader.SetValueDir("viewMatInv", engine.GetContext().GetCamera().GetInvView()); shader.SetValueDir("matWorldView", engine.GetContext().GetCamera().GetTransform(CameraCI::ctWorldView)); engine.GetContext().SetRenderState(graph::rsAlphaRef, 17); engine.GetContext().SetRenderState(graph::rsAlphaFunc, D3DCMP_GREATEREQUAL); - engine.GetContext().SetRenderState(graph::rsAlphaTestEnable, true); + engine.GetContext().SetRenderState(graph::rsAlphaTestEnable, true); D3DXVECTOR3 fogParamsVec = D3DXVECTOR3(0, 1, (float)engine.GetContext().GetRenderState(rsFogEnable)); if (fogParamsVec.z != 0) @@ -204,7 +204,7 @@ void GrassField::DoRender(graph::Engine& engine) shader.Apply(engine); for (unsigned i = 0; i < _fieldList.size(); ++i) - DrawField(engine, _fieldList[i]); + DrawField(engine, _fieldList[i]); shader.UnApply(engine); engine.GetContext().RestoreRenderState(graph::rsAlphaRef); @@ -275,10 +275,10 @@ const GrassField::GrassList& GrassField::GetGrassList() void GrassField::SetGrassList(const GrassList& value) { - for (GrassList::iterator iter = _grassList.begin(); iter != _grassList.end(); ++iter) + for (GrassList::iterator iter = _grassList.begin(); iter != _grassList.end(); ++iter) iter->libMat->Release(); _grassList = value; - for (GrassList::iterator iter = _grassList.begin(); iter != _grassList.end(); ++iter) + for (GrassList::iterator iter = _grassList.begin(); iter != _grassList.end(); ++iter) iter->libMat->AddRef(); Rebuild(); diff --git a/src/Rock3dEngine/source/graph/HDREffect.cpp b/src/Rock3dEngine/source/graph/HDREffect.cpp index 5fbe9238..78852231 100644 --- a/src/Rock3dEngine/source/graph/HDREffect.cpp +++ b/src/Rock3dEngine/source/graph/HDREffect.cpp @@ -20,7 +20,7 @@ HDRRender::HDRRender(): _restart(true), _colorTex(0) tex.SetUsage(D3DUSAGE_RENDERTARGET); tex.GetOrCreateData()->SetWidth(toneMapSz[i]); tex.GetData()->SetHeight(toneMapSz[i]); - tex.GetData()->SetFormat(D3DFMT_A16B16G16R16F); + tex.GetData()->SetFormat(D3DFMT_A16B16G16R16F); _toneVec.push_back(&tex); } @@ -54,26 +54,26 @@ void HDRRender::MeasureLuminance(Engine& engine) GetSampleOffsetsDownScale3x3(_colorTex->GetData()->GetWidth(), _colorTex->GetData()->GetHeight(), sampleOffsets3x3); shader.SetTextureDir("lumTex", _colorTex); shader.SetValueDir("sampleOffsets3x3", sampleOffsets3x3, sizeof(sampleOffsets3x3)); - + IDirect3DSurface9* pSurfDest = 0; _toneVec[cToneMapTexNum - 1]->GetTex()->GetSurfaceLevel(0, &pSurfDest); - engine.GetDriver().GetDevice()->SetRenderTarget(0, pSurfDest); - + engine.GetDriver().GetDevice()->SetRenderTarget(0, pSurfDest); + shader.Apply(engine, "techDown3x3LumLog", 0); DrawScreenQuad(engine); shader.UnApply(engine); - + pSurfDest->Release(); for( int i = cToneMapTexNum - 1; i > 0; i--) { - GetSampleOffsetsDownScale4x4(_toneVec[i - 1]->GetData()->GetWidth(), _toneVec[i - 1]->GetData()->GetHeight(), sampleOffsets4x4); + GetSampleOffsetsDownScale4x4(_toneVec[i - 1]->GetData()->GetWidth(), _toneVec[i - 1]->GetData()->GetHeight(), sampleOffsets4x4); //Если i == 1 окончательный вариант прохода в текстуру 1х1 shader.SetTextureDir("lumTex", _toneVec[i]); shader.SetValueDir("sampleOffsets4x4", sampleOffsets4x4, sizeof(sampleOffsets4x4)); - + if (i == 1 && (engine.IsRestart() || _restart)) - GetRT()->GetTex()->GetSurfaceLevel(0, &pSurfDest); + GetRT()->GetTex()->GetSurfaceLevel(0, &pSurfDest); else _toneVec[i - 1]->GetTex()->GetSurfaceLevel(0, &pSurfDest); @@ -97,7 +97,7 @@ void HDRRender::AdaptationLuminance(Engine& engine) shader.SetTextureDir("lumTex", _toneVec[0]); shader.SetTextureDir("lumTexOld", GetRT()); shader.SetValueDir("dtime", dtime); - + ApplyRT(engine, RtFlags(0, 0)); shader.Apply(engine, "techAdaptLum", 0); @@ -129,10 +129,10 @@ void HDRRender::SetColorTex(Tex2DResource* value) { if (_colorTex != value) { - if (_colorTex) + if (_colorTex) _colorTex->Release(); _colorTex = value; - if (_colorTex) + if (_colorTex) _colorTex->AddRef(); } } diff --git a/src/Rock3dEngine/source/graph/MappingShaders.cpp b/src/Rock3dEngine/source/graph/MappingShaders.cpp index 57517ef2..1525093b 100644 --- a/src/Rock3dEngine/source/graph/MappingShaders.cpp +++ b/src/Rock3dEngine/source/graph/MappingShaders.cpp @@ -54,15 +54,15 @@ void LightShader::InvalidateParams(D3DLIGHTTYPE value, bool shadow) switch (value) { case D3DLIGHT_POINT: - ApplyTech("", shadow ? _lightMacro[ltPoint][lpShadow] : _lightMacro[ltPoint][lpNoShadow]); + ApplyTech("", shadow ? _lightMacro[ltPoint][lpShadow] : _lightMacro[ltPoint][lpNoShadow]); break; case D3DLIGHT_DIRECTIONAL: - ApplyTech("", shadow ? _lightMacro[ltDir][lpShadow] : _lightMacro[ltDir][lpNoShadow]); + ApplyTech("", shadow ? _lightMacro[ltDir][lpShadow] : _lightMacro[ltDir][lpNoShadow]); break; case D3DLIGHT_SPOT: - ApplyTech("", shadow ? _lightMacro[ltSpot][lpShadow] : _lightMacro[ltSpot][lpNoShadow]); + ApplyTech("", shadow ? _lightMacro[ltSpot][lpShadow] : _lightMacro[ltSpot][lpNoShadow]); break; default: @@ -93,7 +93,7 @@ void LightShader::DoBeginDraw(Engine& engine) // _fogColor = D3DXCOLOR(engine.GetContext().GetRenderState(rsFogColor)); engine.GetContext().SetRenderState(rsFogColor, _fogColor / static_cast(lightCnt)); - + const LightCI& light = engine.GetContext().GetLight(_curLight); bool shadow = engine.GetContext().GetLightShadow() && light.GetDesc().shadowMap; D3DLIGHTTYPE lightType = light.GetDesc().type; @@ -104,7 +104,7 @@ void LightShader::DoBeginDraw(Engine& engine) { case D3DLIGHT_POINT: SetParam(_params[lightPos], light.GetDesc().pos); - SetParam(_params[lightDir], light.GetDesc().dir); + SetParam(_params[lightDir], light.GetDesc().dir); break; case D3DLIGHT_DIRECTIONAL: @@ -112,7 +112,7 @@ void LightShader::DoBeginDraw(Engine& engine) SetParam(_params[lightDir], light.GetDesc().dir); break; - case D3DLIGHT_SPOT: + case D3DLIGHT_SPOT: { SetParam(_params[lightPos], light.GetDesc().pos); SetParam(_params[lightDir], light.GetDesc().dir); @@ -132,7 +132,7 @@ void LightShader::DoBeginDraw(Engine& engine) SetParam(_params[ambLight], light.GetDesc().ambient); SetParam(_params[diffLight], light.GetDesc().diffuse); SetParam(_params[specLight], light.GetDesc().specular); - + D3DMATERIAL9 d3dMat; engine.GetDriver().GetDevice()->GetMaterial(&d3dMat); @@ -233,11 +233,11 @@ void ReflMappShader::DoBeginDraw(Engine& engine) { _MyBase::DoBeginDraw(engine); - SetParam(_params[reflectivity], _reflectivity); + SetParam(_params[reflectivity], _reflectivity); SetParam(_params[alphaBlendColor], D3DXCOLOR(engine.GetContext().GetTextureStageState(0, tssConstant))); if (GetReflTex()) - SetTexParam(_params[envTex], GetReflTex()->GetTex()); + SetTexParam(_params[envTex], GetReflTex()->GetTex()); } graph::TexCubeResource* ReflMappShader::GetReflTex() @@ -272,11 +272,11 @@ void ReflBumbMappShader::DoBeginDraw(Engine& engine) { _MyBase::DoBeginDraw(engine); - SetParam(_params[reflectivity], 0.4f); + SetParam(_params[reflectivity], 0.4f); SetParam(_params[alphaBlendColor], D3DXCOLOR(engine.GetContext().GetTextureStageState(0, tssConstant))); if (GetReflTex()) - SetTexParam(_params[envTex], GetReflTex()->GetTex()); + SetTexParam(_params[envTex], GetReflTex()->GetTex()); SetTexParam(_params[normTex], engine.GetContext().GetTexture(1)); } @@ -336,7 +336,7 @@ void PlanarReflMappShader::DoBeginDraw(Engine& engine) SetParam(_params[reflectivity], 0.4f); if (GetReflTex()) - SetTexParam(_params[reflTex], GetReflTex()->GetTex()); + SetTexParam(_params[reflTex], GetReflTex()->GetTex()); } graph::Tex2DResource* PlanarReflMappShader::GetReflTex() diff --git a/src/Rock3dEngine/source/graph/MaterialLibrary.cpp b/src/Rock3dEngine/source/graph/MaterialLibrary.cpp index 7c226be5..6fd8c46b 100644 --- a/src/Rock3dEngine/source/graph/MaterialLibrary.cpp +++ b/src/Rock3dEngine/source/graph/MaterialLibrary.cpp @@ -170,9 +170,9 @@ void BaseSampler::SetColorMode(Mode value) case tmModulate: stageStates.Set(tssColorOp, D3DTOP_MODULATE); stageStates.Set(tssColorArg1, D3DTA_TEXTURE); - stageStates.Set(tssColorArg2, D3DTA_CURRENT); + stageStates.Set(tssColorArg2, D3DTA_CURRENT); break; - + case tmReplace: stageStates.Set(tssColorOp, D3DTOP_SELECTARG1); stageStates.Set(tssColorArg1, D3DTA_TEXTURE); @@ -197,7 +197,7 @@ void BaseSampler::SetColorMode(Mode value) } void BaseSampler::SetAlphaMode(Mode value) -{ +{ switch (value) { case tmDecal: @@ -209,9 +209,9 @@ void BaseSampler::SetAlphaMode(Mode value) case tmModulate: stageStates.Set(tssAlphaOp, D3DTOP_MODULATE); stageStates.Set(tssAlphaArg1, D3DTA_TEXTURE); - stageStates.Set(tssAlphaArg2, D3DTA_CURRENT); + stageStates.Set(tssAlphaArg2, D3DTA_CURRENT); break; - + case tmReplace: stageStates.Set(tssAlphaOp, D3DTOP_SELECTARG1); stageStates.Set(tssAlphaArg1, D3DTA_TEXTURE); @@ -296,7 +296,7 @@ void Sampler2d::BuildAnimByOff(const Vec2Range& texCoord, const Point2U& tileCnt glm::vec2 coordOff(pixOff.x / GetWidth(), pixOff.y / GetHeight()); glm::vec2 coordLen(texCoord.GetMax() - texCoord.GetMin()); - glm::vec2 tileSize((coordLen - coordOff * 2.0f) / fTileCnt); + glm::vec2 tileSize((coordLen - coordOff * 2.0f) / fTileCnt); glm::vec2 stTile(texCoord.GetMin() + coordOff); glm::vec2 endTile(tileSize * (fTileCnt - IdentityVec2) + stTile); @@ -311,7 +311,7 @@ void Sampler2d::BuildAnimByTile(const Vec2Range& texCoord, const Point2U& tileCn glm::vec2 coordLen(texCoord.GetMax() - texCoord.GetMin()); glm::vec2 imgSize(coordLen.x * GetWidth(), coordLen.y * GetHeight()); - + glm::vec2 pixOff = tileSize / 2.0f - ((fTileCnt + IdentityVec2) * tileSize - imgSize) / 2.0f; BuildAnimByOff(texCoord, tileCnt, pixOff); @@ -390,7 +390,7 @@ Samplers::~Samplers() void Samplers::InitClassList() { static bool initClassList = false; - + if (!initClassList) { initClassList = true; @@ -426,7 +426,7 @@ SamplerCube& Samplers::AddCube(TexCubeResource* tex) Samplers::iterator Samplers::Delete(iterator iter) { - BaseSampler* sampler = *iter; + BaseSampler* sampler = *iter; iterator res = _cont.erase(iter); delete sampler; @@ -589,7 +589,7 @@ void Material::ApplyAlphaTest(AlphaTest mode) default: LSL_ASSERT(false); - } + } } void Material::Apply(Engine& engine) @@ -614,14 +614,14 @@ void Material::Apply(Engine& engine) } //Без освещения else - { + { //Direct3d не поддерживает материал отдельно от освещения, поэтому делается через emissive d3dMat.ambient = d3dMat.diffuse = d3dMat.specular = clrBlack; d3dMat.diffuse.a = alpha; d3dMat.emissive = _diffuse.GetValue(frame); } - if (engine.GetContext().IsCullOpacity()) + if (engine.GetContext().IsCullOpacity()) d3dMat.diffuse.a *= engine.GetContext().GetCullOpacity(); engine.GetContext().SetMaterial(d3dMat); @@ -782,15 +782,15 @@ void Material::SetOption(Option option, bool value) //Direct3d не поддерживает материал отдельно от освещения, поэтому обходной путь //renderStates.Set(graph::rsLighting, false); break; - + case moZWrite: renderStates.Set(graph::rsZWriteEnable, value); break; - + case moZTest: renderStates.Set(graph::rsZEnable, value); break; - + case moIgnoreFog: _ignoreFog = value; break; @@ -809,11 +809,11 @@ Material::FaceCulling Material::GetFaceCulling() const void Material::SetFaceCulling(FaceCulling value) { const D3DCULL cullMode[cFaceCullingEnd] = {D3DCULL_CW, D3DCULL_CCW, D3DCULL_NONE}; - + if (_faceCulling != value) { _faceCulling = value; - + renderStates.Set(graph::rsFillMode, cullMode[_faceCulling]); } } @@ -863,7 +863,7 @@ void LibMaterial::Apply(Engine& engine) for (unsigned i = 0; i < samplers.Size(); ++i) samplers[i].Apply(engine, i); - if (_shader) + if (_shader) _shader->Apply(engine); } } @@ -872,7 +872,7 @@ void LibMaterial::UnApply(Engine& engine) { if (!engine.GetContext().GetIgnoreMaterial()) { - if (_shader) + if (_shader) _shader->UnApply(engine); for (unsigned i = 0; i < samplers.Size(); ++i) @@ -904,7 +904,7 @@ graph::LibMaterial& LibMaterial::SetAnisoFlt() void DrawScreenQuad(Engine& engine, const D3DXVECTOR4& quadVert, float fLeftU, float fTopV, float fRightU, float fBottomV, bool disableZBuf) { D3DSURFACE_DESC surfDesc; - IDirect3DSurface9* curRTSurf; + IDirect3DSurface9* curRTSurf; engine.GetDriver().GetDevice()->GetRenderTarget(0, &curRTSurf); curRTSurf->GetDesc(&surfDesc); curRTSurf->Release(); @@ -924,7 +924,7 @@ void DrawScreenQuad(Engine& engine, const D3DXVECTOR4& quadVert, float fLeftU, f svQuad[1].pos = D3DXVECTOR4(fWidth5, fPosY, 0.5f, 1.0f); svQuad[1].tex = glm::vec2(fRightU, fTopV); - svQuad[2].pos = D3DXVECTOR4(fPosX, fHeight5, 0.5f, 1.0f); + svQuad[2].pos = D3DXVECTOR4(fPosX, fHeight5, 0.5f, 1.0f); svQuad[2].tex = glm::vec2(fLeftU, fBottomV); svQuad[3].pos = D3DXVECTOR4(fWidth5, fHeight5, 0.5f, 1.0f); diff --git a/src/Rock3dEngine/source/graph/OctreeSort.cpp b/src/Rock3dEngine/source/graph/OctreeSort.cpp index 1055b045..60115cdc 100644 --- a/src/Rock3dEngine/source/graph/OctreeSort.cpp +++ b/src/Rock3dEngine/source/graph/OctreeSort.cpp @@ -20,7 +20,7 @@ OctreeSort::Node::Node(unsigned numGroups, const AABB& aabb, Node* parent): cNum _userMap = new UserMap[cNumGroups]; } -OctreeSort::Node::~Node() +OctreeSort::Node::~Node() { LSL_ASSERT(_refCnt == 0 && _lockCnt == 0); @@ -68,7 +68,7 @@ void OctreeSort::Node::DoInsertUser(UserNode* value, unsigned group) void OctreeSort::Node::DoRemoveUser(UserNode* value, unsigned group) { - _leaf[group].Remove(value); + _leaf[group].Remove(value); RemoveFromUserMap(value, group); --_userCnt; @@ -86,7 +86,7 @@ void OctreeSort::Node::InsertUser(const UserList& value) { LSL_ASSERT(_nodeList.empty()); - for (UserList::const_iterator iter = value.begin(); iter != value.end(); ++iter) + for (UserList::const_iterator iter = value.begin(); iter != value.end(); ++iter) for (unsigned i = 0; i < cNumGroups; ++i) if ((*iter)->GetGroup(i)) InsertUser(*iter, i); @@ -111,7 +111,7 @@ void OctreeSort::Node::ClearUser(unsigned group) if (!_leaf[group].empty()) { - _leaf[group].clear(); + _leaf[group].clear(); } } @@ -124,7 +124,7 @@ void OctreeSort::Node::ClearUser() OctreeSort::Node& OctreeSort::Node::AddNode(const AABB& aabb) { Node* res = new Node(cNumGroups, aabb, this); - _nodeList.push_back(res); + _nodeList.push_back(res); return *res; } @@ -210,7 +210,7 @@ OctreeSort::UserNode::~UserNode() void OctreeSort::UserNode::DoInsertToNode(const NodeMap::iterator& iter) { - if (iter->second == 0) + if (iter->second == 0) iter->first->AddRef(); ++(iter->second); } @@ -264,7 +264,7 @@ OctreeSort::UserNode::NodeMap::iterator OctreeSort::UserNode::RemoveFromNode(con if (_groups[i]) { iter->first->DoRemoveUser(this, i); - res = DoRemoveFromNode(iter); + res = DoRemoveFromNode(iter); } return res; @@ -330,7 +330,7 @@ void OctreeSort::UserNode::Move(const AABB& aabb) if (node->GetAABB().ContainsAABB(aabb) == AABB::spNoOverloap) { while (node->GetParent()) - } + } } }*/ @@ -354,7 +354,7 @@ bool OctreeSort::UserNode::GetGroup(unsigned group) const _groups.at(group); for (NodeMap::iterator iter = _nodeMap.begin(); iter != _nodeMap.end();) - if (_groups[group] != value) + if (_groups[group] != value) SetGroup(iter, group, value); @@ -372,7 +372,7 @@ const lsl::BoolVec& OctreeSort::UserNode::GetGroups() const for (NodeMap::iterator iter = _nodeMap.begin(); iter != _nodeMap.end();) for (unsigned i = 0; i < value.size(); ++i) - if (_groups[i] != value[i]) + if (_groups[i] != value[i]) iter = SetGroup(iter, i, value[i]); _groups = value; @@ -394,12 +394,12 @@ void OctreeSort::UserNode::SetData(lsl::Object* value) OctreeSort::OctreeSort(unsigned numGroups): cNumGroups(numGroups), _root(0), _idPass(0) { - _users = new Users(this); + _users = new Users(this); int numNode = 0; for (float i =-1; i < 2; i += 2.0f) for (float j =-1; j < 2; j += 2.0f) - for (float k =-1; k < 2; k += 2.0f, ++numNode) + for (float k =-1; k < 2; k += 2.0f, ++numNode) _nodeOff[numNode] = D3DXVECTOR3(i, j, k); } @@ -449,11 +449,11 @@ bool OctreeSort::IsBuildOctree() const } void OctreeSort::InsertUser(UserNode* user) -{ +{ } void OctreeSort::RemoveUser(UserNode* user) -{ +{ } bool OctreeSort::DoCulling(const Frustum& frustum, Frustum::SpaceContains spaceCont, Node& node, Position& pos) @@ -462,7 +462,7 @@ bool OctreeSort::DoCulling(const Frustum& frustum, Frustum::SpaceContains spaceC { //Узел полностью в камере - case Frustum::scContainsFully: + case Frustum::scContainsFully: return true; //Узел частично в камере @@ -472,7 +472,7 @@ bool OctreeSort::DoCulling(const Frustum& frustum, Frustum::SpaceContains spaceC if (node.GetNodeList().empty()) return true; - NodeCull* children = new NodeCull[node.GetNodeList().size()]; + NodeCull* children = new NodeCull[node.GetNodeList().size()]; //Узел имеет дочерей, следовательно проверяем их всех и если хотя бы один не может быть добавлен полностью разделяем узел int i = 0; for (NodeList::const_iterator iter = node.GetNodeList().begin(); iter != node.GetNodeList().end(); ++iter, ++i) @@ -532,7 +532,7 @@ void OctreeSort::RebuildOctree(const AABB& worldAABB) UserList userList; userList.insert(userList.end(), _users->begin(), _users->end()); - BuildOctree(*_root, userList); + BuildOctree(*_root, userList); } OctreeSort::Position OctreeSort::Culling(const Frustum& frustum) @@ -542,7 +542,7 @@ OctreeSort::Position OctreeSort::Culling(const Frustum& frustum) Position res(this); DoCulling(frustum, *_root, res); - return res; + return res; } void OctreeSort::RenderNode(graph::Engine& engine, const Frustum& frustum, const Node& node) @@ -550,7 +550,7 @@ void OctreeSort::RenderNode(graph::Engine& engine, const Frustum& frustum, const //for (NodeList::const_iterator iter = node.GetNodeList().begin(); iter != node.GetNodeList().end(); ++iter) // RenderNode(engine, frustum, **iter); - //if (node.GetUserCnt() && frustum.ContainsAABB(node.GetAABB()) && &node != _root) + //if (node.GetUserCnt() && frustum.ContainsAABB(node.GetAABB()) && &node != _root) BaseSceneNode::RenderBB(engine, node.GetAABB(), node.GetUserCnt() ? clrBlue : clrRed); } diff --git a/src/Rock3dEngine/source/graph/RenderToTexture.cpp b/src/Rock3dEngine/source/graph/RenderToTexture.cpp index 0dc0d734..8d874968 100644 --- a/src/Rock3dEngine/source/graph/RenderToTexture.cpp +++ b/src/Rock3dEngine/source/graph/RenderToTexture.cpp @@ -35,7 +35,7 @@ Tex2DResource* RenderTarget::CreateRT() Tex2DResource* tex = new Tex2DResource(); tex->SetDynamic(true); tex->SetUsage(D3DUSAGE_RENDERTARGET); - + return tex; } @@ -62,7 +62,7 @@ bool RenderTarget::IsApplyRT() const Tex2DResource* RenderTarget::GetRT() { - return _texture; + return _texture; } Tex2DResource* RenderTarget::GetOrCreateRT() @@ -133,7 +133,7 @@ bool RenderTarget::IsApplyRT() const TexCubeResource* RenderTarget::GetRT() { - return _texture; + return _texture; } TexCubeResource* RenderTarget::GetOrCreateRT() @@ -204,33 +204,33 @@ void RenderToCubeTex::BeginCubeSurf(Engine& engine) camDesc.up = D3DXVECTOR3( 0.0f, -1.0f, 0.0f ); break; - case D3DCUBEMAP_FACE_NEGATIVE_X: - camDesc.dir = D3DXVECTOR3(1.0f, 0.0f, 0.0f ); + case D3DCUBEMAP_FACE_NEGATIVE_X: + camDesc.dir = D3DXVECTOR3(1.0f, 0.0f, 0.0f ); camDesc.up = D3DXVECTOR3( 0.0f, -1.0f, 0.0f ); - break; + break; - case D3DCUBEMAP_FACE_POSITIVE_Y: + case D3DCUBEMAP_FACE_POSITIVE_Y: camDesc.dir = D3DXVECTOR3( 0.0f, -1.0f, 0.0f ); camDesc.up = D3DXVECTOR3( 0.0f, 0.0f, 1.0f ); break; - - case D3DCUBEMAP_FACE_NEGATIVE_Y: + + case D3DCUBEMAP_FACE_NEGATIVE_Y: camDesc.dir = D3DXVECTOR3( 0.0f, 1.0f, 0.0f ); camDesc.up = D3DXVECTOR3( 0.0f, 0.0f, -1.0f ); - break; - + break; + case D3DCUBEMAP_FACE_POSITIVE_Z: camDesc.dir = D3DXVECTOR3( 0.0f, 0.0f, -1.0f ); camDesc.up = D3DXVECTOR3( 0.0f, -1.0f, 0.0f ); - break; - + break; + case D3DCUBEMAP_FACE_NEGATIVE_Z: camDesc.dir = D3DXVECTOR3( 0.0f, 0.0f, 1.0f ); camDesc.up = D3DXVECTOR3( 0.0f, -1.0f, 0.0f ); break; } - _myCamera.SetDesc(camDesc); + _myCamera.SetDesc(camDesc); engine.GetContext().ApplyCamera(&_myCamera); ApplyRT(engine, _flags); diff --git a/src/Rock3dEngine/source/graph/SceneManager.cpp b/src/Rock3dEngine/source/graph/SceneManager.cpp index 87f5d633..a73e3747 100644 --- a/src/Rock3dEngine/source/graph/SceneManager.cpp +++ b/src/Rock3dEngine/source/graph/SceneManager.cpp @@ -45,8 +45,8 @@ BaseSceneNode::~BaseSceneNode() if (_parent) _parent->GetChildren().Remove(this); ClearSceneList(); - - delete _proxyList; + + delete _proxyList; delete _children; #ifdef _DEBUG @@ -69,7 +69,7 @@ void BaseSceneNode::RenderBB(graph::Engine& engine, const AABB& aabb, const D3DX lines[1] = VertexPD(box.v[1], linesColor); lines[2] = VertexPD(box.v[1], linesColor); lines[3] = VertexPD(box.v[2], linesColor); - + lines[4] = VertexPD(box.v[2], linesColor); lines[5] = VertexPD(box.v[3], linesColor); lines[6] = VertexPD(box.v[3], linesColor); @@ -100,7 +100,7 @@ void BaseSceneNode::RenderBB(graph::Engine& engine, const AABB& aabb, const D3DX lines[24 + i * 2] = VertexPD(aabb.GetPlaneVert(i, 0), linesColor); lines[24 + i * 2 + 1] = VertexPD(aabb.GetPlaneVert(i, 1), linesColor); } - + @@ -121,16 +121,16 @@ void BaseSceneNode::ExtractRotation(_RotationStyle style) const if (_rotInvalidate.test(style)) { ApplyTransformationChanged(); - EulerAngles eulAng; - switch (style) - { - case rsEulerAngles: + EulerAngles eulAng; + switch (style) + { + case rsEulerAngles: eulAng = Eul_FromHMatrix(_rotMat.m, EulOrdXYZs); _rollAngle = -eulAng.x; _pitchAngle = -eulAng.y; _turnAngle = -eulAng.z; break; - + case rsQuaternion: _rot = glm::quat_cast(Matrix4DxToGlm(_rotMat)); _rot = glm::quat(-_rot.w, _rot.x, _rot.y, _rot.z); @@ -237,7 +237,7 @@ void BaseSceneNode::SetDynBB(bool value) } void BaseSceneNode::BuildMatrix() const -{ +{ //Поворот не влияет на локальное направление перемещения //Растяжение не влияет на локальное перемещение, т.е. единица длины одна и таже _localMat = GetScaleMat() * GetRotMat() * GetTransMat(); @@ -274,7 +274,7 @@ void BaseSceneNode::ApplyTransformationChanged() const } void BaseSceneNode::WorldTransformationChanged() -{ +{ if (!_changes.test(ocWorldTransformation)) { _changes.set(ocWorldTransformation); @@ -287,7 +287,7 @@ void BaseSceneNode::WorldTransformationChanged() void BaseSceneNode::TransformationChanged() { - if (!_changes.test(ocTransformation)) + if (!_changes.test(ocTransformation)) { _changes.set(ocTransformation); WorldTransformationChanged(); @@ -344,7 +344,7 @@ void BaseSceneNode::Save(lsl::SWriter* writer) writer->WriteValue("animMode", _animMode); writer->WriteValue("animDuration", animDuration); - writer->WriteValue("frame", frame); + writer->WriteValue("frame", frame); writer->WriteValue("speedPos", speedPos, 3); writer->WriteValue("speedScale", speedScale, 3); @@ -388,7 +388,7 @@ void BaseSceneNode::Load(lsl::SReader* reader) animMode(AnimMode(val)); reader->ReadValue("animDuration", animDuration); - reader->ReadValue("frame", frame); + reader->ReadValue("frame", frame); reader->ReadValue("speedPos", speedPos, 3); reader->ReadValue("speedScale", speedScale, 3); @@ -447,7 +447,7 @@ void BaseSceneNode::Render(graph::Engine& engine, const D3DXMATRIX& worldMat) } void BaseSceneNode::Render(graph::Engine& engine) -{ +{ Render(engine, GetWorldMat()); } @@ -477,7 +477,7 @@ void BaseSceneNode::OnProgress(float deltaTime) } SetScale(GetScale() + speedScale * deltaTime); - } + } } void BaseSceneNode::StructureChanged() @@ -499,9 +499,9 @@ void BaseSceneNode::MoveAroundTarget(const D3DXVECTOR3& worldTarget, float pitch { // normalT2C points away from the direction the camera is looking D3DXVECTOR3 originalT2C = GetWorldPos() - worldTarget; - D3DXVECTOR3 normalT2C = originalT2C; + D3DXVECTOR3 normalT2C = originalT2C; float dist = D3DXVec3Length(&normalT2C); - D3DXVec3Normalize(&normalT2C, &normalT2C); + D3DXVec3Normalize(&normalT2C, &normalT2C); // normalRight points to the camera's right // the camera is pitching around this axis. D3DXVECTOR3 normalCameraRight; @@ -512,8 +512,8 @@ void BaseSceneNode::MoveAroundTarget(const D3DXVECTOR3& worldTarget, float pitch else D3DXVec3Normalize(&normalCameraRight, &normalCameraRight); // calculate the current pitch. - // 0 is looking down and PI is looking up - float pitchNow = acos(D3DXVec3Dot(&worldUp, &normalT2C)); + // 0 is looking down and PI is looking up + float pitchNow = acos(D3DXVec3Dot(&worldUp, &normalT2C)); pitchNow = lsl::ClampValue(pitchNow + pitchDelta, 0 + 0.025f, D3DX_PI - 0.025f); // create a new vector pointing up and then rotate it down // into the new position @@ -522,14 +522,14 @@ void BaseSceneNode::MoveAroundTarget(const D3DXVECTOR3& worldTarget, float pitch normalT2C = GetWorldUp(); D3DXMatrixRotationAxis(&pitchMat, &normalCameraRight, pitchNow); - D3DXMatrixRotationAxis(&turnMat, &worldUp, -turnDelta); + D3DXMatrixRotationAxis(&turnMat, &worldUp, -turnDelta); D3DXVec3TransformNormal(&normalT2C, &normalT2C, &pitchMat); D3DXVec3TransformNormal(&normalT2C, &normalT2C, &turnMat); normalT2C *= dist; D3DXVECTOR3 newPos = GetWorldPos() + (normalT2C - originalT2C); if (_parent) - _parent->WorldToLocalCoord(newPos, newPos); - SetPos(newPos); + _parent->WorldToLocalCoord(newPos, newPos); + SetPos(newPos); } void BaseSceneNode::AdjustDistToTarget(const D3DXVECTOR3& worldTarget, float distance) @@ -590,7 +590,7 @@ unsigned BaseSceneNode::RayCastIntersBB(const D3DXVECTOR3& wRayPos, const D3DXVE float tNear, tFar; AABB aabb = GetLocalAABB(includeChild); - return aabb.RayCastIntersect(rayPos, rayVec, tNear, tFar); + return aabb.RayCastIntersect(rayPos, rayVec, tNear, tFar); } unsigned BaseSceneNode::RayCastIntersBB(const D3DXVECTOR3& wRayPos, const D3DXVECTOR3& wRayVec, D3DXVECTOR3& wNearVec, D3DXVECTOR3& wFarVec, bool includeChild) const @@ -656,7 +656,7 @@ void BaseSceneNode::SetScene(SceneManager* scene, bool set) LSL_ASSERT(scene); bool find = std::find(_sceneList.begin(), _sceneList.end(), scene) != _sceneList.end(); - if (set && !find) + if (set && !find) InsertToScene(scene); else if (!set && find) @@ -679,7 +679,7 @@ void BaseSceneNode::SetParent(BaseSceneNode* value) { if (_parent) _parent->_children->Remove(this); - if (value) + if (value) value->_children->Insert(this); //Если задается нулевой родитель то авт. к корн. узлу //else @@ -760,7 +760,7 @@ void BaseSceneNode::SetDir(const D3DXVECTOR3& value) D3DXVec3Normalize(&_direction, &value); D3DXVECTOR3 right = GetRight(); - if (D3DXVec3Length(&right) < floatErrComp) + if (D3DXVec3Length(&right) < floatErrComp) { D3DXVec3Cross(&right, &ZVector, &_up); if (D3DXVec3Length(&right) < floatErrComp) @@ -775,7 +775,7 @@ void BaseSceneNode::SetDir(const D3DXVECTOR3& value) D3DXVECTOR3 BaseSceneNode::GetRight() const { ExtractRotation(rsVectors); - D3DXVECTOR3 tmp; + D3DXVECTOR3 tmp; D3DXVec3Cross(&tmp, &_up, &_direction); return tmp; } @@ -804,7 +804,7 @@ void BaseSceneNode::SetRight(const D3DXVECTOR3& value) } const D3DXVECTOR3& BaseSceneNode::GetUp() const -{ +{ ExtractRotation(rsVectors); return _up; } @@ -814,10 +814,10 @@ void BaseSceneNode::SetUp(const D3DXVECTOR3& value) ExtractRotation(rsVectors); if (D3DXVec3Length(&value) == 0) - _up = ZVector; + _up = ZVector; D3DXVec3Normalize(&_up, &value); D3DXVECTOR3 right = GetRight(); - if (D3DXVec3Length(&right) < floatErrComp) + if (D3DXVec3Length(&right) < floatErrComp) { D3DXVec3Cross(&right, &ZVector, &_up); if (D3DXVec3Length(&right) < floatErrComp) @@ -830,13 +830,13 @@ void BaseSceneNode::SetUp(const D3DXVECTOR3& value) } float BaseSceneNode::GetRollAngle() const -{ +{ ExtractRotation(rsEulerAngles); return _rollAngle; } void BaseSceneNode::SetRollAngle(float value) -{ +{ ExtractRotation(rsEulerAngles); _rollAngle = value; ChangedRotation(rsEulerAngles); @@ -844,12 +844,12 @@ void BaseSceneNode::SetRollAngle(float value) float BaseSceneNode::GetPitchAngle() const { - ExtractRotation(rsEulerAngles); + ExtractRotation(rsEulerAngles); return _pitchAngle; } void BaseSceneNode::SetPitchAngle(float value) -{ +{ ExtractRotation(rsEulerAngles); _pitchAngle = value; ChangedRotation(rsEulerAngles); @@ -857,7 +857,7 @@ void BaseSceneNode::SetPitchAngle(float value) float BaseSceneNode::GetTurnAngle() const { - ExtractRotation(rsEulerAngles); + ExtractRotation(rsEulerAngles); return _turnAngle; } @@ -927,7 +927,7 @@ D3DXMATRIX BaseSceneNode::GetRotMat() const else { if (!_rotInvalidate.test(rsEulerAngles)) - { + { EulerAngles eulAng = Eul_(-_rollAngle, -_pitchAngle, -_turnAngle, EulOrdXYZs); Eul_ToHMatrix(eulAng, _rotMat.m); //D3DXMatrixRotationYawPitchRoll(&_rotMat, _pitchAngle, _rollAngle, _turnAngle); @@ -938,7 +938,7 @@ D3DXMATRIX BaseSceneNode::GetRotMat() const } } } - + _rotChanged = false; return _rotMat; } @@ -947,7 +947,7 @@ D3DXMATRIX BaseSceneNode::GetTransMat() const { D3DXMATRIX transMat; D3DXMatrixTranslation(&transMat, _position.x, _position.y, _position.z); - return transMat; + return transMat; } const D3DXMATRIX& BaseSceneNode::GetMat() const @@ -960,7 +960,7 @@ void BaseSceneNode::SetLocalMat(const D3DXMATRIX& value) { _direction = value.m[0]; D3DXVECTOR3 right = value.m[1]; - _up = value.m[2]; + _up = value.m[2]; _position = value.m[3]; D3DXVec3Normalize(&_direction, &_direction); @@ -972,7 +972,7 @@ void BaseSceneNode::SetLocalMat(const D3DXMATRIX& value) const D3DXMATRIX& BaseSceneNode::GetInvMat() const { - ApplyTransformationChanged(); + ApplyTransformationChanged(); return _invLocalMat; } @@ -984,7 +984,7 @@ const D3DXMATRIX& BaseSceneNode::GetWorldMat() const const D3DXMATRIX& BaseSceneNode::GetInvWorldMat() const { - ApplyTransformationChanged(); + ApplyTransformationChanged(); return _invWorldMat; } @@ -994,10 +994,10 @@ D3DXMATRIX BaseSceneNode::GetCombMat(CombMatType type) const { case cmtScaleTrans: return GetScaleMat() * GetTransMat(); - + case cmtScaleRot: return GetScaleMat() * GetTransMat(); - + case cmtRotTrans: return GetRotMat() * GetTransMat(); @@ -1016,14 +1016,14 @@ D3DXMATRIX BaseSceneNode::GetWorldCombMat(CombMatType type) const D3DXVECTOR3 vec; D3DXMATRIX scaleMat = GetWorldScale(); - + D3DXMATRIX transMat; vec = GetWorldPos(); D3DXMatrixTranslation(&transMat, vec.x, vec.y, vec.z); return scaleMat * transMat; } - + case cmtScaleRot: { D3DXMATRIX scaleMat = GetWorldScale(); @@ -1087,7 +1087,7 @@ void BaseSceneNode::SetWorldRot(const glm::quat& value) D3DXMATRIX BaseSceneNode::GetWorldScale() const { D3DXMATRIX res = IdentityMatrix; - D3DXMatrixMultiply(&res, &res, &GetInvWorldMat()); + D3DXMatrixMultiply(&res, &res, &GetInvWorldMat()); const BaseSceneNode* node = this; do @@ -1095,10 +1095,10 @@ D3DXMATRIX BaseSceneNode::GetWorldScale() const //Применяем опреацию масштабирования D3DXMatrixMultiply(&res, &res, &node->GetScaleMat()); //Переводим на уровень трансформации пониже - D3DXMatrixMultiply(&res, &res, &node->GetMat()); + D3DXMatrixMultiply(&res, &res, &node->GetMat()); node = node->GetParent(); - + } while (node); @@ -1146,11 +1146,11 @@ bool AABBAreEqual(const AABB& bb1, const AABB& bb2) const AABB& BaseSceneNode::GetLocalAABB(bool includeChild) const { if (_bbChanges.test(bbcStructure) || IsBBDyn()) - { + { _aabbLocal = LocalDimensions(); - _bbChanges.reset(bbcStructure); + _bbChanges.reset(bbcStructure); } - + if (includeChild) { if (_bbChanges.test(bbcIncludeChild) || IsNodeBBDyn()) @@ -1207,7 +1207,7 @@ const AABB& BaseSceneNode::GetAABBOfChildren() const childBB.Transform(child->GetMat()); _aabbOfChildren.Add(childBB); } - } + } } _bbChanges.reset(bbcChild); } @@ -1264,7 +1264,7 @@ float BaseSceneNode::GetFrame(float time) const return std::min(frame, 1.0f); case amRepeat: - return frame - static_cast(frame); + return frame - static_cast(frame); case amTile: return frame; @@ -1326,7 +1326,7 @@ void SceneDummy::DoRender(graph::Engine& engine) Camera::Camera(): _changedCI(true) -{ +{ } void Camera::RenderFrustum(graph::Engine& engine, const D3DXMATRIX& invViewProj, const D3DXCOLOR& colorBB) @@ -1338,34 +1338,34 @@ void Camera::RenderFrustum(graph::Engine& engine, const D3DXMATRIX& invViewProj, D3DCOLOR linesColor = colorBB; VertexPD lines[24]; - lines[0] = VertexPD(frustumV[0], linesColor); - lines[1] = VertexPD(frustumV[1], linesColor); - lines[2] = VertexPD(frustumV[2], linesColor); + lines[0] = VertexPD(frustumV[0], linesColor); + lines[1] = VertexPD(frustumV[1], linesColor); + lines[2] = VertexPD(frustumV[2], linesColor); lines[3] = VertexPD(frustumV[3], linesColor); - - lines[4] = VertexPD(frustumV[4], linesColor); - lines[5] = VertexPD(frustumV[5], linesColor); - lines[6] = VertexPD(frustumV[6], linesColor); + + lines[4] = VertexPD(frustumV[4], linesColor); + lines[5] = VertexPD(frustumV[5], linesColor); + lines[6] = VertexPD(frustumV[6], linesColor); lines[7] = VertexPD(frustumV[7], linesColor); //near plane lines[8] = VertexPD(frustumV[1], linesColor); - lines[9] = VertexPD(frustumV[3], linesColor); - lines[10] = VertexPD(frustumV[3], linesColor); + lines[9] = VertexPD(frustumV[3], linesColor); + lines[10] = VertexPD(frustumV[3], linesColor); lines[11] = VertexPD(frustumV[7], linesColor); - lines[12] = VertexPD(frustumV[7], linesColor); - lines[13] = VertexPD(frustumV[5], linesColor); - lines[14] = VertexPD(frustumV[5], linesColor); + lines[12] = VertexPD(frustumV[7], linesColor); + lines[13] = VertexPD(frustumV[5], linesColor); + lines[14] = VertexPD(frustumV[5], linesColor); lines[15] = VertexPD(frustumV[1], linesColor); //far plane lines[16] = VertexPD(frustumV[0], linesColor); - lines[17] = VertexPD(frustumV[2], linesColor); - lines[18] = VertexPD(frustumV[2], linesColor); + lines[17] = VertexPD(frustumV[2], linesColor); + lines[18] = VertexPD(frustumV[2], linesColor); lines[19] = VertexPD(frustumV[6], linesColor); - lines[20] = VertexPD(frustumV[6], linesColor); - lines[21] = VertexPD(frustumV[4], linesColor); - lines[22] = VertexPD(frustumV[4], linesColor); + lines[20] = VertexPD(frustumV[6], linesColor); + lines[21] = VertexPD(frustumV[4], linesColor); + lines[22] = VertexPD(frustumV[4], linesColor); lines[23] = VertexPD(frustumV[0], linesColor); engine.GetContext().SetWorldMat(IdentityMatrix); @@ -1373,9 +1373,9 @@ void Camera::RenderFrustum(graph::Engine& engine, const D3DXMATRIX& invViewProj, engine.GetContext().SetRenderState(graph::rsLighting, false); engine.GetDriver().GetDevice()->SetFVF(VertexPD::fvf); - engine.GetDriver().GetDevice()->DrawPrimitiveUP(D3DPT_LINELIST, 12, lines, sizeof(VertexPD)); - - engine.GetContext().RestoreRenderState(graph::rsDiffuseMaterialSource); + engine.GetDriver().GetDevice()->DrawPrimitiveUP(D3DPT_LINELIST, 12, lines, sizeof(VertexPD)); + + engine.GetContext().RestoreRenderState(graph::rsDiffuseMaterialSource); engine.GetContext().RestoreRenderState(graph::rsLighting); } @@ -1426,7 +1426,7 @@ void Camera::AdjustNearFarPlane(const AABB& aabb, float nearDist, float farDist) { BuildContextInfo(); - _contextInfo.AdjustNearFarPlane(aabb, nearDist, farDist); + _contextInfo.AdjustNearFarPlane(aabb, nearDist, farDist); _desc.nearDist = _contextInfo.GetDesc().nearDist; _desc.farDist = _contextInfo.GetDesc().farDist; @@ -1528,7 +1528,7 @@ void Camera::SetStyle(CameraStyle value) LightSource::LightSource(): _changedCI(true) -{ +{ } LightSource::~LightSource() @@ -1710,7 +1710,7 @@ void LightSource::SetShadowMap(graph::Tex2DResource* value) SceneManager::SceneManager(): _sceneRender(0) -{ +{ } SceneManager::~SceneManager() @@ -1726,7 +1726,7 @@ void SceneManager::Render(graph::Engine& engine) if (_sceneRender) _sceneRender->Render(engine, this); //Рендерим сами, по Forward алгоритму - else + else for (Objects::iterator iter = _objects.begin(); iter != _objects.end(); ++iter) (*iter)->Render(engine); } @@ -1759,7 +1759,7 @@ void SceneManager::SetSceneRender(SceneRender* value) { if (_sceneRender != value) { - if (_sceneRender) + if (_sceneRender) _sceneRender->RemoveScene(this); if (value) value->InsertScene(this); diff --git a/src/Rock3dEngine/source/graph/SceneNode.cpp b/src/Rock3dEngine/source/graph/SceneNode.cpp index c6f5e0db..3ad55f45 100644 --- a/src/Rock3dEngine/source/graph/SceneNode.cpp +++ b/src/Rock3dEngine/source/graph/SceneNode.cpp @@ -48,7 +48,7 @@ void SceneNode::InitClassList() classList.Add(ntWaterPlane); classList.Add(ntGrassField); classList.Add(ntParticleSystem); - classList.Add(ntMovCoordSys); + classList.Add(ntMovCoordSys); classList.Add(ntScaleCoordSys); } } @@ -78,7 +78,7 @@ AABB SceneNode::LocalDimensions() const { AABB res = NullAABB; bool bRes = false; - for (Nodes::iterator iter = _nodes->begin(); iter != _nodes->end(); ++iter) + for (Nodes::iterator iter = _nodes->begin(); iter != _nodes->end(); ++iter) { AABB aabb = (*iter)->GetLocalAABB(false); aabb.Transform((*iter)->GetMat()); diff --git a/src/Rock3dEngine/source/graph/Shader.cpp b/src/Rock3dEngine/source/graph/Shader.cpp index 37c7bd1b..fa8eeff0 100644 --- a/src/Rock3dEngine/source/graph/Shader.cpp +++ b/src/Rock3dEngine/source/graph/Shader.cpp @@ -92,7 +92,7 @@ void Shader::InitMacro(MacroBlock* value) macrosBuf[macros.size()].Name = macrosBuf[macros.size()].Definition = 0; } - if (_macros->Size() > 1 && !_effPool) + if (_macros->Size() > 1 && !_effPool) D3DXCreateEffectPool(&_effPool); DWORD flags = 0; @@ -106,7 +106,7 @@ void Shader::InitMacro(MacroBlock* value) ID3DXBuffer* bufCompErr = 0; HRESULT hr = D3DXCreateEffect(GetEngine()->GetDriver().GetDevice(), _data->GetData(), _data->GetSize(), macrosBuf, _include, flags, _effPool, &effect, &bufCompErr); if (hr != D3D_OK) - { + { char* bufCompErrStr = (char*)bufCompErr->GetBufferPointer(); lsl::appLog.Append("D3DXCreateEffect compile failed."); lsl::appLog.Append(bufCompErrStr); @@ -286,7 +286,7 @@ void Shader::ApplyTech(const std::string& tech, MacroBlock* macro) HRESULT hr = _curMacro->GetEffect()->Begin(&_cntPass, 0); - LSL_ASSERT(hr == D3D_OK); + LSL_ASSERT(hr == D3D_OK); } } @@ -423,7 +423,7 @@ bool Shader::GetValue(const std::string& name, Value& outVal) const outVal = iter->second; return true; } - else + else return false; } @@ -449,9 +449,9 @@ void Shader::SetTextureDir(const std::string& name, TexResource* value) TexResource* Shader::GetTexture(const std::string& name) { Textures::const_iterator iter = _textures.find(name); - if (iter != _textures.end()) + if (iter != _textures.end()) return iter->second; - else + else return 0; } @@ -482,7 +482,7 @@ void Shader::SetTexture(const std::string& name, TexResource* value) if (IsInit() && GetCurMacro()) SetTextureDir(name, value); } - } + } } void Shader::ClearTextures() diff --git a/src/Rock3dEngine/source/graph/ShadowMapRender.cpp b/src/Rock3dEngine/source/graph/ShadowMapRender.cpp index 8c34ad4a..1d838915 100644 --- a/src/Rock3dEngine/source/graph/ShadowMapRender.cpp +++ b/src/Rock3dEngine/source/graph/ShadowMapRender.cpp @@ -29,10 +29,10 @@ void ShadowMapShader::DoBeginDraw(Engine& engine) ShadowMapRender::ShadowMapRender(): _numSplits(0), _splitSchemeLambda(0.7f), _disableCropLight(false), _maxFar(0), _curNumSplit(0), _beginShadowCaster(false), _beginShadowMapp(false), _beginFlags(0, 0), iLight(0), _lastDepthSurface(NULL) { - _depthSurface = new graph::DepthStencilSurfaceResource(); + _depthSurface = new graph::DepthStencilSurfaceResource(); _depthSurface->SetWidth(cShadowMapSize); _depthSurface->SetHeight(cShadowMapSize); - _depthSurface->SetFormat(D3DFMT_D24X8); + _depthSurface->SetFormat(D3DFMT_D24X8); SetNumSplits(4); } @@ -48,12 +48,12 @@ ShadowMapRender::~ShadowMapRender() void ShadowMapRender::CalculateSplitDistances(const CameraCI& camera) { // Practical split scheme: - // - // CLi = n*(f/n)^(i/numsplits) - // CUi = n + (f-n)*(i/numsplits) - // Ci = CLi*(lambda) + CUi*(1-lambda) - // - // lambda scales between logarithmic and uniform + // + // CLi = n*(f/n)^(i/numsplits) + // CUi = n + (f-n)*(i/numsplits) + // Ci = CLi*(lambda) + CUi*(1-lambda) + // + // lambda scales between logarithmic and uniform // float fCameraNear = camera.GetDesc().nearDist; float fCameraFar = camera.GetDesc().farDist; @@ -64,7 +64,7 @@ void ShadowMapRender::CalculateSplitDistances(const CameraCI& camera) { float fIDM = i / static_cast(_numSplits); float fLog = fCameraNear * powf((fCameraFar / fCameraNear), fIDM); - float fUniform = fCameraNear + (fCameraFar - fCameraNear) * fIDM; + float fUniform = fCameraNear + (fCameraFar - fCameraNear) * fIDM; _splitDistances[i] = fLog * _splitSchemeLambda + fUniform * (1 - _splitSchemeLambda); } // make sure border values are right @@ -82,7 +82,7 @@ void ShadowMapRender::ComputeCropMatrix(unsigned numSplit, const LightCI& light, float fMinZ = FLT_MAX; const D3DXMATRIX& mLightViewProj = light.GetCamera().GetViewProj(); - float fLightNear = light.GetCamera().GetDesc().nearDist; + float fLightNear = light.GetCamera().GetDesc().nearDist; // for each corner point for (int i = 0; i < 8; ++i) @@ -97,7 +97,7 @@ void ShadowMapRender::ComputeCropMatrix(unsigned numSplit, const LightCI& light, // find min and max values if (vTransformed.x > fMaxX) fMaxX = vTransformed.x; - if (vTransformed.y > fMaxY) fMaxY = vTransformed.y; + if (vTransformed.y > fMaxY) fMaxY = vTransformed.y; if (vTransformed.y < fMinY) fMinY = vTransformed.y; if (vTransformed.x < fMinX) fMinX = vTransformed.x; @@ -125,7 +125,7 @@ void ShadowMapRender::ComputeCropMatrix(unsigned numSplit, const LightCI& light, fMinY = -1.0f; } - // Use default near-plane value + // Use default near-plane value fMinZ = 0.0f; // Adjust the far plane of the light to be at the farthest // point of the frustum split. Some bias may be necessary. @@ -225,7 +225,7 @@ bool ShadowMapRender::EndShadowCaster(Engine& engine, bool nextPass) LSL_ASSERT(_beginShadowCaster); _beginShadowCaster = false; - + depthRender.EndRT(engine); engine.GetContext().UnApplyCamera(&_myCamera); @@ -242,7 +242,7 @@ bool ShadowMapRender::EndShadowCaster(Engine& engine, bool nextPass) lsl::SafeRelease(_lastDepthSurface); return true; - } + } } void ShadowMapRender::BeginShadowMapp(Engine& engine) @@ -273,11 +273,11 @@ void ShadowMapRender::BeginShadowMapp(Engine& engine) // Since the near and far planes are different for each // rendered split, we need to change the depth value range - // to avoid rendering over previous splits + // to avoid rendering over previous splits // as long as ranges are in order and don't overlap it should be all good... D3DVIEWPORT9 cameraViewport = _oldViewPort; cameraViewport.MinZ = _curNumSplit / static_cast(_numSplits); - cameraViewport.MaxZ = (_curNumSplit + 1) / static_cast(_numSplits); + cameraViewport.MaxZ = (_curNumSplit + 1) / static_cast(_numSplits); engine.GetDriver().GetDevice()->SetViewport(&cameraViewport); CameraDesc desc = engine.GetContext().GetCamera().GetDesc(); @@ -297,7 +297,7 @@ bool ShadowMapRender::EndShadowMapp(Engine& engine, bool nextPass) _beginShadowMapp = false; engine.GetContext().UnApplyCamera(&_myCamera); - + if (nextPass && ++_curNumSplit < _numSplits) { BeginShadowMapp(engine); @@ -347,7 +347,7 @@ void ShadowMapRender::RenderDebug(Engine& engine) _myCamera.SetDesc(desc); Camera::RenderFrustum(engine, _myCamera.GetInvViewProj(), clrGreen); - + } unsigned ShadowMapRender::GetNumSplits() const @@ -366,11 +366,11 @@ void ShadowMapRender::SetNumSplits(unsigned value) _lightDist.resize(_numSplits); _splitLightProjMat.resize(_numSplits); - //удаление всех текстур + //удаление всех текстур _shadowMaps.Clear(); // _shadowVec.clear(); - //создание + //создание for (unsigned i = 0; i < _numSplits; ++i) { Tex2DResource& tex = _shadowMaps.Add(); @@ -388,7 +388,7 @@ void ShadowMapRender::SetNumSplits(unsigned value) float ShadowMapRender::GetSplitSchemeLambda() const { - return _splitSchemeLambda; + return _splitSchemeLambda; } void ShadowMapRender::SetSplitSchemeLambda(float value) @@ -490,7 +490,7 @@ void MappingLightMap::Render(Engine& engine) ApplyRT(engine, RtFlags(0, 0)); DrawScreenQuad(engine); - UnApplyRT(engine); + UnApplyRT(engine); shader.UnApply(engine); } diff --git a/src/Rock3dEngine/source/graph/SkyBox.cpp b/src/Rock3dEngine/source/graph/SkyBox.cpp index f694eb57..47ed4cc4 100644 --- a/src/Rock3dEngine/source/graph/SkyBox.cpp +++ b/src/Rock3dEngine/source/graph/SkyBox.cpp @@ -20,10 +20,10 @@ const D3DXMATRIX skyFromLeftToRightCS(1.0f, 0.0f, 0.0f, 0.0f, SkyBox::SkyBox(): _coordSystem(csLeft) { - _mesh.GetOrCreateData()->SetVertexCount(6); + _mesh.GetOrCreateData()->SetVertexCount(6); _mesh.GetData()->SetFormat(res::VertexData::vtPos3); _mesh.GetData()->Init(); - D3DXVECTOR3* vb = reinterpret_cast(_mesh.GetData()->GetData()); + D3DXVECTOR3* vb = reinterpret_cast(_mesh.GetData()->GetData()); vb[0] = D3DXVECTOR3(-1.0f, -1.0f, 1.0f); vb[1] = D3DXVECTOR3(1.0f, -1.0f, 1.0f); vb[2] = D3DXVECTOR3(1.0f, 1.0f, 1.0f); @@ -45,7 +45,7 @@ void SkyBox::Render(Engine& engine) { _mesh.Init(engine); - if (_coordSystem == csLeft) + if (_coordSystem == csLeft) engine.GetContext().SetWorldMat(skyFromLeftToRightCS); else engine.GetContext().SetWorldMat(IdentityMatrix); @@ -60,9 +60,9 @@ void SkyBox::Render(Engine& engine) shader.Apply(engine); do - { + { engine.BeginDraw(); - _mesh.Draw(); + _mesh.Draw(); } while (!engine.EndDraw(true)); shader.UnApply(engine); diff --git a/src/Rock3dEngine/source/graph/StdNode.cpp b/src/Rock3dEngine/source/graph/StdNode.cpp index 9d8cde88..6b657d8d 100644 --- a/src/Rock3dEngine/source/graph/StdNode.cpp +++ b/src/Rock3dEngine/source/graph/StdNode.cpp @@ -54,7 +54,7 @@ const D3DXMATRIX& MaterialNode::GetMatrix() const void MaterialNode::Begin(Engine& engine) { - engine.GetContext().SetColor(_color); + engine.GetContext().SetColor(_color); if (!_defMat) engine.GetContext().PushTextureTransform(0, GetMatrix()); @@ -346,7 +346,7 @@ void IVBMeshNode::DoRender(Engine& engine) //engine.GetContext().SetRenderState(graph::rsFillMode, D3DFILL_WIREFRAME); _mesh->Init(engine); - + int curMeshId = engine.GetContext().GetMeshId() != -1 ? engine.GetContext().GetMeshId() : _meshId; int meshIgnore = (curMeshId != -1 && (curMeshId & ContextInfo::cMeshIdIgnore)) ? (curMeshId & ~ContextInfo::cMeshIdIgnore) : -1; if (meshIgnore >= 0) @@ -385,7 +385,7 @@ void IVBMeshNode::DoRender(Engine& engine) do { engine.BeginDraw(); - + if (meshId < 0) { if (meshIgnore < 0) @@ -403,7 +403,7 @@ void IVBMeshNode::DoRender(Engine& engine) if (meshId < 0 && i == cntPass - 1) for (int j = i + 1; j < numFaceGr; ++j) _mesh->DrawSubset(j); - } + } } while (!engine.EndDraw(true)); @@ -426,7 +426,7 @@ void IVBMeshNode::Save(lsl::SWriter* writer) void IVBMeshNode::Load(lsl::SReader* reader) { - _MyBase::Load(reader); + _MyBase::Load(reader); reader->ReadRef("mesh", true, this, 0); reader->ReadValue("meshId", _meshId); @@ -440,7 +440,7 @@ void IVBMeshNode::OnFixUp(const FixUpNames& fixUpNames) for (FixUpNames::const_iterator iter = fixUpNames.begin(); iter != fixUpNames.end(); ++iter) { - if (iter->name == "mesh") + if (iter->name == "mesh") { SetMesh(static_cast(iter->collItem)); break; @@ -467,7 +467,7 @@ AABB IVBMeshNode::LocalDimensions() const D3DXVECTOR3 min = NullVector; D3DXVECTOR3 max = NullVector; - if (_meshId < 0) + if (_meshId < 0) { min = _mesh->GetMinPos(); max = _mesh->GetMaxPos(); @@ -481,7 +481,7 @@ AABB IVBMeshNode::LocalDimensions() const bool bMin = false; bool bMax = false; - for (int i = 0; i < fg.faceCnt; ++i) + for (int i = 0; i < fg.faceCnt; ++i) for (int j = 0; j < 3; ++j) { unsigned ind = _mesh->GetData()->fb.GetIndex(fg.sFace + i, j); @@ -611,7 +611,7 @@ void MeshXNode::DoRender(Engine& engine) if (meshId < 0 && i == cntPass - 1) for (int j = i + 1; j < numFaceGr; ++j) _mesh->DrawSubset(j); - } + } } while (!engine.EndDraw(true)); @@ -634,7 +634,7 @@ void MeshXNode::Save(lsl::SWriter* writer) void MeshXNode::Load(lsl::SReader* reader) { - _MyBase::Load(reader); + _MyBase::Load(reader); reader->ReadRef("mesh", true, this, 0); reader->ReadValue("meshId", _meshId); @@ -673,7 +673,7 @@ AABB MeshXNode::LocalDimensions() const D3DXVECTOR3 min = NullVector; D3DXVECTOR3 max = NullVector; - if (_meshId < 0) + if (_meshId < 0) { min = _mesh->GetMinPos(); max = _mesh->GetMaxPos(); @@ -687,7 +687,7 @@ AABB MeshXNode::LocalDimensions() const bool bMin = false; bool bMax = false; - for (int i = 0; i < fg.faceCnt; ++i) + for (int i = 0; i < fg.faceCnt; ++i) for (int j = 0; j < 3; ++j) { unsigned ind = _mesh->GetData()->fb.GetIndex(fg.sFace + i, j); @@ -763,7 +763,7 @@ PlaneNode::PlaneNode(): _size(1.0f, 1.0f) } PlaneNode::~PlaneNode() -{ +{ } void PlaneNode::UpdateMesh() @@ -795,9 +795,9 @@ AABB PlaneNode::LocalDimensions() const void PlaneNode::Save(lsl::SWriter* writer) { _MyBase::Save(writer); - + lsl::SWriteValue(writer, "size", _size); - + material.Save(writer, this); } @@ -842,12 +842,12 @@ Box::Box() void Box::RenderBox(Engine& engine) { - D3DXVECTOR3 vertBuf[72] = + D3DXVECTOR3 vertBuf[72] = { // D3DXVECTOR3(-0.5f, -0.5f, -0.5f), -ZVector, D3DXVECTOR3(0.5f, 0.5f, -0.5f), -ZVector, - D3DXVECTOR3(0.5f, -0.5f, -0.5f), -ZVector, + D3DXVECTOR3(0.5f, -0.5f, -0.5f), -ZVector, D3DXVECTOR3(-0.5f, -0.5f, -0.5f), -ZVector, D3DXVECTOR3(-0.5f, 0.5f, -0.5f), -ZVector, D3DXVECTOR3(0.5f, 0.5f, -0.5f), -ZVector, @@ -855,7 +855,7 @@ void Box::RenderBox(Engine& engine) // D3DXVECTOR3(-0.5f, -0.5f, 0.5f), ZVector, D3DXVECTOR3(0.5f, -0.5f, 0.5f), ZVector, - D3DXVECTOR3(0.5f, 0.5f, 0.5f), ZVector, + D3DXVECTOR3(0.5f, 0.5f, 0.5f), ZVector, D3DXVECTOR3(-0.5f, -0.5f, 0.5f), ZVector, D3DXVECTOR3(0.5f, 0.5f, 0.5f), ZVector, D3DXVECTOR3(-0.5f, 0.5f, 0.5f), ZVector, @@ -863,7 +863,7 @@ void Box::RenderBox(Engine& engine) // D3DXVECTOR3(-0.5f, -0.5f, -0.5f), -YVector, D3DXVECTOR3(0.5f, -0.5f, -0.5f), -YVector, - D3DXVECTOR3(0.5f, -0.5f, 0.5f), -YVector, + D3DXVECTOR3(0.5f, -0.5f, 0.5f), -YVector, D3DXVECTOR3(-0.5f, -0.5f, -0.5f), -YVector, D3DXVECTOR3(0.5f, -0.5f, 0.5f), -YVector, D3DXVECTOR3(-0.5f, -0.5f, 0.5f), -YVector, @@ -871,14 +871,14 @@ void Box::RenderBox(Engine& engine) // D3DXVECTOR3(0.5f, 0.5f, -0.5f), YVector, D3DXVECTOR3(-0.5f, 0.5f, -0.5f), YVector, - D3DXVECTOR3(-0.5f, 0.5f, 0.5f), YVector, + D3DXVECTOR3(-0.5f, 0.5f, 0.5f), YVector, D3DXVECTOR3(0.5f, 0.5f, -0.5f), YVector, D3DXVECTOR3(-0.5f, 0.5f, 0.5f), YVector, D3DXVECTOR3(0.5f, 0.5f, 0.5f), YVector, D3DXVECTOR3(-0.5f, 0.5f, -0.5f), -XVector, D3DXVECTOR3(-0.5f, -0.5f, -0.5f), -XVector, - D3DXVECTOR3(-0.5f, -0.5f, 0.5f), -XVector, + D3DXVECTOR3(-0.5f, -0.5f, 0.5f), -XVector, D3DXVECTOR3(-0.5f, 0.5f, -0.5f), -XVector, D3DXVECTOR3(-0.5f, -0.5f, 0.5f), -XVector, D3DXVECTOR3(-0.5f, 0.5f, 0.5f), -XVector, @@ -886,7 +886,7 @@ void Box::RenderBox(Engine& engine) // D3DXVECTOR3(0.5f, -0.5f, -0.5f), XVector, D3DXVECTOR3(0.5f, 0.5f, -0.5f), XVector, - D3DXVECTOR3(0.5f, 0.5f, 0.5f), XVector, + D3DXVECTOR3(0.5f, 0.5f, 0.5f), XVector, D3DXVECTOR3(0.5f, -0.5f, -0.5f), XVector, D3DXVECTOR3(0.5f, 0.5f, 0.5f), XVector, D3DXVECTOR3(0.5f, -0.5f, 0.5f), XVector @@ -918,7 +918,7 @@ AABB Box::LocalDimensions() const void Box::Save(lsl::SWriter* writer) { _MyBase::Save(writer); - + material.Save(writer, this); } @@ -982,7 +982,7 @@ void Cylinder::SetColor(const D3DXCOLOR& value) } Sprite::Sprite(): sizes(IdentityVec2), fixDirection(false) -{ +{ } void Sprite::DoRender(Engine& engine) @@ -994,7 +994,7 @@ void Sprite::DoRender(Engine& engine) material.UnApply(engine); } - + AABB Sprite::LocalDimensions() const { if (fixDirection) @@ -1005,17 +1005,17 @@ AABB Sprite::LocalDimensions() const return AABB(-max, max); } - else + else return AABB(1.0f * glm::length(sizes)); } void Sprite::Save(lsl::SWriter* writer) { _MyBase::Save(writer); - + writer->WriteValue("sizes", reinterpret_cast(&sizes.x), 2); writer->WriteValue("fixDirection", fixDirection); - + material.Save(writer, this); } @@ -1025,7 +1025,7 @@ void Sprite::Load(lsl::SReader* reader) reader->ReadValue("sizes", reinterpret_cast(&sizes.x), 2); reader->ReadValue("fixDirection", fixDirection); - + material.Load(reader, this); } @@ -1091,7 +1091,7 @@ MovCoordSys::MovCoordSys(): _curMove(dmNone) MovCoordSys::~MovCoordSys() { - for (int i = 0; i < 3; ++i) + for (int i = 0; i < 3; ++i) delete _arrows[i]; } @@ -1148,7 +1148,7 @@ void MovCoordSys::DoRender(Engine& engine) typedef D3DXVECTOR3 AxePlane[4]; const DirMove planeMoves[3] = {dmXY, dmXZ, dmYZ}; - + //Вершины плоскости const AxePlane cXYPlaneV = {NullVector, XVector, XVector + YVector, YVector}; const AxePlane cXZPlaneV = {NullVector, XVector, XVector + ZVector, ZVector}; @@ -1160,7 +1160,7 @@ void MovCoordSys::DoRender(Engine& engine) D3DXCOLOR col1; D3DXCOLOR col2; } cPlanes[3] = {{&cXYPlaneV, clrRed, clrGreen}, {&cXZPlaneV, clrRed, clrBlue}, {&cYZPlaneV, clrGreen, clrBlue}}; - + //Выеделенные оси const bool isAxe[3] = {_curMove == dmXY || _curMove == dmXZ || _curMove == dmX, _curMove == dmXY || _curMove == dmYZ || _curMove == dmY, _curMove == dmXZ || _curMove == dmYZ || _curMove == dmZ}; @@ -1204,7 +1204,7 @@ void MovCoordSys::DoRender(Engine& engine) engine.GetContext().SetRenderState(graph::rsZWriteEnable, false); engine.GetContext().SetRenderState(graph::rsZEnable, false); engine.GetContext().SetRenderState(graph::rsLighting, false); - + //Рисуем линии engine.GetDriver().GetDevice()->SetFVF(res::VertexPD::fvf); engine.GetDriver().GetDevice()->DrawPrimitiveUP(D3DPT_LINELIST, 9, lines, sizeof(res::VertexPD)); @@ -1225,7 +1225,7 @@ void MovCoordSys::DoRender(Engine& engine) } //Рисуем конусы осей - for (int i = 0; i < 3; ++i) + for (int i = 0; i < 3; ++i) _arrows[i]->Render(engine); engine.GetContext().RestoreRenderState(graph::rsLighting); @@ -1273,7 +1273,7 @@ ScaleCoordSys::~ScaleCoordSys() void ScaleCoordSys::CompBBPlanes(const D3DXVECTOR3& camPos, D3DXVECTOR3* bbPlanes) { - for (int i = 0; i < 3; ++i) + for (int i = 0; i < 3; ++i) bbPlanes[i] = camPos[i] > 0 ? arUp[i] : -arUp[i]; } @@ -1325,7 +1325,7 @@ void ScaleCoordSys::DoRender(Engine& engine) D3DXVECTOR3 bbPlanes[3]; CompBBPlanes(engine.GetContext().GetCamera().GetDesc().pos - GetWorldPos(), bbPlanes); - + D3DXVECTOR3 plLine[3]; for (int i = 0; i < 3; ++i) plLine[i] = bbPlanes[i] * plSize; @@ -1334,7 +1334,7 @@ void ScaleCoordSys::DoRender(Engine& engine) for (int i = 0; i < 3; ++i) plCol[i] = (_curMove == axeMoves[i]) ? colSel : arCol[i]; - const res::VertexPD lines[18] = + const res::VertexPD lines[18] = { //Линии осей res::VertexPD(NullVector, plCol[0]), res::VertexPD(bbPlanes[0] * arSize, plCol[0]), @@ -1349,14 +1349,14 @@ void ScaleCoordSys::DoRender(Engine& engine) res::VertexPD(plLine[2], arCol[2]), res::VertexPD(0.5f * (plLine[2] + plLine[0]), arCol[2]) }; //Вершины размерной плоскости - const res::VertexPD plVertex[3] = + const res::VertexPD plVertex[3] = { res::VertexPD(plLine[0], colSel), res::VertexPD(plLine[1], colSel), res::VertexPD(plLine[2], colSel) }; //Позиции спрайтов - for (int i = 0; i < 3; ++i) + for (int i = 0; i < 3; ++i) _arrows[i]->SetPos(bbPlanes[i] * arSize); engine.GetContext().SetRenderState(graph::rsZWriteEnable, false); @@ -1379,7 +1379,7 @@ void ScaleCoordSys::DoRender(Engine& engine) engine.GetContext().RestoreRenderState(graph::rsLighting); //Рисуем конусы осей - for (int i = 0; i < 3; ++i) + for (int i = 0; i < 3; ++i) _arrows[i]->Render(engine); engine.GetContext().RestoreRenderState(graph::rsZWriteEnable); @@ -1441,18 +1441,18 @@ void FillDataCylinder(res::MeshData& mesh, float botRadius, float topRadius, flo unsigned topVCnt = isTop * slices + 1; unsigned botFCnt = isBot * slices; unsigned topFCnt = isTop * slices; - + unsigned sz = sizeof(res::VertexPD); mesh.vb.SetFormat(res::VertexData::vtPos3); mesh.vb.SetFormat(res::VertexData::vtColor); - + mesh.vb.SetVertexCount(botVCnt + topVCnt); mesh.vb.Init(); res::VertexPD* vertex = reinterpret_cast(mesh.vb.GetData()); mesh.fb.SetIndexFormat(D3DFMT_INDEX16); mesh.fb.SetFaceCount(slices * (1 + (isTop && isBot)) + botFCnt + topFCnt); - mesh.fb.Init(); + mesh.fb.Init(); res::TriFace16* indices = reinterpret_cast(mesh.fb.GetData()); //Нижняя грань @@ -1478,7 +1478,7 @@ void FillDataCylinder(res::MeshData& mesh, float botRadius, float topRadius, flo //Верхняя грань unsigned centTopInd = botVCnt + topVCnt - 1; - if (isTop) + if (isTop) for (unsigned i = 0; i < slices; ++i) { vertex[botVCnt + i].pos.x = cos(aStep * i) * topRadius; @@ -1526,7 +1526,7 @@ void FillDataCylinder(res::MeshData& mesh, float botRadius, float topRadius, flo mesh.vb.Update(); mesh.fb.Update(); - mesh.Init(); + mesh.Init(); } diff --git a/src/Rock3dEngine/source/graph/SunShaft.cpp b/src/Rock3dEngine/source/graph/SunShaft.cpp index bedc24af..42a38945 100644 --- a/src/Rock3dEngine/source/graph/SunShaft.cpp +++ b/src/Rock3dEngine/source/graph/SunShaft.cpp @@ -44,7 +44,7 @@ void SunShaftRender::Render(Engine& engine) _blurVec[0]->GetTex()->GetSurfaceLevel(0, &blurSurf); engine.GetDriver().GetDevice()->SetRenderTarget(0, blurSurf); blurSurf->Release(); - + shader.Apply(engine, "techPrepareShafts", 0); DrawScreenQuad(engine); shader.UnApply(engine); @@ -98,8 +98,8 @@ void SunShaftRender::Render(Engine& engine) } else sunPos.w = 0.0f; - shader.SetValueDir("sunPos", sunPos); - + shader.SetValueDir("sunPos", sunPos); + ApplyRT(engine, RtFlags(0, 0)); shader.Apply(engine, "techGenShafts", 0); diff --git a/src/Rock3dEngine/source/graph/ToneMapping.cpp b/src/Rock3dEngine/source/graph/ToneMapping.cpp index 5e6dd6b6..db998cd1 100644 --- a/src/Rock3dEngine/source/graph/ToneMapping.cpp +++ b/src/Rock3dEngine/source/graph/ToneMapping.cpp @@ -40,7 +40,7 @@ void ToneMapping::SetColorTex(Tex2DResource* value) Tex2DResource* ToneMapping::GetBloomTex() { - return lsl::StaticCast(shader.GetTexture("bloomTex")); + return lsl::StaticCast(shader.GetTexture("bloomTex")); } void ToneMapping::SetBloomTex(Tex2DResource* value) @@ -50,7 +50,7 @@ void ToneMapping::SetBloomTex(Tex2DResource* value) Tex2DResource* ToneMapping::GetHDRTex() { - return lsl::StaticCast(shader.GetTexture("lumTex")); + return lsl::StaticCast(shader.GetTexture("lumTex")); } void ToneMapping::SetHDRTex(Tex2DResource* value) diff --git a/src/Rock3dEngine/source/graph/VideoResource.cpp b/src/Rock3dEngine/source/graph/VideoResource.cpp index b687118a..3c5c0ea4 100644 --- a/src/Rock3dEngine/source/graph/VideoResource.cpp +++ b/src/Rock3dEngine/source/graph/VideoResource.cpp @@ -74,7 +74,7 @@ void VideoResource::OnLostDevice() _MyBase::Free(); _autoInit = true; } - + } void VideoResource::OnResetDevice() @@ -161,7 +161,7 @@ void VBMesh::DoInit() { LoadData(); - GetEngine()->GetDriver().GetDevice()->CreateVertexBuffer(_data->GetSize(), GetUsage(), _data->GetFVF(), GetMemoryPool(), &_vb, 0); + GetEngine()->GetDriver().GetDevice()->CreateVertexBuffer(_data->GetSize(), GetUsage(), _data->GetFVF(), GetMemoryPool(), &_vb, 0); } void VBMesh::DoFree() @@ -265,11 +265,11 @@ IDirect3DVertexBuffer9* VBMesh::GetVB() const IndexedVBMesh::IndexedVBMesh(): MemPoolResource(D3DUSAGE_WRITEONLY), _data(0), _createData(false), _beginStreamCnt(0), _vb(0), _ib(0) -{ +{ } IndexedVBMesh::~IndexedVBMesh() -{ +{ LSL_ASSERT(_beginStreamCnt == 0); Free(); @@ -284,7 +284,7 @@ void IndexedVBMesh::LoadData() const void IndexedVBMesh::DoInit() { - LoadData(); + LoadData(); GetEngine()->GetDriver().GetDevice()->CreateVertexBuffer(_data->vb.GetSize(), GetUsage(), _data->vb.GetFVF(), GetMemoryPool(), &_vb, 0); GetEngine()->GetDriver().GetDevice()->CreateIndexBuffer(_data->fb.GetSize(), GetUsage(), _data->fb.GetIndexFormat(), GetMemoryPool(), &_ib, 0); @@ -305,7 +305,7 @@ void IndexedVBMesh::DoUpdate() void* ibData; _ib->Lock(0, 0, (void**)&ibData, 0); - _data->fb.CopyDataTo(ibData); + _data->fb.CopyDataTo(ibData); _ib->Unlock(); } @@ -316,7 +316,7 @@ void IndexedVBMesh::BeginStream(int attribId, unsigned streamNumber) if (_beginStreamCnt++ == 0) { const res::FaceGroup& fg = _data->faceGroups.at(attribId); - + GetEngine()->GetDriver().GetDevice()->SetStreamSource(streamNumber, _vb, fg.sVertex * _data->vb.GetVertexSize(), _data->vb.GetVertexSize()); GetEngine()->GetDriver().GetDevice()->SetIndices(_ib); GetEngine()->GetDriver().GetDevice()->SetFVF(_data->vb.GetFVF()); @@ -324,7 +324,7 @@ void IndexedVBMesh::BeginStream(int attribId, unsigned streamNumber) } void IndexedVBMesh::BeginStream() -{ +{ LSL_ASSERT(IsInit()); if (_beginStreamCnt++ == 0) @@ -353,7 +353,7 @@ void IndexedVBMesh::DrawSubset(int attribId) { const res::FaceGroup& fg = _data->faceGroups.at(attribId); - BeginStream(attribId); + BeginStream(attribId); GetEngine()->GetDriver().GetDevice()->DrawIndexedPrimitive(D3DPT_TRIANGLELIST, 0, fg.sVertex, fg.vertexCnt, fg.sFace * 3, fg.faceCnt); EndStream(); } @@ -422,7 +422,7 @@ IDirect3DIndexBuffer9* IndexedVBMesh::GetIB() MeshX::MeshX(): MemPoolResource(D3DUSAGE_WRITEONLY), _data(0), _createData(false), _d3dxMesh(0), _beginStreamCnt(0) -{ +{ } MeshX::~MeshX() @@ -441,7 +441,7 @@ void MeshX::LoadData() const void MeshX::DoInit() { - LoadData(); + LoadData(); switch (_prefab) { @@ -466,7 +466,7 @@ void MeshX::DoUpdate() //void* ibData; //_ib->Lock(0, 0, (void**)&ibData, 0); - //_data->fb.CopyDataTo(ibData); + //_data->fb.CopyDataTo(ibData); //_ib->Unlock(); } @@ -485,7 +485,7 @@ void MeshX::BeginStream(int attribId, unsigned streamNumber) } void MeshX::BeginStream() -{ +{ LSL_ASSERT(IsInit()); if (_beginStreamCnt++ == 0) @@ -506,10 +506,10 @@ void MeshX::EndStream() void MeshX::Draw() { BeginStream(); - + //GetEngine()->GetDriver().GetDevice()->DrawIndexedPrimitive(D3DPT_TRIANGLELIST, 0, 0, _data->vb.GetVertexCount(), 0, _data->fb.GetFaceCount()); _d3dxMesh->DrawSubset(0); - + EndStream(); } @@ -517,11 +517,11 @@ void MeshX::DrawSubset(int attribId) { //const res::FaceGroup& fg = _data->faceGroups.at(attribId); - BeginStream(attribId); - + BeginStream(attribId); + //GetEngine()->GetDriver().GetDevice()->DrawIndexedPrimitive(D3DPT_TRIANGLELIST, 0, fg.sVertex, fg.vertexCnt, fg.sFace * 3, fg.faceCnt); _d3dxMesh->DrawSubset(attribId); - + EndStream(); } @@ -579,7 +579,7 @@ const D3DXVECTOR3& MeshX::GetMaxPos() const TexResource::TexResource(DWORD usage): MemPoolResource(usage), _screenScale(0, 0), _levelCnt(1) //один основной уровень -{ +{ } IDirect3DBaseTexture9* TexResource::GetTex() @@ -645,7 +645,7 @@ void Tex2DResource::LoadData() if (_data->GetFileName() != "" && Engine::d3dxUse()) { - D3DXIMAGE_INFO info; + D3DXIMAGE_INFO info; HRESULT hr = D3DXGetImageInfoFromFileW(lsl::GetAppFilePath(_data->GetFileName()).c_str(), &info); if (hr == S_OK) @@ -728,11 +728,11 @@ void Tex2DResource::DoUpdate() IDirect3DTexture9* tmpTex; bool _notDirAccess = GetMemoryPool() == D3DPOOL_DEFAULT && !(GetUsage() & D3DUSAGE_DYNAMIC); if (_notDirAccess) - GetEngine()->GetDriver().GetDevice()->CreateTexture(_data->GetWidth(), _data->GetHeight(), manualFilter ? GetLevelCnt() : 1, 0, _data->GetFormat(), D3DPOOL_SYSTEMMEM, &tmpTex, 0); + GetEngine()->GetDriver().GetDevice()->CreateTexture(_data->GetWidth(), _data->GetHeight(), manualFilter ? GetLevelCnt() : 1, 0, _data->GetFormat(), D3DPOOL_SYSTEMMEM, &tmpTex, 0); else tmpTex = _texture; - D3DLOCKED_RECT source; + D3DLOCKED_RECT source; tmpTex->LockRect(0, &source, 0, D3DLOCK_READONLY); switch (_data->GetFormat()) @@ -775,7 +775,7 @@ void Tex2DResource::SyncFrom(Tex2DResource* value) _data->SetWidth(value->_data->GetWidth()); _data->SetHeight(value->_data->GetHeight()); _data->SetFormat(value->_data->GetFormat()); - + Free(); } } @@ -826,7 +826,7 @@ void Tex2DResource::SetData(res::ImageResource* value) _createData = false; } - _data = value; + _data = value; } } @@ -850,7 +850,7 @@ glm::vec2 Tex2DResource::GetSize() TexCubeResource::TexCubeResource(): TexResource(0), _texture(0), _data(0), _createData(false), _d3dxLoadUsed(false) -{ +{ } TexCubeResource::~TexCubeResource() @@ -876,7 +876,7 @@ void TexCubeResource::LoadData() if (_data->GetFileName() != "" && Engine::d3dxUse()) { - D3DXIMAGE_INFO info; + D3DXIMAGE_INFO info; HRESULT hr = D3DXGetImageInfoFromFileW(lsl::GetAppFilePath(_data->GetFileName()).c_str(), &info); if (hr == S_OK) @@ -951,8 +951,8 @@ void TexCubeResource::DoUpdate() IDirect3DCubeTexture9* tmpTex; bool _notDirAccess = GetMemoryPool() == D3DPOOL_DEFAULT && !(GetUsage() & D3DUSAGE_DYNAMIC); - if (_notDirAccess) - GetEngine()->GetDriver().GetDevice()->CreateCubeTexture(_data->GetWidth()/6, manualFilter ? GetLevelCnt() : 1, 0, _data->GetFormat(), D3DPOOL_SYSTEMMEM, &tmpTex, 0); + if (_notDirAccess) + GetEngine()->GetDriver().GetDevice()->CreateCubeTexture(_data->GetWidth()/6, manualFilter ? GetLevelCnt() : 1, 0, _data->GetFormat(), D3DPOOL_SYSTEMMEM, &tmpTex, 0); else tmpTex = _texture; @@ -1017,7 +1017,7 @@ res::CubeImageResource* TexCubeResource::GetOrCreateData() _createData = true; } - return _data; + return _data; } void TexCubeResource::SetData(res::CubeImageResource* value) @@ -1030,7 +1030,7 @@ void TexCubeResource::SetData(res::CubeImageResource* value) _createData = false; } - _data = value; + _data = value; } } @@ -1065,7 +1065,7 @@ void RenderTargetResource::DoInit() void RenderTargetResource::DoFree() { - _surface->Release(); + _surface->Release(); } void RenderTargetResource::DoUpdate() @@ -1085,27 +1085,27 @@ unsigned RenderTargetResource::GetWidth() const void RenderTargetResource::SetWidth(unsigned value) { - _width = value; + _width = value; } unsigned RenderTargetResource::GetHeight() const { - return _height; + return _height; } void RenderTargetResource::SetHeight(unsigned value) { - _height = value; + _height = value; } D3DFORMAT RenderTargetResource::GetFormat() const { - return _format; + return _format; } void RenderTargetResource::SetFormat(D3DFORMAT value) { - _format = value; + _format = value; } bool RenderTargetResource::GetLockable() const @@ -1184,7 +1184,7 @@ void DepthStencilSurfaceResource::DoInit() void DepthStencilSurfaceResource::DoFree() { - _surface->Release(); + _surface->Release(); } void DepthStencilSurfaceResource::DoUpdate() @@ -1204,27 +1204,27 @@ unsigned DepthStencilSurfaceResource::GetWidth() const void DepthStencilSurfaceResource::SetWidth(unsigned value) { - _width = value; + _width = value; } unsigned DepthStencilSurfaceResource::GetHeight() const { - return _height; + return _height; } void DepthStencilSurfaceResource::SetHeight(unsigned value) { - _height = value; + _height = value; } D3DFORMAT DepthStencilSurfaceResource::GetFormat() const { - return _format; + return _format; } void DepthStencilSurfaceResource::SetFormat(D3DFORMAT value) { - _format = value; + _format = value; } bool DepthStencilSurfaceResource::GetDiscard() const @@ -1314,7 +1314,7 @@ void TextFont::DrawText(const std::string& text, lsl::Rect& rect, DWORD format, SetRect(&mtRect, rect.left, rect.top, rect.right, rect.bottom); _font->DrawTextA(0, text.c_str(), text.size(), &mtRect, format, color); - + rect = lsl::Rect(mtRect.left, mtRect.top, mtRect.right, mtRect.bottom); } @@ -1346,7 +1346,7 @@ const TextFont::Desc& TextFont::GetDesc() const void TextFont::SetDesc(const Desc& value) { _desc = value; - + if (IsInit()) Reload(); } diff --git a/src/Rock3dEngine/source/gui/GUI.cpp b/src/Rock3dEngine/source/gui/GUI.cpp index 4a66b8ac..0f3b6644 100644 --- a/src/Rock3dEngine/source/gui/GUI.cpp +++ b/src/Rock3dEngine/source/gui/GUI.cpp @@ -357,7 +357,7 @@ void Graphic3d::InsertChild(Graphic3d* value) void Graphic3d::RemoveChild(Children::const_iterator iter) { LSL_ASSERT((*iter)->_parent == this); - + (*iter)->_parent = 0; _children.erase(iter); } @@ -371,7 +371,7 @@ void Graphic3d::MoveChildTo(Graphic3d* graphic, Children::const_iterator pos) { Children::iterator newIter = _children.insert(pos, 0); Children::iterator oldIter = _children.Find(graphic); - + *newIter = graphic; RemoveChild(oldIter); } @@ -444,7 +444,7 @@ AABB Graphic3d::GetChildAABB() for (Children::const_iterator iter = _children.begin(); iter != _children.end(); ++iter) { Graphic3d* child = *iter; - AABB aabb = child->GetLocalAABB(true); + AABB aabb = child->GetLocalAABB(true); aabb.Transform(child->GetMat()); childAABB.Add(aabb); @@ -457,7 +457,7 @@ AABB Graphic3d::GetLocalAABB(bool includeChild) { AABB aabb = LocalAABB(); - if (includeChild) + if (includeChild) aabb.Add(GetChildAABB()); return aabb; @@ -556,7 +556,7 @@ void Dummy3d::Draw() VBuf3d::VBuf3d(Context* context): _MyBase(context), _mesh(0), _createMesh(false) -{ +{ } VBuf3d::~VBuf3d() @@ -624,7 +624,7 @@ AABB Mesh3d::LocalAABB() const } void Mesh3d::Draw() -{ +{ GetContext().DrawMesh3d(*this); } @@ -719,7 +719,7 @@ void View3d::SetAlign(bool value) Context::Context(graph::Engine* engine): _engine(engine), _invertY(false), _vpSize(0, 0) -{ +{ } Context::~Context() @@ -856,7 +856,7 @@ template void Context::DrawBaseText(_Text& text, AABB2* aabb) { if (!text.GetFont()) return; - + /*Plane plane(this); plane.SetSize(text.GetSize()); plane.SetPos(text.GetPos()); @@ -893,7 +893,7 @@ template void Context::DrawBaseText(_Text& text, AABB2* aabb) pos.y = GetVPSize().y - (pos.y + text.GetVScroll()); else pos.y = pos.y + text.GetVScroll(); - } + } glm::vec2 size = text.GetSize(); size = size / 2.0f; @@ -979,9 +979,9 @@ void Context::DrawPlane(Plane& plane) } else { - planeBuf[0] = res::VertexPT(D3DXVECTOR3(Ceil(size.x + pos3.x) - 0.5f, Floor(-size.y + pos3.y) - 0.5f, 0), glm::vec2(1.0f, 0.0f)); + planeBuf[0] = res::VertexPT(D3DXVECTOR3(Ceil(size.x + pos3.x) - 0.5f, Floor(-size.y + pos3.y) - 0.5f, 0), glm::vec2(1.0f, 0.0f)); planeBuf[1] = res::VertexPT(D3DXVECTOR3(Floor(-size.x + pos3.x) - 0.5f, Floor(-size.y + pos3.y) - 0.5f, 0), glm::vec2(0.0f, 0.0f)); - planeBuf[2] = res::VertexPT(D3DXVECTOR3(Ceil(size.x + pos3.x) - 0.5f, Ceil(size.y + pos3.y) - 0.5f, 0), glm::vec2(1.0f, 1.0f)); + planeBuf[2] = res::VertexPT(D3DXVECTOR3(Ceil(size.x + pos3.x) - 0.5f, Ceil(size.y + pos3.y) - 0.5f, 0), glm::vec2(1.0f, 1.0f)); planeBuf[3] = res::VertexPT(D3DXVECTOR3(Floor(-size.x + pos3.x) - 0.5f, Ceil(size.y + pos3.y) - 0.5f, 0), glm::vec2(0.0f, 1.0f)); }; @@ -1031,7 +1031,7 @@ void Context::DrawPlane3d(Plane3d& plane3d) { glm::vec2 size = plane3d.GetSize(); - const res::VertexPT planeBuf[4] = + const res::VertexPT planeBuf[4] = { res::VertexPT(D3DXVECTOR3(size.x, -size.y, 0), glm::vec2(1.0f, 1.0f)), res::VertexPT(D3DXVECTOR3(size.x, size.y, 0), glm::vec2(1.0f, 0.0f)), @@ -1047,7 +1047,7 @@ void Context::DrawView3d(View3d& view3d) { //отстраиваем размер относительно локального AABB. Трансформации GetBox() применяются при DrawGraphic3d AABB aabb = view3d.GetBox()->GetLocalAABB(true); - + /*Plane plane(this); plane.SetSize(view3d.GetSize()); plane.SetPos(view3d.GetPos()); @@ -1088,7 +1088,7 @@ void Context::DrawView3d(View3d& view3d) DrawGraphic3d(view3d.GetBox(), localMat * worldMat); GetCI().SetRenderState(graph::rsZWriteEnable, false); - GetCI().SetRenderState(graph::rsZEnable, false); + GetCI().SetRenderState(graph::rsZEnable, false); GetCI().SetWorldMat(worldMat); } @@ -1241,7 +1241,7 @@ void Widget::BuildMatrix(MatrixChange change) const _pos = _manager->WorldToView(_pos3d); if (_parent) _pos = _parent->WorldToLocalCoord(_pos); - } + } else if (_anchor != waNone) { _anchorVP = _manager->GetVPSize(); @@ -1304,11 +1304,11 @@ void Widget::BuildMatrix(MatrixChange change) const case mcWorld: _matrix[mcWorld] = _parent ? GetMat() * _parent->GetWorldMat() : GetMat(); break; - + case mcInvLocal: D3DXMatrixInverse(&_matrix[mcInvLocal], 0, &GetMat()); break; - + case mcInvWorld: D3DXMatrixInverse(&_matrix[mcInvWorld], 0, &GetWorldMat()); break; @@ -1347,10 +1347,10 @@ void Widget::BuildChildAABB() const for (Children::const_iterator iter = _children.begin(); iter != _children.end(); ++iter) { Widget* child = *iter; - + AABB2 childAABB = child->GetLocalAABB(true); childAABB.Transform(child->GetMat()); - + _childAABB.Add(childAABB); } } @@ -1387,12 +1387,12 @@ void Widget::AABBChanged(StructChange change) _aabbChanges.set(acLocalChildAABB); _aabbChanges.set(acWorldChildAABB); break; - + case scWorld: _aabbChanges.set(acWorldAABB); _aabbChanges.set(acWorldChildAABB); break; - + case scChild: _aabbChanges.set(acChildAABB); _aabbChanges.set(acLocalChildAABB); @@ -1414,7 +1414,7 @@ bool Widget::ApplyMouseEnter(bool wasReset) return OnMouseEnter(_manager->GetMouseMove(this)); } else - { + { OnMouseLeave(wasReset); return true; } @@ -1461,7 +1461,7 @@ void Widget::ApplyAlign() const newRect.min.y = rect.min.y; newRect.max.y = newRect.min.y + newSize.y; } - + glm::vec2 size = newRect.GetSize(); glm::vec2 pos = newRect.GetCenter(); @@ -1504,8 +1504,8 @@ void Widget::WorldTransformChanged() _matrixChanges.set(mcInvWorld); AABBChanged(scWorld); - - for (Children::iterator iter = _children.begin(); iter != _children.end(); ++iter) + + for (Children::iterator iter = _children.begin(); iter != _children.end(); ++iter) (*iter)->WorldTransformChanged(); } } @@ -1534,7 +1534,7 @@ void Widget::StructureChanged(StructChange change) AlignChanged(); break; - + case scChild: AABBChanged(change); @@ -1543,8 +1543,8 @@ void Widget::StructureChanged(StructChange change) break; } - for (EventList::Position pos = _events.First(); Event** iter = _events.Current(pos); _events.Next(pos)) - (*iter)->OnStructureChanged(this, change); + for (EventList::Position pos = _events.First(); Event** iter = _events.Current(pos); _events.Next(pos)) + (*iter)->OnStructureChanged(this, change); } void Widget::FlagChanged(Flag flag, bool value) @@ -1559,7 +1559,7 @@ bool Widget::OnMouseClick(const MouseClick& mClick) bool mouseDown = mClick.key == mkLeft && mClick.state == ksDown; _isMouseDown = true; - for (EventList::Position pos = _events.First(); Event** iter = _events.Current(pos); _events.Next(pos)) + for (EventList::Position pos = _events.First(); Event** iter = _events.Current(pos); _events.Next(pos)) res |= (*iter)->OnMouseClick(this, mClick); res |= mouseDown && _flags[wfMouseOnClick] && OnClick(mClick); @@ -1574,7 +1574,7 @@ bool Widget::OnMouseOver(const MouseMove& mMove) { bool res = false; - for (EventList::Position pos = _events.First(); Event** iter = _events.Current(pos); _events.Next(pos)) + for (EventList::Position pos = _events.First(); Event** iter = _events.Current(pos); _events.Next(pos)) res |= (*iter)->OnMouseOver(this, mMove); if (!_isMouseOver) @@ -1588,9 +1588,9 @@ bool Widget::OnMouseOver(const MouseMove& mMove) bool Widget::OnMouseEnter(const MouseMove& mMove) { - bool res = false; + bool res = false; - for (EventList::Position pos = _events.First(); Event** iter = _events.Current(pos); _events.Next(pos)) + for (EventList::Position pos = _events.First(); Event** iter = _events.Current(pos); _events.Next(pos)) res |= (*iter)->OnMouseEnter(this, mMove); return res | _flags[wfCathMouseMessages]; @@ -1598,7 +1598,7 @@ bool Widget::OnMouseEnter(const MouseMove& mMove) void Widget::OnMouseLeave(bool wasReset) { - for (EventList::Position pos = _events.First(); Event** iter = _events.Current(pos); _events.Next(pos)) + for (EventList::Position pos = _events.First(); Event** iter = _events.Current(pos); _events.Next(pos)) (*iter)->OnMouseLeave(this, wasReset); } @@ -1606,7 +1606,7 @@ bool Widget::OnMouseDown(const MouseClick& mClick) { bool res = false; - for (EventList::Position pos = _events.First(); Event** iter = _events.Current(pos); _events.Next(pos)) + for (EventList::Position pos = _events.First(); Event** iter = _events.Current(pos); _events.Next(pos)) res |= (*iter)->OnMouseDown(this, mClick); return res; @@ -1616,13 +1616,13 @@ bool Widget::OnMouseMove(const MouseMove& mMove) { bool res = false; - if (_isMouseOver && !GetWorldAABB(false).ContainsPoint(mMove.worldCoord)) + if (_isMouseOver && !GetWorldAABB(false).ContainsPoint(mMove.worldCoord)) { _isMouseOver = false; ApplyMouseEnter(false); } - for (EventList::Position pos = _events.First(); Event** iter = _events.Current(pos); _events.Next(pos)) + for (EventList::Position pos = _events.First(); Event** iter = _events.Current(pos); _events.Next(pos)) res |= (*iter)->OnMouseMove(this, mMove); return res; @@ -1632,7 +1632,7 @@ bool Widget::OnClick(const MouseClick& mClick) { bool res = false; - for (EventList::Position pos = _events.First(); Event** iter = _events.Current(pos); _events.Next(pos)) + for (EventList::Position pos = _events.First(); Event** iter = _events.Current(pos); _events.Next(pos)) res |= (*iter)->OnClick(this, mClick); return res; @@ -1854,7 +1854,7 @@ void Widget::SetEvent(Event* value) void Widget::ClearEvents() { for (EventList::const_iterator iter = _events.begin(); iter != _events.end(); ++iter) - (*iter)->Release(); + (*iter)->Release(); _events.Clear(); } @@ -2031,7 +2031,7 @@ const glm::vec2& Widget::GetPos() const void Widget::SetPos(const glm::vec2& value) { _pos = value; - + TransformChanged(); } @@ -2074,7 +2074,7 @@ bool Widget::GetCoord3d() const } void Widget::SetCoord3d(bool value) -{ +{ _coord3d = value; TransformChanged(); @@ -2108,28 +2108,28 @@ const D3DXMATRIX& Widget::GetMat() const ApplyAlign(); BuildMatrix(mcLocal); - + return _matrix[mcLocal]; } const D3DXMATRIX& Widget::GetWorldMat() const { BuildMatrix(mcWorld); - + return _matrix[mcWorld]; } const D3DXMATRIX& Widget::GetInvMat() const { BuildMatrix(mcInvLocal); - + return _matrix[mcInvLocal]; } const D3DXMATRIX& Widget::GetInvWorldMat() const { BuildMatrix(mcInvWorld); - + return _matrix[mcInvWorld]; } @@ -2305,7 +2305,7 @@ void PlaneFon::SetMaterial(Material* value) Label::Label(Manager* manager): _MyBase(manager), _font(0), _horAlign(Text::haCenter), _vertAlign(Text::vaCenter), _wordWrap(false), _text(0), _textW(0), _baseText(0), _vScroll(0) -{ +{ _material = new Material(); } @@ -2327,7 +2327,7 @@ void Label::CreateText() if (_text) return; DeleteText(); - + _text = GetContext().CreateText(); _text->AddRef(); InsertGraphic(_text); @@ -2364,7 +2364,7 @@ void Label::DeleteText() } void Label::ApplyText() -{ +{ if (_baseText) { _baseText->SetSize(GetSize()); @@ -2413,8 +2413,8 @@ void Label::SetFont(graph::TextFont* value) { _baseText->SetFont(_font); StructureChanged(); - } - } + } + } } Material& Label::GetMaterial() @@ -2486,8 +2486,8 @@ void Label::SetHorAlign(Text::HorAlign value) { _baseText->SetHorAlign(_horAlign); StructureChanged(); - } - } + } + } } Text::VertAlign Label::GetVertAlign() const @@ -2602,7 +2602,7 @@ void Button::ApplySelection(bool instant) _fadeIn = instant ? 1.0f : 0; else _fadeOut = instant ? 1.0f : 0; - break; + break; } } } @@ -2638,9 +2638,9 @@ void Button::OnProgress(float deltaTime) { if (_fadeIn >= 0) { - float alpha = lsl::ClampValue(_fadeIn / 0.25f, 0.0f, 1.0f); + float alpha = lsl::ClampValue(_fadeIn / 0.25f, 0.0f, 1.0f); if (_sel) - _sel->SetAlpha(alpha); + _sel->SetAlpha(alpha); if (alpha == 1.0f) _fadeIn = -1.0f; @@ -2652,7 +2652,7 @@ void Button::OnProgress(float deltaTime) { float alpha = lsl::ClampValue(_fadeOut / 0.25f, 0.0f, 1.0f); if (_sel) - _sel->SetAlpha(1.0f - alpha); + _sel->SetAlpha(1.0f - alpha); if (alpha == 1.0f) _fadeOut = -1.0f; @@ -2702,7 +2702,7 @@ void Button::SetFon(Material* value) if (_createFon) { - _createFon = false; + _createFon = false; delete _fonMaterial; } _fonMaterial = value; @@ -2735,7 +2735,7 @@ void Button::SetSel(Material* value) if (_createSel) { - _createSel = false; + _createSel = false; delete _selMaterial; } @@ -2772,7 +2772,7 @@ void Button::SetTextMaterial(Material* value) if (_createText) { - _createText = false; + _createText = false; delete _textMaterial; } @@ -2810,7 +2810,7 @@ void Button::SetTextSelMaterial(Material* value) if (_createTextSel) { - _createTextSel = false; + _createTextSel = false; delete _textSelMaterial; } @@ -2963,7 +2963,7 @@ void StepperBox::ApplySelection() { _left->SetEnabled(_selIndex > 0 && (unsigned)_selIndex < _items.size() && GetEnabled()); _right->SetEnabled(_selIndex >= 0 && (unsigned)_selIndex + 1 < _items.size() && GetEnabled()); - } + } } void StepperBox::OnEnabled(bool value) @@ -3148,7 +3148,7 @@ DropBox::DropBox(Manager* manager): _MyBase(manager), _showItems(false), _fonMat _button = GetContext().CreatePlane(); _button->AddRef(); InsertGraphic(_button); - + _selItem = GetContext().CreateText(); _selItem->AddRef(); InsertGraphic(_selItem); @@ -3204,9 +3204,9 @@ bool DropBox::ItemsEvent::OnMouseDown(Widget* sender, const MouseClick& mClick) _dropBox->SetSelItem(text->GetText()); _dropBox->OnSelect(0); } - + _dropBox->ShowItems(false); - + return true; } @@ -3222,7 +3222,7 @@ void DropBox::ShowItems(bool value) if (_showItems) { for (TextItems::iterator iter = _textItems.begin(); iter != _textItems.end(); ++iter) - { + { (*iter)->Release(); _itemsFon->RemoveGraphic(*iter); GetContext().ReleaseGraphic(*iter); @@ -3247,7 +3247,7 @@ void DropBox::ShowItems(bool value) item->SetPos(glm::vec2(size.y/2.0f, -(i - _items.size()/2.0f + 0.5f) * size.y)); item->SetHorAlign(Text::haLeft); item->SetMaterial(_textMaterial); - + _textItems.push_back(item); } } @@ -3267,7 +3267,7 @@ void DropBox::SelectItem(const std::string& item) _selInd = i; return; } - _selInd = -1; + _selInd = -1; } Text* DropBox::FindSelTextItem(const glm::vec2& point, bool deselect) @@ -3283,7 +3283,7 @@ Text* DropBox::FindSelTextItem(const glm::vec2& point, bool deselect) if (aabb.ContainsPoint(point)) { res = item; - + if (!deselect) return res; @@ -3404,7 +3404,7 @@ Material& DropBox::GetTextMaterial() Material& DropBox::GetSelMaterial() { - if (!_selMaterial) + if (!_selMaterial) _selMaterial = new Material(); return *_selMaterial; @@ -3563,11 +3563,11 @@ bool ViewPort3d::OnMouseOver(const MouseMove& mMove) { //Вращение по двум осям /*D3DXQUATERNION rotY; - D3DXQuaternionRotationAxis(&rotY, &YVector, D3DX_PI * mMove.dtCoord.x/100.0f); + D3DXQuaternionRotationAxis(&rotY, &YVector, D3DX_PI * mMove.dtCoord.x/100.0f); D3DXQUATERNION rotX; D3DXQuaternionRotationAxis(&rotX, &XVector, -D3DX_PI * mMove.dtCoord.y/100.0f); SetRot3d(GetRot3d() * rotY * rotX);*/ - + //Вращение по одной оси, совпадающией с up mesh glm::quat rotZ = glm::angleAxis(D3DX_PI * mMove.dtCoord.x / 200.0f, Vec3DxToGlm(ZVector)); GetBox()->SetRot(GetBox()->GetRot() * rotZ); @@ -3646,7 +3646,7 @@ ScrollBox::ScrollBox(Manager* manager): _MyBase(manager), _arrowSize(20.0f, 20.0 _clip = GetManager().CreateDummy(); _clip->AddRef(); - _clip->SetFlag(wfClientClip, true); + _clip->SetFlag(wfClientClip, true); _clip->SetParent(this); _box = GetManager().CreateDummy(); @@ -3674,7 +3674,7 @@ ScrollBox::~ScrollBox() } ScrollBox::MyEvent::MyEvent(ScrollBox* scrollBox): _scrollBox(scrollBox) -{ +{ } void ScrollBox::MyEvent::OnStructureChanged(Widget* sender, StructChange change) @@ -3703,14 +3703,14 @@ bool ScrollBox::MyEvent::OnClick(Widget* sender, const MouseClick& mClick) { case sdLeft: return true; - + case sdDown: _scrollBox->SetScroll(glm::vec2(_scrollBox->GetScroll().x, scrollDown.y)); return true; - + case sdRight: return true; - + case sdUp: _scrollBox->SetScroll(glm::vec2(_scrollBox->GetScroll().x, scrollUp.y)); return true; @@ -3721,7 +3721,7 @@ bool ScrollBox::MyEvent::OnClick(Widget* sender, const MouseClick& mClick) Button* ScrollBox::NewArrow() { - Button* arrow = GetManager().CreateButton(); + Button* arrow = GetManager().CreateButton(); arrow->AddRef(); arrow->SetParent(this); arrow->SetEvent(_myEvent); @@ -3746,7 +3746,7 @@ void ScrollBox::ApplyOptions() { FreeArrows(); - for (int i = 0; i < cOptionEnd; ++i) if (_options[i]) + for (int i = 0; i < cOptionEnd; ++i) if (_options[i]) switch (i) { case soVert: @@ -3754,7 +3754,7 @@ void ScrollBox::ApplyOptions() _scrollBut[sdUp] = NewArrow(); _scrollBut[sdUp]->SetRot(D3DX_PI); break; - + case soHor: _scrollBut[sdLeft] = NewArrow(); _scrollBut[sdLeft]->SetRot(-D3DX_PI/2.0f); @@ -3867,7 +3867,7 @@ glm::vec2 ScrollBox::GetScroll() } void ScrollBox::SetScroll(const glm::vec2& value) -{ +{ glm::vec2 boxSize = _box->GetChildAABB().GetSize(); //корректируем чтобы максимальной прокруткой был размер страницы @@ -3882,7 +3882,7 @@ void ScrollBox::SetScroll(const glm::vec2& value) if (_box->GetSize().y > boxSize.y) pos.y = 0; - _box->SetPos(pos); + _box->SetPos(pos); if (_scrollBut[sdUp]) _scrollBut[sdUp]->SetVisible(abs(scroll.y) > 0.001f); @@ -3904,7 +3904,7 @@ Material& ScrollBox::GetArrowSelMaterial() ListBox::ListBox(Manager* manager): _MyBase(manager), _itemSize(30.0f, 30.0f), _itemSpace(5.0f, 5.0f), _selItem(0), _fon(0), _frameMaterial(0) -{ +{ _event = new MyEvent(this); _scrollBox = GetManager().CreateScrollBox(); @@ -3948,7 +3948,7 @@ void ListBox::Item::ApplyFrame() { LSL_ASSERT(!_data->GetGraphics().IsFind(_frame)); - _data->InsertGraphic(_frame, _data->GetGraphics().begin()); + _data->InsertGraphic(_frame, _data->GetGraphics().begin()); } } @@ -3959,7 +3959,7 @@ void ListBox::Item::RemoveFrame() Widget::Graphics::const_iterator iter = _data->GetGraphics().Find(_frame); LSL_ASSERT(iter != _data->GetGraphics().end()); - + _data->RemoveGraphic(iter); } } @@ -4058,7 +4058,7 @@ void ListBox::FreeItem(Item* item) GetManager().ReleaseWidget(data); } - FreeItemFrame(item); + FreeItemFrame(item); } void ListBox::AlignItems() @@ -4193,7 +4193,7 @@ bool ListBox::PickItems(const glm::vec2& worldCoord) ListBox::Item* ListBox::FindItemByData(Widget* data) { for (Items::iterator iter = _items.begin(); iter != _items.end(); ++iter) - if ((*iter)->GetData() == data) + if ((*iter)->GetData() == data) return *iter; return 0; @@ -4201,7 +4201,7 @@ ListBox::Item* ListBox::FindItemByData(Widget* data) ListBox::Item* ListBox::GetSelItem() { - return _selItem; + return _selItem; } void ListBox::SelectItem(Item* item) @@ -4259,11 +4259,11 @@ Material& ListBox::GetOrCreateFon() _fon = GetContext().CreatePlane(); _fon->AddRef(); InsertGraphic(_fon); - + StructureChanged(); } - return *_fon->GetOrCreateMaterial(); + return *_fon->GetOrCreateMaterial(); } void ListBox::FreeFon() @@ -4356,7 +4356,7 @@ glm::vec2 ListBox::GetScrollSpace() const ProgressBar::ProgressBar(Manager* manager): _MyBase(manager), _style(psHorizontal), _progress(1.0f), _backEnabled(false) { _back = GetContext().CreatePlane(); - _back->AddRef(); + _back->AddRef(); SetBackEnabled(true); _front = GetContext().CreatePlane(); @@ -4402,7 +4402,7 @@ void ProgressBar::StructureChanged(StructChange change) _front->GetMaterial()->GetSampler().SetScale(D3DXVECTOR3(1, _progress, 1)); break; } - } + } } } @@ -4498,7 +4498,7 @@ void StreakBar::UpdateStreaks() InsertGraphic(plane); _streaks.push_back(plane); - } + } } void StreakBar::ClearStreaks() @@ -4529,7 +4529,7 @@ Material* StreakBar::GetOrCreateStreak() _streak->AddRef(); _createStreak = true; } - return _streak; + return _streak; } Material* StreakBar::GetStreak() @@ -4610,7 +4610,7 @@ ChargeBar::~ChargeBar() } ChargeBar::MyEvent::MyEvent(ChargeBar* bar): _bar(bar) -{ +{ } bool ChargeBar::MyEvent::OnClick(Widget* sender, const MouseClick& mClick) @@ -4661,7 +4661,7 @@ Material& ChargeBar::GetUp() Material& ChargeBar::GetUpSel() { - return *_up->GetOrCreateSel(); + return *_up->GetOrCreateSel(); } Button* ChargeBar::GetUpButton() @@ -4681,7 +4681,7 @@ void ChargeBar::SetSpace(const glm::vec2& value) unsigned ChargeBar::GetChargeMax() { - return _bar->GetStreakMax(); + return _bar->GetStreakMax(); } void ChargeBar::SetChargeMax(unsigned value) @@ -4960,7 +4960,7 @@ glm::vec2 ColorBox::WinToLocal(const glm::vec2& vec) const float wScale = newSize.x / size.x; float hScale = newSize.y / size.y; float minScale = std::min(wScale, hScale); - + return minScale * vec; } @@ -5054,7 +5054,7 @@ void ColorBox::SetSelect(bool value) glm::vec2 ColorBox::GetColorBoxSize() const { glm::vec2 size(190.0f, 40.0f); - + return size; } @@ -5086,7 +5086,7 @@ AABB2 ColorBox::GetCheckAABB() const ColorList::ColorList(Manager* manager): _MyBase(manager), _space(NullVec2) { _myEvent = new MyEvent(this); - + _frame = new Material(); _box = new Material(); _check = new Material(); @@ -5120,7 +5120,7 @@ bool ColorList::MyEvent::OnClick(Widget* sender, const MouseClick& mClick) return true; } - return false; + return false; } void ColorList::ApplyChanges() @@ -5133,9 +5133,9 @@ void ColorList::ApplyChanges() { iter->box->SetSize(boxSize - _space); iter->box->SetPos(glm::vec2(0.0f, size.y/2.0f - (i + 0.5f) * boxSize.y)); - + iter->box->SetFrame(_frame); - + iter->box->GetBox().GetSampler().SetTex(_box->GetSampler().GetTex()); iter->box->GetBox().SetBlending(_box->GetBlending()); @@ -5505,7 +5505,7 @@ void Manager::DoDrawWidget(Widget* widget) _engine->GetContext().SetRenderState(graph::rsScissorTestEnable, true); RECT rc; - rc.left = static_cast(aabb.min.x); + rc.left = static_cast(aabb.min.x); rc.right = static_cast(aabb.max.x); if (_invertY) { @@ -5569,7 +5569,7 @@ void Manager::DrawWidget(Widget* widget) if (widget->GetFlag(Widget::wfTopmost) || widget->modal()) return; - DoDrawWidget(widget); + DoDrawWidget(widget); } bool Manager::OnWidgetMouseDown(Widget* widget, const MouseClick& mClick) @@ -5582,7 +5582,7 @@ bool Manager::OnWidgetMouseDown(Widget* widget, const MouseClick& mClick) if (widget->GetFlag(Widget::wfClientClip) && !widget->GetWorldAABB(false).ContainsPoint(mClick.coord)) return false; - for (Widget::Children::const_reverse_iterator iter = widget->GetChildren().rbegin(); iter != widget->GetChildren().rend(); ++iter) + for (Widget::Children::const_reverse_iterator iter = widget->GetChildren().rbegin(); iter != widget->GetChildren().rend(); ++iter) if (OnWidgetMouseDown(*iter, mClick)) return true; @@ -5625,7 +5625,7 @@ void Manager::Draw() _context->SetInvertY(_invertY); _context->SetVPSize(GetVPSize()); _context->BeginDraw(); - + DrawWidget(_root); for (Widgets::iterator iter = _topmostWidgets.begin(); iter != _topmostWidgets.end(); ++iter) @@ -5910,7 +5910,7 @@ void Manager::ReleaseWidget(Widget* widget) _widgetList.Remove(iter); widget->Dispose(); - if (IsSafeMode()) + if (IsSafeMode()) _safeList.Insert(widget); else { diff --git a/src/Rock3dEngine/source/px/Physx.cpp b/src/Rock3dEngine/source/px/Physx.cpp index 0ebac8d5..85e7cf36 100644 --- a/src/Rock3dEngine/source/px/Physx.cpp +++ b/src/Rock3dEngine/source/px/Physx.cpp @@ -66,7 +66,7 @@ Scene::Scene(Manager* manager): _manager(manager), _lastDeltaTime(0) // _nxScene->setGroupCollisionFlag(cdgShotTrack, cdgShot, false); _nxScene->setGroupCollisionFlag(cdgShotTrack, cdgShotBorder, false); - _nxScene->setGroupCollisionFlag(cdgShotTrack, cdgShotTrack, false); + _nxScene->setGroupCollisionFlag(cdgShotTrack, cdgShotTrack, false); // _nxScene->setGroupCollisionFlag(cdgShotTransparency, cdgShot, false); // @@ -96,8 +96,8 @@ Scene::ContactModify::ContactModify(Scene* scene): _scene(scene) bool Scene::ContactModify::onContactConstraint(NxU32& changeFlags, const NxShape* shape0, const NxShape* shape1, const NxU32 featureIndex0, const NxU32 featureIndex1, NxContactCallbackData& data) { - OnContactModifyEvent contactEvent; - + OnContactModifyEvent contactEvent; + contactEvent.shape0 = shape0; contactEvent.shape1 = shape1; contactEvent.featureIndex0 = featureIndex0; @@ -260,7 +260,7 @@ NxScene* Scene::GetNxScene() Manager::Manager() { InitSDK(); - px::Shapes::RegisterClasses(); + px::Shapes::RegisterClasses(); } Manager::~Manager() @@ -308,7 +308,7 @@ void Manager::InitSDK() Manager::_nxCooking->NxInitCooking(); } - + } void Manager::ReleaseSDK() @@ -328,7 +328,7 @@ void Manager::ReleaseSDK() void Manager::Compute(float deltaTime) { for (SceneList::iterator iter = _sceneList.begin(); iter != _sceneList.end(); ++iter) - (*iter)->Compute(deltaTime); + (*iter)->Compute(deltaTime); } Scene* Manager::AddScene() @@ -398,7 +398,7 @@ void TriangleMesh::LoadMesh(const D3DXVECTOR3& scale, int id, NxTriangleMeshDesc int sFace = id < 0 ? 0 : _meshData->faceGroups[id].sFace; int faceCnt = id < 0 ? _meshData->fb.GetFaceCount() : _meshData->faceGroups[id].faceCnt; - D3DXVECTOR3* vertices = new D3DXVECTOR3[vertCnt]; + D3DXVECTOR3* vertices = new D3DXVECTOR3[vertCnt]; //Если в формате вершины только позиция, то копируется буффер целиком if (_meshData->vb.GetVertexSize() == sizeof(D3DXVECTOR3)) { @@ -408,7 +408,7 @@ void TriangleMesh::LoadMesh(const D3DXVECTOR3& scale, int id, NxTriangleMeshDesc vertices[i] *= scale; } //Иначе копируется только часть вершины соответствующая позиции - else + else for (int i = 0; i < vertCnt; ++i) { vertices[i] = *_meshData->vb[sVertex + i].Pos3(); @@ -420,7 +420,7 @@ void TriangleMesh::LoadMesh(const D3DXVECTOR3& scale, int id, NxTriangleMeshDesc desc.pointStrideBytes = sizeof(D3DXVECTOR3); desc.points = vertices; desc.numTriangles = faceCnt; - desc.triangleStrideBytes = _meshData->fb.GetFaceSize(); + desc.triangleStrideBytes = _meshData->fb.GetFaceSize(); desc.triangles = _meshData->fb.GetData() + _meshData->fb.GetFaceSize() * sFace; desc.flags = 0; } @@ -439,7 +439,7 @@ TriangleMesh::MeshList::iterator TriangleMesh::GetOrCreateMesh(const D3DXVECTOR3 if (findIter == _meshList.end()) { _meshList.push_back(val); - findIter = --_meshList.end(); + findIter = --_meshList.end(); } ++findIter->sumRef; @@ -461,7 +461,7 @@ NxTriangleMesh* TriangleMesh::GetOrCreateTri(const D3DXVECTOR3& scale, int id) MeshList::iterator mesh = GetOrCreateMesh(scale, id); ++(mesh->triRef); - if (mesh->tri) + if (mesh->tri) return mesh->tri; NxTriangleMeshDesc desc; @@ -504,7 +504,7 @@ NxConvexMesh* TriangleMesh::GetOrCreateConvex(const D3DXVECTOR3& scale, int id) MeshList::iterator mesh = GetOrCreateMesh(scale, id); ++(mesh->convexRef); - if (mesh->convex) + if (mesh->convex) return mesh->convex; NxTriangleMeshDesc desc; @@ -860,8 +860,8 @@ const D3DXVECTOR3& PlaneShape::GetNormal() const void PlaneShape::SetNormal(const D3DXVECTOR3& value) { _normal = value; - - if (GetNxShape()) + + if (GetNxShape()) GetNxShape()->setPlane(NxVec3(value), _dist); } @@ -873,8 +873,8 @@ float PlaneShape::GetDist() const void PlaneShape::SetDist(float value) { _dist = value; - - if (GetNxShape()) + + if (GetNxShape()) GetNxShape()->setPlane(NxVec3(value), _dist); } @@ -937,7 +937,7 @@ void BoxShape::SetDimensions(const D3DXVECTOR3& value) if (_dimensions != value) { _dimensions = value; - + if (GetNxShape()) { NxVec3 vec3; @@ -959,8 +959,8 @@ NxShapeDesc* SphereShape::CreateDesc() { NxSphereShapeDesc* desc = new NxSphereShapeDesc(); AssignToDesc(*desc); - - return desc; + + return desc; } void SphereShape::Save(lsl::SWriter* writer) @@ -974,20 +974,20 @@ void SphereShape::Load(lsl::SReader* reader) { _MyBase::Load(reader); - reader->ReadValue("radius", _radius); + reader->ReadValue("radius", _radius); } void SphereShape::AssignFromDesc(const NxSphereShapeDesc& desc, bool reloadShape) { _radius = desc.radius; - + _MyBase::AssignFromDesc(desc, reloadShape); } void SphereShape::AssignToDesc(NxSphereShapeDesc& desc) { desc.radius = _radius; - + _MyBase::AssignToDesc(desc); } @@ -1006,7 +1006,7 @@ void SphereShape::SetRadius(float value) _radius = value; if (GetNxShape()) - GetNxShape()->setRadius(value); + GetNxShape()->setRadius(value); } @@ -1021,8 +1021,8 @@ NxShapeDesc* CapsuleShape::CreateDesc() { NxCapsuleShapeDesc* desc = new NxCapsuleShapeDesc(); AssignToDesc(*desc); - - return desc; + + return desc; } void CapsuleShape::Save(lsl::SWriter* writer) @@ -1076,7 +1076,7 @@ void CapsuleShape::SetRadius(float value) _radius = value; if (GetNxShape()) - GetNxShape()->setRadius(value); + GetNxShape()->setRadius(value); } float CapsuleShape::GetHeight() const @@ -1360,7 +1360,7 @@ void WheelShape::Save(lsl::SWriter* writer) _MyBase::Save(writer); writer->WriteValue("radius", _radius); - writer->WriteValue("suspensionTravel", _suspensionTravel); + writer->WriteValue("suspensionTravel", _suspensionTravel); { lsl::SWriter* child = writer->NewDummyNode("suspension"); child->WriteValue("damper", _suspension.damper); @@ -1388,14 +1388,14 @@ void WheelShape::Load(lsl::SReader* reader) reader->ReadValue("radius", _radius); reader->ReadValue("suspensionTravel", _suspensionTravel); if (lsl::SReader* child = reader->ReadValue("suspension")) - { + { child->ReadValue("damper", _suspension.damper); child->ReadValue("spring", _suspension.spring); child->ReadValue("targetValue", _suspension.targetValue); } - if (lsl::SReader* child = reader->ReadValue("longitudalTireForceFunction")) + if (lsl::SReader* child = reader->ReadValue("longitudalTireForceFunction")) LoadTireForceFunction(child, _longitudalTireForceFunction); - if (lsl::SReader* child = reader->ReadValue("lateralTireForceFunction")) + if (lsl::SReader* child = reader->ReadValue("lateralTireForceFunction")) LoadTireForceFunction(child, _lateralTireForceFunction); reader->ReadValue("inverseWheelMass", _inverseWheelMass); reader->ReadValue("wheelFlags", _wheelFlags); @@ -1449,7 +1449,7 @@ void WheelShape::SetRadius(float value) if (_radius != value) { _radius = value; - if (GetNxShape()) + if (GetNxShape()) GetNxShape()->setRadius(value); } } @@ -1464,7 +1464,7 @@ void WheelShape::SetSuspensionTravel(float value) if (_suspensionTravel != value) { _suspensionTravel = value; - if (GetNxShape()) + if (GetNxShape()) GetNxShape()->setSuspensionTravel(value); } } @@ -1477,8 +1477,8 @@ const NxSpringDesc& WheelShape::GetSuspension() const void WheelShape::SetSuspension(const NxSpringDesc& value) { _suspension = value; - if (GetNxShape()) - GetNxShape()->setSuspension(value); + if (GetNxShape()) + GetNxShape()->setSuspension(value); } const NxTireFunctionDesc& WheelShape::GetLongitudalTireForceFunction() const @@ -1489,8 +1489,8 @@ const NxTireFunctionDesc& WheelShape::GetLongitudalTireForceFunction() const void WheelShape::SetLongitudalTireForceFunction(const NxTireFunctionDesc& value) { _longitudalTireForceFunction = value; - if (GetNxShape()) - GetNxShape()->setLongitudalTireForceFunction(value); + if (GetNxShape()) + GetNxShape()->setLongitudalTireForceFunction(value); } const NxTireFunctionDesc& WheelShape::GetLateralTireForceFunction() const @@ -1501,8 +1501,8 @@ const NxTireFunctionDesc& WheelShape::GetLateralTireForceFunction() const void WheelShape::SetLateralTireForceFunction(const NxTireFunctionDesc& value) { _lateralTireForceFunction = value; - if (GetNxShape()) - GetNxShape()->setLateralTireForceFunction(value); + if (GetNxShape()) + GetNxShape()->setLateralTireForceFunction(value); } float WheelShape::GetInverseWheelMass() const @@ -1515,7 +1515,7 @@ void WheelShape::SetInverseWheelMass(float value) if (_inverseWheelMass != value) { _inverseWheelMass = value; - if (GetNxShape()) + if (GetNxShape()) GetNxShape()->setInverseWheelMass(value); } } @@ -1530,7 +1530,7 @@ void WheelShape::SetWheelFlags(UINT value) if (_wheelFlags != value) { _wheelFlags = value; - if (GetNxShape()) + if (GetNxShape()) GetNxShape()->setWheelFlags(value); } } @@ -1545,7 +1545,7 @@ void WheelShape::SetMotorTorque(float value) if (_motorTorque != value) { _motorTorque = value; - if (GetNxShape()) + if (GetNxShape()) GetNxShape()->setMotorTorque(value); } } @@ -1560,7 +1560,7 @@ void WheelShape::SetSteerAngle(float value) if (_steerAngle != value) { _steerAngle = value; - if (GetNxShape()) + if (GetNxShape()) GetNxShape()->setSteerAngle(value); } } @@ -1589,7 +1589,7 @@ Body::Body(Actor* actor): _actor(actor) void Body::Save(lsl::SWriter* writer) { - writer->WriteValue("mass", _desc.mass); + writer->WriteValue("mass", _desc.mass); D3DXVECTOR3 massLocalPose[4]; for (int i = 0; i < 3; ++i) @@ -1607,7 +1607,7 @@ void Body::Save(lsl::SWriter* writer) void Body::Load(lsl::SReader* reader) { reader->ReadValue("mass", _desc.mass); - + D3DXVECTOR3 massLocalPose[4]; if (reader->ReadValue("massLocalPose", massLocalPose[0], 12)) { @@ -1658,14 +1658,14 @@ void Shapes::RegisterClasses() classList.Add(); classList.Add(); classList.Add(); - classList.Add(); + classList.Add(); classList.Add(); } void Shapes::InsertItem(const Value& value) { _MyBase::InsertItem(value); - + //По идее все условия соотв. тому что фигура не будет создана к этому моменту, но однако при нескольких sender-ах может произойти преждевременный вызов ReloadNxActor() !!!!. На самом деле если объеденить все эвенты в один то здесь проверка не нужна, но пока... if (_owner->_nxActor && !value->GetNxShape()) _owner->CreateNxShape(value); @@ -1697,11 +1697,11 @@ Actor::~Actor() LSL_ASSERT(_children.size() == 0); if (_parent) - _parent->RemoveChild(this); + _parent->RemoveChild(this); SetScene(0); SetBody(0); - delete _shapes; + delete _shapes; } void Actor::CreateNxShape(Shape* shape) @@ -1713,7 +1713,7 @@ void Actor::CreateNxShape(Shape* shape) LocalToWorldPos(D3DXVECTOR3(shapeDesc->localPose.t.get()), pos, true); shapeDesc->localPose.t.set(pos); - //not all conditions is completed to create nxShape (neccesary params will be set next, NxTriangleMesh for example) + //not all conditions is completed to create nxShape (neccesary params will be set next, NxTriangleMesh for example) if (shapeDesc->isValid()) shape->SetNxShape(_nxActor->createShape(*shapeDesc)); else @@ -1769,7 +1769,7 @@ void Actor::FillShapeDescListIncludeChildren(_NxShapeDescList& shapeList) void Actor::UnpackActorShapeList(NxShape*const* begin, NxShape*const* end) { Shapes::iterator pShape = _shapes->begin(); - for (NxShape*const* iter = begin; iter != end; ++iter, ++pShape) + for (NxShape*const* iter = begin; iter != end; ++iter, ++pShape) (*pShape)->SetNxShape(*iter); } @@ -1779,10 +1779,10 @@ unsigned Actor::UnpackActorShapeListIncludeChildren(NxShape*const* shape, unsign if (!GetShapes().Empty()) { LSL_ASSERT(curShape < numShapes); - + unsigned endInd = curShape + GetShapes().Size(); UnpackActorShapeList(&shape[curShape], &shape[endInd]); - + nextInd = endInd; } for (Children::iterator iter = _children.begin(); iter != _children.end(); ++iter) @@ -1880,7 +1880,7 @@ void Actor::InitChildNxActor() void Actor::FreeChildNxActor() { - if (_nxActor) + if (_nxActor) { for (Shapes::iterator iter = _shapes->begin(); iter != _shapes->end(); ++iter) DestroyNxShape(*iter); @@ -1890,17 +1890,17 @@ void Actor::FreeChildNxActor() void Actor::InitNxActor() { - if (_parent) + if (_parent) InitChildNxActor(); - else + else InitRootNxActor(); } void Actor::FreeNxActor() { - if (_parent) + if (_parent) FreeChildNxActor(); - else + else FreeRootNxActor(); } @@ -1929,7 +1929,7 @@ void Actor::Save(lsl::SWriter* writer) } writer->WriteValue("shapes", _shapes); - writer->WriteRef("scene", _scene); + writer->WriteRef("scene", _scene); } void Actor::Load(lsl::SReader* reader) @@ -1968,12 +1968,12 @@ void Actor::OnFixUp(const FixUpNames& fixUpNames) void Actor::InsertChild(Actor* child) { LSL_ASSERT(!child->_parent); - + child->FreeNxActor(); // child->_parent = this; _children.push_back(child); - child->SetScene(_scene); + child->SetScene(_scene); // child->InitNxActor(); } @@ -2047,8 +2047,8 @@ void Actor::SetScene(Scene* value) for (Children::iterator iter = _children.begin(); iter != _children.end(); ++iter) (*iter)->SetScene(value); - if (_parent) - _parent->SetScene(value); + if (_parent) + _parent->SetScene(value); } } diff --git a/src/Rock3dEngine/source/px/Stream.cpp b/src/Rock3dEngine/source/px/Stream.cpp index fb75c9e2..ffb88fec 100644 --- a/src/Rock3dEngine/source/px/Stream.cpp +++ b/src/Rock3dEngine/source/px/Stream.cpp @@ -221,6 +221,6 @@ double MemoryReadBuffer::readDouble() const void MemoryReadBuffer::readBuffer(void* dest, NxU32 size) const { - memcpy(dest, buffer, size); - buffer += size; + memcpy(dest, buffer, size); + buffer += size; } diff --git a/src/Rock3dEngine/source/res/D3DXImageFile.cpp b/src/Rock3dEngine/source/res/D3DXImageFile.cpp index 0359f976..da369fcf 100644 --- a/src/Rock3dEngine/source/res/D3DXImageFile.cpp +++ b/src/Rock3dEngine/source/res/D3DXImageFile.cpp @@ -30,9 +30,9 @@ void D3DXImageFile::LoadFromStream(Resource& outData, std::istream& stream) tmpBuff.LoadFromStream(stream, ""); D3DXIMAGE_INFO info; - IDirect3DTexture9* tmpTex; + IDirect3DTexture9* tmpTex; HRESULT hr = D3DXCreateTextureFromFileInMemoryEx(driver->GetDevice(), tmpBuff.GetData(), tmpBuff.GetSize(), D3DX_FROM_FILE, D3DX_FROM_FILE, 1, 0, D3DFMT_UNKNOWN, D3DPOOL_SCRATCH, D3DX_DEFAULT, D3DX_DEFAULT, 0, &info, 0, &tmpTex); - + LSL_ASSERT(hr != D3DERR_NOTAVAILABLE); LSL_ASSERT(hr != D3DERR_OUTOFVIDEOMEMORY); LSL_ASSERT(hr != D3DERR_INVALIDCALL); @@ -93,7 +93,7 @@ void D3DXCubeImageFile::LoadFromStream(Resource& outData, std::istream& stream) tmpBuff.LoadFromStream(stream, ""); D3DXIMAGE_INFO info; - IDirect3DCubeTexture9* cubeTex; + IDirect3DCubeTexture9* cubeTex; HRESULT hr = D3DXCreateCubeTextureFromFileInMemoryEx(driver->GetDevice(), tmpBuff.GetData(), tmpBuff.GetSize(), D3DX_FROM_FILE, 1, 0, D3DFMT_UNKNOWN, D3DPOOL_SCRATCH, D3DX_DEFAULT, D3DX_DEFAULT, 0, &info, 0, &cubeTex); LSL_ASSERT(hr != D3DERR_NOTAVAILABLE); diff --git a/src/Rock3dEngine/source/res/GraphResource.cpp b/src/Rock3dEngine/source/res/GraphResource.cpp index 66beae48..77580866 100644 --- a/src/Rock3dEngine/source/res/GraphResource.cpp +++ b/src/Rock3dEngine/source/res/GraphResource.cpp @@ -8,11 +8,11 @@ namespace r3d namespace res { -const int VertexData::cElementSize[cElementEnd] = +const int VertexData::cElementSize[cElementEnd] = { - sizeof(D3DXVECTOR3), + sizeof(D3DXVECTOR3), sizeof(D3DXVECTOR4), - sizeof(D3DXVECTOR3), + sizeof(D3DXVECTOR3), sizeof(D3DCOLOR), sizeof(glm::vec2), sizeof(glm::vec2), @@ -135,7 +135,7 @@ void VertexData::ChangeFormat(const Format& value) SetFormat(value); Init(); - for (unsigned i = 0; i < _vertexCount; ++i) + for (unsigned i = 0; i < _vertexCount; ++i) for (unsigned j = 0; j < cElementEnd; ++j) if (_format.test(j) && tmpData._format.test(j)) { @@ -249,7 +249,7 @@ DWORD VertexData::GetFVF() const DWORD texSize = 0; for (unsigned i = 0; i < cElementEnd; ++i) - if (_format.test(i)) + if (_format.test(i)) switch (i) { case vtPos3: @@ -271,7 +271,7 @@ DWORD VertexData::GetFVF() const case vtTex1: ++texCnt; - texSize |= D3DFVF_TEXCOORDSIZE2(1); + texSize |= D3DFVF_TEXCOORDSIZE2(1); break; case vtNormal: @@ -505,14 +505,14 @@ unsigned TriFaceData::GetIndex(unsigned face, unsigned indTri) const { case D3DFMT_INDEX16: return *reinterpret_cast(GetData() + sizeof(unsigned short) * (face * 3 + indTri)); - + case D3DFMT_INDEX32: return *reinterpret_cast(GetData() + sizeof(unsigned) * (face * 3 + indTri)); - + default: LSL_ASSERT(false); return 0; - } + } } unsigned TriFaceData::GetSize() const @@ -563,18 +563,18 @@ void CalcTangentBasis(const D3DXVECTOR3 &p1, const D3DXVECTOR3 &p2, const D3DXVE D3DXVECTOR3 e2 = p3 - p1; glm::vec2 et1 = t2 - t1; glm::vec2 et2 = t3 - t1; - + float tmp = 0.0; if (fabsf(et1.x*et2.y - et1.y*et2.x)<0.0001f) tmp = 1.0f; else tmp = 1.0f / (et1.x*et2.y - et1.y*et2.x); - + tangent = (e1 * et2.y - e2 * et1.y) * tmp; binormal = (e2 * et1.x - e1 * et2.x) * tmp; - + D3DXVec3Normalize(&tangent, &tangent); - D3DXVec3Normalize(&binormal, &binormal); + D3DXVec3Normalize(&binormal, &binormal); } void MeshData::DoInit() @@ -621,7 +621,7 @@ void MeshData::DoUpdate() } } } - + void MeshData::DoLoadFromStream(std::istream& stream, const std::string& fileExt) { GetResFormats().GetInstance(fileExt).LoadFromStream(*this, stream); @@ -635,7 +635,7 @@ void MeshData::CalcTangentSpace() vb.ChangeFormat(format); LSL_ASSERT(vb.GetFormat(VertexData::vtPos3) && vb.GetFormat(VertexData::vtTex0) && vb.GetFormat(VertexData::vtTangent) && vb.GetFormat(VertexData::vtBinormal)); - + for (unsigned i = 0; i < vb.GetVertexCount(); ++i) { *vb[i].Tangent() = NullVector; @@ -647,7 +647,7 @@ void MeshData::CalcTangentSpace() unsigned a = fb.GetIndex(i, 0); unsigned b = fb.GetIndex(i, 1); unsigned c = fb.GetIndex(i, 2); - + D3DXVECTOR3 bin, tan; CalcTangentBasis(*vb[a].Pos3(), *vb[b].Pos3(), *vb[c].Pos3(), *vb[a].Tex0(), *vb[b].Tex0(), *vb[c].Tex0(), tan, bin); @@ -670,7 +670,7 @@ void MeshData::CalcTangentSpace() D3DXVECTOR3 tmpN = *vb[i].Normal(); D3DXVECTOR3 newT = tmpT - (D3DXVec3Dot(&tmpN, &tmpT) * tmpN); - D3DXVECTOR3 newB = tmpB - (D3DXVec3Dot(&tmpN, &tmpB) * tmpN) - (D3DXVec3Dot(&newT, &tmpB) * newT); + D3DXVECTOR3 newB = tmpB - (D3DXVec3Dot(&tmpN, &tmpB) * tmpN) - (D3DXVec3Dot(&newT, &tmpB) * newT); D3DXVec3Normalize(&newT, &newT); D3DXVec3Normalize(&newB, &newB); *vb[i].Tangent() = newT; @@ -683,7 +683,7 @@ void MeshData::CalcTangentSpace() { if (lenT > 0.5) D3DXVec3Cross(vb[i].Binormal(), &tmpN, vb[i].Tangent()); - else + else if (lenB > 0.5) D3DXVec3Cross(vb[i].Tangent(), vb[i].Binormal(), &tmpN); else @@ -697,7 +697,7 @@ void MeshData::CalcTangentSpace() D3DXVec3Cross(vb[i].Binormal(), &tmpN, vb[i].Tangent()); } } - else + else if (D3DXVec3Dot(vb[i].Binormal(), vb[i].Tangent()) > 0.9999f) D3DXVec3Cross(vb[i].Binormal(), &tmpN, vb[i].Tangent()); } @@ -850,7 +850,7 @@ unsigned GetVertexFVFSize(DWORD fvf) if (fvf & D3DFVF_DIFFUSE) sz += sizeof(float); - + unsigned texCnt = ((fvf & D3DFVF_TEXCOUNT_MASK) >> D3DFVF_TEXCOUNT_SHIFT); if (texCnt > 0) switch ((fvf >> 16) & 0x1) @@ -922,19 +922,19 @@ unsigned GetPrimitivesCount(D3DPRIMITIVETYPE primitiveType, UINT numControlPoint return numControlPoint; case D3DPT_LINELIST: - return numControlPoint / 2; + return numControlPoint / 2; case D3DPT_LINESTRIP: - return numControlPoint; + return numControlPoint; case D3DPT_TRIANGLELIST: - return numControlPoint / 3; + return numControlPoint / 3; case D3DPT_TRIANGLESTRIP: - return numControlPoint - 2; + return numControlPoint - 2; case D3DPT_TRIANGLEFAN: - return numControlPoint - 2; + return numControlPoint - 2; default: LSL_ASSERT(false); @@ -943,7 +943,7 @@ unsigned GetPrimitivesCount(D3DPRIMITIVETYPE primitiveType, UINT numControlPoint } void CopyPitchData(char* dest, unsigned destPitch, const char* src, unsigned srcPitch, unsigned srcRowSize, unsigned height) -{ +{ //Размер шага совпадает с байтовой длиной, замечательно! if (destPitch == srcPitch == srcRowSize) std::memcpy(dest, src, height * srcRowSize); diff --git a/src/Rock3dEngine/source/res/R3DFile.cpp b/src/Rock3dEngine/source/res/R3DFile.cpp index a7f7b0e7..3f912593 100644 --- a/src/Rock3dEngine/source/res/R3DFile.cpp +++ b/src/Rock3dEngine/source/res/R3DFile.cpp @@ -16,14 +16,14 @@ void R3DMeshFile::RegistredFile() -void R3DMeshFile::LoadFromStream(Resource& outData, std::istream& stream) +void R3DMeshFile::LoadFromStream(Resource& outData, std::istream& stream) { int version; bool leftCoordSys; - bool storedTexCoord; + bool storedTexCoord; int numVerts; int numFaces; - int numMaterials; + int numMaterials; //header stream.read((char*)&version, sizeof(int)); @@ -35,7 +35,7 @@ void R3DMeshFile::LoadFromStream(Resource& outData, std::istream& stream) vertFormat.set(VertexData::vtTex0, storedTexCoord); //Vertex buffer - stream.read((char*)&numVerts, sizeof(int)); + stream.read((char*)&numVerts, sizeof(int)); outData.vb.SetFormat(vertFormat); outData.vb.SetVertexCount(numVerts); outData.vb.Init(); @@ -45,7 +45,7 @@ void R3DMeshFile::LoadFromStream(Resource& outData, std::istream& stream) //Index buffer stream.read((char*)&numFaces, sizeof(int)); outData.fb.SetIndexFormat(D3DFMT_INDEX32); - outData.fb.SetFaceCount(numFaces); + outData.fb.SetFaceCount(numFaces); outData.fb.Init(); stream.read(outData.fb.GetData(), outData.fb.GetSize()); outData.fb.Update(); diff --git a/src/Rock3dGame/header/edit/Edit.h b/src/Rock3dGame/header/edit/Edit.h index f5c34b5c..6032063c 100644 --- a/src/Rock3dGame/header/edit/Edit.h +++ b/src/Rock3dGame/header/edit/Edit.h @@ -29,7 +29,7 @@ class Edit: public IEdit game::World* GetWorld(); IDataBase* GetDB(); - IMap* GetMap(); + IMap* GetMap(); ISceneControl* GetScControl(); }; diff --git a/src/Rock3dGame/header/edit/Map.h b/src/Rock3dGame/header/edit/Map.h index 63521b61..9eb673c1 100644 --- a/src/Rock3dGame/header/edit/Map.h +++ b/src/Rock3dGame/header/edit/Map.h @@ -57,14 +57,14 @@ class Map: public IMap void OnShiftAction(const D3DXVECTOR3& scrRayPos, const D3DXVECTOR3& scrRayVec); }; public: - typedef game::Map Inst; + typedef game::Map Inst; private: Edit* _edit; ITrace* _trace; bool _showBB; game::MapObj* PickInstMapObj(const D3DXVECTOR3& rayPos, const D3DXVECTOR3& rayVec); - + void ApplyShowBB(); void OnUpdateLevel(); @@ -83,7 +83,7 @@ class Map: public IMap unsigned GetCatCount(); // IMapObjRef GetFirst(unsigned cat); - void GetNext(unsigned cat, IMapObjRef& ref); + void GetNext(unsigned cat, IMapObjRef& ref); bool GetShowBBox() const; void SetShowBBox(bool value); diff --git a/src/Rock3dGame/header/edit/SceneControl.h b/src/Rock3dGame/header/edit/SceneControl.h index 44d49c5b..7ed729b3 100644 --- a/src/Rock3dGame/header/edit/SceneControl.h +++ b/src/Rock3dGame/header/edit/SceneControl.h @@ -19,7 +19,7 @@ class SceneControl: public ISceneControl SceneControl* _owner; bool _shiftAction; - + bool _clDrag; bool _startDrag; D3DXVECTOR3 _clDragOff; @@ -31,7 +31,7 @@ class SceneControl: public ISceneControl D3DXVECTOR3 _clStScale; // bool _clRotating; - glm::quat _clStartRot; + glm::quat _clStartRot; public: Control(SceneControl* owner); void ResetState(); @@ -41,7 +41,7 @@ class SceneControl: public ISceneControl }; private: Edit* _edit; - + SelMode _selMode; INodeRef _selNode; bool _linkBB; diff --git a/src/Rock3dGame/header/edit/Trace.h b/src/Rock3dGame/header/edit/Trace.h index d0d07614..e0155ef9 100644 --- a/src/Rock3dGame/header/edit/Trace.h +++ b/src/Rock3dGame/header/edit/Trace.h @@ -69,7 +69,7 @@ class Trace: public ITrace, public ExternImpl game::TraceGfx::PointLink* _link; D3DXVECTOR3 _dragRayPos; D3DXVECTOR3 _dragRayVec; - + void Reset(game::WayPoint* wayPoint); void NewLink(const D3DXVECTOR3& scrRayPos, const D3DXVECTOR3& scrRayVec); @@ -88,12 +88,12 @@ class Trace: public ITrace, public ExternImpl virtual void OnDrag(const D3DXVECTOR3& pos, const D3DXVECTOR3& scrRayPos, const D3DXVECTOR3& scrRayVec); // virtual void OnShiftAction(const D3DXVECTOR3& scrRayPos, const D3DXVECTOR3& scrRayVec); - + D3DXVECTOR3 GetPos() const; void SetPos(const D3DXVECTOR3& value); // glm::quat GetRot() const; - void SetRot(const glm::quat& value); + void SetRot(const glm::quat& value); // D3DXVECTOR3 GetScale() const; void SetScale(const D3DXVECTOR3& value); @@ -104,11 +104,11 @@ class Trace: public ITrace, public ExternImpl D3DXMATRIX GetMat() const; AABB GetAABB() const; - }; + }; private: Edit* _edit; game::TraceGfx* _traceGfx; - + IWayPathRef _selPath; IWayNodeRef _selNode; bool _enableVisualize; diff --git a/src/Rock3dGame/header/game/AICar.h b/src/Rock3dGame/header/game/AICar.h index da31d0ef..2b641d59 100644 --- a/src/Rock3dGame/header/game/AICar.h +++ b/src/Rock3dGame/header/game/AICar.h @@ -36,7 +36,7 @@ class AICar: IGameUser void Update(AICar* owner, float deltaTime, const Player::CarState& car); void SetCurTile(WayNode* value); - void SetNextTile(WayNode* value); + void SetNextTile(WayNode* value); WayNode* curTile; WayNode* nextTile; @@ -46,7 +46,7 @@ class AICar: IGameUser TrackVec freeTracks; //Заблокированные дорожки TrackVec lockTracks; - + //зона охвата по направлению движения машины float dirArea; //результирующее направление движения относительно машины @@ -109,9 +109,9 @@ class AICar: IGameUser AttackState _attack; PathState _path; - ControlState _control; + ControlState _control; - void UpdateAI(float deltaTime, const Player::CarState& car); + void UpdateAI(float deltaTime, const Player::CarState& car); public: AICar(Player* player); virtual ~AICar(); diff --git a/src/Rock3dGame/header/game/AIPlayer.h b/src/Rock3dGame/header/game/AIPlayer.h index 39d7ad4d..cf1d1930 100644 --- a/src/Rock3dGame/header/game/AIPlayer.h +++ b/src/Rock3dGame/header/game/AIPlayer.h @@ -78,17 +78,17 @@ class AIDebug: public Object private: AIDebug* _debug; - virtual bool OnHandleInput(const InputMessage& msg); + virtual bool OnHandleInput(const InputMessage& msg); public: Control(AIDebug* _debug); }; private: AISystem* _ai; AIPlayer* _aiPlayer; - + TraceGfx* _traceGfx; GrActor* _grActor; - Control* _control; + Control* _control; public: AIDebug(AISystem* ai, AIPlayer* aiPlayer); ~AIDebug(); diff --git a/src/Rock3dGame/header/game/AchievmentModel.h b/src/Rock3dGame/header/game/AchievmentModel.h index 93c542e1..6aba5889 100644 --- a/src/Rock3dGame/header/game/AchievmentModel.h +++ b/src/Rock3dGame/header/game/AchievmentModel.h @@ -25,7 +25,7 @@ class Achievment: public lsl::Object, protected IProgressEvent static const std::string cStateStr[cStateEnd]; private: AchievmentModel* _owner; - unsigned _classId; + unsigned _classId; State _state; int _price; std::string _name; @@ -131,7 +131,7 @@ class AchievmentCondition: protected IGameUser, protected IProgressEvent virtual ~AchievmentCondition(); virtual void SaveTo(lsl::SWriter* writer); - virtual void LoadFrom(lsl::SReader* reader); + virtual void LoadFrom(lsl::SReader* reader); void CompleteIteration(); void Complete(); @@ -147,7 +147,7 @@ class AchievmentCondition: protected IGameUser, protected IProgressEvent int iterCount() const; void iterCount(int value); - int reward() const; + int reward() const; void reward(int value); }; @@ -157,7 +157,7 @@ class AchievmentConditionBonus: public AchievmentCondition GameObject::BonusType _bonusType; int _bonusCount; int _bonusTotalCount; -protected: +protected: virtual void OnResetRaceState(); virtual void OnProcessEvent(unsigned id, EventData* data); public: @@ -172,13 +172,13 @@ class AchievmentConditionBonus: public AchievmentCondition class AchievmentConditionSpeedKill: public AchievmentCondition { -private: +private: int _killsNum; float _killsTime; float _time; int _curKills; -protected: +protected: virtual void OnResetRaceState(); virtual void OnProcessEvent(unsigned id, EventData* data); virtual void OnProgress(float deltaTime); @@ -187,7 +187,7 @@ class AchievmentConditionSpeedKill: public AchievmentCondition virtual ~AchievmentConditionSpeedKill(); virtual void SaveTo(lsl::SWriter* writer); - virtual void LoadFrom(lsl::SReader* reader); + virtual void LoadFrom(lsl::SReader* reader); int killsNum() const; void killsNum(int value); @@ -198,17 +198,17 @@ class AchievmentConditionSpeedKill: public AchievmentCondition class AchievmentConditionRaceKill: public AchievmentCondition { -private: +private: int _killsNum; int _curKills; -protected: +protected: virtual void OnResetRaceState(); virtual void OnProcessEvent(unsigned id, EventData* data); public: AchievmentConditionRaceKill(const Desc& desc); virtual void SaveTo(lsl::SWriter* writer); - virtual void LoadFrom(lsl::SReader* reader); + virtual void LoadFrom(lsl::SReader* reader); int killsNum() const; void killsNum(int value); @@ -216,17 +216,17 @@ class AchievmentConditionRaceKill: public AchievmentCondition class AchievmentConditionLapPass: public AchievmentCondition { -private: +private: int _place; unsigned _lapCount; -protected: +protected: virtual void OnResetRaceState(); virtual void OnProcessEvent(unsigned id, EventData* data); public: AchievmentConditionLapPass(const Desc& desc); virtual void SaveTo(lsl::SWriter* writer); - virtual void LoadFrom(lsl::SReader* reader); + virtual void LoadFrom(lsl::SReader* reader); int place() const; void place(int value); @@ -234,9 +234,9 @@ class AchievmentConditionLapPass: public AchievmentCondition class AchievmentConditionDodge: public AchievmentCondition { -private: +private: int _damage; -protected: +protected: virtual void OnResetRaceState(); virtual void OnProcessEvent(unsigned id, EventData* data); public: @@ -245,9 +245,9 @@ class AchievmentConditionDodge: public AchievmentCondition class AchievmentConditionLapBreak: public AchievmentCondition { -private: +private: int _place; -protected: +protected: virtual void OnResetRaceState(); virtual void OnProcessEvent(unsigned id, EventData* data); public: @@ -256,9 +256,9 @@ class AchievmentConditionLapBreak: public AchievmentCondition class AchievmentConditionSurvival: public AchievmentCondition { -private: +private: int _curDeaths; -protected: +protected: virtual void OnResetRaceState(); virtual void OnProcessEvent(unsigned id, EventData* data); public: @@ -267,9 +267,9 @@ class AchievmentConditionSurvival: public AchievmentCondition class AchievmentConditionFirstKill: public AchievmentCondition { -private: +private: int _curKills; -protected: +protected: virtual void OnResetRaceState(); virtual void OnProcessEvent(unsigned id, EventData* data); public: @@ -305,7 +305,7 @@ class AchievmentModel: public lsl::Component static const std::string cDoubleKill; static const std::string cTripleKill; static const std::string cDevastator; - static const std::string cMegaRacer; + static const std::string cMegaRacer; static const std::string cBulletProf; static const std::string cBreakRacer; static const std::string cMedicate; @@ -338,7 +338,7 @@ class AchievmentModel: public lsl::Component int _points; void GenerateLib(); - void LoadLib(); + void LoadLib(); protected: virtual void Save(lsl::SWriter* writer); virtual void Load(lsl::SReader* reader); @@ -347,20 +347,20 @@ class AchievmentModel: public lsl::Component ~AchievmentModel(); void SaveLib(); - void ResetRaceState(); + void ResetRaceState(); Achievment* Add(unsigned classId, const std::string& name); template _Type* Add(const std::string& name); void Delete(const std::string id); void Delete(Achievment* item); - void DeleteAll(); + void DeleteAll(); Achievment* Get(const std::string& name) const; AchievmentCondition* AddCond(unsigned classId, const std::string& name); template _Type* AddCond(const std::string& name); void DeleteCond(const std::string id); void DeleteCond(Achievment* item); - void DeleteAllCond(); + void DeleteAllCond(); AchievmentCondition* GetCond(const std::string& name); void AddPoints(int value); diff --git a/src/Rock3dGame/header/game/CameraManager.h b/src/Rock3dGame/header/game/CameraManager.h index 39a396d5..4b38d5e9 100644 --- a/src/Rock3dGame/header/game/CameraManager.h +++ b/src/Rock3dGame/header/game/CameraManager.h @@ -9,7 +9,7 @@ namespace r3d namespace game { - + class CameraManager: public ICameraManager { friend class World; @@ -25,7 +25,7 @@ class CameraManager: public ICameraManager D3DXVECTOR3 _staticVec1; D3DXVECTOR3 _staticVec2; D3DXVECTOR3 _staticVec3; - glm::quat _staticQuat1; + glm::quat _staticQuat1; bool OnMouseMoveEvent(const MouseMove& mMove); bool OnHandleInput(const InputMessage& msg); @@ -57,13 +57,13 @@ class CameraManager: public ICameraManager float _flyCurTime; float _flyTime; - graph::Camera* _camera; + graph::Camera* _camera; Player* _player; - GraphManager::LightSrc* _light; + GraphManager::LightSrc* _light; D3DXVECTOR4 _target; void OrthoCullOffset(); - void SyncLight(); + void SyncLight(); public: CameraManager(World* world); ~CameraManager(); @@ -89,7 +89,7 @@ class CameraManager: public ICameraManager const D3DXVECTOR3& GetStableAngle(); void SetStableAngle(const D3DXVECTOR3& value); - Style GetStyle() const; + Style GetStyle() const; void ChangeStyle(Style value); float GetAspect() const; diff --git a/src/Rock3dGame/header/game/ControlManager.h b/src/Rock3dGame/header/game/ControlManager.h index 055a17bd..7740a56f 100644 --- a/src/Rock3dGame/header/game/ControlManager.h +++ b/src/Rock3dGame/header/game/ControlManager.h @@ -80,7 +80,7 @@ enum GameAction { gaBreak, gaWheelLeft, gaWheelRight, - + gaShot, gaShot1, gaShot2, @@ -122,10 +122,10 @@ struct InputMessage }; class ControlEvent: public Object -{ +{ public: virtual bool OnMouseClickEvent(const MouseClick& mClick) {return false;} - virtual bool OnMouseMoveEvent(const MouseMove& mMove) {return false;} + virtual bool OnMouseMoveEvent(const MouseMove& mMove) {return false;} virtual bool OnHandleInput(const InputMessage& msg) {return false;} virtual void OnInputProgress(float deltaTime) {} @@ -140,7 +140,7 @@ class ControlManager typedef lsl::Vector GameActions; private: World* _world; - EventList _eventList; + EventList _eventList; ControllerState* _controllerStates[cControllerTypeEnd]; VirtualKey _gameKeys[cControllerTypeEnd][cGameActionEnd]; @@ -166,8 +166,8 @@ class ControlManager void InsertEvent(ControlEvent* value); void RemoveEvent(ControlEvent* value); - AsyncKey GetAsyncKey(unsigned key); - AsyncKey IsMouseDown(MouseKey key); + AsyncKey GetAsyncKey(unsigned key); + AsyncKey IsMouseDown(MouseKey key); lsl::Point GetMousePos(); glm::vec2 GetMouseVec(); diff --git a/src/Rock3dGame/header/game/DataBase.h b/src/Rock3dGame/header/game/DataBase.h index f0d27ae1..a479bbb7 100644 --- a/src/Rock3dGame/header/game/DataBase.h +++ b/src/Rock3dGame/header/game/DataBase.h @@ -15,7 +15,7 @@ class DataBase: public Component enum GraphType { gtDefFixPipe, - gtDef, + gtDef, gtRefl, gtBumb, gtPlanarRefl, @@ -97,7 +97,7 @@ class DataBase: public Component NxMaterial* _nxCarMaterial1; NxMaterial* _nxCarMaterial2; NxMaterial* _nxWheelMaterial; - NxMaterial* _trackMaterial; + NxMaterial* _trackMaterial; NxMaterial* _borderMaterial; void InitMapObjLib(); @@ -112,14 +112,14 @@ class DataBase: public Component graph::IVBMeshNode* AddMeshNode(MapObj* mapObj, const std::string& mesh, int meshId = -1); graph::Sprite* AddSprite(game::MapObj* mapObj, bool fixDir, const glm::vec2& sizes); graph::Sprite* AddFxSprite(game::MapObj* mapObj, const std::string& libMat, const Vec3Range& speedPos, const Vec3Range& speedScale, const QuatRange& speedRot, bool autoRot, graph::SceneNode::AnimMode animMode, float animDuration, float frame = 0.0f, bool dir = false, const glm::vec2& sizes = IdentityVec2); - graph::PlaneNode* AddPlaneNode(game::MapObj* mapObj, const glm::vec2& sizes); + graph::PlaneNode* AddPlaneNode(game::MapObj* mapObj, const glm::vec2& sizes); graph::PlaneNode* AddFxPlane(game::MapObj* mapObj, const std::string& libMat, const Vec3Range& speedPos, const Vec3Range& speedScale, const QuatRange& speedRot, graph::SceneNode::AnimMode animMode, float animDuration, float frame = 0.0f, const glm::vec2& sizes = IdentityVec2); - + graph::LibMaterial* AddLibMat(graph::MaterialNode* node, const std::string& libMat); graph::LibMaterial* AddLibMat(graph::IVBMeshNode* node, const std::string& libMat); void AddToGraph(graph::Actor& grActor, GraphType type, bool dynamic, bool morph = false, bool disableShadows = false, bool cullOpacity = false); void AddToGraph(MapObj* mapObj, GraphType type, bool dynamic, bool morph = false, bool disableShadows = false, bool cullOpacity = false); - + // px::BoxShape* AddPxBox(MapObj* mapObj, const AABB& aabb); px::BoxShape* AddPxBox(MapObj* mapObj); @@ -127,13 +127,13 @@ class DataBase: public Component px::CapsuleShape* AddPxCapsule(MapObj* mapObj); px::SphereShape* AddPxSpere(MapObj* mapObj, float radius); px::TriangleMeshShape* AddPxMesh(MapObj* mapObj, const std::string& meshName, int meshId = -1); - px::ConvexShape* AddPxConvex(MapObj* mapObj, const std::string& meshName, int meshId = -1); + px::ConvexShape* AddPxConvex(MapObj* mapObj, const std::string& meshName, int meshId = -1); px::Body* AddPxBody(MapObj* mapObj, const NxBodyDesc& desc); px::Body* AddPxBody(MapObj* mapObj, float mass, const D3DXVECTOR3* massPos); - + // CarWheel* AddWheel(unsigned index, GameCar& car, const std::string& meshName, const std::string& matName, const D3DXVECTOR3& pos, bool steer, bool lead, CarWheel* master, const CarDesc& carDesc); - + // graph::FxParticleSystem* AddFxSystem(graph::SceneNode* node, graph::FxManager* manager, graph::FxParticleSystem::ChildStyle childStyle = graph::FxParticleSystem::csProxy); graph::FxParticleSystem* AddFxSystem(MapObj* mapObj, graph::FxManager* manager, graph::FxParticleSystem::ChildStyle childStyle = graph::FxParticleSystem::csProxy); @@ -159,7 +159,7 @@ class DataBase: public Component void LoadWorld4(); void LoadWorld5(); void LoadWorld6(); - void LoadMisc(); + void LoadMisc(); void LoadCrush(); void LoadBonus(); void LoadWeapons(); diff --git a/src/Rock3dGame/header/game/DialogMenu2.h b/src/Rock3dGame/header/game/DialogMenu2.h index f92ced95..7483aa27 100644 --- a/src/Rock3dGame/header/game/DialogMenu2.h +++ b/src/Rock3dGame/header/game/DialogMenu2.h @@ -23,13 +23,13 @@ class AcceptDialog: public MenuFrame gui::PlaneFon* _menuBg; gui::Label* _labels[cLabelEnd]; - gui::Button* _menuItems[cMenuItemEnd]; + gui::Button* _menuItems[cMenuItemEnd]; protected: virtual void OnShow(bool value); virtual void OnAdjustLayout(const glm::vec2& vpSize); virtual void OnInvalidate(); - virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); + virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); public: AcceptDialog(Menu* menu, gui::Widget* parent); virtual ~AcceptDialog(); @@ -46,16 +46,16 @@ class AcceptDialog: public MenuFrame class WeaponDialog: public MenuFrame { private: - enum Label {mlInfo, mlMoney, mlDamage, mlName, cLabelEnd}; + enum Label {mlInfo, mlMoney, mlDamage, mlName, cLabelEnd}; private: gui::PlaneFon* _menuBg; - gui::Label* _labels[cLabelEnd]; + gui::Label* _labels[cLabelEnd]; protected: virtual void OnShow(bool value); virtual void OnAdjustLayout(const glm::vec2& vpSize); virtual void OnInvalidate(); - virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); + virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); public: WeaponDialog(Menu* menu, gui::Widget* parent); virtual ~WeaponDialog(); @@ -77,13 +77,13 @@ class InfoDialog: public MenuFrame gui::PlaneFon* _menuBg; gui::Label* _labels[cLabelEnd]; - gui::Button* _menuItems[cMenuItemEnd]; + gui::Button* _menuItems[cMenuItemEnd]; protected: virtual void OnShow(bool value); virtual void OnAdjustLayout(const glm::vec2& vpSize); virtual void OnInvalidate(); - virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); + virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); public: InfoDialog(Menu* menu, gui::Widget* parent); virtual ~InfoDialog(); @@ -99,7 +99,7 @@ class InfoDialog: public MenuFrame class MusicDialog: public MenuFrame { private: - enum Label {mlInfo, mlTitle, cLabelEnd}; + enum Label {mlInfo, mlTitle, cLabelEnd}; private: gui::PlaneFon* _menuBg; gui::Label* _labels[cLabelEnd]; @@ -108,7 +108,7 @@ class MusicDialog: public MenuFrame virtual void OnAdjustLayout(const glm::vec2& vpSize); virtual void OnInvalidate(); - virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); + virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); public: MusicDialog(Menu* menu, gui::Widget* parent); virtual ~MusicDialog(); @@ -127,12 +127,12 @@ class InfoMenu enum State {msLoading = 0, cStateEnd}; private: Menu* _menu; - State _state; + State _state; gui::Dummy* _root; gui::PlaneFon* _loadingFrame; - void ApplyState(State state); + void ApplyState(State state); public: InfoMenu(Menu* menu, gui::Widget* parent); virtual ~InfoMenu(); @@ -182,7 +182,7 @@ class UserChat: public MenuFrame void ShowInput(bool show, const lsl::stringW& name, const lsl::stringW& text, const D3DXCOLOR& nameColor); void ClearInput(); - void CharInput(wchar_t value); + void CharInput(wchar_t value); bool IsInputVisible() const; lsl::stringW inputText() const; diff --git a/src/Rock3dGame/header/game/Environment.h b/src/Rock3dGame/header/game/Environment.h index a6092ca2..d736167b 100644 --- a/src/Rock3dGame/header/game/Environment.h +++ b/src/Rock3dGame/header/game/Environment.h @@ -36,11 +36,11 @@ class Environment: public GameObjListener static std::pair cEnvGraphMap[]; private: World* _world; - + Wheater _wheater; WorldType _worldType; SyncFrameRate _syncFrameRate; - + Quality _shadowQuality; Quality _lightQuality; Quality _postEffQuality; @@ -63,7 +63,7 @@ class Environment: public GameObjListener bool _enableRain; bool _isoRain; - MapObj* _rain; + MapObj* _rain; void CreateRain(); void FreeRain(); @@ -71,7 +71,7 @@ class Environment: public GameObjListener void EnableSun(bool enable, bool enableShadow = true); void EnableLamp(bool enable, int index, float farDist = 20.0f); - void EnableLamps(bool enable); + void EnableLamps(bool enable); void EnableWater(bool enable); void EnablePlanarRefl(bool enable); void EnableGrass(bool enable); @@ -85,7 +85,7 @@ class Environment: public GameObjListener void ApplyCloudColor(); void ApplyWheater(); - void ApplyWorldType(); + void ApplyWorldType(); GraphManager* GetGraph(); CameraManager* GetCamera(); @@ -119,7 +119,7 @@ class Environment: public GameObjListener Wheater GetWheater() const; void SetWheater(Wheater value); - + WorldType GetWorldType() const; void SetWorldType(WorldType value); diff --git a/src/Rock3dGame/header/game/FinalMenu.h b/src/Rock3dGame/header/game/FinalMenu.h index 605058d9..f2b5b1b7 100644 --- a/src/Rock3dGame/header/game/FinalMenu.h +++ b/src/Rock3dGame/header/game/FinalMenu.h @@ -23,7 +23,7 @@ class FinalMenu: public MenuFrame struct Slide { - gui::PlaneFon* plane; + gui::PlaneFon* plane; }; typedef lsl::Vector Slides; private: diff --git a/src/Rock3dGame/header/game/FinishMenu.h b/src/Rock3dGame/header/game/FinishMenu.h index 65f3911a..f9435368 100644 --- a/src/Rock3dGame/header/game/FinishMenu.h +++ b/src/Rock3dGame/header/game/FinishMenu.h @@ -29,7 +29,7 @@ class FinishMenu: public MenuFrame, ControlEvent float duration; int plrId; }; - + static const int cBoxCount = 3; private: Box _boxes[cBoxCount]; diff --git a/src/Rock3dGame/header/game/GameBase.h b/src/Rock3dGame/header/game/GameBase.h index b7de40a2..972302b6 100644 --- a/src/Rock3dGame/header/game/GameBase.h +++ b/src/Rock3dGame/header/game/GameBase.h @@ -33,7 +33,7 @@ class GameObjListener: public virtual ObjReference dtEnergy, dtMine, dtTouch, - dtDeathPlane + dtDeathPlane }; enum BonusType @@ -238,7 +238,7 @@ class EventEffect: public Behavior void AddSound(snd::Sound* sound); void ClearSounds(); - const SoundList& GetSounds(); + const SoundList& GetSounds(); snd::Sound* GetSound(); void SetSound(snd::Sound* value); @@ -320,7 +320,7 @@ class LifeEffect: public EventEffect private: bool _play; public: - LifeEffect(Behaviors* owner); + LifeEffect(Behaviors* owner); virtual void OnProgress(float deltaTime); }; @@ -374,7 +374,7 @@ class SlowEffect: public EventEffect protected: virtual void OnDestroyEffect(MapObj* sender); public: - SlowEffect(Behaviors* owner); + SlowEffect(Behaviors* owner); virtual void OnProgress(float deltaTime); }; @@ -385,7 +385,7 @@ class SoundMotor: public Behavior private: snd::Sound* _sndIdle; snd::Sound* _sndRPM; - + bool _init; float _curRPM; snd::Source3d* _srcIdle; @@ -423,8 +423,8 @@ class SoundMotor: public Behavior class GusenizaAnim: public Behavior { typedef Behavior _MyBase; -private: - float _xAnimOff; +private: + float _xAnimOff; public: GusenizaAnim(Behaviors* owner); virtual ~GusenizaAnim(); @@ -435,7 +435,7 @@ class GusenizaAnim: public Behavior class PodushkaAnim: public Behavior { typedef Behavior _MyBase; -private: +private: int _targetTag; graph::IVBMeshNode* _target; protected: diff --git a/src/Rock3dGame/header/game/GameCar.h b/src/Rock3dGame/header/game/GameCar.h index fc85300c..669de521 100644 --- a/src/Rock3dGame/header/game/GameCar.h +++ b/src/Rock3dGame/header/game/GameCar.h @@ -37,7 +37,7 @@ class CarWheel: public GameObject MyContactModify* _myContactModify; px::WheelShape* _wheelShape; float _summAngle; - MapObjRec* _trailEff; + MapObjRec* _trailEff; _Trails* _trails; MapObj* _actTrail; @@ -52,10 +52,10 @@ class CarWheel: public GameObject protected: virtual void Save(lsl::SWriter* writer); virtual void Load(lsl::SReader* reader); - + void CreateWheelShape(); void CreateWheelShape(const NxWheelShapeDesc& desc); - void DestroyWheelShape(); + void DestroyWheelShape(); public: CarWheel(CarWheels* owner); virtual ~CarWheel(); @@ -84,7 +84,7 @@ class CarWheel: public GameObject const D3DXVECTOR3& GetOffset() const; void SetOffset(const D3DXVECTOR3& value); - bool invertWheel; + bool invertWheel; float _nReac; }; @@ -155,7 +155,7 @@ class GameCar: public GameObject int _curGear; CarMotorDesc _motor; MoveCarState _moveCar; - SteerWheelState _steerWheel; + SteerWheelState _steerWheel; float _kSteerControl; float _steerSpeed; float _steerRot; @@ -166,7 +166,7 @@ class GameCar: public GameObject float _wheelSteerK; D3DXVECTOR3 _angDamping; bool _gravEngine; - bool _clutchImmunity; + bool _clutchImmunity; float _maxSpeed; float _tireSpring; bool _disableColor; @@ -195,10 +195,10 @@ class GameCar: public GameObject GameCar(); virtual ~GameCar(); - virtual void OnPxSync(float alpha); + virtual void OnPxSync(float alpha); virtual void OnProgress(float deltaTime); virtual void OnFixedStep(float deltaTime); - + virtual GameCar* IsCar(); void LockClutch(float strength); @@ -289,7 +289,7 @@ class GameCar: public GameObject bool IsWheelsContact() const; bool IsBodyContact() const; - Wheels& GetWheels(); + Wheels& GetWheels(); //struct Contact //{ @@ -298,7 +298,7 @@ class GameCar: public GameObject // const NxShape* shape0; // const NxShape* shape1; //}; - //typedef lsl::List ContactList; + //typedef lsl::List ContactList; //ContactList contactList; static float GetSpeed(NxActor* nxActor, const D3DXVECTOR3& dir); diff --git a/src/Rock3dGame/header/game/GameEvent.h b/src/Rock3dGame/header/game/GameEvent.h index d618791d..b5c55dc7 100644 --- a/src/Rock3dGame/header/game/GameEvent.h +++ b/src/Rock3dGame/header/game/GameEvent.h @@ -120,7 +120,7 @@ enum GameEvent { cSteamUpdateLobbyMembers, cSteamLobbyGameCreated, cSteamHostCreated, - cSteamHostDisconnected, + cSteamHostDisconnected, cSteamHostList, cSteamAuthEnded, @@ -149,7 +149,7 @@ static const std::string cEventNameMap[cEventEnd] = { //player "playerOverboard", - "playerDeathMine", + "playerDeathMine", "playerMoveInverse", "playerLostControl", "playerLeadFinish", @@ -187,7 +187,7 @@ static const std::string cEventNameMap[cEventEnd] = { "steamUpdateLobbyMembers", "steamLobbyGameCreated", "steamHostCreated", - "steamHostDisconnected", + "steamHostDisconnected", "steamHostList", "steamAuthEnded" diff --git a/src/Rock3dGame/header/game/GameMode.h b/src/Rock3dGame/header/game/GameMode.h index 660e3c07..813ead0a 100644 --- a/src/Rock3dGame/header/game/GameMode.h +++ b/src/Rock3dGame/header/game/GameMode.h @@ -12,7 +12,7 @@ namespace game { class GameMode: ControlEvent -{ +{ public: struct Track { @@ -23,8 +23,8 @@ class GameMode: ControlEvent void SetSound(snd::Sound* value) {lsl::Object::ReplaceRef(sound, value); sound = value;} - Track& operator=(const Track& ref) - { + Track& operator=(const Track& ref) + { SetSound(ref.sound); name = ref.name; band = ref.band; @@ -110,8 +110,8 @@ class GameMode: ControlEvent //допустить последовательные повторения для одного и того же игрока bool repeatPlayer; // - Voices voices; - }; + Voices voices; + }; typedef std::map Comments; class Commentator: snd::Source::Report, IGameUser @@ -127,7 +127,7 @@ class GameMode: ControlEvent float _timeSilience; void Play(const Sounds& sounds, bool replace); - bool Next(); + bool Next(); void CheckVoice(Voice& voice); virtual void OnStreamEnd(snd::Proxy* sender, snd::PlayMode mode); @@ -167,9 +167,9 @@ class GameMode: ControlEvent static const int cGoRace3 = 3; static const int cGoRace = 4; - enum PrefCamera {pcThirdPerson = 0, pcIsometric, cPrefCameraEnd}; + enum PrefCamera {pcThirdPerson = 0, pcIsometric, cPrefCameraEnd}; - static const lsl::string cPrefCameraStr[cPrefCameraEnd]; + static const lsl::string cPrefCameraStr[cPrefCameraEnd]; private: World* _world; Race* _race; @@ -181,7 +181,7 @@ class GameMode: ControlEvent Languages _languages; lsl::string _language; - + CommentatorStyles _commentatorStyles; lsl::string _commentatorStyle; PrefCamera _prefCamera; @@ -199,31 +199,31 @@ class GameMode: ControlEvent Users _users; bool _discreteVideoChanged; bool _prefCameraAutodetect; - + snd::Source* _music; snd::Source::Report* _musicReport; MusicCat* _menuMusic; MusicCat* _gameMusic; float _fadeMusic; float _fadeSpeedMusic; - - Commentator* _commentator; + + Commentator* _commentator; Menu* _menu; int _startRace; bool _prepareGame; bool _startGame; - float _startUpTime; + float _startUpTime; float _movieTime; std::string _movieFileName; gui::PlaneFon* _guiLogo; gui::PlaneFon* _guiLogo2; - gui::PlaneFon* _guiStartup; + gui::PlaneFon* _guiStartup; MapObj* _semaphore; float _goRaceTime; float _finishTime; - + void PrepareGame(); void StartGame(); void FreeIntro(); @@ -232,9 +232,9 @@ class GameMode: ControlEvent void DoStartRace(); void DoExitRace(); - + void SaveGameOpt(lsl::SWriter* writer); - void LoadGameOpt(lsl::SReader* reader, bool discreteVideoChanges); + void LoadGameOpt(lsl::SReader* reader, bool discreteVideoChanges); void SaveConfig(lsl::SWriter* writer); void LoadConfig(lsl::SReader* reader, bool discreteVideoChanges); void ResetConfig(); @@ -271,7 +271,7 @@ class GameMode: ControlEvent void Terminate(); bool IsStartgame() const; unsigned time() const; - + void LoadConfig(bool discreteVideoChanges); void SaveConfig(); void SaveGame(bool saveProfile); @@ -289,7 +289,7 @@ class GameMode: ControlEvent bool IsStartRace() const; bool IsRaceFinish() const; - bool ChangePlanet(Planet* planet); + bool ChangePlanet(Planet* planet); void Pause(bool pause); bool IsPaused() const; @@ -297,7 +297,7 @@ class GameMode: ControlEvent void PlayMusic(const Track& track, snd::Source::Report* report, snd::seek_pos pos = 0, bool showInfo = false); void StopMusic(); void FadeInMusic(float sVolume = -1, float speed = 1.0f); - void FadeOutMusic(float sVolume = -1, float speed = 1.0f); + void FadeOutMusic(float sVolume = -1, float speed = 1.0f); snd::Sound* GetSound(const lsl::string& name, bool assertFind = true); void PlayMovie(const std::string& name); @@ -305,15 +305,15 @@ class GameMode: ControlEvent void CheckStartupMenu(); void OnResetView(); - void OnFinishFrameClose(); + void OnFinishFrameClose(); void OnFrame(float deltaTime, float pxAlpha); void OnGraphEvent(HWND hwnd, long eventCode, LONG_PTR param1, LONG_PTR param2); World* GetWorld(); - Race* GetRace(); + Race* GetRace(); Menu* GetMenu(); - NetGame* netGame(); + NetGame* netGame(); #ifdef STEAM_SERVICE SteamService* steamService(); #endif diff --git a/src/Rock3dGame/header/game/GameObject.h b/src/Rock3dGame/header/game/GameObject.h index 20d131fb..2708cd3c 100644 --- a/src/Rock3dGame/header/game/GameObject.h +++ b/src/Rock3dGame/header/game/GameObject.h @@ -34,7 +34,7 @@ class GameObject: public lsl::Component, public GameObjListener, public px::Acto }; struct MyEventData: public EventData - { + { int targetPlayerId; GameObject* target; float damage; @@ -45,16 +45,16 @@ class GameObject: public lsl::Component, public GameObjListener, public px::Acto }; private: MapObj* _mapObj; - Logic* _logic; - + Logic* _logic; + graph::Actor* _grActor; - px::Actor* _pxActor; + px::Actor* _pxActor; GameObject* _parent; Children _children; IncludeList* _includeList; ListenerList _listenerList; - Behaviors* _behaviors; + Behaviors* _behaviors; LiveState _liveState; //Начальное количество здоровья @@ -108,7 +108,7 @@ class GameObject: public lsl::Component, public GameObjListener, public px::Acto D3DXVECTOR3 _pxPrevVelocity; void SetSyncFrameEvent(bool value); - void SetBodyProgressEvent(bool value); + void SetBodyProgressEvent(bool value); protected: void Destroy(); @@ -132,7 +132,7 @@ class GameObject: public lsl::Component, public GameObjListener, public px::Acto virtual void LogicInited() {}; virtual bool OnContactModify(const px::Scene::OnContactModifyEvent& contact) {return true;} - virtual void OnContact(const px::Scene::OnContactEvent& contact); + virtual void OnContact(const px::Scene::OnContactEvent& contact); virtual void OnWake(); virtual void OnSleep(); @@ -210,7 +210,7 @@ class GameObject: public lsl::Component, public GameObjListener, public px::Acto virtual Proj* IsProj(); virtual GameCar* IsCar(); - + //Интерфейс пользователя для изменения трансформации //Локальные трансформации //Позиция @@ -222,7 +222,7 @@ class GameObject: public lsl::Component, public GameObjListener, public px::Acto void SetScale(float value); //Поворот const glm::quat& GetRot() const; - virtual void SetRot(const glm::quat& value); + virtual void SetRot(const glm::quat& value); //Абсолютные трансформации //Позиция D3DXVECTOR3 GetWorldPos() const; @@ -230,7 +230,7 @@ class GameObject: public lsl::Component, public GameObjListener, public px::Acto //Поворот glm::quat GetWorldRot() const; virtual void SetWorldRot(const glm::quat& value); - + void SetWorldDir(const D3DXVECTOR3& value); void SetWorldUp(const D3DXVECTOR3& value); @@ -255,7 +255,7 @@ class GameObject: public lsl::Component, public GameObjListener, public px::Acto const D3DXVECTOR3& GetPxPrevVelocity() const; LiveState GetLiveState() const; - + float GetMaxLife() const; void SetMaxLife(float value); diff --git a/src/Rock3dGame/header/game/HudMenu.h b/src/Rock3dGame/header/game/HudMenu.h index 2a531f30..f656b885 100644 --- a/src/Rock3dGame/header/game/HudMenu.h +++ b/src/Rock3dGame/header/game/HudMenu.h @@ -20,7 +20,7 @@ class PlayerStateFrame: public MenuFrame, public IGameUser gui::ViewPort3d* view; Slot* slot; gui::Mesh3d* mesh; - gui::Label* label; + gui::Label* label; }; struct Opponent @@ -29,7 +29,7 @@ class PlayerStateFrame: public MenuFrame, public IGameUser gui::Widget* dummy; gui::PlaneFon* point; - gui::Label* label; + gui::Label* label; glm::vec2 center; float radius; @@ -84,7 +84,7 @@ class PlayerStateFrame: public MenuFrame, public IGameUser gui::Label* _place; gui::ProgressBar* _lifeBar; gui::PlaneFon* _lifeBack; - Opponents _opponents; + Opponents _opponents; gui::PlaneFon* _guiTimer[5]; CarLife _carLifes[cCarLifeEnd]; @@ -107,7 +107,7 @@ class PlayerStateFrame: public MenuFrame, public IGameUser void InsertSlot(WeaponType type, Slot* slot); void ClearSlot(WeaponType type); - void ClearSlots(); + void ClearSlots(); void UpdateSlots(); void UpdateOpponents(); @@ -117,7 +117,7 @@ class PlayerStateFrame: public MenuFrame, public IGameUser void UpdateState(float deltaTime); - virtual void OnAdjustLayout(const glm::vec2& vpSize); + virtual void OnAdjustLayout(const glm::vec2& vpSize); virtual void OnInvalidate(); public: PlayerStateFrame(Menu* menu, HudMenu* hudMenu, gui::Widget* parent); @@ -156,7 +156,7 @@ class MiniMapFrame float sinAlpha2; float nodeRadius; bool ccw; - glm::vec2 edgeNorm; + glm::vec2 edgeNorm; }; typedef std::list Nodes; private: @@ -179,7 +179,7 @@ class MiniMapFrame void AlignNode(const Node& src, Node& dest, float cosErr, float sizeErr); void AlignMidNodes(Node& node1, Node& node2, float cosErr, float sizeErr); void BuildPath(WayPath& path, res::VertexData& data); - void UpdateMap(); + void UpdateMap(); Trace* GetTrace(); public: @@ -202,14 +202,14 @@ class HudMenu: INetGameUser, gui::Widget::Event, ControlEvent enum State {msMain = 0, cStateEnd}; private: Menu* _menu; - Player* _player; - State _state; + Player* _player; + State _state; gui::Dummy* _root; - + MiniMapFrame* _miniMapFrame; PlayerStateFrame* _playerStateFrame; - + void ApplyState(State state); protected: virtual void OnDisconnectedPlayer(NetPlayer* sender); @@ -223,10 +223,10 @@ class HudMenu: INetGameUser, gui::Widget::Event, ControlEvent void Show(bool value); void OnProgress(float deltaTime); - - Player* GetPlayer(); + + Player* GetPlayer(); gui::Widget* GetRoot(); - + State GetState() const; void SetState(State value); diff --git a/src/Rock3dGame/header/game/HumanPlayer.h b/src/Rock3dGame/header/game/HumanPlayer.h index b2d1b646..c2a23b3c 100644 --- a/src/Rock3dGame/header/game/HumanPlayer.h +++ b/src/Rock3dGame/header/game/HumanPlayer.h @@ -14,7 +14,7 @@ class HumanPlayer: public Object class Control: public ControlEvent { private: - HumanPlayer* _owner; + HumanPlayer* _owner; bool _accelDown; bool _backDown; @@ -30,7 +30,7 @@ class HumanPlayer: public Object enum WeaponType {stHyper = 0, stMine, stWeapon1, stWeapon2, stWeapon3, stWeapon4, cWeaponTypeEnd}; private: Player* _player; - Control* _control; + Control* _control; int _curWeapon; public: HumanPlayer(Player* player); @@ -39,8 +39,8 @@ class HumanPlayer: public Object void Shot(WeaponType weapon, MapObj* target); void Shot(WeaponType weapon); void ShotCurrent(); - void Shot(MapObj* target); - void Shot(); + void Shot(MapObj* target); + void Shot(); void ResetCar(); diff --git a/src/Rock3dGame/header/game/Logic.h b/src/Rock3dGame/header/game/Logic.h index a1452390..1112a76d 100644 --- a/src/Rock3dGame/header/game/Logic.h +++ b/src/Rock3dGame/header/game/Logic.h @@ -21,7 +21,7 @@ class LogicBehavior: public lsl::Object, public Serializable, protected IProgres { friend class LogicBehaviors; private: - LogicBehaviors* _owner; + LogicBehaviors* _owner; protected: void RegProgressEvent(); void UnregProgressEvent(); @@ -79,7 +79,7 @@ class LogicEventEffect: public LogicBehavior virtual void DeleteEffect(MapObj* mapObj); virtual void OnDestroyEffect(MapObj* sender) {} - + virtual void Save(lsl::SWriter* writer); virtual void Load(lsl::SReader* reader); public: @@ -108,7 +108,7 @@ class PairPxContactEffect: public LogicEventEffect { //альтернатива, некорректна //return (unsigned)actor1 + (unsigned)actor2 < (unsigned)key.actor1 + (unsigned)key.actor2; - + //с учетом перемены мест слагаемое не должно изменяться return actor1 == key.actor1 ? actor2 < key.actor2 : actor1 < key.actor1; } @@ -124,7 +124,7 @@ class PairPxContactEffect: public LogicEventEffect NxShape* shape1; NxShape* shape2; - D3DXVECTOR3 point; + D3DXVECTOR3 point; MapObj* effect; float time; @@ -156,7 +156,7 @@ class PairPxContactEffect: public LogicEventEffect ContactMap::iterator ReleaseContact(ContactMap::iterator iter, ContactList::iterator cIter1, ContactList::iterator cIter2, bool death, float deltaTime = 0.0f, float cRelTime = -1.0f); void ReleaseContacts(bool death); - void RemoveContactByEffect(MapObj* effect); + void RemoveContactByEffect(MapObj* effect); protected: virtual void OnDestroyEffect(MapObj* sender); virtual void OnContact(const px::Scene::OnContactEvent& contact1, const px::Scene::OnContactEvent& contact2); @@ -164,7 +164,7 @@ class PairPxContactEffect: public LogicEventEffect public: PairPxContactEffect(LogicBehaviors* owner); virtual ~PairPxContactEffect(); - + void InsertSound(snd::Sound* value); Sounds::iterator RemoveSound(Sounds::const_iterator iter); void RemoveSound(snd::Sound* sound); @@ -204,7 +204,7 @@ class Logic: public lsl::Object, public Serializable public: enum SndCategory {scMusic = 0, scEffects, scVoice, cSndCategoryEnd}; private: - typedef lsl::List GameObjList; + typedef lsl::List GameObjList; class PxSceneUser: public px::SceneUser { @@ -232,7 +232,7 @@ class Logic: public lsl::Object, public Serializable glm::vec2 _touchCarDamageForce; void InitSndCat(); - void FreeSndCat(); + void FreeSndCat(); protected: virtual void Save(lsl::SWriter* writer); virtual void Load(lsl::SReader* reader); @@ -264,7 +264,7 @@ class Logic: public lsl::Object, public Serializable snd::Source* CreateSndSource(SndCategory category); snd::Source3d* CreateSndSource3d(SndCategory category); void ReleaseSndSource(snd::Source* source); - + float GetVolume(SndCategory category); void SetVolume(SndCategory category, float value); void AutodetectVolume(); @@ -291,7 +291,7 @@ class Logic: public lsl::Object, public Serializable NetGame* GetNet(); px::Scene* GetPxScene(); snd::Engine* GetAudio(); - LogicBehaviors& GetBehaviors(); + LogicBehaviors& GetBehaviors(); }; } diff --git a/src/Rock3dGame/header/game/MainMenu2.h b/src/Rock3dGame/header/game/MainMenu2.h index eb3b9a80..7c97a75f 100644 --- a/src/Rock3dGame/header/game/MainMenu2.h +++ b/src/Rock3dGame/header/game/MainMenu2.h @@ -15,7 +15,7 @@ class MainMenu; class GameModeFrame: public MenuFrame { -private: +private: enum MenuItem {miChampionship = 0, miSkirmish, miBack, cMenuItemEnd}; private: MainMenu* _mainMenu; @@ -23,7 +23,7 @@ class GameModeFrame: public MenuFrame virtual void OnShow(bool value); virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); public: - GameModeFrame(Menu* menu, MainMenu* mainMenu, gui::Widget* parent); + GameModeFrame(Menu* menu, MainMenu* mainMenu, gui::Widget* parent); }; class DifficultyFrame: public MenuFrame, IGameUser @@ -38,13 +38,13 @@ class DifficultyFrame: public MenuFrame, IGameUser virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); virtual void OnProcessEvent(unsigned id, EventData* data); public: - DifficultyFrame(Menu* menu, MainMenu* mainMenu, gui::Widget* parent); + DifficultyFrame(Menu* menu, MainMenu* mainMenu, gui::Widget* parent); virtual ~DifficultyFrame(); }; class NetBrowserFrame: public MenuFrame, INetGameUser { -private: +private: enum MenuItem {miBack, cMenuItemEnd}; private: MainMenu* _mainMenu; @@ -53,7 +53,7 @@ class NetBrowserFrame: public MenuFrame, INetGameUser gui::Label* _info; gui::Grid* _grid; gui::Button* _downArrow; - gui::Button* _upArrow; + gui::Button* _upArrow; void UpdateGrid(); void AdjustGrid(const glm::vec2& vpSize); @@ -75,7 +75,7 @@ class NetBrowserFrame: public MenuFrame, INetGameUser class NetIPAddressFrame: public MenuFrame, ControlEvent { -private: +private: enum MenuItem {miConnect, miBack, cMenuItemEnd}; enum Label {mlIPAdress, mlInfo, cLabelEnd}; private: @@ -100,7 +100,7 @@ class NetIPAddressFrame: public MenuFrame, ControlEvent class LobbyFrame: public MenuFrame, IGameUser { -private: +private: enum MenuItem {miStart, miBack, cMenuItemEnd}; private: MainMenu* _mainMenu; @@ -109,7 +109,7 @@ class LobbyFrame: public MenuFrame, IGameUser gui::Label* _info; gui::Grid* _grid; gui::Button* _downArrow; - gui::Button* _upArrow; + gui::Button* _upArrow; void UpdateGrid(); void AdjustGrid(const glm::vec2& vpSize); @@ -121,7 +121,7 @@ class LobbyFrame: public MenuFrame, IGameUser virtual void OnShow(bool value); virtual void OnInvalidate(); virtual void OnAdjustLayout(const glm::vec2& vpSize); - virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); + virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); virtual void OnProcessEvent(unsigned id, EventData* data); public: @@ -131,7 +131,7 @@ class LobbyFrame: public MenuFrame, IGameUser class MatchmakingFrame: public MenuFrame, IGameUser { -private: +private: enum MenuItem {miBack, cMenuItemEnd}; private: MainMenu* _mainMenu; @@ -140,7 +140,7 @@ class MatchmakingFrame: public MenuFrame, IGameUser gui::Label* _info; gui::Grid* _grid; gui::Button* _downArrow; - gui::Button* _upArrow; + gui::Button* _upArrow; void UpdateGrid(); void AdjustGrid(const glm::vec2& vpSize); @@ -152,7 +152,7 @@ class MatchmakingFrame: public MenuFrame, IGameUser virtual void OnShow(bool value); virtual void OnInvalidate(); virtual void OnAdjustLayout(const glm::vec2& vpSize); - virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); + virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); virtual void OnProcessEvent(unsigned id, EventData* data); public: @@ -162,7 +162,7 @@ class MatchmakingFrame: public MenuFrame, IGameUser class SteamBrowserFrame: public MenuFrame, IGameUser, INetGameUser { -private: +private: enum MenuItem {miBack, cMenuItemEnd}; private: MainMenu* _mainMenu; @@ -171,7 +171,7 @@ class SteamBrowserFrame: public MenuFrame, IGameUser, INetGameUser gui::Label* _info; gui::Grid* _grid; gui::Button* _downArrow; - gui::Button* _upArrow; + gui::Button* _upArrow; void UpdateGrid(); void AdjustGrid(const glm::vec2& vpSize); @@ -183,7 +183,7 @@ class SteamBrowserFrame: public MenuFrame, IGameUser, INetGameUser virtual void OnShow(bool value); virtual void OnInvalidate(); virtual void OnAdjustLayout(const glm::vec2& vpSize); - virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); + virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); virtual void OnProcessEvent(unsigned id, EventData* data); @@ -200,8 +200,8 @@ class SteamBrowserFrame: public MenuFrame, IGameUser, INetGameUser class ServerTypeFrame: public MenuFrame { -private: - enum MenuItem {miLocal = 0, +private: + enum MenuItem {miLocal = 0, #ifdef STEAM_SERVICE #ifndef _RETAIL miSteam, @@ -215,13 +215,13 @@ class ServerTypeFrame: public MenuFrame virtual void OnShow(bool value); virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); public: - ServerTypeFrame(Menu* menu, MainMenu* mainMenu, gui::Widget* parent); + ServerTypeFrame(Menu* menu, MainMenu* mainMenu, gui::Widget* parent); }; class ClientTypeFrame: public MenuFrame { -private: - enum MenuItem {miConnectLan, miConnectIP, +private: + enum MenuItem {miConnectLan, miConnectIP, #ifdef STEAM_SERVICE #ifndef _RETAIL miConnectSteam, miConnectSteamLan, @@ -240,7 +240,7 @@ class ClientTypeFrame: public MenuFrame class NetworkFrame: public MenuFrame { -private: +private: enum MenuItem {miCreate = 0, miConnect, miBack, cMenuItemEnd}; enum Label {mlIPAdress, cLabelEnd}; private: @@ -248,8 +248,8 @@ class NetworkFrame: public MenuFrame gui::Label* _labels[cLabelEnd]; protected: - virtual void OnShow(bool value); - virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); + virtual void OnShow(bool value); + virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); public: NetworkFrame(Menu* menu, MainMenu* mainMenu, gui::Widget* parent); virtual ~NetworkFrame(); @@ -259,7 +259,7 @@ class NetworkFrame: public MenuFrame class TournamentFrame: public MenuFrame { -private: +private: enum MenuItem {miContinue = 0, miNewGame, miLoad, miBack, cMenuItemEnd}; private: MainMenu* _mainMenu; @@ -272,7 +272,7 @@ class TournamentFrame: public MenuFrame class CreditsFrame: public MenuFrame { -private: +private: enum MenuItem {miBack, cMenuItemEnd}; private: MainMenu* _mainMenu; @@ -292,7 +292,7 @@ class CreditsFrame: public MenuFrame class ProfileFrame: public MenuFrame { -private: +private: enum MenuItem {miBack, cMenuItemEnd}; private: MainMenu* _mainMenu; @@ -300,12 +300,12 @@ class ProfileFrame: public MenuFrame gui::Grid* _grid; gui::Button* _downArrow; - gui::Button* _upArrow; + gui::Button* _upArrow; void AdjustGrid(const glm::vec2& vpSize); void ScrollGrid(int step); void UpdateGrid(); -protected: +protected: virtual void OnShow(bool value); virtual void OnInvalidate(); virtual void OnAdjustLayout(const glm::vec2& vpSize); @@ -318,11 +318,11 @@ class ProfileFrame: public MenuFrame class MainFrame: public MenuFrame { -private: +private: enum MenuItem {miSingle = 0, miNetwork, miOptions, miAuthors, miExit, cMenuItemEnd}; private: MainMenu* _mainMenu; -protected: +protected: virtual void OnShow(bool value); virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); public: @@ -356,12 +356,12 @@ class MainMenu: IGameUser, INetGameUser Race::Profile* _steamHostProfile; bool _steamHostStarting; bool _steamConnecting; - + MainFrame* _mainFrame; GameModeFrame* _gameMode; NetBrowserFrame* _netBrowser; NetworkFrame* _network; - ProfileFrame* _profile; + ProfileFrame* _profile; TournamentFrame* _tournament; CreditsFrame* _credits; DifficultyFrame* _difficultyFrame; @@ -382,7 +382,7 @@ class MainMenu: IGameUser, INetGameUser virtual void OnDisconnected(net::INetConnection* sender); virtual void OnConnectionFailed(net::INetConnection* sender, unsigned error); virtual void OnConnectedPlayer(NetPlayer* sender); - virtual void OnDisconnectedPlayer(NetPlayer* sender); + virtual void OnDisconnectedPlayer(NetPlayer* sender); public: MainMenu(Menu* menu, gui::Widget* parent); virtual ~MainMenu(); diff --git a/src/Rock3dGame/header/game/Map.h b/src/Rock3dGame/header/game/Map.h index 36e59562..5e28304b 100644 --- a/src/Rock3dGame/header/game/Map.h +++ b/src/Rock3dGame/header/game/Map.h @@ -14,7 +14,7 @@ class Map: public lsl::Component { private: typedef Component _MyBase; -public: +public: typedef std::map Objects; static const unsigned cDefMapObjId = 0; @@ -35,7 +35,7 @@ class Map: public lsl::Component private: World* _world; Objects _objects; - MapObjList* _mapObjList[MapObjLib::cCategoryEnd]; + MapObjList* _mapObjList[MapObjLib::cCategoryEnd]; MapObj* _ground; game::Trace* _trace; diff --git a/src/Rock3dGame/header/game/MapObj.h b/src/Rock3dGame/header/game/MapObj.h index 8645f020..8c8a6c18 100644 --- a/src/Rock3dGame/header/game/MapObj.h +++ b/src/Rock3dGame/header/game/MapObj.h @@ -13,7 +13,7 @@ class GameObject; class MapObj; class Player; -enum GameObjType +enum GameObjType { gotGameObj = 0, @@ -77,7 +77,7 @@ class MapObjLib: public RecordLib, public IMapObjLib private: Category _category; protected: - virtual Record* CreateRecord(const Record::Desc& desc); + virtual Record* CreateRecord(const Record::Desc& desc); public: MapObjLib(Category category, lsl::SerialNode* rootSrc); @@ -117,7 +117,7 @@ class MapObj: public lsl::Object MapObjRec* _record; //Указывает что загрузка ведется из деск установленного в SetDesc, т.е. загружаться должна уже source часть - bool _loadFromRecord; + bool _loadFromRecord; void CreateGameObj(); protected: @@ -184,7 +184,7 @@ class MapObjects: public lsl::Collection void UnlockCont(); bool IsContLocked() const; - void SpecialListChanged(const Value& value, bool remove); + void SpecialListChanged(const Value& value, bool remove); protected: virtual void InsertItem(const Value& value); virtual void RemoveItem(const Value& value); @@ -196,7 +196,7 @@ class MapObjects: public lsl::Collection MapObjects(GameObject* owner); void Death(int damageType, GameObject* target); - + void OnProgress(float deltaTime); void OnProgressSpecial(float deltaTime); @@ -209,7 +209,7 @@ class MapObjects: public lsl::Collection MapObj::ClassList::MyClassInst* classInst = MapObj::classList.FindByClass<_Class>(); if (!classInst) throw lsl::Error("MapObject& Add(const std::string& name)"); - + return Add(classInst->GetKey(), baseName); } @@ -237,11 +237,11 @@ template _Class& MapObj::GetGameObj() template _Class& MapObj::SetGameObj() { LSL_ASSERT(_classList); - + ClassList::MyClassInst* classInst = _classList->FindByClass<_Class>(); if (!classInst) throw lsl::Error("MapObject::SetGameObj()"); - + return lsl::StaticCast<_Class&>(SetGameObj(classInst->GetKey())); } diff --git a/src/Rock3dGame/header/game/Menu.h b/src/Rock3dGame/header/game/Menu.h index eb0e946f..529dbc1c 100644 --- a/src/Rock3dGame/header/game/Menu.h +++ b/src/Rock3dGame/header/game/Menu.h @@ -129,7 +129,7 @@ class Menu: IGameUser, INetGameUser //минимально-поддерживаемое static const glm::vec2 cMinWinSize; //максимально-поддерживаемое - static const glm::vec2 cMaxWinSize; + static const glm::vec2 cMaxWinSize; static glm::vec2 GetImageSize(gui::Material& material); //масштабирование до newSize с сохранением форматного соотношения Aspect @@ -139,14 +139,14 @@ class Menu: IGameUser, INetGameUser static glm::vec2 StretchImage(gui::Material& material, const glm::vec2& size, bool keepAspect = true, bool fillRect = false, bool scaleDown = true, bool scaleUp = true); static glm::quat GetIsoRot(); private: - GameMode* _game; + GameMode* _game; MyControlEvent* _controlEvent; MyDisconnectEvent* _disconnectEvent; MySyncModeEvent* _syncModeEvent; MySteamErrorEvent* _steamErrorEvent; MySteamSavingEvent* _steamSavingEvent; snd::Source* _audioSource; - SoundSheme* _soundShemes[cSoundShemeTypeEnd]; + SoundSheme* _soundShemes[cSoundShemeTypeEnd]; NavElementsList _navElementsList; State _state; @@ -154,7 +154,7 @@ class Menu: IGameUser, INetGameUser bool _optionsVisible; bool _startOptionsVisible; - gui::PlaneFon* _screenFon; + gui::PlaneFon* _screenFon; gui::PlaneFon* _cursor; n::MainMenu* _mainMenu2; @@ -172,10 +172,10 @@ class Menu: IGameUser, INetGameUser n::MusicDialog* _musicDlg; n::UserChat* _userChat; float _weaponTime; - float _messageTime; + float _messageTime; float _musicTime; - void SetScreenFon(bool init); + void SetScreenFon(bool init); void SetMainMenu2(bool init); void SetRaceMenu2(bool init); void SetHudMenu(bool init); @@ -312,13 +312,13 @@ class Menu: IGameUser, INetGameUser //race void StartRace(); - void ExitRace(); + void ExitRace(); void RegUser(IGameUser* user); void UnregUser(IGameUser* user); void SendEvent(unsigned id, EventData* data = NULL); virtual void OnProcessEvent(unsigned id, EventData* data); - + gui::Dummy* CreateDummy(gui::Widget* parent, gui::Widget::Event* guiEvent, SoundShemeType soundSheme = cSoundShemeTypeEnd); gui::PlaneFon* CreatePlane(gui::Widget* parent, gui::Widget::Event* guiEven, graph::Tex2DResource* image, bool imageSize, const glm::vec2& size = IdentityVec2, gui::Material::Blending blend = gui::Material::bmOpaque, SoundShemeType soundSheme = cSoundShemeTypeEnd); gui::PlaneFon* CreatePlane(gui::Widget* parent, gui::Widget::Event* guiEven, const std::string& image, bool imageSize, const glm::vec2& size = IdentityVec2, gui::Material::Blending blend = gui::Material::bmOpaque, SoundShemeType soundSheme = cSoundShemeTypeEnd); @@ -326,7 +326,7 @@ class Menu: IGameUser, INetGameUser gui::Button* CreateSpaceArrowButton(gui::Widget* parent, gui::Widget::Event* guiEvent, const glm::vec2& size = IdentityVec2); // gui::Button* Menu::CreateMenuButton(const lsl::string& name, const std::string& font, const std::string& norm, const std::string& sel, gui::Widget* parent, gui::Widget::Event* guiEvent, const glm::vec2& size, gui::Button::Style style, const D3DXCOLOR& textColor, SoundShemeType soundSheme); - gui::Button* CreateMenuButton(StringValue name, const std::string& font, const std::string& norm, const std::string& sel, gui::Widget* parent, gui::Widget::Event* guiEvent, const glm::vec2& size = IdentityVec2, gui::Button::Style style = gui::Button::bsSimple, const D3DXCOLOR& textColor = clrWhite, SoundShemeType soundSheme = ssButton1); + gui::Button* CreateMenuButton(StringValue name, const std::string& font, const std::string& norm, const std::string& sel, gui::Widget* parent, gui::Widget::Event* guiEvent, const glm::vec2& size = IdentityVec2, gui::Button::Style style = gui::Button::bsSimple, const D3DXCOLOR& textColor = clrWhite, SoundShemeType soundSheme = ssButton1); gui::Button* CreateMenuButton(const std::string& name, gui::Widget* parent, gui::Widget::Event* guiEvent, const glm::vec2& size = IdentityVec2, SoundShemeType soundSheme = ssButton1); gui::Button* CreateMenuButton(StringValue name, gui::Widget* parent, gui::Widget::Event* guiEvent, const glm::vec2& size = IdentityVec2, SoundShemeType soundSheme = ssButton1); gui::Button* CreateMenuButton2(StringValue name, gui::Widget* parent, gui::Widget::Event* guiEvent); @@ -338,7 +338,7 @@ class Menu: IGameUser, INetGameUser gui::TrackBar* CreateTrackBar(gui::Widget* parent, gui::Widget::Event* guiEvent, const glm::vec2& size); gui::ListBox* CreateListBox(gui::Widget* parent, gui::Widget::Event* guiEvent, const glm::vec2& size = glm::vec2(200.0f, 600.0f), const glm::vec2& itemSize = glm::vec2(75.0f, 75.0f), const glm::vec2& itemSpace = glm::vec2(10.0f, 10.0f)); gui::ProgressBar* CreateBar(gui::Widget* parent, gui::Widget::Event* guiEvent, const std::string& front, const std::string& back, gui::ProgressBar::Style style = gui::ProgressBar::psHorizontal); - gui::ChargeBar* CreateChargeBar(gui::Widget* parent, gui::Widget::Event* guiEvent, unsigned maxCharge, unsigned curCharge); + gui::ChargeBar* CreateChargeBar(gui::Widget* parent, gui::Widget::Event* guiEvent, unsigned maxCharge, unsigned curCharge); gui::ColorList* CreateColorList(gui::Widget* parent, gui::Widget::Event* guiEvent, const glm::vec2& size); gui::ViewPort3d* CreateItemBox(gui::Widget* parent, gui::Widget::Event* guiEvent, graph::IndexedVBMesh* mesh, graph::Tex2DResource* meshTex); gui::Button* CreateCloseButton(gui::Widget* parent, gui::Widget::Event* guiEvent, const glm::vec2& size = IdentityVec2); @@ -349,7 +349,7 @@ class Menu: IGameUser, INetGameUser gui::ViewPort3d* CreateViewPort3d(gui::Widget* parent, gui::Widget::Event* guiEvent, const std::string& fon, gui::ViewPort3d::Style style = gui::ViewPort3d::msStatic, bool isoRot = true, bool fonSize = true, const glm::vec2& size = IdentityVec2, SoundShemeType soundSheme = cSoundShemeTypeEnd); gui::Mesh3d* CreateMesh3d(gui::ViewPort3d* parent, graph::IndexedVBMesh* mesh, graph::Tex2DResource* meshTex, int meshId = -1); gui::ViewPort3d* CreateMesh3dBox(gui::Widget* parent, gui::Widget::Event* guiEvent, graph::IndexedVBMesh* mesh, graph::Tex2DResource* meshTex, gui::ViewPort3d::Style style = gui::ViewPort3d::msStatic, SoundShemeType soundSheme = cSoundShemeTypeEnd); - gui::Plane3d* CreatePlane3d(gui::ViewPort3d* parent, const std::string& fon, const glm::vec2& size); + gui::Plane3d* CreatePlane3d(gui::ViewPort3d* parent, const std::string& fon, const glm::vec2& size); void ReleaseWidget(gui::Widget* widget); @@ -384,7 +384,7 @@ class Menu: IGameUser, INetGameUser float GetVolume(Logic::SndCategory cat); void SetVolume(Logic::SndCategory cat, float value); - + graph::Tex2DResource* GetTexture(const std::string& name, bool ifNullThrow = true); graph::IndexedVBMesh* GetMesh(const std::string& name); graph::TextFont* GetFont(const std::string& name); @@ -395,7 +395,7 @@ class Menu: IGameUser, INetGameUser bool HasString(StringValue value); bool HasString(const std::string& value); lsl::string FormatCurrency(int val, lsl::string unit = ""); - + glm::vec2 GetAspectSize(); const graph::DisplayModes& GetDisplayModes(); @@ -411,7 +411,7 @@ class Menu: IGameUser, INetGameUser void SetDisableVideo(bool value); void SaveGameOpt(); - + const lsl::string& GetLanguage() const; void SetLanguage(const lsl::string& value); const Language* GetLanguageParam() const; @@ -431,7 +431,7 @@ class Menu: IGameUser, INetGameUser void PlayMovie(const std::string& name); bool IsMoviePlaying() const; - void RegNavElements(gui::Widget* key, const NavElements& value); + void RegNavElements(gui::Widget* key, const NavElements& value); void UnregNavElements(gui::Widget* key); void SetNavElements(gui::Widget* key, bool reg, NavElement elements[], int count); NavElementsList::iterator GetNavElements(gui::Widget* key); diff --git a/src/Rock3dGame/header/game/MenuSystem.h b/src/Rock3dGame/header/game/MenuSystem.h index 71c37595..1e9636c2 100644 --- a/src/Rock3dGame/header/game/MenuSystem.h +++ b/src/Rock3dGame/header/game/MenuSystem.h @@ -7,7 +7,7 @@ namespace game { class Menu; - + class MenuFrame: public gui::Widget::Event { public: diff --git a/src/Rock3dGame/header/game/OptionsMenu.h b/src/Rock3dGame/header/game/OptionsMenu.h index 24a0021e..3de0d384 100644 --- a/src/Rock3dGame/header/game/OptionsMenu.h +++ b/src/Rock3dGame/header/game/OptionsMenu.h @@ -27,13 +27,13 @@ class GameFrame: public MenuFrame gui::Button* _upArrow; gui::Label* _labels[cLabelEnd]; - gui::StepperBox* _steppers[cStepperEnd]; + gui::StepperBox* _steppers[cStepperEnd]; gui::PlaneFon* _itemsBg[cLabelEnd]; void AdjustGrid(const glm::vec2& vpSize); void ScrollGrid(int step); - void LoadCfg(); + void LoadCfg(); protected: virtual void OnShow(bool value); virtual void OnAdjustLayout(const glm::vec2& vpSize); @@ -50,18 +50,18 @@ class GameFrame: public MenuFrame class MediaFrame: public MenuFrame { -private: +private: enum Label {mlResolution = 0, mlFiltering, mlMultisampling, mlShadow, mlEnv, mlLight, mlPostProcess, mlWindowMode, cLabelEnd}; - enum Stepper {dbResolution = 0, dbFiltering, dbMultisampling, dbShadow, dbEnv, dbLight, dbPostProcess, dbWindowMode, cStepperEnd}; + enum Stepper {dbResolution = 0, dbFiltering, dbMultisampling, dbShadow, dbEnv, dbLight, dbPostProcess, dbWindowMode, cStepperEnd}; private: - OptionsMenu* _optionsMenu; + OptionsMenu* _optionsMenu; gui::Label* _labels[cLabelEnd]; - gui::StepperBox* _steppers[cStepperEnd]; + gui::StepperBox* _steppers[cStepperEnd]; gui::PlaneFon* _itemsBg[cLabelEnd]; void LoadCfg(); -protected: +protected: virtual void OnShow(bool value); virtual void OnAdjustLayout(const glm::vec2& vpSize); virtual void OnInvalidate(); @@ -88,14 +88,14 @@ class NetworkTab: public MenuFrame gui::VolumeBar* _volumeBars[cVolumeBarEnd]; gui::PlaneFon* _itemsBg[cLabelEnd]; - void LoadCfg(); + void LoadCfg(); void ApplyVolume(bool revertChanges); protected: virtual void OnShow(bool value); virtual void OnAdjustLayout(const glm::vec2& vpSize); virtual void OnInvalidate(); - virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); + virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); public: NetworkTab(Menu* menu, OptionsMenu* optionsMenu, gui::Widget* parent); virtual ~NetworkTab(); @@ -131,7 +131,7 @@ class ControlsFrame: public MenuFrame, ControlEvent void AdjustGrid(const glm::vec2& vpSize); void ScrollGrid(int step); - void LoadCfg(); + void LoadCfg(); protected: virtual void OnShow(bool value); virtual void OnAdjustLayout(const glm::vec2& vpSize); @@ -165,7 +165,7 @@ class OptionsMenu: public gui::Widget::Event ButtonLR* operator->() {return this;} }; private: - Menu* _menu; + Menu* _menu; State _state; gui::Dummy* _root; @@ -173,7 +173,7 @@ class OptionsMenu: public gui::Widget::Event gui::Button* _menuItems[cMenuItemEnd]; gui::Button* _stateItems[cStateEnd]; gui::PlaneFon* _menuBgMask; - gui::PlaneFon* _menuBg; + gui::PlaneFon* _menuBg; MediaFrame* _mediaFrame; GameFrame* _gameFrame; @@ -187,7 +187,7 @@ class OptionsMenu: public gui::Widget::Event //true - if need reload bool ApplyChanges(); protected: - virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); + virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); virtual bool OnMouseEnter(gui::Widget* sender, const gui::MouseMove& mMove); virtual void OnMouseLeave(gui::Widget* sender, bool wasReset); virtual void OnFocusChanged(gui::Widget* sender); @@ -226,7 +226,7 @@ class StartOptionsMenu: public MenuFrame gui::PlaneFon* _menuBg; gui::Label* _labels[cLabelEnd]; - gui::StepperBox* _steppers[cStepperEnd]; + gui::StepperBox* _steppers[cStepperEnd]; gui::PlaneFon* _itemsBg[cLabelEnd]; gui::Button* _menuItems[cMenuItemEnd]; @@ -238,7 +238,7 @@ class StartOptionsMenu: public MenuFrame virtual void OnAdjustLayout(const glm::vec2& vpSize); virtual void OnInvalidate(); - virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); + virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); virtual bool OnSelect(gui::Widget* sender, Object* item); public: StartOptionsMenu(Menu* menu, gui::Widget* parent); diff --git a/src/Rock3dGame/header/game/Player.h b/src/Rock3dGame/header/game/Player.h index 86d38c3b..3ceb9aa5 100644 --- a/src/Rock3dGame/header/game/Player.h +++ b/src/Rock3dGame/header/game/Player.h @@ -136,7 +136,7 @@ class MobilityItem: public SlotItem MobilityItem(Slot* slot); virtual MobilityItem* IsMobilityItem(); - + void ApplyChanges(); virtual float CalcLife(const CarFunc& func); @@ -171,7 +171,7 @@ class ArmorItem: public MobilityItem private: bool _armor4Installed; - Race* GetRace() const; + Race* GetRace() const; protected: virtual const std::string& DoGetName() const; virtual const std::string& DoGetInfo() const; @@ -203,9 +203,9 @@ class WeaponItem: public SlotItem float _damage; int _chargeCost; - virtual void TransformChanged(); + virtual void TransformChanged(); void ApplyWpnDesc(); -protected: +protected: virtual void OnCreateCar(MapObj* car); virtual void OnDestroyCar(MapObj* car); @@ -224,7 +224,7 @@ class WeaponItem: public SlotItem bool IsReadyShot(); MapObjRec* GetMapObj(); - void SetMapObj(MapObjRec* value); + void SetMapObj(MapObjRec* value); //0 - бесконечно //>0 - область значений @@ -277,7 +277,7 @@ class DroidItem: public WeaponItem float _time; protected: virtual void OnCreateCar(MapObj* car); - virtual void OnDestroyCar(MapObj* car); + virtual void OnDestroyCar(MapObj* car); virtual void OnProgress(float deltaTime); virtual void Save(SWriter* writer); @@ -350,7 +350,7 @@ class Slot: public Object, public lsl::Serializable Player* GetPlayer(); Type GetType() const; - + Record* GetRecord(); void SetRecord(Record* value); }; @@ -368,7 +368,7 @@ class Player: public GameObjListener }; typedef lsl::List BonusProjs; public: - const float cTimeRestoreCar; + const float cTimeRestoreCar; enum HeadLightMode {hlmNone, hlmOne, hlmTwo}; enum HeadLight {hlFirst = 0, hlSecond, cHeadLightEnd}; @@ -384,7 +384,7 @@ class Player: public GameObjListener ~CarState(); void Update(float deltaTime); - + void SetCurTile(WayNode* value); void SetCurNode(WayNode* value); void SetLastNode(WayNode* value); @@ -392,7 +392,7 @@ class Player: public GameObjListener // WayNode* GetCurTile(bool lastCorrect = false) const; int GetPathIndex(bool lastCorrect = false) const; - bool IsMainPath(bool lastCorrect = false) const; + bool IsMainPath(bool lastCorrect = false) const; float GetPathLength(bool lastCorrect = false) const; //текущее пройденное расстояние float GetDist(bool lastCorrect = false) const; @@ -416,7 +416,7 @@ class Player: public GameObjListener D3DXVECTOR3 pos3; D3DXVECTOR3 dir3; glm::quat rot3; - D3DXMATRIX worldMat; + D3DXMATRIX worldMat; glm::vec2 pos; glm::vec2 dir; @@ -488,7 +488,7 @@ class Player: public GameObjListener static const unsigned cCheatEnableSlower = 1 << 0; static const unsigned cCheatEnableFaster = 1 << 1; - static const unsigned cColorsCount = 7; + static const unsigned cColorsCount = 7; static const D3DXCOLOR cLeftColors[cColorsCount]; static const D3DXCOLOR cRightColors[cColorsCount]; private: @@ -542,19 +542,19 @@ class Player: public GameObjListener void SetCheatK(const Player::CarState& car, float torqueK, float steerK); GraphManager* GetGraph(); - WayNode* GetLastNode(); + WayNode* GetLastNode(); protected: void SendEvent(unsigned id, EventData* data = NULL); virtual void OnDestroy(GameObject* sender); - virtual void OnLowLife(GameObject* sender, Behavior* behavior); + virtual void OnLowLife(GameObject* sender, Behavior* behavior); virtual void OnDeath(GameObject* sender, DamageType damageType, GameObject* target); void OnLapPass(); public: Player(Race* race); virtual ~Player(); - void OnProgress(float deltaTime); + void OnProgress(float deltaTime); //>0 искать соперников спереди машины //<0 искать соперников сзади машины diff --git a/src/Rock3dGame/header/game/Race.h b/src/Rock3dGame/header/game/Race.h index 866992da..dc7caed4 100644 --- a/src/Rock3dGame/header/game/Race.h +++ b/src/Rock3dGame/header/game/Race.h @@ -34,7 +34,7 @@ class Workshop Items _items; void SaveSlot(Slot* slot, const std::string& name); - + //база данных Slot* AddSlot(Record* record); void DelSlot(Slots::const_iterator iter); @@ -43,13 +43,13 @@ class Workshop void LoadWheels(); void LoadTruba(); - void LoadEngines(); + void LoadEngines(); void LoadArmors(); void LoadWeapons(); - void LoadLib(); - - const RecordLib& GetLib(); + void LoadLib(); + + const RecordLib& GetLib(); public: Workshop(Race* race); ~Workshop(); @@ -115,7 +115,7 @@ class Garage: lsl::Component const PlaceItem* FindItem(Record* slot) const; const PlaceItem* FindItem(Slot* slot) const; - + //активен bool active; //отобразить на модели @@ -149,7 +149,7 @@ class Garage: lsl::Component { bool head; D3DXVECTOR3 pos; - glm::vec2 size; + glm::vec2 size; }; typedef lsl::Vector NightLights; private: @@ -167,13 +167,13 @@ class Garage: lsl::Component PlaceSlot _slot[Player::cSlotTypeEnd]; Car(); - virtual ~Car(); + virtual ~Car(); public: void Assign(Car* ref); void ClearSlots(); void SaveTo(lsl::SWriter* writer, Garage* owner); - void LoadFrom(lsl::SReader* reader, Garage* owner); + void LoadFrom(lsl::SReader* reader, Garage* owner); MapObjRec* GetRecord(); void SetRecord(MapObjRec* value); @@ -211,7 +211,7 @@ class Garage: lsl::Component }; typedef lsl::List Cars; - typedef lsl::List Items; + typedef lsl::List Items; private: Race* _race; Cars _cars; @@ -229,17 +229,17 @@ class Garage: lsl::Component void LoadCars(); void LoadLib(); - - Workshop& GetShop(); + + Workshop& GetShop(); protected: virtual void Save(lsl::SWriter* writer); - virtual void Load(lsl::SReader* reader); + virtual void Load(lsl::SReader* reader); public: Garage(Race* race, const std::string& name); ~Garage(); //поиск машин - Cars::iterator FindCar(Car* car); + Cars::iterator FindCar(Car* car); Car* FindCar(MapObjRec* record); Car* FindCar(const std::string& name); @@ -264,7 +264,7 @@ class Garage: lsl::Component void MaxUpgradeCar(Player* player); float GetMobilitySkill(const MobilityItem::CarFunc& func); - float GetMobilitySkill(Car* car, Player* player, Player::SlotType type, int level); + float GetMobilitySkill(Car* car, Player* player, Player::SlotType type, int level); float GetArmorSkill(Garage::Car* car, Player* player, float& armorVal, float& maxArmorVal); float GetDamageSkill(Garage::Car* car, Player* player, float& damageVal, float& maxDamageVal); float GetSpeedSkill(Garage::Car* car, Player* player); @@ -289,7 +289,7 @@ class Garage: lsl::Component }; class Planet: public Object -{ +{ public: struct Price { @@ -300,10 +300,10 @@ class Planet: public Object int points; }; typedef lsl::Vector Prices; - + class Track: public Object { - friend Planet; + friend Planet; private: int _index; Planet* _planet; @@ -315,11 +315,11 @@ class Planet: public Object Environment::WorldType world; Environment::Wheater wheater; //число кругов - unsigned numLaps; + unsigned numLaps; int GetIndex() const; Planet* GetPlanet(); - + unsigned GetLapsCount(); }; @@ -334,7 +334,7 @@ class Planet: public Object Record* record; int charge; Player::SlotType type; - int pass; + int pass; }; typedef lsl::List Slots; @@ -355,11 +355,11 @@ class Planet: public Object int id; std::string name; std::string bonus; - graph::Tex2DResource* photo; + graph::Tex2DResource* photo; int maxPass; Cars cars; - Slots slots; + Slots slots; }; typedef lsl::List Players; @@ -367,7 +367,7 @@ class Planet: public Object //заплатив очки можно перейтий из psClosed в psOpen enum State {psOpen, psClosed, psUnavailable, psCompleted}; - enum WorldType {wtWorld1 = 0, wtWorld2, wtWorld3, wtWorld4, wtWorld5, wtWorld6, cWorldTypeEnd}; + enum WorldType {wtWorld1 = 0, wtWorld2, wtWorld3, wtWorld4, wtWorld5, wtWorld6, cWorldTypeEnd}; struct Wheater { @@ -390,7 +390,7 @@ class Planet: public Object Tracks _trackList; std::string _name; std::string _info; - RequestPoints _requestPoints; + RequestPoints _requestPoints; State _state; WorldType _worldType; Wheaters _wheaters; @@ -410,7 +410,7 @@ class Planet: public Object void StartPass(int pass); //проход завершен //pass = 0, планета была открыта - //pass 1...n пройден этап + //pass 1...n пройден этап void CompletePass(int pass); void SaveSlots(lsl::SWriter* writer, const std::string& name, Slots& mSlots, Tournament* owner); @@ -420,11 +420,11 @@ class Planet: public Object public: Planet(Race* race, int index); virtual ~Planet(); - + Track* AddTrack(int pass); void ClearTracks(); Track* NextTrack(Track* track); - TrackMap::const_iterator GetTracks(int pass) const; + TrackMap::const_iterator GetTracks(int pass) const; const Tracks& GetTracks() const; const TrackMap& GetTrackMap() const; const Tracks& GetTrackList() const; @@ -437,7 +437,7 @@ class Planet: public Object void StartPass(Player* player); void StartPass(); //следующий - void NextPass(); + void NextPass(); //текущий int GetPass() const; void SetPass(int value); @@ -460,11 +460,11 @@ class Planet: public Object void SetRequestPoints(const RequestPoints& value); int GetRequestPoints(int pass) const; - bool HasRequestPoints(int pass, int points) const; + bool HasRequestPoints(int pass, int points) const; State GetState() const; void SetState(State value); - + WorldType GetWorldType() const; void SetWorldType(WorldType value); @@ -490,7 +490,7 @@ class Planet: public Object void InsertCar(MapObjRec* car, int pass); void InsertCar(const lsl::string& name, int pass); void SetCars(const Cars& value); - void ClearCars(); + void ClearCars(); Cars::const_iterator FindCar(Garage::Car* car); const Cars& GetCars() const; @@ -504,12 +504,12 @@ class Planet: public Object class Tournament: Component { public: - typedef lsl::Vector Planets; + typedef lsl::Vector Planets; private: Race* _race; Planets _planets; Planets _gamers; - + Planet* _curPlanet; Planet::Track* _curTrack; Planet::Tracks _trackList; @@ -522,7 +522,7 @@ class Tournament: Component void LoadLib(); protected: virtual void Save(lsl::SWriter* writer); - virtual void Load(lsl::SReader* reader); + virtual void Load(lsl::SReader* reader); public: Tournament(Race* race, const std::string& name); ~Tournament(); @@ -534,7 +534,7 @@ class Tournament: Component Planet* NextPlanet(Planet* planet); Planet* PrevPlanet(Planet* planet); Planet* GetPlanet(int index); - + Planet* AddGamer(); void DelGamer(Planets::const_iterator iter); void ClearGamers(); @@ -552,7 +552,7 @@ class Tournament: Component Planet::Track& GetCurTrack(); int GetCurTrackIndex(); void SetCurTrack(Planet::Track* value); - const Planet::Tracks& GetTrackList() const; + const Planet::Tracks& GetTrackList() const; //track == NULL if need first track //return NULL if pass completed (tracks queue ended) Planet::Track* NextTrack(Planet::Track* track); @@ -579,7 +579,7 @@ class Race: public Component, IFixedStepEvent, ILateProgressEvent typedef lsl::Vector PlayerList; typedef lsl::Vector Humans; typedef lsl::Vector AIPlayers; - + enum Mode {rmChampionship = 0, rmSkirmish, cModeEnd}; struct Result @@ -591,7 +591,7 @@ class Race: public Component, IFixedStepEvent, ILateProgressEvent int money; int points; int pickMoney; - float voiceNameDur; + float voiceNameDur; bool operator==(const Result& result) const { @@ -607,8 +607,8 @@ class Race: public Component, IFixedStepEvent, ILateProgressEvent class Profile: public Object { protected: - Race* _race; - std::string _name; + Race* _race; + std::string _name; bool _netGame; Difficulty _difficulty; protected: @@ -635,11 +635,11 @@ class Race: public Component, IFixedStepEvent, ILateProgressEvent Difficulty difficulty() const; void difficulty(Difficulty value); }; - typedef lsl::Vector Profiles; + typedef lsl::Vector Profiles; class SnProfile: public Profile { - typedef Profile _MyBase; + typedef Profile _MyBase; protected: void SaveWorkshop(lsl::SWriter* writer); void LoadWorkshop(lsl::SReader* reader); @@ -657,11 +657,11 @@ class Race: public Component, IFixedStepEvent, ILateProgressEvent virtual void EnterGame(); virtual void SaveGame(lsl::SWriter* writer); - virtual void LoadGame(lsl::SReader* reader); + virtual void LoadGame(lsl::SReader* reader); public: SnProfile(Race* race, const std::string& name); }; - + class SkProfile: public Profile { typedef Profile _MyBase; @@ -677,7 +677,7 @@ class Race: public Component, IFixedStepEvent, ILateProgressEvent typedef lsl::List Planets; - static const float cSellDiscount; + static const float cSellDiscount; static const int cTournamentPlanetCount = 5; @@ -689,7 +689,7 @@ class Race: public Component, IFixedStepEvent, ILateProgressEvent static const int cCampaignMaxHumans = 3; // static const int cMaxPlayers = 8; - + //computers static const int cComputerBit = 0; // @@ -716,12 +716,12 @@ class Race: public Component, IFixedStepEvent, ILateProgressEvent // static const int cOpponent2 = 0x00000200; // - static const int cOpponent3 = 0x00000300; + static const int cOpponent3 = 0x00000300; //net static const int cDefaultNetSlot = 0; private: - GameMode* _game; + GameMode* _game; Profiles _profiles; Profile* _profile; @@ -732,7 +732,7 @@ class Race: public Component, IFixedStepEvent, ILateProgressEvent Mode _mode; bool _startRace; - bool _goRace; + bool _goRace; Results _results; bool _planetChampion; bool _passChampion; @@ -743,7 +743,7 @@ class Race: public Component, IFixedStepEvent, ILateProgressEvent int _tutorialStage; bool _springBorders; bool _enableMineBug; - + Workshop* _workshop; Garage* _garage; Tournament* _tournament; @@ -760,8 +760,8 @@ class Race: public Component, IFixedStepEvent, ILateProgressEvent //ИИ. Работает только в режиме гонки //Если научить режиму менеджера, то небходимо также просчитывать ИИ перед стартом гонки, пошагово AISystem* _aiSystem; - - void DisposePlayer(Player* player); + + void DisposePlayer(Player* player); //игрок завершил трасу, вызвается в порядке убывания по месту void CompleteRace(Player* player); @@ -817,7 +817,7 @@ class Race: public Component, IFixedStepEvent, ILateProgressEvent void ExitProfile(); void NewProfile(Mode mode, bool netGame, bool netClient); bool IsMatchStarted() const; - + void SaveProfile(); void LoadProfile(); void SaveLib(); @@ -830,7 +830,7 @@ class Race: public Component, IFixedStepEvent, ILateProgressEvent Profile* GetLastNetProfile(); void SetLastNetProfile(Profile* value); - Mode GetMode() const; + Mode GetMode() const; bool IsCampaign() const; bool IsSkirmish() const; @@ -838,7 +838,7 @@ class Race: public Component, IFixedStepEvent, ILateProgressEvent bool BuyItem(Player* player, int cost); void SellItem(Player* player, int cost, bool sellDiscount = true); int GetCost(int realCost); - int GetSellCost(int realCost, bool sellDiscount = true); + int GetSellCost(int realCost, bool sellDiscount = true); void HumanNextPlayer(); void ResetCarPos(); @@ -847,7 +847,7 @@ class Race: public Component, IFixedStepEvent, ILateProgressEvent void ExitRace(const Results* results = NULL); bool IsStartRace() const; - void GoRace(); + void GoRace(); bool IsRaceGo() const; bool GetCarChanged() const; @@ -867,15 +867,15 @@ class Race: public Component, IFixedStepEvent, ILateProgressEvent bool GetEnableMineBug() const; void SetEnableMineBug(bool value); - void SendEvent(unsigned id, EventData* data = NULL); - - void OnLapPass(Player* player); + void SendEvent(unsigned id, EventData* data = NULL); + + void OnLapPass(Player* player); GameMode* GetGame(); World* GetWorld(); DataBase* GetDB(); Map* GetMap(); - + Workshop& GetWorkshop(); Garage& GetGarage(); Tournament& GetTournament(); @@ -888,7 +888,7 @@ class Race: public Component, IFixedStepEvent, ILateProgressEvent bool GetPassChampion() const; void ResetChampion(); int GetTotalPoints() const; - + MapObjRec* GetMapObjRec(MapObjLib::Category category, const std::string& name); MapObjRec* GetCar(const std::string& name); Record* GetSlot(const std::string& name); diff --git a/src/Rock3dGame/header/game/RaceMenu2.h b/src/Rock3dGame/header/game/RaceMenu2.h index 50e31706..27249f62 100644 --- a/src/Rock3dGame/header/game/RaceMenu2.h +++ b/src/Rock3dGame/header/game/RaceMenu2.h @@ -80,7 +80,7 @@ class GarageFrame: public MenuFrame typedef std::list Cars; private: - RaceMenu* _raceMenu; + RaceMenu* _raceMenu; int _lastCarIndex; Cars _cars; CarData _carData; @@ -95,7 +95,7 @@ class GarageFrame: public MenuFrame gui::PlaneFon* _headerBg; gui::PlaneFon* _moneyBg; gui::PlaneFon* _stateBg; - + gui::ProgressBar* _speedBar; gui::ProgressBar* _armorBar; gui::ProgressBar* _damageBar; @@ -129,7 +129,7 @@ class GarageFrame: public MenuFrame virtual void OnShow(bool value); virtual void OnAdjustLayout(const glm::vec2& vpSize); virtual void OnInvalidate(); - virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); + virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); Garage::Car* car(); D3DXCOLOR color(); @@ -158,7 +158,7 @@ class WorkshopFrame: public MenuFrame gui::PlaneFon* chargeBox; gui::ProgressBar* chargeBar; gui::Button* chargeButton; - gui::PlaneFon* slotIcon; + gui::PlaneFon* slotIcon; }; struct DragItem @@ -172,7 +172,7 @@ class WorkshopFrame: public MenuFrame static const int cUndefInfo = -1; static const int cGoodInfo = 0; - static const int cSlotInfo = 1; + static const int cSlotInfo = 1; private: RaceMenu* _raceMenu; int _goodScroll; @@ -181,19 +181,19 @@ class WorkshopFrame: public MenuFrame gui::Widget* _overGood; gui::Widget* _overGood2; int _infoId; - int _numSelectedSlots; + int _numSelectedSlots; gui::Button* _menuItems[cMenuItemEnd]; gui::Label* _labels[cLabelEnd]; gui::PlaneFon* _bottomPanel; gui::PlaneFon* _topPanel; - gui::PlaneFon* _leftPanel; + gui::PlaneFon* _leftPanel; gui::PlaneFon* _moneyBg; - gui::PlaneFon* _stateBg; + gui::PlaneFon* _stateBg; gui::Grid* _goodGrid; gui::Button* _downArrow; - gui::Button* _upArrow; + gui::Button* _upArrow; gui::ProgressBar* _speedBar; gui::ProgressBar* _armorBar; @@ -208,7 +208,7 @@ class WorkshopFrame: public MenuFrame gui::ViewPort3d* AddGood(Slot* slot, int index, int count); void UpdateGoods(); void AdjustGood(); - void ScrollGood(int step); + void ScrollGood(int step); void StartDrag(Slot* slot, Player::SlotType slotType, int chargeCount); bool StopDrag(bool dropOut, bool intoGood); @@ -233,7 +233,7 @@ class WorkshopFrame: public MenuFrame void ShowInfo(Slot* slot, int cost, gui::Widget* sender, const glm::vec2& slotSize, int infoId); void ShowInfo(Slot* slot, gui::Widget* sender, const glm::vec2& slotSize, int infoId); void HideInfo(int infoId); - bool UpdateSlotInfo(gui::Widget* sender, const SlotBox& slotBox, Slot* slot, Player::SlotType type); + bool UpdateSlotInfo(gui::Widget* sender, const SlotBox& slotBox, Slot* slot, Player::SlotType type); void UpdateStats(); void UpdateBonusStats(Player::SlotType type, Slot* slot); @@ -261,12 +261,12 @@ class WorkshopFrame: public MenuFrame class GamersFrame: public MenuFrame, IGameUser { -private: +private: enum Label {mlInfo, mlName, mlBonus, cLabelEnd}; private: RaceMenu* _raceMenu; int _planetIndex; - + gui::Label* _labels[cLabelEnd]; gui::PlaneFon* _bottomPanel; @@ -285,7 +285,7 @@ class GamersFrame: public MenuFrame, IGameUser void NextPlanet(); int GetNextPlanetIndex(int sIndex); int GetPrevPlanetIndex(int sIndex); -protected: +protected: virtual void OnAdjustLayout(const glm::vec2& vpSize); virtual void OnShow(bool value); virtual void OnInvalidate(); @@ -306,15 +306,15 @@ class AngarFrame: public MenuFrame, IGameUser struct PlanetBox { - gui::ViewPort3d* viewport; + gui::ViewPort3d* viewport; gui::Button* slot; gui::Dummy* slotClip; gui::PlaneFon* doorDown; - gui::PlaneFon* doorUp; + gui::PlaneFon* doorUp; }; typedef std::vector Planets; private: - RaceMenu* _raceMenu; + RaceMenu* _raceMenu; int _planetIndex; int _planetPrevIndex; float _doorTime; @@ -323,14 +323,14 @@ class AngarFrame: public MenuFrame, IGameUser gui::Label* _labels[cLabelEnd]; gui::Dummy* _bottomPanelBg; - gui::PlaneFon* _bottomPanel; + gui::PlaneFon* _bottomPanel; gui::Grid* _planetGridBg; gui::Grid* _planetGrid; gui::PlaneFon* _planetInfo; gui::Button* _planetInfoClose; - gui::PlaneFon* _planetBoss; + gui::PlaneFon* _planetBoss; gui::ViewPort3d* _planetBossCar; - Planets _planets; + Planets _planets; PlanetBox& AddPlanet(Planet* car, int index); void UpdatePlanets(); @@ -371,8 +371,8 @@ class AchievmentFrame: public MenuFrame typedef std::vector Achievments; private: - RaceMenu* _raceMenu; - + RaceMenu* _raceMenu; + gui::Button* _menuItems[cMenuItemEnd]; gui::Label* _labels[cLabelEnd]; @@ -405,7 +405,7 @@ class RaceMainFrame: public MenuFrame { private: enum MenuItem {miStartRace = 0, miWorkshop, miGarage, miSpace, miAchivments, miOptions, miExit, cMenuItemEnd}; - enum Label {mlPlayer = 0, mlPassing, mlTournamet, mlWeapons, mlBoss, mlMoney, mlPassInfo, mlTournamentInfo, cLabelEnd}; + enum Label {mlPlayer = 0, mlPassing, mlTournamet, mlWeapons, mlBoss, mlMoney, mlPassInfo, mlTournamentInfo, cLabelEnd}; struct PlayerBox { @@ -414,7 +414,7 @@ class RaceMainFrame: public MenuFrame gui::PlaneFon* photo; gui::Label* name; gui::Label* readyLabel; - gui::Button* kick; + gui::Button* kick; gui::PlaneFon* readyState; gui::ViewPort3d* viewportCar; @@ -448,17 +448,17 @@ class RaceMainFrame: public MenuFrame gui::Dummy* _playerGrid; Players _players; - void RaceRady(bool ready); + void RaceRady(bool ready); PlayerBox* AddPlayer(NetPlayer* netPlayer, unsigned index); void AdjustPlayer(PlayerBox* box, bool invert); void UpdatePlayers(); -protected: +protected: virtual void OnShow(bool value); virtual void OnAdjustLayout(const glm::vec2& vpSize); virtual void OnInvalidate(); - virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); + virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); public: RaceMainFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent); virtual ~RaceMainFrame(); @@ -471,7 +471,7 @@ class RaceMainFrame: public MenuFrame class RaceMenu: INetGameUser, gui::Widget::Event, IGameUser { public: - enum State {msMain = 0, msGarage, msWorkshop, msGamers, msAngar, msAchievments, cStateEnd}; + enum State {msMain = 0, msGarage, msWorkshop, msGamers, msAngar, msAchievments, cStateEnd}; private: Menu* _menu; Player* _player; @@ -488,7 +488,7 @@ class RaceMenu: INetGameUser, gui::Widget::Event, IGameUser GamersFrame* _gamers; AngarFrame* _angarFrame; AchievmentFrame* _achievmentFrame; - + void ApplyState(State state); protected: virtual void OnProcessEvent(unsigned id, EventData* data); @@ -516,7 +516,7 @@ class RaceMenu: INetGameUser, gui::Widget::Event, IGameUser Player* GetPlayer(); gui::Widget* GetRoot(); - + State GetState() const; void SetState(State value); diff --git a/src/Rock3dGame/header/game/RecordLib.h b/src/Rock3dGame/header/game/RecordLib.h index da1cce32..e7e00c54 100644 --- a/src/Rock3dGame/header/game/RecordLib.h +++ b/src/Rock3dGame/header/game/RecordLib.h @@ -80,7 +80,7 @@ class RecordNode public: Record* AddRecord(const std::string& name); void DelRecord(Record* value); - + RecordNode* AddNode(const std::string& name); void DelNode(RecordNode* value); @@ -88,7 +88,7 @@ class RecordNode Record* FindRecord(const std::string& path); RecordNode* FindNode(const std::string& path); - void Clear(); + void Clear(); void SrcSync(); RecordLib* GetLib(); @@ -106,7 +106,7 @@ class RecordLib: public RecordNode, public Component friend Record; friend RecordNode; private: - typedef RecordNode _MyBase; + typedef RecordNode _MyBase; public: typedef RecordLib Lib; @@ -144,7 +144,7 @@ template class RecordList: public lsl::Container<_Record*>, publi typedef lsl::Container<_Record> _MyCont; protected: virtual void Save(lsl::SWriter* writer); - virtual void Load(lsl::SReader* reader); + virtual void Load(lsl::SReader* reader); }; diff --git a/src/Rock3dGame/header/game/ResourceManager.h b/src/Rock3dGame/header/game/ResourceManager.h index 87e241ba..2a71c27a 100644 --- a/src/Rock3dGame/header/game/ResourceManager.h +++ b/src/Rock3dGame/header/game/ResourceManager.h @@ -190,10 +190,10 @@ class ComplexImage void SetFileName(const std::string& value); //value = 0 - генерация последовательности mip уровней до 1x1 - unsigned GetLevelCnt() const; + unsigned GetLevelCnt() const; void SetLevelCnt(unsigned value); - bool GetGUI() const; + bool GetGUI() const; void SetGUI(bool value); }; @@ -268,39 +268,39 @@ class ComplexTextFontLibrary: public lsl::ComCollectionNewDummyNode(sstream.str().c_str()); iter->SaveTo(proj, owner); - } + } lsl::SWriteValue(writer, "shotDelay", shotDelay); } @@ -468,7 +468,7 @@ class Weapon: public GameObject { lsl::SReader* proj = projListNode->FirstChildValue(); while (proj) - { + { ProjDesc projDesc; projDesc.LoadFrom(proj, owner); projList.push_back(projDesc); @@ -496,7 +496,7 @@ class Weapon: public GameObject } } } - + const ProjDesc& Front() const { return !projList.empty() ? projList.front() : _tmpProj; @@ -518,7 +518,7 @@ class Weapon: public GameObject public: typedef lsl::List ProjList; private: - Desc _desc; + Desc _desc; float _shotTime; protected: virtual void SaveSource(lsl::SWriter* writer); diff --git a/src/Rock3dGame/header/game/World.h b/src/Rock3dGame/header/game/World.h index 8563bcf3..c2fb55b6 100644 --- a/src/Rock3dGame/header/game/World.h +++ b/src/Rock3dGame/header/game/World.h @@ -54,7 +54,7 @@ class World: public IWorld, public Component, IVideoGraphUser, graph::IVideoReso bool _terminate; bool _pause; - std::deque _dtStack; + std::deque _dtStack; IterCost _iterBuf[cMaxSimIter]; __int64 _cpuFreq; int _syncFreq; @@ -80,7 +80,7 @@ class World: public IWorld, public Component, IVideoGraphUser, graph::IVideoReso lsl::Profiler _profiler; ControlManager* _control; View* _view; - + GraphManager* _graph; snd::Engine* _audio; video::Player* _videoPlayer; @@ -129,9 +129,9 @@ class World: public IWorld, public Component, IVideoGraphUser, graph::IVideoReso bool IsTerminate() const; int GetTerminateResult() const; - void MainProgress(); + void MainProgress(); // - void Pause(bool pause); + void Pause(bool pause); bool IsPaused() const; //in ms unsigned time() const; diff --git a/src/Rock3dGame/header/net/NetBase.h b/src/Rock3dGame/header/net/NetBase.h index a19dd235..304ecbf5 100644 --- a/src/Rock3dGame/header/net/NetBase.h +++ b/src/Rock3dGame/header/net/NetBase.h @@ -19,7 +19,7 @@ struct NetEventData class INetGameUser: public Object { -public: +public: virtual bool OnConnected(net::INetConnection* sender) {return true;} virtual void OnDisconnected(net::INetConnection* sender) {} virtual void OnConnectionFailed(net::INetConnection* sender, unsigned error) {} diff --git a/src/Rock3dGame/header/net/NetGame.h b/src/Rock3dGame/header/net/NetGame.h index aef5501b..ae7c026b 100644 --- a/src/Rock3dGame/header/net/NetGame.h +++ b/src/Rock3dGame/header/net/NetGame.h @@ -11,7 +11,7 @@ namespace game { class NetGame: net::INetServiceUser -{ +{ friend NetPlayer; friend NetRace; private: @@ -34,14 +34,14 @@ class NetGame: net::INetServiceUser int _port; bool _started; bool _isHost; - bool _isClient; + bool _isClient; void RegPlayer(NetPlayer* player); void UnregPlayer(NetPlayer* player); void RegRace(NetRace* race); void UnregRace(NetRace* race); -protected: +protected: virtual bool OnConnected(net::INetConnection* sender); virtual void OnDisconnected(net::INetConnection* sender); virtual void OnConnectionFailed(net::INetConnection* sender, unsigned error); @@ -68,9 +68,9 @@ class NetGame: net::INetServiceUser int port() const; bool isStarted() const; bool isHost() const; - bool isClient() const; + bool isClient() const; - void Process(unsigned time, float deltaTime); + void Process(unsigned time, float deltaTime); void SendEvent(unsigned id, NetEventData* data = NULL); void DisconnectPlayer(NetPlayer* player); @@ -86,7 +86,7 @@ class NetGame: net::INetServiceUser const NetPlayers& players() const; const NetPlayers& netPlayers() const; const NetPlayers& netOpponents() const; - const NetPlayers& aiPlayers() const; + const NetPlayers& aiPlayers() const; GameMode* game(); NetRace* race(); diff --git a/src/Rock3dGame/header/net/NetPlayer.h b/src/Rock3dGame/header/net/NetPlayer.h index 4d612c7a..a34dae64 100644 --- a/src/Rock3dGame/header/net/NetPlayer.h +++ b/src/Rock3dGame/header/net/NetPlayer.h @@ -164,13 +164,13 @@ class NetPlayer: public net::NetModelRPC void DoRaceReady(bool ready); void DoRaceGoWait(bool goWait); void DoRaceFinish(bool finish); - + void DoShot(MapObj* target, ShotSlots& slots, unsigned projId, CoordList* coordList, bool readMode); void SendColor(const D3DXCOLOR& value, bool failed, unsigned target); void SendGamerId(int value, bool failed, unsigned target); void SlotsWrite(std::ostream& stream); - void SlotsRead(std::istream& stream); + void SlotsRead(std::istream& stream); void OnSetGamerId(const net::NetMessage& msg, const net::NetCmdHeader& header, std::istream& stream); void OnSetColor(const net::NetMessage& msg, const net::NetCmdHeader& header, std::istream& stream); @@ -208,8 +208,8 @@ class NetPlayer: public net::NetModelRPC bool CheckGamerId(int value) const; int GenerateGamerId() const; - const D3DXCOLOR& GetColor() const; - void SetColor(const D3DXCOLOR& value); + const D3DXCOLOR& GetColor() const; + void SetColor(const D3DXCOLOR& value); bool CheckColor(const D3DXCOLOR& value) const; D3DXCOLOR GenerateColor() const; diff --git a/src/Rock3dGame/header/net/NetRace.h b/src/Rock3dGame/header/net/NetRace.h index 7ad417e4..558761c9 100644 --- a/src/Rock3dGame/header/net/NetRace.h +++ b/src/Rock3dGame/header/net/NetRace.h @@ -38,7 +38,7 @@ class NetRace: public net::NetModelRPC, INetGameUser, IGameUser private: NetGame* _net; unsigned _maxPlayers; - unsigned _maxComputers; + unsigned _maxComputers; void ReadMatch(std::istream& stream); void WriteMatch(std::ostream& stream); @@ -51,7 +51,7 @@ class NetRace: public net::NetModelRPC, INetGameUser, IGameUser void CheckGoWait(); void CheckFinish(); - void OnStartMatch(const net::NetMessage& msg, const net::NetCmdHeader& header, std::istream& stream); + void OnStartMatch(const net::NetMessage& msg, const net::NetCmdHeader& header, std::istream& stream); void OnExitMatch(const net::NetMessage& msg, const net::NetCmdHeader& header, std::istream& stream); void OnSetPlanet(const net::NetMessage& msg, const net::NetCmdHeader& header, std::istream& stream); void OnSetTrack(const net::NetMessage& msg, const net::NetCmdHeader& header, std::istream& stream); @@ -60,11 +60,11 @@ class NetRace: public net::NetModelRPC, INetGameUser, IGameUser void OnRaceGo(const net::NetMessage& msg, const net::NetCmdHeader& header, std::istream& stream); void OnPause(const net::NetMessage& msg, const net::NetCmdHeader& header, std::istream& stream); void OnDamage1(const net::NetMessage& msg, const net::NetCmdHeader& header, std::istream& stream); - void OnDamage2(const net::NetMessage& msg, const net::NetCmdHeader& header, std::istream& stream); - void OnSetUpgradeMaxLevel(const net::NetMessage& msg, const net::NetCmdHeader& header, std::istream& stream); + void OnDamage2(const net::NetMessage& msg, const net::NetCmdHeader& header, std::istream& stream); + void OnSetUpgradeMaxLevel(const net::NetMessage& msg, const net::NetCmdHeader& header, std::istream& stream); void OnSetWeaponMaxLevel(const net::NetMessage& msg, const net::NetCmdHeader& header, std::istream& stream); - void OnSetCurrentDifficulty(const net::NetMessage& msg, const net::NetCmdHeader& header, std::istream& stream); - void OnSetLapsCount(const net::NetMessage& msg, const net::NetCmdHeader& header, std::istream& stream); + void OnSetCurrentDifficulty(const net::NetMessage& msg, const net::NetCmdHeader& header, std::istream& stream); + void OnSetLapsCount(const net::NetMessage& msg, const net::NetCmdHeader& header, std::istream& stream); void OnSetMaxPlayers(const net::NetMessage& msg, const net::NetCmdHeader& header, std::istream& stream); void OnSetMaxComputers(const net::NetMessage& msg, const net::NetCmdHeader& header, std::istream& stream); void OnSetSpringBorders(const net::NetMessage& msg, const net::NetCmdHeader& header, std::istream& stream); @@ -82,7 +82,7 @@ class NetRace: public net::NetModelRPC, INetGameUser, IGameUser Tournament& tournament(); const Tournament& tournament() const; protected: - virtual bool OnConnected(net::INetConnection* sender); + virtual bool OnConnected(net::INetConnection* sender); virtual void OnDisconnectedPlayer(NetPlayer* sender); virtual void OnProcessNetEvent(unsigned id, NetEventData* data); virtual void OnProcessEvent(unsigned id, EventData* data); @@ -110,7 +110,7 @@ class NetRace: public net::NetModelRPC, INetGameUser, IGameUser void ExitRace(); void Pause(bool pause); - void Damage(int senderPlayerLocalId, MapObj* target, float value, GameObject::DamageType damageType); + void Damage(int senderPlayerLocalId, MapObj* target, float value, GameObject::DamageType damageType); int GetUpgradeMaxLevel() const; void SetUpgradeMaxLevel(int value); @@ -140,7 +140,7 @@ class NetRace: public net::NetModelRPC, INetGameUser, IGameUser Race::PlayerList GetLeaverList() const; - GameMode* game(); + GameMode* game(); const Race* race() const; Race* race(); diff --git a/src/Rock3dGame/header/net/SteamCommon.h b/src/Rock3dGame/header/net/SteamCommon.h index e211055d..b9187085 100644 --- a/src/Rock3dGame/header/net/SteamCommon.h +++ b/src/Rock3dGame/header/net/SteamCommon.h @@ -38,16 +38,16 @@ enum EMessage k_EMsgClientPing = k_EMsgClientBegin+5, // P2P authentication messages - k_EMsgP2PBegin = 600, + k_EMsgP2PBegin = 600, k_EMsgP2PSendingTicket = k_EMsgP2PBegin+1, // voice chat messages - k_EMsgVoiceChatBegin = 700, + k_EMsgVoiceChatBegin = 700, k_EMsgVoiceChatPing = k_EMsgVoiceChatBegin+1, // just a keep alive message k_EMsgVoiceChatData = k_EMsgVoiceChatBegin+2, // voice data from another player // force 32-bit size enum so the wire protocol doesn't get outgrown later - k_EForceDWORD = 0x7fffffff, + k_EForceDWORD = 0x7fffffff, }; // Msg from client to server when trying to connect @@ -106,7 +106,7 @@ struct MsgClientBeginAuthentication_t private: const DWORD m_dwMessageType; - + uint32 m_uTokenLen; char m_rgchToken[1024]; uint64 m_ulSteamID; diff --git a/src/Rock3dGame/header/net/SteamService.h b/src/Rock3dGame/header/net/SteamService.h index 6ed52bfe..3c42456b 100644 --- a/src/Rock3dGame/header/net/SteamService.h +++ b/src/Rock3dGame/header/net/SteamService.h @@ -19,14 +19,14 @@ class NetConnectionSteam: public net::INetConnectionImpl private: NetAcceptorSteam* _owner; CSteamID _steamId; - bool _isOpen; + bool _isOpen; public: NetConnectionSteam(NetAcceptorSteam* owner); ~NetConnectionSteam(); virtual bool Send(const void* data, unsigned size); virtual bool Receive(void* data, unsigned size, unsigned& numBytes); - virtual bool IsAvailable(unsigned& size); + virtual bool IsAvailable(unsigned& size); virtual void Accept(); virtual bool Connect(const net::Endpoint& endpoint); @@ -47,7 +47,7 @@ class NetConnectionSteam: public net::INetConnectionImpl class NetChannelSteam: public net::INetChannelImpl { private: - NetAcceptorSteam* _owner; + NetAcceptorSteam* _owner; bool _isOpen; bool _isBind; net::Endpoint _bindEndpoint; @@ -77,7 +77,7 @@ class NetChannelSteam: public net::INetChannelImpl }; class NetAcceptorSteam: public net::INetAcceptorImpl -{ +{ public: typedef lsl::List Connections; typedef std::map> PacketMap; @@ -124,7 +124,7 @@ class SteamStats { private: struct Stat - { + { Stat(): value(0), dValue(0) {} int value; @@ -159,15 +159,15 @@ class SteamStats lsl::List _lapKills; STEAM_CALLBACK( SteamStats, OnUserStatsReceived, UserStatsReceived_t, _callbackUserStatsReceived ); - STEAM_CALLBACK( SteamStats, OnUserStatsStored, UserStatsStored_t, _callbackUserStatsStored ); + STEAM_CALLBACK( SteamStats, OnUserStatsStored, UserStatsStored_t, _callbackUserStatsStored ); public: SteamStats(SteamService* service); ~SteamStats(); bool GetUserStats(); - bool StoreUserStats(); + bool StoreUserStats(); - void AddStat(StatType type, int value); + void AddStat(StatType type, int value); int GetStatValue(StatType type) const; void IndicateAchievment(AchievmentType type, int curProgress); @@ -184,7 +184,7 @@ class SteamLeaderboard { private: struct Leaders - { + { Leaders(): board(0) {} SteamLeaderboard_t board; @@ -201,7 +201,7 @@ class SteamLeaderboard bool _leadersLoading; int _userStatsUploading; - CCallResult _callResultFindLeaderboard; + CCallResult _callResultFindLeaderboard; // Called when SteamUserStats()->FindOrCreateLeaderboard() returns asynchronously void OnFindLeaderboard(LeaderboardFindResult_t* pFindLeaderboardResult, bool bIOFailure); @@ -212,7 +212,7 @@ class SteamLeaderboard ~SteamLeaderboard(); bool FindLeaders(); - bool UploadUserStats(); + bool UploadUserStats(); SteamService* service(); GameMode* game(); @@ -224,7 +224,7 @@ class SteamLobby struct Lobby { CSteamID id; - std::string name; + std::string name; }; typedef std::vector LobbyList; @@ -295,7 +295,7 @@ class SteamLobby bool StartMath(); const MemberList& GetLobbyMembers() const; - CSteamID currentLobby() const; + CSteamID currentLobby() const; SteamService* service(); GameMode* game(); @@ -347,7 +347,7 @@ class SteamServer: ISteamMatchmakingServerListResponse ClientConnectionData_t _rgPendingClientData[cMaxPlayers]; bool _hostInit; - bool _serverConnecting; + bool _serverConnecting; bool _internetListLoading; // Send data to a client at the given ship index @@ -359,7 +359,7 @@ class SteamServer: ISteamMatchmakingServerListResponse // Function to tell Steam about our servers details void SendUpdatedServerDetailsToSteam(); // Checks for any incoming network data, then dispatches it - void ReceiveNetworkData(); + void ReceiveNetworkData(); // ISteamMatchmakingServerListResponse void ServerResponded( HServerListRequest hReq, int iServer ); @@ -418,7 +418,7 @@ class SteamService: IGameUser enum InitRes { irFailed, irRestart, irSuccess }; enum SyncStage { ssGetUserStats, ssStoreUserStats, ssGetLeaders, ssStoreLeaders, cSyncStageEnd }; - static const float cSyncWaitTime; + static const float cSyncWaitTime; private: GameMode* _game; SteamLeaderboard* _leaderboard; @@ -428,8 +428,8 @@ class SteamService: IGameUser NetAcceptorSteam* _acceptor; // p2p game auth manager //CP2PAuthedGame* _pP2PAuthedGame; - - CGameID _gameId; + + CGameID _gameId; SyncStage _syncStage; float _syncWaitTime; @@ -456,7 +456,7 @@ class SteamService: IGameUser // Receive a response from the server for a connection attempt void ReceiveServerAuthenticationResponse( bool bSuccess, uint32 uPlayerPosition ); // Checks for any incoming network data, then dispatches it - void ReceiveNetworkData(); + void ReceiveNetworkData(); virtual void OnProcessEvent(unsigned id, EventData* data); public: diff --git a/src/Rock3dGame/header/net/p2pauth.h b/src/Rock3dGame/header/net/p2pauth.h index 76fb7e3e..5c523525 100644 --- a/src/Rock3dGame/header/net/p2pauth.h +++ b/src/Rock3dGame/header/net/p2pauth.h @@ -83,7 +83,7 @@ class CP2PAuthedGame //----------------------------------------------------------------------------- -// Purpose: trivial wrapper on network messaging +// Purpose: trivial wrapper on network messaging //----------------------------------------------------------------------------- class CNetworkTransport { diff --git a/src/Rock3dGame/header/snd/Audio.h b/src/Rock3dGame/header/snd/Audio.h index 7e389752..0d5f081f 100644 --- a/src/Rock3dGame/header/snd/Audio.h +++ b/src/Rock3dGame/header/snd/Audio.h @@ -21,7 +21,7 @@ class SoundLib; class Sound: public lsl::Resource { - friend SoundLib; + friend SoundLib; public: static const unsigned cBufferSize; @@ -54,11 +54,11 @@ class Sound: public lsl::Resource bool IsInit() const; char* GetData() const; - int GetDataSize() const; + int GetDataSize() const; seek_pos GetPos() const; - seek_pos GetEndPos() const; - }; + seek_pos GetEndPos() const; + }; typedef std::map Buffers; typedef lsl::List BufferList; @@ -68,11 +68,11 @@ class Sound: public lsl::Resource unsigned _cacheSize; bool _isLoad; float _volume; - + FILE* _file; //mutable - чтение некоторые свойств требует non-const - mutable OggVorbis_File _oggFile; - vorbis_info _vorbisInfo; + mutable OggVorbis_File _oggFile; + vorbis_info _vorbisInfo; //последовательный список буфферов Buffers _buffers; //список освобоженных буфферов @@ -168,10 +168,10 @@ class SoundLib: public lsl::ResourceCollection VoiceList; class Voice: public lsl::Object -{ +{ private: Engine* _engine; - VoiceList _receivers; + VoiceList _receivers; void DoClearReceivers(); protected: @@ -179,7 +179,7 @@ class Voice: public lsl::Object int _srcChannels; int _destChannels; - void SendReceivers(IXAudio2Voice* voice); + void SendReceivers(IXAudio2Voice* voice); void ApplyOutputMatrix(IXAudio2Voice* voice); virtual void ChangedReceivers() = 0; @@ -286,12 +286,12 @@ class Proxy: public Voice unsigned _dataSizeBuffers; //абс. позиция первого буффера seek_pos _firstBufPos; - + //событие управляющее выполнением потока: блокирован, работает ThreadEvent* _process; //был плностью кэшрован, следующим этап кэширования настпуит только при достижения уровня буферизации bool _cached; - + //операции со списком буфферов //свободить буффер bool RemoveBuffer(Buffers::iterator iter, bool checkVoiceState = true); @@ -328,7 +328,7 @@ class Proxy: public Voice seek_pos GetPos() const; void SetPos(seek_pos value); - //стриминг. Грубо говоря общая вместимость равна сумме bufSize и cacheSize. Если сумма равна нулю то стриминг в реал тайм. Значения по умлочанию выполняют эффективное резервирование буффебро для неперывеного воспроизведения. Нужно быть осторожней с установкой данных значений. Для полной загрузкп ресурса в память без стриминга используйте Sound::Load. Порядок стириминга такой. Сначала обязательная буфферизация, потом кеширование в случае если вопсрпоизвдения достигает уровня буфферизации. + //стриминг. Грубо говоря общая вместимость равна сумме bufSize и cacheSize. Если сумма равна нулю то стриминг в реал тайм. Значения по умлочанию выполняют эффективное резервирование буффебро для неперывеного воспроизведения. Нужно быть осторожней с установкой данных значений. Для полной загрузкп ресурса в память без стриминга используйте Sound::Load. Порядок стириминга такой. Сначала обязательная буфферизация, потом кеширование в случае если вопсрпоизвдения достигает уровня буфферизации. //размер буффера. Определяет минимальную буферизацию перед началом воспроизведения //0 - буферизация не производится unsigned GetBufSize() const; @@ -431,7 +431,7 @@ class Source: public Voice typedef lsl::List ReportList; private: Sound* _sound; - + seek_pos _pos; PlayMode _playMode; float _volume; @@ -454,7 +454,7 @@ class Source: public Voice void Init(); void Free(bool unload = false); - + Proxy* GetProxy(); public: virtual void Play(); @@ -575,7 +575,7 @@ class Engine: public lsl::Component //пул источников ProxyList _srcPool; unsigned _poolMaxSize; - //список неиспользуемых источников, потокобезопасна, при необходимости из этого списка источники забираются в пул + //список неиспользуемых источников, потокобезопасна, при необходимости из этого списка источники забираются в пул ProxyList _srcCache; // ProxyList _deleteProxyList; @@ -598,7 +598,7 @@ class Engine: public lsl::Component void RemovePool(Proxy* proxy); void ClearPool(); void OptimizePool(); - + //манипуляции с кешом void InsertCache(Proxy* proxy); ProxyList::iterator RemoveCache(ProxyList::iterator iter); @@ -608,7 +608,7 @@ class Engine: public lsl::Component //выделение, освобождение источников Proxy* AllocProxy(Sound* sound); - void ReleaseProxy(Proxy* proxy, bool unload); + void ReleaseProxy(Proxy* proxy, bool unload); void ComputeProxy(Proxy* proxy); void InitX3dAudio(); diff --git a/src/Rock3dGame/header/targetver.h b/src/Rock3dGame/header/targetver.h index a088fb2b..0475eb49 100644 --- a/src/Rock3dGame/header/targetver.h +++ b/src/Rock3dGame/header/targetver.h @@ -1,8 +1,8 @@ #pragma once // The following macros define the minimum required platform. The minimum required platform -// is the earliest version of Windows, Internet Explorer etc. that has the necessary features to run -// your application. The macros work by enabling all features available on platform versions up to and +// is the earliest version of Windows, Internet Explorer etc. that has the necessary features to run +// your application. The macros work by enabling all features available on platform versions up to and // including the version specified. // Modify the following defines if you have to target a platform prior to the ones specified below. diff --git a/src/Rock3dGame/header/video/playback.h b/src/Rock3dGame/header/video/playback.h index e49a1cfc..e326d2d3 100644 --- a/src/Rock3dGame/header/video/playback.h +++ b/src/Rock3dGame/header/video/playback.h @@ -49,11 +49,11 @@ class DShowPlayer HRESULT HandleGraphEvent(IVideoGraphUser* user); private: - HRESULT InitializeGraph(); + HRESULT InitializeGraph(); HRESULT CreateVideoRenderer(); HRESULT RenderStreams(IBaseFilter *pSource); - PlaybackState m_state; + PlaybackState m_state; HWND m_hwnd; // Video window. This window also receives graph events. UINT m_windowMsg; diff --git a/src/Rock3dGame/include/ICameraManager.h b/src/Rock3dGame/include/ICameraManager.h index 70f0d8f1..8735f0fb 100644 --- a/src/Rock3dGame/include/ICameraManager.h +++ b/src/Rock3dGame/include/ICameraManager.h @@ -11,7 +11,7 @@ class ICameraManager public: enum Style {csFreeView, csThirdPerson, csIsometric, csLights, csIsoView, csAutoObserver, csBlock, cStyleEnd}; public: - virtual Style GetStyle() const = 0; + virtual Style GetStyle() const = 0; virtual void ChangeStyle(Style value) = 0; }; diff --git a/src/Rock3dGame/include/IDataBase.h b/src/Rock3dGame/include/IDataBase.h index ab674cd6..997dab19 100644 --- a/src/Rock3dGame/include/IDataBase.h +++ b/src/Rock3dGame/include/IDataBase.h @@ -5,7 +5,7 @@ namespace r3d namespace edit { - + class IMapContr: public Object { public: diff --git a/src/Rock3dGame/include/IGameCar.h b/src/Rock3dGame/include/IGameCar.h index 4ebfb91f..23e1cafc 100644 --- a/src/Rock3dGame/include/IGameCar.h +++ b/src/Rock3dGame/include/IGameCar.h @@ -24,7 +24,7 @@ class CarMotorDesc float CalcTorque(float rpm, unsigned curGear) const; //макс. число оборотов двигателя, об/мин - unsigned maxRPM; + unsigned maxRPM; //обороты холостого хода, об/мин unsigned idlingRPM; //макс. момент двигателя при maxRPM, Н*м diff --git a/src/Rock3dGame/include/IView.h b/src/Rock3dGame/include/IView.h index c4091047..1951b5ec 100644 --- a/src/Rock3dGame/include/IView.h +++ b/src/Rock3dGame/include/IView.h @@ -5,7 +5,7 @@ namespace r3d namespace game { - + class IView { public: @@ -20,7 +20,7 @@ class IView virtual glm::vec2 ViewToProj(const lsl::Point& point) = 0; virtual glm::vec2 ProjToView(const glm::vec2& coord) = 0; - + virtual bool OnMouseClickEvent(MouseKey key, KeyState state, const Point& coord, bool shift, bool ctrl) = 0; virtual bool OnMouseMoveEvent(const Point& coord, bool shift, bool ctrl) = 0; virtual bool OnKeyEvent(unsigned key, KeyState state, bool repeat) = 0; diff --git a/src/Rock3dGame/include/IWorld.h b/src/Rock3dGame/include/IWorld.h index 27a84d09..536741a9 100644 --- a/src/Rock3dGame/include/IWorld.h +++ b/src/Rock3dGame/include/IWorld.h @@ -22,14 +22,14 @@ namespace game class IWorld: public Object { public: - virtual void MainProgress() = 0; + virtual void MainProgress() = 0; virtual void ResetInput(bool reset = true) = 0; virtual bool InputWasReset() const = 0; virtual void RunGame() = 0; virtual void ExitGame() = 0; - + virtual void RunWorldEdit() = 0; virtual void ExitWorldEdit() = 0; diff --git a/src/Rock3dGame/include/Rock3dGame.h b/src/Rock3dGame/include/Rock3dGame.h index 991a4214..c0b590e9 100644 --- a/src/Rock3dGame/include/Rock3dGame.h +++ b/src/Rock3dGame/include/Rock3dGame.h @@ -1,9 +1,9 @@ #pragma once -// The following ifdef block is the standard way of creating macros which make exporting +// The following ifdef block is the standard way of creating macros which make exporting // from a DLL simpler. All files within this DLL are compiled with the ROCK3DGAME_EXPORTS // symbol defined on the command line. this symbol should not be defined on any project -// that uses this DLL. This way any other project whose source files include this file see +// that uses this DLL. This way any other project whose source files include this file see // ROCK3DGAME_API functions as being imported from a DLL, whereas this DLL sees symbols // defined with this macro as being exported. #ifdef ROCK3DGAME_EXPORTS diff --git a/src/Rock3dGame/source/Rock3dGame.cpp b/src/Rock3dGame/source/Rock3dGame.cpp index bb163de9..2f5da7d3 100644 --- a/src/Rock3dGame/source/Rock3dGame.cpp +++ b/src/Rock3dGame/source/Rock3dGame.cpp @@ -26,7 +26,7 @@ ROCK3DGAME_API IWorld* CreateWorld(const IView::Desc& viewDesc, bool steamInit) switch (SteamService::Initialize()) { case SteamService::irFailed: - LSL_LOG("steam initialize irFailed"); + LSL_LOG("steam initialize irFailed"); break; case SteamService::irRestart: LSL_LOG("steam initialize irRestart"); @@ -48,7 +48,7 @@ ROCK3DGAME_API IWorld* CreateWorld(const IView::Desc& viewDesc, bool steamInit) throw; } - return world; + return world; } ROCK3DGAME_API void ReleaseWorld(IWorld* world) diff --git a/src/Rock3dGame/source/edit/EditDataBase.cpp b/src/Rock3dGame/source/edit/EditDataBase.cpp index d34f4e7b..7f486321 100644 --- a/src/Rock3dGame/source/edit/EditDataBase.cpp +++ b/src/Rock3dGame/source/edit/EditDataBase.cpp @@ -58,7 +58,7 @@ IMapObjRecRef RecordNode::FirstRecord() void RecordNode::NextRecord(IMapObjRecRef& ref) { MapObjRec* rec = ref->GetImpl(); - + if (++(rec->libIter) != GetInst()->GetRecordList().end()) { MapObjRec* newRec = new MapObjRec(static_cast(*rec->libIter)); @@ -85,7 +85,7 @@ IRecordNodeRef RecordNode::FirstNode() void RecordNode::NextNode(IRecordNodeRef& ref) { RecordNode* node = ref->GetImpl(); - + if (++(node->libIter) != GetInst()->GetNodeList().end()) { RecordNode* newNode = new RecordNode(*node->libIter); diff --git a/src/Rock3dGame/source/edit/EditMap.cpp b/src/Rock3dGame/source/edit/EditMap.cpp index 21ed686b..c9ad0a4b 100644 --- a/src/Rock3dGame/source/edit/EditMap.cpp +++ b/src/Rock3dGame/source/edit/EditMap.cpp @@ -17,8 +17,8 @@ const D3DXCOLOR Map::bbColor(clrRed); const D3DXCOLOR Map::selColor(clrGreen); - - + + MapObj::MapObj(Inst* inst): ExternImpl(inst) { } @@ -78,15 +78,15 @@ Map::Map(Edit* edit): _edit(edit), _showBB(true) Map::~Map() { - delete _trace; + delete _trace; } Map::NodeControl::NodeControl(game::MapObj* mapObj, Map* map, const ControlEventRef& mEvent): _MyBase(&mapObj->GetGameObj().GetGrActor()), _mapObj(mapObj), _map(map), _event(mEvent) -{ +{ } Map::NodeControl::~NodeControl() -{ +{ } void Map::NodeControl::Select(bool active) @@ -102,18 +102,18 @@ void Map::NodeControl::OnShiftAction(const D3DXVECTOR3& scrRayPos, const D3DXVEC Reset(&_mapObj->GetGameObj().GetGrActor()); Select(true); - if (_event) + if (_event) { MapObj* mapObj = new MapObj(_mapObj); - _event->OnAddAndSelMapObj(IMapObjRef(mapObj, mapObj)); + _event->OnAddAndSelMapObj(IMapObjRef(mapObj, mapObj)); } } game::MapObj* Map::PickInstMapObj(const D3DXVECTOR3& rayPos, const D3DXVECTOR3& rayVec) { float minDist = 0; - game::MapObj* mapObj = 0; - + game::MapObj* mapObj = 0; + for (Inst::Objects::const_iterator iter = GetInst()->GetObjects().begin(); iter != GetInst()->GetObjects().end(); ++iter) { D3DXVECTOR3 nearVec; @@ -230,8 +230,8 @@ IMapObjRef Map::GetFirst(unsigned i) void Map::GetNext(unsigned cat, IMapObjRef& ref) { - MapObj* mapObj = ref->GetImpl(); - + MapObj* mapObj = ref->GetImpl(); + if (++(mapObj->mapIter) != GetInst()->GetMapObjList(game::MapObjLib::Category(cat)).end()) { MapObj* newMapObj = new MapObj(*mapObj->mapIter); diff --git a/src/Rock3dGame/source/edit/EditTrace.cpp b/src/Rock3dGame/source/edit/EditTrace.cpp index da9c83c5..7d009878 100644 --- a/src/Rock3dGame/source/edit/EditTrace.cpp +++ b/src/Rock3dGame/source/edit/EditTrace.cpp @@ -105,7 +105,7 @@ Trace::NodeControl::NodeControl(Trace* trace, game::WayPoint* wayPoint, const Co _wayPoint->AddRef(); } - + Trace::NodeControl::~NodeControl() { FreeLink(); @@ -137,7 +137,7 @@ void Trace::NodeControl::FreeLink() _trace->_traceGfx->SetPointLink(0); lsl::SafeDelete(_link); } - + } bool Trace::NodeControl::CreateWay(game::WayNode* curNode, game::WayPoint* point, game::WayNode* node) @@ -321,8 +321,8 @@ AABB Trace::NodeControl::GetAABB() const game::WayPoint* Trace::PickInstPoint(const D3DXVECTOR3& rayPos, const D3DXVECTOR3& rayVec) { float minDist = 0; - game::WayPoint* point = 0; - + game::WayPoint* point = 0; + for (Inst::Points::const_iterator iter = GetInst()->GetPoints().begin(); iter != GetInst()->GetPoints().end(); ++iter) { float t; @@ -441,7 +441,7 @@ IWayPointRef Trace::FirstPoint() void Trace::NextPoint(IWayPointRef& ref) { WayPoint* point = ref->GetImpl(); - + if (++(point->traceIter) != GetInst()->GetPoints().end()) { WayPoint* newPoint = new WayPoint(static_cast(*point->traceIter)); @@ -468,7 +468,7 @@ IWayPathRef Trace::FirstPath() void Trace::NextPath(IWayPathRef& ref) { WayPath* path = ref->GetImpl(); - + if (++(path->traceIter) != GetInst()->GetPathes().end()) { WayPath* newPath = new WayPath(static_cast(*path->traceIter)); @@ -489,7 +489,7 @@ void Trace::EnableVisualize(bool value) if (_enableVisualize != value) { if (_enableVisualize) - _edit->GetWorld()->GetGraph()->RemoveScNode(_traceGfx); + _edit->GetWorld()->GetGraph()->RemoveScNode(_traceGfx); _enableVisualize = value; if (_enableVisualize) _edit->GetWorld()->GetGraph()->InsertScNode(_traceGfx); diff --git a/src/Rock3dGame/source/edit/SceneControl.cpp b/src/Rock3dGame/source/edit/SceneControl.cpp index 91378b41..c00519d6 100644 --- a/src/Rock3dGame/source/edit/SceneControl.cpp +++ b/src/Rock3dGame/source/edit/SceneControl.cpp @@ -74,7 +74,7 @@ bool SceneControl::Control::OnMouseClickEvent(const game::MouseClick& mClick) _clDirOff = _owner->ComputePos(selNode, mClick.scrRayPos, mClick.scrRayVec, DMCoordMoveToSC[_clDirMove], NullVector); _clDirOff = _clDirOff - selNode->GetPos(); return _clDirMove != graph::MovCoordSys::dmNone; - + case smRotate: _clRotating = selNode->RayCastInters(mClick.scrRayPos, mClick.scrRayVec); _clStartRot = selNode->GetRot(); @@ -112,7 +112,7 @@ bool SceneControl::Control::OnMouseMoveEvent(const game::MouseMove& mMove) INodeRef selNode = _owner->_selNode; glm::vec2 offCoord(static_cast(mMove.offCoord.x), static_cast(mMove.offCoord.y)); - + //Нажата левая кнопка мыши if (mMove.click.key == lsl::mkLeft && mMove.click.state == lsl::ksDown) { @@ -131,7 +131,7 @@ bool SceneControl::Control::OnMouseMoveEvent(const game::MouseMove& mMove) D3DXVECTOR3 pos = _owner->ComputePos(selNode.Pnt(), mMove.scrRayPos, mMove.scrRayVec, dmView, _clDragOff); selNode->OnDrag(pos, mMove.scrRayPos, mMove.scrRayVec); } - } + } break; case smMove: @@ -161,7 +161,7 @@ bool SceneControl::Control::OnMouseMoveEvent(const game::MouseMove& mMove) } return false; } - + case smRotate: if (_clRotating) { @@ -187,7 +187,7 @@ bool SceneControl::Control::OnMouseMoveEvent(const game::MouseMove& mMove) glm::quat rotZ = glm::angleAxis(angleZ, Vec3DxToGlm(ZVector)); glm::quat rotY = glm::angleAxis(angleY, Vec3DxToGlm(_owner->_edit->GetWorld()->GetCamera()->GetRight())); glm::quat rot = abs(angleZ) > abs(angleY) ? rotZ : rotY; - + selNode->SetRot(rot * _clStartRot); return true; @@ -258,14 +258,14 @@ bool SceneControl::ComputeAxeLink(const AABB& aabb, const D3DXMATRIX& aabbToWorl outDistOff = distLink; game::Map* map = _edit->GetWorld()->GetMap(); - for (game::Map::Objects::const_iterator iter = map->GetObjects().begin(); iter != map->GetObjects().end(); ++iter) + for (game::Map::Objects::const_iterator iter = map->GetObjects().begin(); iter != map->GetObjects().end(); ++iter) { game::MapObj* mapObj = iter->second; graph::BaseSceneNode* testSc = &(mapObj->GetGameObj().GetGrActor()); if (!ignore->Compare(IMapObjRef(new MapObj(mapObj), this))) { AABB test = testSc->GetLocalAABB(true); - + float dist; //Вычисляем двухсторонее пересечение test-а боксом aabb. Выбираем наименьшее значение длины проникновения, начиная с distLink. if (test.AABBLineCastIntersect(aabb, normOff, aabbToWorld * testSc->GetInvWorldMat(), testSc->GetWorldMat() * worldToAABB, dist) && abs(dist) < abs(outDistOff)) @@ -399,7 +399,7 @@ void SceneControl::ApplySelMode() if (!_selNode) return; - + switch (_selMode) { case smMove: @@ -472,7 +472,7 @@ D3DXVECTOR3 SceneControl::ComputePoint(const D3DXVECTOR3& curPos, const D3DXVECT D3DXVECTOR3 SceneControl::ComputePos(INode* node, const D3DXVECTOR3& rayStart, const D3DXVECTOR3& rayVec, DirMove dirMove, const D3DXVECTOR3& centerOff) { D3DXVECTOR3 newPos = ComputePoint(node->GetPos(), rayStart, rayVec, dirMove, centerOff); - + if (_linkBB) ComputeLink(node, newPos, newPos); diff --git a/src/Rock3dGame/source/game/AICar.cpp b/src/Rock3dGame/source/game/AICar.cpp index 76dd82e3..c5da569c 100644 --- a/src/Rock3dGame/source/game/AICar.cpp +++ b/src/Rock3dGame/source/game/AICar.cpp @@ -37,17 +37,17 @@ AICar::PathState::PathState(unsigned trackCnt): cTrackCnt(trackCnt), curTile(0), AICar::PathState::~PathState() { SetCurTile(0); - SetNextTile(0); + SetNextTile(0); } bool AICar::PathState::FindFirstUnlockTrack(unsigned track, unsigned target, unsigned& res) { int inc = target > track ? +1 : -1; - + for (int i = 1; i < abs((int)(track - target)) + 1; ++i) { unsigned testTrack = track + i * inc; - if (!lockTracks[testTrack]) + if (!lockTracks[testTrack]) { res = testTrack; return true; @@ -60,11 +60,11 @@ bool AICar::PathState::FindFirstUnlockTrack(unsigned track, unsigned target, uns bool AICar::PathState::FindLastUnlockTrack(unsigned track, unsigned target, unsigned& res) { int inc = target > track ? +1 : -1; - + for (int i = 1; i < abs((int)(track - target)) + 1; ++i) { unsigned testTrack = track + i * inc; - if (lockTracks[testTrack]) + if (lockTracks[testTrack]) return i > 1; res = testTrack; @@ -142,7 +142,7 @@ void AICar::PathState::ComputeMovDir(AICar* owner, float deltaTime, const Player glm::vec2 targPnt = nextTile->GetPos2() + nextTile->GetTile().GetEdgeNorm() * tileWidth * static_cast(cTrackCnt)/2.0f - car.pos; float proj = Vec2Dot(curTile->GetTile().GetDir(), targPnt); - if (proj < car.size) + if (proj < car.size) movNode = nextTile; else { @@ -165,12 +165,12 @@ void AICar::PathState::ComputeMovDir(AICar* owner, float deltaTime, const Player float kLong = car.kSteerControl * car.kSteerControl; float normDist = Line2DistToPoint(curBreakTile->GetTile().GetMidNormLine(), car.pos); float kBreak = -normDist + curBreakTile->GetPoint()->GetSize(); - + float kRot = Vec2Dot(car.dir, curBreakTile->GetTile().GetDir()); kRot = 1.0f - std::max(kRot, 0.0f); //условия вхождения в торможение легче чем выхода из него - if (!_break && car.speed * car.speed * kLong * kRot > 1.5f * kBreak) + if (!_break && car.speed * car.speed * kLong * kRot > 1.5f * kBreak) _break = true; else if (_break && car.speed * car.speed * kLong * kRot < 1.0f * kBreak) _break = false; @@ -183,7 +183,7 @@ void AICar::PathState::ComputeMovDir(AICar* owner, float deltaTime, const Player //по умолчанию остаемся на car.track в случае неудач unsigned res = car.track; //Поиск последней досутпной дорожки в направлении маршрута - if (FindLastUnlockTrack(car.track, newTrack, res)) + if (FindLastUnlockTrack(car.track, newTrack, res)) { //Nothing } @@ -202,7 +202,7 @@ void AICar::PathState::ComputeMovDir(AICar* owner, float deltaTime, const Player glm::vec2 dir = movNode->GetTile().GetDir(); glm::vec2 target = car.pos + dir * dirArea; target += movNode->GetTile().ComputeTrackNormOff(target, newTrack); - + moveDir = target - car.pos; moveDir = glm::normalize(moveDir); } @@ -225,7 +225,7 @@ void AICar::PathState::Update(AICar* owner, float deltaTime, const Player::CarSt } if (curTile && nextTile == NULL) - { + { //Случайно выбираем предпочтительно нетупиковый узел принадлежайший WayPoint-у //Если существует следующий узел, то в первую очередь выбираем из него if (curTile->GetNext()) @@ -255,7 +255,7 @@ void AICar::PathState::Update(AICar* owner, float deltaTime, const Player::CarSt curNode = curTile && curTile->IsContains2(car.pos) ? curTile : NULL; moveDir = NullVec2; - if (nextTile) + if (nextTile) ComputeMovDir(owner, deltaTime, car); } @@ -277,7 +277,7 @@ AICar::AttackState::AttackState(): target(0), backTarget(0), placeMineRandom(-1. AICar::AttackState::~AttackState() { - SetTarget(0); + SetTarget(0); SetBackTarget(0); } @@ -380,7 +380,7 @@ void AICar::AttackState::ShotByEnemy(AICar* owner, const CarState& car, Player* float part = std::min(summPart / wpPart, 1.0f); float ammo = std::max(curCharge - (1.0f - part) * cntCharge, 0.0f); - if ((cntCharge == 0 || ammo > 0.0f) && owner->_enbAI) + if ((cntCharge == 0 || ammo > 0.0f) && owner->_enbAI) owner->GetLogic()->Shot(owner->_player, enemy->GetCar().mapObj, weapon.slot); } } @@ -388,24 +388,24 @@ void AICar::AttackState::ShotByEnemy(AICar* owner, const CarState& car, Player* void AICar::AttackState::RunHyper(AICar* owner, const CarState& car, const PathState& path) { - Slot* hyperSlot = owner->_player->GetSlotInst(Player::stHyper); - WeaponItem* hyperDrive = hyperSlot ? hyperSlot->GetItem().IsWeaponItem() : 0; - - float distTile = car.curTile->GetTile().ComputeLength(1.0f - car.curTile->GetTile().ComputeCoordX(car.pos)); + Slot* hyperSlot = owner->_player->GetSlotInst(Player::stHyper); + WeaponItem* hyperDrive = hyperSlot ? hyperSlot->GetItem().IsWeaponItem() : 0; + + float distTile = car.curTile->GetTile().ComputeLength(1.0f - car.curTile->GetTile().ComputeCoordX(car.pos)); float maxDistHyper = hyperDrive ? (hyperDrive->GetDesc().Front().speed + car.speed) : 0.0f; bool hyperDist = (path.nextTile == NULL || path.nextTile->GetTile().GetTurnAngle() < D3DX_PI/6 || distTile > maxDistHyper); - + if (hyperDrive && car.speed > 1.0f && hyperDist && !path._break) { const float lowP = 0.0f; const float highP = 0.7f; - + float roadDist = car.GetDist(true) / car.GetPathLength(true); //отсекаем до [lowP...highP], преобразуем к [0...1] float summPart = ClampValue((roadDist - lowP)/(highP - lowP), 0.0f, 1.0f); unsigned cntCharge = hyperDrive->GetCntCharge(); - unsigned curCharge = hyperDrive->GetCurCharge(); + unsigned curCharge = hyperDrive->GetCurCharge(); float ammo = std::max(curCharge - (1.0f - summPart) * cntCharge, 0.0f); if ((cntCharge == 0 || ammo > 0.0f) && owner->_enbAI) @@ -415,7 +415,7 @@ void AICar::AttackState::RunHyper(AICar* owner, const CarState& car, const PathS } void AICar::AttackState::PlaceMine(AICar* owner, const CarState& car, const PathState& path) -{ +{ Slot* minesSlot = owner->_player->GetSlotInst(Player::stMine); WeaponItem* mines = minesSlot ? minesSlot->GetItem().IsWeaponItem() : 0; @@ -426,8 +426,8 @@ void AICar::AttackState::PlaceMine(AICar* owner, const CarState& car, const Path if (placeMineRandom == -1.0f) placeMineRandom = RandomRange(-0.5f, 0.0f); - - float roadDist = car.GetDist(true) / car.GetPathLength(true); + + float roadDist = car.GetDist(true) / car.GetPathLength(true); //отсекаем до [lowP...highP], преобразуем к [0...1] float summPart = ClampValue((roadDist - lowP)/(highP - lowP), 0.0f, 1.0f); if (summPart > 0.0f && summPart < 1.0f) @@ -502,7 +502,7 @@ void AICar::ControlState::UpdateResetCar(AICar* owner, float deltaTime, const Pl timeResetBlockCar = 0.0f; } } - else + else timeResetBlockCar = 0.0f; } @@ -512,10 +512,10 @@ void AICar::ControlState::Update(AICar* owner, float deltaTime, const Player::Ca steerAngle = abs(acos(Vec2Dot(car.dir, path.moveDir))); //учет инерционности рулевого управления //steerAngle = std::max(0.0f, steerAngle - D3DX_PI * deltaTime * 2.0f); - //float errorSteer = - + //float errorSteer = + //Угол поворота колес - if (steerAngle > cSteerAngleBias) + if (steerAngle > cSteerAngleBias) steerAngle = Vec2CCW(car.dir, path.moveDir) > 0 ? steerAngle : -steerAngle; else steerAngle = 0; @@ -552,7 +552,7 @@ void AICar::ControlState::Update(AICar* owner, float deltaTime, const Player::Ca backMovingMode = blocking; } - if (backMoving) + if (backMoving) steerAngle = -steerAngle; } @@ -572,7 +572,7 @@ void AICar::ControlState::Update(AICar* owner, float deltaTime, const Player::Ca void AICar::UpdateAI(float deltaTime, const Player::CarState& car) { - _path.Update(this, deltaTime, car); + _path.Update(this, deltaTime, car); _attack.Update(this, deltaTime, car, _path); _control.Update(this, deltaTime, car, _path); } @@ -601,7 +601,7 @@ void AICar::OnProgress(float deltaTime) { UpdateAI(deltaTime, GetCar()); } - + //в обход GetCar if (_enbAI) _control.UpdateResetCar(this, deltaTime, GetCar()); diff --git a/src/Rock3dGame/source/game/AIPlayer.cpp b/src/Rock3dGame/source/game/AIPlayer.cpp index bf2e85b7..ef6ba595 100644 --- a/src/Rock3dGame/source/game/AIPlayer.cpp +++ b/src/Rock3dGame/source/game/AIPlayer.cpp @@ -13,7 +13,7 @@ AIPlayer::AIPlayer(Player* player): _player(player), _car(0) { LSL_ASSERT(_player); - _player->AddRef(); + _player->AddRef(); if (!_player->IsHuman()) _player->SetCheat(Player::cCheatEnableFaster | Player::cCheatEnableSlower); @@ -98,7 +98,7 @@ void AISystem::ComputeTracks(float deltaTime) Chain* chain; Link(AICar* mCar, float mDirDist, Chain* mChain): car(mCar), dirDist(mDirDist), chain(mChain) {} - + bool operator==(const Link& link) const { return car == link.car; @@ -161,7 +161,7 @@ void AISystem::ComputeTracks(float deltaTime) AICar* tAICar = tLink->car; const AICar::CarState& tCar = tAICar->GetCar(); Chain* tChain = tLink->chain; - + //1. Совпадающие элементы //2. Элементы уже входят в одну и ту же цепь if (link == tLink || (tChain && tChain == chain)) @@ -181,7 +181,7 @@ void AISystem::ComputeTracks(float deltaTime) else { chain = new Chain(); - chainList.push_back(chain); + chainList.push_back(chain); } LSL_ASSERT(link->chain == 0); @@ -196,7 +196,7 @@ void AISystem::ComputeTracks(float deltaTime) //цель в другой цепи, необходимо объеденить её с chain if (tChain) { - for (Chain::iterator iter = tChain->begin(); iter != tChain->end(); ++iter) + for (Chain::iterator iter = tChain->begin(); iter != tChain->end(); ++iter) (*iter)->chain = chain; chain->insert(chain->end(), tChain->begin(), tChain->end()); chainList.Remove(tChain); @@ -204,7 +204,7 @@ void AISystem::ComputeTracks(float deltaTime) } //добавление нового целевого элемента в цепь else - { + { LSL_ASSERT(tLink->chain == 0); tLink->chain = chain; @@ -224,7 +224,7 @@ void AISystem::ComputeTracks(float deltaTime) //LSL_ASSERT(!tChain->empty() && tChain->size() <= cTrackCnt); LSL_ASSERT(!tChain->empty()); - + struct Pred: public std::binary_function { bool operator()(Link* link1, Link* link2) @@ -255,7 +255,7 @@ void AISystem::ComputeTracks(float deltaTime) AICar* tAICar = (*tIter)->car; AICar::CarState& tCar = const_cast(tAICar->GetCar()); - //максимально допустимая дорожка с учетом требуемых для оставшихся целей мест + //максимально допустимая дорожка с учетом требуемых для оставшихся целей мест sTrack = ClampValue(tCar.track, std::min(sTrack, cTrackCnt - 1), cTrackCnt - (std::min(tCount, cTrackCnt) - i % cTrackCnt)); // @@ -349,7 +349,7 @@ AIDebug::AIDebug(AISystem* ai, AIPlayer* aiPlayer): _ai(ai), _aiPlayer(aiPlayer) GetWorld()->GetGraph()->InsertScNode(_grActor); _control = new Control(this); - GetWorld()->GetControl()->InsertEvent(_control); + GetWorld()->GetControl()->InsertEvent(_control); if (aiPlayer->_car) aiPlayer->_car->_enbAI = false; @@ -381,7 +381,7 @@ AIDebug::GrActor::GrActor(AIDebug* debug): _debug(debug) nHeight = -( MulDiv( nPointSize, GetDeviceCaps(hDC, LOGPIXELSY), 72 ) ); ReleaseDC( NULL, hDC ); // Create a font for statistics and help output - HRESULT hr = D3DXCreateFont(_debug->GetWorld()->GetGraph()->GetEngine().GetDriver().GetDevice(), nHeight, 0, FW_BOLD, 0, FALSE, DEFAULT_CHARSET, OUT_DEFAULT_PRECIS, DEFAULT_QUALITY, DEFAULT_PITCH | FF_DONTCARE, TEXT("Arial"), &_font); + HRESULT hr = D3DXCreateFont(_debug->GetWorld()->GetGraph()->GetEngine().GetDriver().GetDevice(), nHeight, 0, FW_BOLD, 0, FALSE, DEFAULT_CHARSET, OUT_DEFAULT_PRECIS, DEFAULT_QUALITY, DEFAULT_PITCH | FF_DONTCARE, TEXT("Arial"), &_font); } AIDebug::GrActor::~GrActor() @@ -408,7 +408,7 @@ void AIDebug::GrActor::DoRender(graph::Engine& engine) AIPlayer* aiPlayer = (*iter); MapObj* car = aiPlayer->GetPlayer()->GetCar().mapObj; RockCar* gameObj = _debug->_aiPlayer->GetPlayer()->GetCar().gameObj; - + if (car) { glm::vec2 moveDir = aiPlayer->GetCar()->_path.moveDir; @@ -432,7 +432,7 @@ void AIDebug::GrActor::DoRender(graph::Engine& engine) if (car && nextNode) { - glm::vec2 moveDir = _debug->_aiPlayer->_car->_path.moveDir; + glm::vec2 moveDir = _debug->_aiPlayer->_car->_path.moveDir; float dist = Line2DistToPoint(nextNode->GetTile().GetEdgeLine(), _debug->_aiPlayer->_car->GetCar().pos); glm::vec2 dir = nextNode->GetTile().GetEdgeNorm(); @@ -458,11 +458,11 @@ void AIDebug::GrActor::DoRender(graph::Engine& engine) NxMat33 mat0(rot0); if (iter->shape0->getActor().isDynamic()) { - NxMat34 bodyMat = iter->shape0->getActor().getCMassGlobalPose(); - bodyMat.multiply(pos0, pos0); + NxMat34 bodyMat = iter->shape0->getActor().getCMassGlobalPose(); + bodyMat.multiply(pos0, pos0); mat0.multiply(bodyMat.M, mat0); } - + D3DXVECTOR3 error(contData.error.get()); D3DXVECTOR3 errorNorm; D3DXVec3Normalize(&errorNorm, &error); @@ -517,13 +517,13 @@ void AIDebug::GrActor::DoRender(graph::Engine& engine) engine.GetContext().RestoreRenderState(graph::rsZWriteEnable); engine.GetContext().RestoreRenderState(graph::rsZEnable); engine.GetContext().RestoreRenderState(graph::rsLighting); - + std::stringstream sstream; std::stringstream sstream2; - + sstream << "Chains \n"; unsigned i = 0; for (ChainList::iterator iter = _debug->chainList.begin(); iter != _debug->chainList.end(); ++iter, ++i) @@ -591,7 +591,7 @@ void AIDebug::GrActor::DoRender(graph::Engine& engine) speed200Time += engine.GetDt(); sstream << "RPM = " << gameObj->GetRPM() << '\n'; - sstream << "Gear = " << gameObj->GetCurGear() << '\n'; + sstream << "Gear = " << gameObj->GetCurGear() << '\n'; sstream << "Speed = " << Round(car.speed * 3600.0f / 1000.0f * 100.0f) / 100.0f << '\n'; sstream << "AxleSpeed = " << Round(gameObj->GetDrivenWheelSpeed() * 3600.0f / 1000.0f * 100.0f) / 100.0f << '\n'; sstream << "Break = " << _debug->_aiPlayer->GetCar()->_path._break << '\n'; @@ -599,9 +599,9 @@ void AIDebug::GrActor::DoRender(graph::Engine& engine) sstream << "Speed150 = " << Round(speed150Time * 100.0f) / 100.0f << '\n'; sstream << "Speed200 = " << Round(speed200Time * 100.0f) / 100.0f << '\n'; if (car.curTile) - { + { WayNode* curTile = _debug->_aiPlayer->GetCar()->GetCar().curTile; - sstream << "Finish = " << curTile->GetTile().GetFinishDist()/curTile->GetPath()->GetLength() << '\n'; + sstream << "Finish = " << curTile->GetTile().GetFinishDist()/curTile->GetPath()->GetLength() << '\n'; } sstream << '\n'; @@ -628,7 +628,7 @@ void AIDebug::GrActor::DoRender(graph::Engine& engine) minNormReaction = 999999.0f; maxNormReaction = 0; } - dbgDumpTime += engine.GetDt(); + dbgDumpTime += engine.GetDt(); game::CarWheel* wheel = &gameObj->GetWheels().front(); px::WheelShape* pxWheel = wheel->GetShape(); @@ -676,29 +676,29 @@ void AIDebug::GrActor::DoRender(graph::Engine& engine) //масса sstream2 << "4. mass = " << mass << '\n'; //центр тяжести - sstream2 << "5. cMass = (" << cMassPos.x << ", " << cMassPos.y << ", " << cMassPos.z << ")" << '\n'; + sstream2 << "5. cMass = (" << cMassPos.x << ", " << cMassPos.y << ", " << cMassPos.z << ")" << '\n'; //motor - sstream2 << "6. torque = " << motor.maxTorque << '\n'; + sstream2 << "6. torque = " << motor.maxTorque << '\n'; //steerSpeed sstream2 << "7. steerSpeed = " << steerSpeed << '\n'; //steerRot sstream2 << "8. steerRot = " << steerRot << '\n'; //kSteer - sstream2 << "9. kSteer = " << kSteer << '\n'; + sstream2 << "9. kSteer = " << kSteer << '\n'; sstream2 << '\n'; - - + + // sstream2 << "slip wheels" << '\n'; int ind = 0; for (game::CarWheels::const_iterator iter = gameObj->GetWheels().begin(); iter != gameObj->GetWheels().end(); ++iter, ++ind) sstream2 << "wheel" << ind << " lat=" << Round((*iter)->GetLatSlip() * 10.0f)/10.0f << " long=" << Round((*iter)->GetLongSlip() * 10.0f)/10.0f << '\n'; - sstream2 << '\n'; + sstream2 << '\n'; RECT destRect; RECT destRect2; - SetRect(&destRect, 5, 200, 0, 0); - SetRect(&destRect2, 150, 160, 0, 0); + SetRect(&destRect, 5, 200, 0, 0); + SetRect(&destRect2, 150, 160, 0, 0); _font->OnResetDevice(); _font->DrawText(0 , sstream.str().c_str(), -1, &destRect, DT_NOCLIP, D3DXCOLOR(1.0f, 0.0f, 0.0f, 1.0f)); _font->DrawText(0 , sstream2.str().c_str(), -1, &destRect2, DT_NOCLIP, D3DXCOLOR(1.0f, 0.0f, 0.0f, 1.0f)); @@ -727,7 +727,7 @@ void AIDebug::GrActor::DoRender(graph::Engine& engine) addVal = -1; if (numPage == 0) - switch (_numParam) + switch (_numParam) { case 0: longFunc.extremumSlip += 0.1f * engine.GetDt() * addVal; @@ -761,7 +761,7 @@ void AIDebug::GrActor::DoRender(graph::Engine& engine) break; } if (numPage == 1) - switch (_numParam) + switch (_numParam) { case 0: suspension.spring += 100000.0f * engine.GetDt() * addVal; @@ -839,7 +839,7 @@ bool AIDebug::Control::OnHandleInput(const InputMessage& msg) void AIDebug::OnProgress(float deltaTime) { - _traceGfx->SetSelNode(_aiPlayer->GetPlayer()->GetCar().curNode); + _traceGfx->SetSelNode(_aiPlayer->GetPlayer()->GetCar().curNode); } World* AIDebug::GetWorld() diff --git a/src/Rock3dGame/source/game/AchievmentModel.cpp b/src/Rock3dGame/source/game/AchievmentModel.cpp index 5797698d..54e06ea1 100644 --- a/src/Rock3dGame/source/game/AchievmentModel.cpp +++ b/src/Rock3dGame/source/game/AchievmentModel.cpp @@ -68,13 +68,13 @@ void Achievment::UnregProgressEvent() void Achievment::SaveTo(lsl::SWriter* writer) { lsl::SWriteEnum(writer, "state", _state, cStateStr, cStateEnd); - writer->WriteValue("price", _price); + writer->WriteValue("price", _price); } void Achievment::LoadFrom(lsl::SReader* reader) { lsl::SReadEnum(reader, "state", _state, cStateStr, cStateEnd); - reader->ReadValue("price", _price); + reader->ReadValue("price", _price); } void Achievment::Unlock() @@ -352,7 +352,7 @@ void AchievmentConditionBonus::OnResetRaceState() void AchievmentConditionBonus::OnProcessEvent(unsigned id, EventData* data) { Map* map = owner()->game()->GetWorld()->GetMap(); - + switch (id) { case cPlayerPickItem: @@ -363,9 +363,9 @@ void AchievmentConditionBonus::OnProcessEvent(unsigned id, EventData* data) if (_bonusTotalCount == 0) _bonusTotalCount = map->GetMapObjCount(myData->record); - + if (data && data->playerId == Race::cHuman) - { + { ++_bonusCount; if (_bonusCount >= _bonusTotalCount) @@ -373,7 +373,7 @@ void AchievmentConditionBonus::OnProcessEvent(unsigned id, EventData* data) CompleteIteration(); _bonusCount = 0; } - } + } break; } } @@ -488,7 +488,7 @@ void AchievmentConditionSpeedKill::killsTime(float value) { _killsTime = value; } - + @@ -512,13 +512,13 @@ void AchievmentConditionRaceKill::OnProcessEvent(unsigned id, EventData* data) { if (++_curKills >= _killsNum) { - _curKills = 0; + _curKills = 0; CompleteIteration(); } break; } } -} +} void AchievmentConditionRaceKill::SaveTo(lsl::SWriter* writer) { @@ -577,7 +577,7 @@ void AchievmentConditionLapPass::OnProcessEvent(unsigned id, EventData* data) break; } } -} +} void AchievmentConditionLapPass::SaveTo(lsl::SWriter* writer) { @@ -713,7 +713,7 @@ void AchievmentConditionSurvival::OnProcessEvent(unsigned id, EventData* data) break; } } -} +} @@ -776,12 +776,12 @@ AchievmentModel::AchievmentModel(Race* race, const lsl::string& name): _race(rac _condClasses.Add(cSpeedKill); _condClasses.Add(cRaceKill); _condClasses.Add(cLapPass); - _condClasses.Add(cDodge); + _condClasses.Add(cDodge); _condClasses.Add(cLapBreak); _condClasses.Add(cLapSurvival); _condClasses.Add(cFirstKill); - _condClasses.Add(cTouchKill); - + _condClasses.Add(cTouchKill); + SetName(name); SetOwner(race); @@ -790,12 +790,12 @@ AchievmentModel::AchievmentModel(Race* race, const lsl::string& name): _race(rac AchievmentModel::~AchievmentModel() { - DeleteAll(); + DeleteAll(); DeleteAllCond(); } void AchievmentModel::GenerateLib() -{ +{ AchievmentGamer* gamer; AchievmentMapObj* mapObj; AchievmentConditionBonus* condBonus; @@ -815,7 +815,7 @@ void AchievmentModel::GenerateLib() const Planet::PlayerData* playerData = _race->GetTournament().GetPlayerData(_SC(scViper)); if (playerData) gamer->SetGamerId(playerData->id); - gamer->Unlock(); + gamer->Unlock(); mapObj = Add(cBuggi); mapObj->price(1000); @@ -823,11 +823,11 @@ void AchievmentModel::GenerateLib() mapObj->Unlock(); mapObj = Add(cAirblade); - mapObj->price(1000); + mapObj->price(1000); mapObj->AddRecord(_race->GetDB()->GetRecord(MapObjLib::ctCar, "manticoraBoss")); mapObj->AddRecord(_race->GetDB()->GetRecord(MapObjLib::ctCar, "gusenizaBoss")); mapObj->AddRecord(_race->GetDB()->GetRecord(MapObjLib::ctCar, "podushkaBoss")); - mapObj->AddRecord(_race->GetDB()->GetRecord(MapObjLib::ctCar, "monstertruckBoss")); + mapObj->AddRecord(_race->GetDB()->GetRecord(MapObjLib::ctCar, "monstertruckBoss")); mapObj->AddRecord(_race->GetDB()->GetRecord(MapObjLib::ctCar, "devildriverBoss")); mapObj->Unlock(); @@ -848,7 +848,7 @@ void AchievmentModel::GenerateLib() mapObj = Add(cTankchetti); mapObj->price(1300); mapObj->SetRecord(_race->GetDB()->GetRecord(MapObjLib::ctCar, "tankchetti")); - mapObj->Unlock(); + mapObj->Unlock(); mapObj = Add(cPhaser); mapObj->price(1300); @@ -858,19 +858,19 @@ void AchievmentModel::GenerateLib() mapObj = Add(cMustang); mapObj->price(1300); mapObj->SetRecord(_race->GetDB()->GetRecord(MapObjLib::ctCar, "mustang")); - mapObj->Unlock(); + mapObj->Unlock(); condBonus = AddCond(cMedicate); condBonus->bonusType(GameObject::btMedpack); - condBonus->reward(700); + condBonus->reward(700); condBonus = AddCond(cMoneybags); condBonus->bonusType(GameObject::btMoney); - condBonus->reward(700); + condBonus->reward(700); condBonus = AddCond(cExplosivo); condBonus->bonusType(GameObject::btCharge); - condBonus->reward(700); + condBonus->reward(700); condSpeedKill = AddCond(cDoubleKill); condSpeedKill->reward(500); @@ -913,8 +913,8 @@ void AchievmentModel::LoadLib() lsl::RootNode rootNode("achievmentRoot", _race); try - { - SerialFileXML xml; + { + SerialFileXML xml; xml.LoadNodeFromFile(rootNode, "achievment.xml"); rootNode.Load(this); @@ -933,13 +933,13 @@ void AchievmentModel::Save(lsl::SWriter* writer) { writer->WriteValue("points", _points); - lsl::SWriter* items = writer->NewDummyNode("items"); + lsl::SWriter* items = writer->NewDummyNode("items"); for (Items::iterator iter = _items.begin(); iter != _items.end(); ++iter) { lsl::SWriter* child = items->NewDummyNode(iter->first.c_str()); - child->WriteAttr("classId", iter->second->classId()); + child->WriteAttr("classId", iter->second->classId()); - iter->second->SaveTo(child); + iter->second->SaveTo(child); } lsl::SWriter* conditions = writer->NewDummyNode("conditions"); @@ -963,7 +963,7 @@ void AchievmentModel::Load(lsl::SReader* reader) { lsl::SReader* child = items->FirstChildValue(); while (child) - { + { const lsl::SerialNode::ValueDesc* attr = child->ReadAttr("classId"); LSL_ASSERT(attr); unsigned classId; @@ -981,7 +981,7 @@ void AchievmentModel::Load(lsl::SReader* reader) { lsl::SReader* child = conditions->FirstChildValue(); while (child) - { + { const lsl::SerialNode::ValueDesc* attr = child->ReadAttr("classId"); LSL_ASSERT(attr); unsigned classId; @@ -1028,7 +1028,7 @@ Achievment* AchievmentModel::Add(unsigned classId, const std::string& name) void AchievmentModel::Delete(const std::string id) { Items::const_iterator iter = _items.find(id); - + LSL_ASSERT(iter != _items.end()); delete iter->second; diff --git a/src/Rock3dGame/source/game/CameraManager.cpp b/src/Rock3dGame/source/game/CameraManager.cpp index a25a1e5c..4288f31f 100644 --- a/src/Rock3dGame/source/game/CameraManager.cpp +++ b/src/Rock3dGame/source/game/CameraManager.cpp @@ -13,7 +13,7 @@ CameraManager::CameraManager(World* world): _world(world), _player(0), _target(0 { _camera = new graph::Camera(); _camera->SetPos(D3DXVECTOR3(50.0f, 50.0f, 50.0f)); - _camera->SetDir(-IdentityVector); + _camera->SetDir(-IdentityVector); _lastFreePos = _camera->GetPos(); _lastFreeRot = _camera->GetRot(); @@ -31,7 +31,7 @@ CameraManager::~CameraManager() _world->GetControl()->RemoveEvent(_control); delete _control; _world->GetGraph()->SetCamera(0); - delete _camera; + delete _camera; } void CameraManager::OrthoCullOffset() @@ -40,7 +40,7 @@ void CameraManager::OrthoCullOffset() { float minZ = 0; float maxZ = 0; - + if (_world->GetGraph()->ComputeViewZBound(_camera->GetContextInfo(), minZ, maxZ)) { float offZ = std::min(minZ - _near, 0.0f); @@ -64,7 +64,7 @@ void CameraManager::SyncLight() } CameraManager::Control::Control(CameraManager* manager): _manager(manager), _staticVec1(NullVector), _staticVec2(NullVector), _staticVec3(NullVector), _staticFloat1(0) -{ +{ } bool CameraManager::Control::OnMouseMoveEvent(const MouseMove& mMove) @@ -93,7 +93,7 @@ bool CameraManager::Control::OnMouseMoveEvent(const MouseMove& mMove) return true; } } - + return false; } @@ -117,11 +117,11 @@ bool CameraManager::Control::OnHandleInput(const InputMessage& msg) styleMap[i] = cStyleEnd; styleMap[0] = csIsoView; styleMap[3] = csFreeView; - styleMap[4] = csLights; + styleMap[4] = csLights; } #endif - if (_manager->_style != cStyleEnd && + if (_manager->_style != cStyleEnd && (_manager->_world->GetEdit() || _manager->_world->GetGame() && _manager->_world->GetGame()->IsStartRace())) { @@ -233,11 +233,11 @@ void CameraManager::Control::OnInputFrame(float deltaTime) const D3DXVECTOR3 cCamTargetOff(-4.6f, 0.0f, 2.4f); ControlManager* control = _manager->_world->GetControl(); - + D3DXVECTOR3 pos = camera->GetPos(); glm::quat rot = camera->GetRot(); - D3DXVECTOR3 dir = camera->GetDir(); - D3DXVECTOR3 right = camera->GetRight(); + D3DXVECTOR3 dir = camera->GetDir(); + D3DXVECTOR3 right = camera->GetRight(); D3DXVECTOR3 targetPos = NullVector; D3DXVECTOR3 targetDir = XVector; @@ -245,8 +245,8 @@ void CameraManager::Control::OnInputFrame(float deltaTime) float targetSize = 0.0f; D3DXVECTOR3 targetVel = NullVector; float targetDrivenSpeed = 0.0f; - - Player* player = _manager->_player; + + Player* player = _manager->_player; if (player) { targetSize = player->GetCar().size; @@ -285,7 +285,7 @@ void CameraManager::Control::OnInputFrame(float deltaTime) pos = _manager->_light->GetSource()->GetPos(); dir = _manager->_light->GetSource()->GetDir(); right = _manager->_light->GetSource()->GetRight(); - rot = _manager->_light->GetSource()->GetRot(); + rot = _manager->_light->GetSource()->GetRot(); } switch (_manager->_style) @@ -307,7 +307,7 @@ void CameraManager::Control::OnInputFrame(float deltaTime) pos += dir * speedMove; if (control->GetAsyncKey('A')) pos += right * speedMove; - if (control->GetAsyncKey('S')) + if (control->GetAsyncKey('S')) pos -= dir * speedMove; if (control->GetAsyncKey('D')) pos -= right * speedMove; @@ -354,7 +354,7 @@ void CameraManager::Control::OnInputFrame(float deltaTime) camPos += targetPos;*/ D3DXVECTOR3 camDir; - Vec3Rotate(XVector, camQuat, camDir); + Vec3Rotate(XVector, camQuat, camDir); const float minSpeed = 0.0f; const float maxSpeed = 150.0f * 1000.0f / 3600.0f; float speedK = lsl::ClampValue((velocityLen - minSpeed) / (maxSpeed - minSpeed), 0.0f, 1.0f); @@ -362,7 +362,7 @@ void CameraManager::Control::OnInputFrame(float deltaTime) const float maxDist = 1.5f; float distTarget = minDist + speedK * speedK * (maxDist - minDist); _staticFloat1 = _staticFloat1 + (distTarget - _staticFloat1) * lsl::ClampValue(deltaTime * 5.0f, 0.0f, 1.0f); - + D3DXVECTOR3 camOff; Vec3Rotate(cCamTargetOff + D3DXVECTOR3(-1.0f, 0.0f, 0.0f), camQuat, camOff); D3DXVECTOR3 camPos = targetPos - camDir * _staticFloat1 + camOff; @@ -397,7 +397,7 @@ void CameraManager::Control::OnInputFrame(float deltaTime) //Направление камеры в мировом пространстве D3DXVECTOR3 isoDir; Vec3Rotate(XVector, cIsoRot, isoDir); - + //Преобразуем в пространство камеры, чтобы вычислять смещение отностиельно центра экрана. Для перспективной проекции это дает артефакт удаления-приближения камеры, поэтому может быть опущено D3DXVECTOR3 targOff = targetDir; targOff.z = 0.0f; @@ -443,7 +443,7 @@ void CameraManager::Control::OnInputFrame(float deltaTime) //Обратное преобразование в мировое пространство Vec3Rotate(targOff, cIsoRot, targOff); - //Планва интерполяция смещения + //Планва интерполяция смещения D3DXVec3Lerp(&_staticVec1, &_staticVec1, &targOff, deltaTime); //_staticVec1 = targOff; //Позиция камеры @@ -459,7 +459,7 @@ void CameraManager::Control::OnInputFrame(float deltaTime) //только если это первый скачок _staticFloat2 = _staticFloat1 == 0.0f ? dTargetLength / 0.5f : _staticFloat2; _staticFloat1 = dTargetLength; - _staticVec3 = dTargetPos / dTargetLength; + _staticVec3 = dTargetPos / dTargetLength; } if (_staticFloat1 > 0.0f) @@ -539,7 +539,7 @@ void CameraManager::Control::StyleChanged(Style style, Style newStyle) { lsl::Point pos = _manager->_world->GetControl()->GetMousePos(); _staticVec2 = _staticVec1 = D3DXVECTOR3(static_cast(pos.x), static_cast(pos.y), 0); - } + } else if (newStyle == csIsometric) { TargetChanged(); @@ -618,7 +618,7 @@ void CameraManager::FlyTo(const D3DXVECTOR3& pos, const glm::quat& rot, float ti _flyTime = time; _flyCurTime = 0; - + _control->FlyStart(); } @@ -675,7 +675,7 @@ void CameraManager::ChangeStyle(Style value) _lastFreeRot = _camera->GetRot(); } - Style prevStyle = _style; + Style prevStyle = _style; _style = value; _control->StyleChanged(prevStyle, value); _world->ResetCamera(); @@ -733,7 +733,7 @@ void CameraManager::ChangeStyle(Style value) _world->GetGraph()->SetReflMappMode((_style == csIsometric || _style == csThirdPerson) ? GraphManager::rmColorLayer : GraphManager::rmLackLayer); _world->GetGraph()->SetShadowMaxFar(_style == csThirdPerson ? 60.0f : (_style == csIsometric ? 55.0f : 0.0f)); - + } float CameraManager::GetAspect() const @@ -769,7 +769,7 @@ float CameraManager::GetNear() const void CameraManager::SetNear(float value) { _near = value; - _camera->SetNear(value); + _camera->SetNear(value); } float CameraManager::GetFar() const @@ -924,7 +924,7 @@ void CameraManager::GetObserverCoord(const D3DXVECTOR3& targetPos, float targetD D3DXVECTOR3 norm; D3DXVec3Cross(&norm, &(-ZVector), &yAxis); D3DXVec3Normalize(&norm, &norm); - float ang = 0; + float ang = 0; bool angClamp = false; if (D3DXVec3Dot(&norm, &xAxis) < 0) diff --git a/src/Rock3dGame/source/game/ControlManager.cpp b/src/Rock3dGame/source/game/ControlManager.cpp index 5307a9f0..404b15e0 100644 --- a/src/Rock3dGame/source/game/ControlManager.cpp +++ b/src/Rock3dGame/source/game/ControlManager.cpp @@ -33,14 +33,14 @@ const lsl::string cControllerTypeStr[cControllerTypeEnd] = {"ctKeyboard", "ctGam ControlManager::ControlManager(World* world): _world(world) -{ +{ _controllerStates[ctKeyboard] = new ControllerState(); _controllerStates[ctGamepad] = new XInputState(); ZeroMemory(_gameKeys, sizeof(_gameKeys)); _gameKeys[ctKeyboard][gaAccel] = vkUp; - _gameKeys[ctKeyboard][gaBreak] = vkDown; + _gameKeys[ctKeyboard][gaBreak] = vkDown; _gameKeys[ctKeyboard][gaWheelLeft] = vkLeft; _gameKeys[ctKeyboard][gaWheelRight] = vkRight; _gameKeys[ctKeyboard][gaResetCar] = CharToVirtualKey('R'); @@ -53,7 +53,7 @@ ControlManager::ControlManager(World* world): _world(world) _gameKeys[ctKeyboard][gaMine] = CharToVirtualKey('E'); _gameKeys[ctKeyboard][gaHyper] = CharToVirtualKey('Q'); _gameKeys[ctKeyboard][gaWeaponDown] = cVirtualKeyEnd; - _gameKeys[ctKeyboard][gaWeaponUp] = cVirtualKeyEnd; + _gameKeys[ctKeyboard][gaWeaponUp] = cVirtualKeyEnd; _gameKeys[ctKeyboard][gaAction] = vkStart; _gameKeys[ctKeyboard][gaEscape] = vkBack; _gameKeys[ctKeyboard][gaViewSwitch] = CharToVirtualKey('C'); @@ -91,7 +91,7 @@ ControlManager::ControlManager(World* world): _world(world) _gameKeys[ctGamepad][gaDebug6] = cVirtualKeyEnd; _gameKeys[ctGamepad][gaDebug7] = cVirtualKeyEnd; } - + ControlManager::~ControlManager() { LSL_ASSERT(_eventList.empty()); @@ -115,7 +115,7 @@ int ControlManager::GetKeyboardKeyState(VirtualKey key) case vkButtonX: return GetAsyncKey(VK_BACK) == akDown; case vkButtonY: - return GetAsyncKey(VK_SPACE) == akDown; + return GetAsyncKey(VK_SPACE) == akDown; case vkBack: return GetAsyncKey(VK_ESCAPE) == akDown; case vkStart: @@ -208,7 +208,7 @@ int ControlManager::GetGamepadKeyState(VirtualKey key) case vkTriggerRight: if (xInput->state.Gamepad.bRightTrigger > XINPUT_GAMEPAD_TRIGGER_THRESHOLD) return xInput->state.Gamepad.bRightTrigger; - break; + break; case vkThumbLeftPress: if (xInput->state.Gamepad.wButtons & XINPUT_GAMEPAD_LEFT_THUMB) return 1; @@ -270,9 +270,9 @@ void ControlManager::UpdateControllerState() XInputState* state = (XInputState*)_controllerStates[ctGamepad]; for (int i = 0; i < 4; ++i) - { + { unsigned dwResult = XInputGetState(i, &state->state); - bool plugged = dwResult == ERROR_SUCCESS; + bool plugged = dwResult == ERROR_SUCCESS; state->plugged = plugged; state->index = i; @@ -301,7 +301,7 @@ void ControlManager::UpdateControllerState() msg.repeat = (keystroke.Flags & XINPUT_KEYSTROKE_REPEAT) != 0; msg.key = cVirtualKeyEnd; - msg.unicode = keystroke.Unicode; + msg.unicode = keystroke.Unicode; msg.controller = ctGamepad; switch (keystroke.VirtualKey) @@ -403,7 +403,7 @@ void ControlManager::UpdateControllerState() bool ControlManager::HandleInput(const InputMessage& msg) { for (EventList::iterator iter = _eventList.begin(); iter != _eventList.end(); ++iter) - { + { if ((*iter)->OnHandleInput(msg)) return true; } @@ -532,18 +532,18 @@ void ControlManager::OnProgress(float deltaTime) { UpdateControllerState(); - for (EventList::iterator iter = _eventList.begin(); iter != _eventList.end(); ++iter) + for (EventList::iterator iter = _eventList.begin(); iter != _eventList.end(); ++iter) (*iter)->OnInputProgress(deltaTime); } void ControlManager::OnFrame(float deltaTime) { - for (EventList::iterator iter = _eventList.begin(); iter != _eventList.end(); ++iter) + for (EventList::iterator iter = _eventList.begin(); iter != _eventList.end(); ++iter) (*iter)->OnInputFrame(deltaTime); } void ControlManager::ResetInput(bool reset) -{ +{ } void ControlManager::InsertEvent(ControlEvent* value) @@ -586,10 +586,10 @@ AsyncKey ControlManager::IsMouseDown(MouseKey key) { case mkLeft: return GetAsyncKey(VK_LBUTTON); - + case mkRight: return GetAsyncKey(VK_RBUTTON); - + case mkMiddle: return GetAsyncKey(VK_MBUTTON); } @@ -675,7 +675,7 @@ VirtualKey ControlManager::CharToVirtualKey(char unicode) int ControlManager::GetVirtualKeyState(ControllerType controller, VirtualKey key) { switch (controller) - { + { case ctGamepad: return GetGamepadKeyState(key); @@ -692,7 +692,7 @@ int ControlManager::GetGameActionState(ControllerType controller, GameAction act float ControlManager::GetGameActionState(ControllerType controller, GameAction action, bool withAlpha) { - VirtualKeyInfo info = GetGameActionInfo(controller, action); + VirtualKeyInfo info = GetGameActionInfo(controller, action); if (withAlpha && info.alphaMax == 0) return 0.0f; diff --git a/src/Rock3dGame/source/game/DataBase.cpp b/src/Rock3dGame/source/game/DataBase.cpp index f53e77dc..de22b51c 100644 --- a/src/Rock3dGame/source/game/DataBase.cpp +++ b/src/Rock3dGame/source/game/DataBase.cpp @@ -241,7 +241,7 @@ void DataBase::AddToGraph(graph::Actor& grActor, GraphType type, bool dynamic, b desc.props.set(IActor::gpColor); break; - case gtRefrEffect: + case gtRefrEffect: LSL_ASSERT(dynamic); desc.lighting = IActor::glRefr; @@ -283,7 +283,7 @@ px::BoxShape* DataBase::AddPxBox(MapObj* mapObj, const AABB& aabb) px::BoxShape* DataBase::AddPxBox(MapObj* mapObj) { AABB aabb = mapObj->GetGameObj().GetGrActor().GetLocalAABB(false); - + return AddPxBox(mapObj, aabb); } @@ -426,7 +426,7 @@ CarWheel* DataBase::AddWheel(unsigned index, GameCar& car, const std::string& me descShapeWheel.localPose.M.fromQuat(q); wheel->GetShape()->AssignFromDesc(descShapeWheel); - + //if (master) //{ // wheel->GetPxActor().SetMasterSer(&master->GetPxActor()); @@ -549,7 +549,7 @@ void DataBase::LoadCar(const std::string& name, const std::string& mesh, const s } AddPxBody(mapObj, carDesc.mass, &carDesc.centerMassPos); - + AABB aabb = carDesc.bodyAABB; if (D3DXVec3Length(&aabb.GetSizes()) < 0.001f) @@ -558,13 +558,13 @@ void DataBase::LoadCar(const std::string& name, const std::string& mesh, const s aabb.Scale(carDesc.bodyScale); aabb.Offset(carDesc.bodyOffset); px::BoxShape* carShape = AddPxBox(mapObj, aabb); - + carShape->SetMaterialIndex(carDesc.wakeFrictionModel ? _nxCarMaterial2->getMaterialIndex() : _nxCarMaterial1->getMaterialIndex()); std::vector posWheels; CarWheels::LoadPosTo("Data\\" + wheelCoords, posWheels); - for (unsigned i = 0; i < posWheels.size(); ++i) + for (unsigned i = 0; i < posWheels.size(); ++i) { bool backWheel = i >= 2; bool lead = (carDesc.frontWheelDrive && i <= 1) || (carDesc.backWheelDrive && backWheel); @@ -576,7 +576,7 @@ void DataBase::LoadCar(const std::string& name, const std::string& mesh, const s PxWheelSlipEffect& slipEffect = wheel->GetBehaviors().Add(); slipEffect.SetEffect(GetRecord(MapObjLib::ctEffects, "trail")); slipEffect.SetPos(ZVector * 0.01f); - + //для одного колеса if (i == 0) slipEffect.SetSound(&GetSound("Sounds\\SkidAsphalt.ogg")); @@ -806,7 +806,7 @@ void DataBase::LoadSndSources() { game::MapObj* mapObj = NewMapObj(); mapObj->GetGameObj().SetMaxTimeLife(2.0f); - + { LifeEffect& effect = mapObj->GetGameObj().GetBehaviors().Add(); effect.SetSound(&GetSound("Sounds\\klicka5.ogg")); @@ -883,12 +883,12 @@ void DataBase::LoadEffects() desc.life = 1.0f; desc.startPos = Vec3Range(D3DXVECTOR3(-0.1f, -0.1f, -0.1f), D3DXVECTOR3(0.1f, 0.1f, 0.1f), Vec3Range::vdVolume); desc.startScale = Vec3Range(D3DXVECTOR3(1.0f, 0.70f, 0.70f), D3DXVECTOR3(1.5f, 1.0f, 1.0f)); - + graph::FxFlowEmitter::FlowDesc descFlow; descFlow.speedPos = Vec3Range(D3DXVECTOR3(-12.0f, -12.0f, 0.0f), D3DXVECTOR3(12.0f, 12.0f, 12.0f), Vec3Range::vdVolume); descFlow.autoRot = true; descFlow.gravitation = D3DXVECTOR3(0, 0, -5.0f); - + LoadFxFlow("spark1", "Effect\\spark1", _fxDirSpriteManager, desc, descFlow, true, 1.0f); } @@ -908,7 +908,7 @@ void DataBase::LoadEffects() desc.life = FloatRange(0.3f, 0.7f); desc.startPos = Vec3Range(D3DXVECTOR3(-0.1f, -0.1f, -0.1f), D3DXVECTOR3(0.1f, 0.1f, 0.1f), Vec3Range::vdVolume); desc.startScale = Vec3Range(D3DXVECTOR3(0.2f, 0.40f, 0.40f), D3DXVECTOR3(0.9f, 0.5f, 0.5f)); - + graph::FxFlowEmitter::FlowDesc descFlow; descFlow.speedPos = Vec3Range(D3DXVECTOR3(-6.0f, -6.0f, -6.0f), D3DXVECTOR3(6.0f, 6.0f, 6.0f), Vec3Range::vdVolume); descFlow.autoRot = true; @@ -1032,11 +1032,11 @@ void DataBase::LoadEffects() desc.density = FloatRange(1.0f, 3.0f); desc.startPos = Vec3Range(D3DXVECTOR3(-0.1f, -0.1f, -0.1f), D3DXVECTOR3(0.1f, 0.1f, 0.1f), Vec3Range::vdVolume); desc.startScale = D3DXVECTOR3(IdentityVector) / 2; - + graph::FxFlowEmitter::FlowDesc descFlow; descFlow.speedScale = D3DXVECTOR3(1.0f, 1.0f, 1.0f); descFlow.speedPos = Vec3Range(D3DXVECTOR3(-0.5f, -0.5f, 2.0f), D3DXVECTOR3(0.5f, 0.5f, 2.0f), Vec3Range::vdVolume, Point3U(100, 100, 100)); - + LoadFxFlow("smoke1", "Effect\\smoke1", _fxSpriteManager, desc, descFlow, true); } @@ -1055,7 +1055,7 @@ void DataBase::LoadEffects() graph::FxFlowEmitter::FlowDesc descFlow; descFlow.speedScale = IdentityVector * 2.0f; descFlow.speedPos = -XVector; - + LoadFxFlow("smoke2", "Effect\\smoke2", _fxSpriteManager, desc, descFlow, true); } @@ -1224,7 +1224,7 @@ void DataBase::LoadEffects() LoadFxSprite("flare3", "Effect\\flare3", NullVector, Vec3Range(IdentityVector, NullVector), NullQuaternion, false, graph::SceneNode::amNone, 0); //flare4 LoadFxSprite("flare4", "Effect\\flare4", NullVector, IdentityVector, NullQuaternion, false, graph::SceneNode::amNone, 0); - //flare5 + //flare5 LoadFxSprite("flare5", "Effect\\flare5", NullVector, IdentityVector, NullQuaternion, false, graph::SceneNode::amNone, 0, 0, 0, false, glm::vec2(0.8f, 0.8f)); //flare6 LoadFxSprite("flare6", "Effect\\flare6", NullVector, IdentityVector, NullQuaternion, false, graph::SceneNode::amNone, 0, 0, 0.15f, false, glm::vec2(2.0f, 2.0f)); @@ -1268,7 +1268,7 @@ void DataBase::LoadEffects() { game::MapObj* mapObj = NewMapObj(); AddToGraph(mapObj, gtEffect, true); - + graph::FxParticleSystem* fxSystem = AddFxSystem(mapObj, _fxSpriteManager); AddLibMat(&fxSystem->material, "Effect\\fire1"); @@ -1325,7 +1325,7 @@ void DataBase::LoadEffects() SaveMapObj(mapObj, MapObjLib::ctEffects, "fire2"); } - + //Death2 { game::MapObj* mapObj = NewMapObj(); @@ -1342,7 +1342,7 @@ void DataBase::LoadEffects() //debris { graph::FxParticleSystem* fxSystem = AddFxSystem(mapObj, _fxPiecesManager, graph::FxParticleSystem::csUnique); - + graph::FxEmitter::ParticleDesc desc; desc.maxNum = 3; desc.maxNumAction = graph::FxEmitter::mnaWaitingFree; @@ -1351,7 +1351,7 @@ void DataBase::LoadEffects() desc.life = 0; desc.startPos = Vec3Range(D3DXVECTOR3(-0.1f, -0.1f, -0.1f), D3DXVECTOR3(0.1f, 0.1f, 0.1f), Vec3Range::vdVolume, Point3U(100, 100, 100)); desc.startScale = Vec3Range(IdentityVector * 0.9f, IdentityVector * 1.1f); - + graph::FxFlowEmitter::FlowDesc descFlow; descFlow.speedPos = Vec3Range(D3DXVECTOR3(-1.5f, -1.5f, 2.0f), D3DXVECTOR3(1.5f, 1.5f, 5.0f), Vec3Range::vdVolume) * 3.0f; // @@ -1362,7 +1362,7 @@ void DataBase::LoadEffects() descFlow.gravitation = D3DXVECTOR3(0, 0, -9.80f); AddFxFlowEmitter(fxSystem, desc, descFlow, true); - + //smoke debr { graph::FxParticleSystem* smokeSys = AddFxSystem(&fxSystem->GetChild(), _fxPSpriteManager); @@ -1380,7 +1380,7 @@ void DataBase::LoadEffects() graph::FxFlowEmitter::FlowDesc descFlow = smoke->GetFlowDesc(); descFlow.speedScale = IdentityVector * 3.0f; descFlow.speedPos = Vec3Range(D3DXVECTOR3(-0.5f, -0.5f, 2.0f), D3DXVECTOR3(0.5f, 0.5f, 2.0f), Vec3Range::vdVolume, Point3U(100, 100, 100)); - + AddFxFlowEmitter(smokeSys, desc, descFlow, true); } } @@ -1729,7 +1729,7 @@ void DataBase::LoadEffects() glm::quat rot = glm::angleAxis(D3DX_PI, Vec3DxToGlm(ZVector)); desc.startRot = QuatRange(NullQuaternion, rot, QuatRange::vdLinear); desc.startScale = D3DXVECTOR3(IdentityVector) * 4.0f; - + graph::FxFlowEmitter::FlowDesc descFlow; descFlow.speedScale = -IdentityVector * 1.0f; descFlow.speedPos = Vec3Range(D3DXVECTOR3(-0.5f, -0.5f, 3.0f), D3DXVECTOR3(0.5f, 0.5f, 3.5f), Vec3Range::vdVolume); @@ -1844,7 +1844,7 @@ void DataBase::LoadEffects() MapObj* ring = NewChildMapObj(mapObj, MapObjLib::ctEffects, "hyperRing"); ring->GetGameObj().SetPos(XVector * 3.0f); - + SaveMapObj(mapObj, MapObjLib::ctEffects, "hyperBlaster"); } @@ -1885,7 +1885,7 @@ void DataBase::LoadEffects() game::AutoProj& gameObj = mapObj->SetGameObj(); game::AutoProj::Desc projDesc; - + projDesc.type = Proj::ptCrater; projDesc.SetModel(GetRecord(MapObjLib::ctEffects, "crater")); projDesc.pos = D3DXVECTOR3(0, 0.0f, 0.1f); @@ -1896,13 +1896,13 @@ void DataBase::LoadEffects() projDesc.mass = 100.0f; projDesc.damage = 10.0f; projDesc.minTimeLife = 3.0f; - + gameObj.SetDesc(projDesc); gameObj.GetPxActor().SetScene(_world->GetPxScene()); MapObj* death = NewChildMapObj(mapObj, MapObjLib::ctEffects, "death3"); death->GetGameObj().SetPos(ZVector * 1.0f); - + SaveMapObj(mapObj, MapObjLib::ctEffects, "mortiraBallDeath"); } @@ -2051,7 +2051,7 @@ void DataBase::LoadWorld2() D3DXVECTOR4 vec1 = plane; D3DXVECTOR4 vec3(0.0f, -0.15f, 0.10f, 0.0f); - + LoadTrack("World2\\jump", "World2\\Track\\jump.r3d", "World2\\Track\\track1", true, true, true); LoadTrack("World2\\most", "World2\\Track\\most.r3d", "World2\\Track\\most", true, true, true, false, "", true); LoadTrack("World2\\track1", "World2\\Track\\track1.r3d", "World2\\Track\\track1", true, true, true, false, "World2\\Track\\pxTrack1.r3d"); @@ -2268,7 +2268,7 @@ void DataBase::LoadMisc() AddToGraph(child, gtEffect, true); child->GetGameObj().SetPos(D3DXVECTOR3(-0.4f, 0.0f, 0.0f)); - + { graph::FxParticleSystem* fxSystem = AddFxSystem(child, _fxSpriteManager); AddLibMat(&fxSystem->material, "Effect\\dust_smoke_06"); @@ -2336,12 +2336,12 @@ void DataBase::LoadMisc() { game::MapObj* mapObj = NewMapObj(); game::GameObject& gameObj = mapObj->GetGameObj(); - + graph::IVBMeshNode* node = AddMeshNode(mapObj, "Weapon\\rocket.r3d"); node->SetScale(0.8f); AddLibMat(node, "Weapon\\rocket"); AddToGraph(mapObj, gtDefFixPipe, true); - + { game::MapObj* eff = NewChildMapObj(mapObj, MapObjLib::ctEffects, "smoke2"); eff->GetGameObj().SetPos(D3DXVECTOR3(-0.5f, 0.0f, 0.0f)); @@ -2594,7 +2594,7 @@ void DataBase::LoadMisc() DeathEffect& deathEffect = gameObj.GetBehaviors().Add(); deathEffect.SetEffect(GetRecord(MapObjLib::ctEffects, "death4")); deathEffect.SetIgnoreRot(true); - + SaveMapObj(mapObj, MapObjLib::ctDecoration, "Misc\\mine3"); } @@ -2784,7 +2784,7 @@ void DataBase::LoadMisc() deathEffect.SetSound(&GetSound("Sounds\\spherePulseDeath.ogg")); deathEffect.SetTargetChild(true); } - + SaveMapObj(mapObj, MapObjLib::ctDecoration, "Misc\\spherePulse"); } @@ -3243,7 +3243,7 @@ void DataBase::LoadWeapons() { game::MapObj* mapObj = NewMapObj(); game::Weapon& gameObj = mapObj->SetGameObj(); - + graph::IVBMeshNode* node = AddMeshNode(mapObj, "Weapon\\rifleWeapon.r3d"); AddLibMat(node, "Weapon\\rifleWeapon"); AddToGraph(mapObj, gtDefFixPipe, true); @@ -3254,7 +3254,7 @@ void DataBase::LoadWeapons() effect.SetEffect(GetRecord(MapObjLib::ctEffects, "shotEff2")); effect.SetSound(&GetSound("Sounds\\cluster_rocket.ogg")); } - + SaveMapObj(mapObj, MapObjLib::ctWeapon, "rifleWeapon"); } @@ -3281,7 +3281,7 @@ void DataBase::LoadWeapons() { game::MapObj* mapObj = NewMapObj(); game::Weapon& gameObj = mapObj->SetGameObj(); - + graph::IVBMeshNode* node = AddMeshNode(mapObj, "Weapon\\blasterGun.r3d"); AddLibMat(node, "Weapon\\blasterGun"); AddToGraph(mapObj, gtDefFixPipe, true); @@ -3292,15 +3292,15 @@ void DataBase::LoadWeapons() effect.SetEffect(GetRecord(MapObjLib::ctEffects, "shotEff2")); effect.SetSound(&GetSound("Sounds\\icon_rail.ogg")); } - + SaveMapObj(mapObj, MapObjLib::ctWeapon, "blasterGun"); } - + //rocketLauncher { game::MapObj* mapObj = NewMapObj(); game::Weapon& gameObj = mapObj->SetGameObj(); - + graph::IVBMeshNode* node = AddMeshNode(mapObj, "Weapon\\rocketLauncher.r3d"); AddLibMat(node, "Weapon\\rocketLauncher"); AddToGraph(mapObj, gtDefFixPipe, true); @@ -3310,7 +3310,7 @@ void DataBase::LoadWeapons() ShotEffect& effect = gameObj.GetBehaviors().Add(); effect.SetSound(&GetSound("Sounds\\missile_launch.ogg")); } - + SaveMapObj(mapObj, MapObjLib::ctWeapon, "rocketLauncher"); } @@ -3328,7 +3328,7 @@ void DataBase::LoadWeapons() ShotEffect& effect = gameObj.GetBehaviors().Add(); effect.SetSound(&GetSound("Sounds\\missile_launch.ogg")); } - + SaveMapObj(mapObj, MapObjLib::ctWeapon, "torpedaWeapon"); } @@ -3365,7 +3365,7 @@ void DataBase::LoadWeapons() effect.SetEffect(GetRecord(MapObjLib::ctEffects, "laserShot")); effect.SetSound(&GetSound("Sounds\\laserGuseniza.ogg")); } - + SaveMapObj(mapObj, MapObjLib::ctWeapon, "tankLaser"); } @@ -3477,7 +3477,7 @@ void DataBase::LoadWeapons() ShotEffect& effect = gameObj.GetBehaviors().Add(); effect.SetSound(&GetSound("Sounds\\exhaust_b_heavy.ogg")); } - + SaveMapObj(mapObj, MapObjLib::ctWeapon, "hyperdrive"); } @@ -3612,7 +3612,7 @@ void DataBase::LoadWeapons() graph::IVBMeshNode* node = AddMeshNode(mapObj, "Weapon\\mortira.r3d"); AddLibMat(node, "Weapon\\mortira"); AddToGraph(mapObj, gtDefFixPipe, true); - + //shotEff { ShotEffect& effect = gameObj.GetBehaviors().Add(); @@ -3773,7 +3773,7 @@ void DataBase::LoadCars() desc.bodyScale = D3DXVECTOR3(0.95f, 1.0f, 1.0f); desc.bodyOffset = D3DXVECTOR3(-0.2f, 0.0f, 0.0f); desc.centerMassPos = D3DXVECTOR3(0.0f, 0, -0.55f); - + desc.wheelRadius = 0.34159720f; desc.wheelOffsetModel.push_back(D3DXVECTOR3(0.22f, 0, -0.01f)); desc.wheelOffsetModel.push_back(D3DXVECTOR3(0.22f, 0, -0.01f)); @@ -4412,7 +4412,7 @@ void DataBase::ResetDB(const std::string& fileName) void DataBase::ClearDB() { - for (int i = 0; i < MapObjLib::cCategoryEnd; ++i) + for (int i = 0; i < MapObjLib::cCategoryEnd; ++i) _mapObjLib[i]->Clear(); } diff --git a/src/Rock3dGame/source/game/DialogMenu2.cpp b/src/Rock3dGame/source/game/DialogMenu2.cpp index d687428b..32abc5fd 100644 --- a/src/Rock3dGame/source/game/DialogMenu2.cpp +++ b/src/Rock3dGame/source/game/DialogMenu2.cpp @@ -29,12 +29,12 @@ AcceptDialog::AcceptDialog(Menu* menu, gui::Widget* parent): MenuFrame(menu, par gui::Text::VertAlign vertLabels[cLabelEnd] = {gui::Text::vaCenter}; D3DXCOLOR colorLabels[cLabelEnd] = {color1}; - _menuBg = menu->CreatePlane(root(), this, "GUI\\dlgFrame1.png", true, IdentityVec2, gui::Material::bmTransparency); + _menuBg = menu->CreatePlane(root(), this, "GUI\\dlgFrame1.png", true, IdentityVec2, gui::Material::bmTransparency); gui::Widget* labelsParent[cLabelEnd] = {_menuBg}; - for (int i = 0; i < cLabelEnd; ++i) + for (int i = 0; i < cLabelEnd; ++i) _labels[i] = menu->CreateLabel(strLabels[i], labelsParent[i], fontLabels[i], NullVec2, horLabels[i], vertLabels[i], colorLabels[i]); - _labels[mlInfo]->SetWordWrap(true); + _labels[mlInfo]->SetWordWrap(true); for (int i = 0; i < cMenuItemEnd; ++i) { @@ -78,7 +78,7 @@ void AcceptDialog::OnShow(bool value) } void AcceptDialog::OnAdjustLayout(const glm::vec2& vpSize) -{ +{ } void AcceptDialog::OnInvalidate() @@ -102,7 +102,7 @@ bool AcceptDialog::OnClick(gui::Widget* sender, const gui::MouseClick& mClick) guiEvent->OnClick(root(), mClick); _data = NULL; - + return true; } @@ -130,12 +130,12 @@ void AcceptDialog::Show(const std::string& message, const std::string& yesText, glm::vec2 infoPos = glm::vec2(0.0f, -25.0f); glm::vec2 posYes = glm::vec2(-70.0f, 32.0f); glm::vec2 posNo = glm::vec2(70.0f, 32.0f); - glm::vec2 sizeYesNo = _menuItems[miNo]->GetFon()->GetSampler().GetSize(); + glm::vec2 sizeYesNo = _menuItems[miNo]->GetFon()->GetSampler().GetSize(); lsl::string infoFont = "Item"; if (maxMode) { bgSize = bgSize * 1.7f; - infoSize = infoSize * 1.7f; + infoSize = infoSize * 1.7f; sizeYesNo.x = sizeYesNo.x * 1.5f; posYes = glm::vec2(-100.0f, 72.0f); posNo = glm::vec2(100.0f, 72.0f); @@ -215,16 +215,16 @@ WeaponDialog::WeaponDialog(Menu* menu, gui::Widget* parent): MenuFrame(menu, par gui::Text::VertAlign vertLabels[cLabelEnd] = {gui::Text::vaCenter, gui::Text::vaCenter, gui::Text::vaCenter, gui::Text::vaCenter}; D3DXCOLOR colorLabels[cLabelEnd] = {color1, color2, color2, color2}; - _menuBg = menu->CreatePlane(root(), this, "GUI\\dlgFrame3.png", true, IdentityVec2, gui::Material::bmTransparency); + _menuBg = menu->CreatePlane(root(), this, "GUI\\dlgFrame3.png", true, IdentityVec2, gui::Material::bmTransparency); gui::Widget* labelsParent[cLabelEnd] = {_menuBg, _menuBg, _menuBg, _menuBg}; - for (int i = 0; i < cLabelEnd; ++i) + for (int i = 0; i < cLabelEnd; ++i) _labels[i] = menu->CreateLabel(strLabels[i], labelsParent[i], fontLabels[i], NullVec2, horLabels[i], vertLabels[i], colorLabels[i]); - _labels[mlInfo]->SetWordWrap(true); + _labels[mlInfo]->SetWordWrap(true); } WeaponDialog::~WeaponDialog() -{ +{ for (int i = 0; i < cLabelEnd; ++i) menu()->ReleaseWidget(_labels[i]); @@ -289,10 +289,10 @@ InfoDialog::InfoDialog(Menu* menu, gui::Widget* parent): MenuFrame(menu, parent) gui::Text::VertAlign vertLabels[cLabelEnd] = {gui::Text::vaCenter, gui::Text::vaCenter}; D3DXCOLOR colorLabels[cLabelEnd] = {color2, color1}; - _menuBg = menu->CreatePlane(root(), this, "GUI\\dlgFrame4.png", true, IdentityVec2, gui::Material::bmTransparency); + _menuBg = menu->CreatePlane(root(), this, "GUI\\dlgFrame4.png", true, IdentityVec2, gui::Material::bmTransparency); gui::Widget* labelsParent[cLabelEnd] = {_menuBg, _menuBg}; - for (int i = 0; i < cLabelEnd; ++i) + for (int i = 0; i < cLabelEnd; ++i) _labels[i] = menu->CreateLabel(strLabels[i], labelsParent[i], fontLabels[i], NullVec2, horLabels[i], vertLabels[i], colorLabels[i]); _labels[mlInfo]->SetWordWrap(true); @@ -303,11 +303,11 @@ InfoDialog::InfoDialog(Menu* menu, gui::Widget* parent): MenuFrame(menu, parent) } InfoDialog::~InfoDialog() -{ +{ menu()->UnregNavElements(_menuItems[miOk]); _data = NULL; - lsl::SafeRelease(_guiEvent); + lsl::SafeRelease(_guiEvent); for (int i = 0; i < cLabelEnd; ++i) menu()->ReleaseWidget(_labels[i]); @@ -366,9 +366,9 @@ bool InfoDialog::OnClick(gui::Widget* sender, const gui::MouseClick& mClick) void InfoDialog::Show(const std::string& titleText, const std::string& message, const std::string& okText, const glm::vec2& pos, gui::Widget::Anchor align, gui::Widget::Event* guiEvent, Object* data, bool okButton) { _labels[mlTitle]->SetText(titleText); - _labels[mlInfo]->SetText(message); + _labels[mlInfo]->SetText(message); _menuItems[miOk]->SetText(okText); - _menuItems[miOk]->SetVisible(okButton); + _menuItems[miOk]->SetVisible(okButton); ShowModal(true, cTopmostModal); @@ -403,10 +403,10 @@ MusicDialog::MusicDialog(Menu* menu, gui::Widget* parent): MenuFrame(menu, paren gui::Text::VertAlign vertLabels[cLabelEnd] = {gui::Text::vaCenter, gui::Text::vaCenter}; D3DXCOLOR colorLabels[cLabelEnd] = {color1, color2}; - _menuBg = menu->CreatePlane(root(), this, "GUI\\dlgFrame2.png", true, IdentityVec2, gui::Material::bmTransparency); + _menuBg = menu->CreatePlane(root(), this, "GUI\\dlgFrame2.png", true, IdentityVec2, gui::Material::bmTransparency); gui::Widget* labelsParent[cLabelEnd] = {_menuBg, _menuBg}; - for (int i = 0; i < cLabelEnd; ++i) + for (int i = 0; i < cLabelEnd; ++i) { _labels[i] = menu->CreateLabel(strLabels[i], labelsParent[i], fontLabels[i], NullVec2, horLabels[i], vertLabels[i], colorLabels[i]); _labels[i]->SetAlign(gui::Widget::waLeft); @@ -416,7 +416,7 @@ MusicDialog::MusicDialog(Menu* menu, gui::Widget* parent): MenuFrame(menu, paren } MusicDialog::~MusicDialog() -{ +{ for (int i = 0; i < cLabelEnd; ++i) menu()->ReleaseWidget(_labels[i]); @@ -448,7 +448,7 @@ void MusicDialog::Show(const std::string& title, const std::string& message) { _labels[mlTitle]->SetText(title); _labels[mlInfo]->SetText(message); - + MenuFrame::Show(true); root()->SetFlag(gui::Widget::wfTopmost, true); root()->SetTopmostLevel(MenuFrame::cTopmostPopup); @@ -475,7 +475,7 @@ InfoMenu::InfoMenu(Menu* menu, gui::Widget* parent): _menu(menu), _state(msLoadi _loadingFrame = _menu->CreatePlane(_root, 0, "GUI\\loadingFrame.dds", true); _loadingFrame->GetMaterial().GetSampler().SetFiltering(graph::Sampler2d::sfLinear); _loadingFrame->SetFlag(gui::Widget::wfTopmost, true); - _loadingFrame->SetTopmostLevel(MenuFrame::cTopmostLoading); + _loadingFrame->SetTopmostLevel(MenuFrame::cTopmostLoading); ApplyState(_state); } @@ -521,7 +521,7 @@ void InfoMenu::SetState(State value) } UserChat::UserChat(Menu* menu, gui::Widget* parent): MenuFrame(menu, parent), _inputPos(NullVec2), _linesPos(NullVec2), _inputSize(300.0f, 300.0f), _linesSize(300.0f, 300.0f) -{ +{ _input = AddLine(L"", L"", clrWhite, false); _input.name->SetVisible(false); } @@ -540,27 +540,27 @@ UserChat::Line UserChat::AddLine(const lsl::stringW& name, const lsl::stringW& t line.name = menu()->CreateLabel("", root(), "Small", NullVec2, right ? gui::Text::haRight : gui::Text::haLeft, right ? gui::Text::vaTop : gui::Text::vaBottom, nameColor); line.name->SetTextW(name); - line.name->SetAlign(right ? gui::Widget::waRightTop : gui::Widget::waLeftBottom); + line.name->SetAlign(right ? gui::Widget::waRightTop : gui::Widget::waLeftBottom); line.text = menu()->CreateLabel("", root(), "Small", NullVec2, right ? gui::Text::haRight : gui::Text::haLeft, right ? gui::Text::vaTop : gui::Text::vaBottom, clrWhite); line.text->SetTextW(text); line.text->SetAlign(right ? gui::Widget::waRightTop : gui::Widget::waLeftBottom); line.text->SetParent(line.name); - line.text->SetWordWrap(true); + line.text->SetWordWrap(true); return line; } void UserChat::OnShow(bool value) -{ +{ } void UserChat::OnAdjustLayout(const glm::vec2& vpSize) -{ +{ AABB2 nameAABB = _input.name->GetTextAABB(); _input.name->SetPos(_inputPos); - _input.text->SetPos(glm::vec2(nameAABB.GetSize().x, 0.0f)); + _input.text->SetPos(glm::vec2(nameAABB.GetSize().x, 0.0f)); _input.text->SetSize(_inputSize - glm::vec2(_input.text->GetPos().x, 0.0f)); } diff --git a/src/Rock3dGame/source/game/Environment.cpp b/src/Rock3dGame/source/game/Environment.cpp index baa32353..c59a22e7 100644 --- a/src/Rock3dGame/source/game/Environment.cpp +++ b/src/Rock3dGame/source/game/Environment.cpp @@ -71,7 +71,7 @@ Environment::Environment(World* world): _world(world), _wheater(ewClody), _world _sunRot = rot2 * rot1; //текстура по умолчанию. Обязательно должна быть! - GetGraph()->SetSkyTex("Data\\World1\\Texture\\skyTex1.dds"); + GetGraph()->SetSkyTex("Data\\World1\\Texture\\skyTex1.dds"); } Environment::~Environment() @@ -129,7 +129,7 @@ void Environment::EnableSun(bool enable, bool enableShadow) _sun->GetSource()->SetType(D3DLIGHT_DIRECTIONAL); _sun->GetSource()->SetAmbient(clrGray60); _sun->GetSource()->SetDiffuse(clrGray60); - _sun->GetSource()->SetFalloff(0); + _sun->GetSource()->SetFalloff(0); _sun->GetSource()->SetPos(_sunPos); _sun->GetSource()->SetRot(_sunRot); @@ -171,7 +171,7 @@ void Environment::EnableLamp(bool enable, int index, float farDist) _lamp[index]->GetSource()->SetAmbient(clrBlack); _lamp[index]->GetSource()->SetDiffuse(_lampColor[index]); _lamp[index]->SetEnable(_lampSwitchOn[index]); - //_lamp->GetSource()->SetFalloff(0); + //_lamp->GetSource()->SetFalloff(0); _lamp[index]->GetSource()->SetPos(_lampPos[index]); _lamp[index]->GetSource()->SetRot(_lampRot[index]); @@ -202,12 +202,12 @@ void Environment::EnableLamps(bool enable) void Environment::EnableWater(bool enable) { - SetGraphOption(GraphManager::goWater, enable); + SetGraphOption(GraphManager::goWater, enable); } void Environment::EnablePlanarRefl(bool enable) { - SetGraphOption(GraphManager::goPlanarRefl, enable); + SetGraphOption(GraphManager::goPlanarRefl, enable); } void Environment::EnableGrass(bool enable) @@ -272,7 +272,7 @@ void Environment::SetGraphOption(GraphManager::GraphOption option, bool value) value = value && (CheckGraphMap(option, _shadowQuality, cShadowGraphMap, ARRAY_LENGTH(cShadowGraphMap), quality) || CheckGraphMap(option, _lightQuality, cLightGraphMap, ARRAY_LENGTH(cLightGraphMap), quality) || - CheckGraphMap(option, _postEffQuality, cPostEffGraphMap, ARRAY_LENGTH(cPostEffGraphMap), quality) || + CheckGraphMap(option, _postEffQuality, cPostEffGraphMap, ARRAY_LENGTH(cPostEffGraphMap), quality) || CheckGraphMap(option, _envQuality, cEnvGraphMap, ARRAY_LENGTH(cEnvGraphMap), quality)); GetGraph()->SetGraphOption(option, value, cGraphQuality[quality]); @@ -282,7 +282,7 @@ void Environment::ApplyCloudColor() { D3DXCOLOR cloudColor = GetGraph()->GetFogColor(); if (_worldType == wtWorld3) - cloudColor = D3DXCOLOR(87.0f/255.0f, 81.0f/255.0f, 115.0f/255.0f, 1.0f); + cloudColor = D3DXCOLOR(87.0f/255.0f, 81.0f/255.0f, 115.0f/255.0f, 1.0f); else if (_worldType == wtWorld4) cloudColor = clrWhite; @@ -310,12 +310,12 @@ void Environment::ApplyWheater() SetGraphOption(GraphManager::goBloom, true); SetGraphOption(GraphManager::goHDR, true); SetGraphOption(GraphManager::goFog, true); - + EnableSun(true); - EnableRain(false); + EnableRain(false); break; } - + case ewNight: { D3DXCOLOR fogColor = D3DXCOLOR(15.0f, 25.0f, 31.0f, 255.0f)/255.0f; @@ -331,12 +331,12 @@ void Environment::ApplyWheater() SetGraphOption(GraphManager::goBloom, false); SetGraphOption(GraphManager::goHDR, false); SetGraphOption(GraphManager::goFog, true); - + EnableSun(false); EnableRain(false); break; } - + case ewClody: { D3DXCOLOR fogColor = 0x00C0BDB8; @@ -357,7 +357,7 @@ void Environment::ApplyWheater() EnableRain(false); break; } - + case ewRainy: { D3DXCOLOR fogColor = 0x00C0BDB8; @@ -396,7 +396,7 @@ void Environment::ApplyWheater() SetGraphOption(GraphManager::goFog, true); EnableSun(true); - EnableRain(false); + EnableRain(false); break; } @@ -407,7 +407,7 @@ void Environment::ApplyWheater() GetGraph()->SetSceneAmbient(clrBlack); GetGraph()->SetFogColor(fogColor); GetGraph()->SetFogIntensivity(0.5f); - GetGraph()->SetSkyTex("Data\\World4\\Texture\\skyTex1.dds"); + GetGraph()->SetSkyTex("Data\\World4\\Texture\\skyTex1.dds"); GetCamera()->SetFar(cameraFar); SetGraphOption(GraphManager::goSkyBox, true); @@ -428,7 +428,7 @@ void Environment::ApplyWheater() GetGraph()->SetSceneAmbient(clrBlack); GetGraph()->SetFogColor(fogColor); GetGraph()->SetFogIntensivity(0.5f); - GetGraph()->SetSkyTex("Data\\World5\\Texture\\sky_text.dds"); + GetGraph()->SetSkyTex("Data\\World5\\Texture\\sky_text.dds"); GetCamera()->SetFar(cameraFar); SetGraphOption(GraphManager::goSkyBox, true); @@ -449,7 +449,7 @@ void Environment::ApplyWheater() GetGraph()->SetSceneAmbient(clrGray60); GetGraph()->SetFogColor(fogColor); GetGraph()->SetFogIntensivity(1.0f); - GetGraph()->SetSkyTex("Data\\World1\\Texture\\skyTex1.dds"); + GetGraph()->SetSkyTex("Data\\World1\\Texture\\skyTex1.dds"); GetCamera()->SetFar(cameraFar); SetGraphOption(GraphManager::goSkyBox, false); @@ -457,7 +457,7 @@ void Environment::ApplyWheater() SetGraphOption(GraphManager::goBloom, true); SetGraphOption(GraphManager::goHDR, true); SetGraphOption(GraphManager::goFog, false); - + EnableSun(false); EnableRain(false); break; @@ -470,7 +470,7 @@ void Environment::ApplyWheater() GetGraph()->SetSceneAmbient(clrGray60); GetGraph()->SetFogColor(fogColor); GetGraph()->SetFogIntensivity(1.0f); - GetGraph()->SetSkyTex("Data\\World1\\Texture\\skyTex1.dds"); + GetGraph()->SetSkyTex("Data\\World1\\Texture\\skyTex1.dds"); GetCamera()->SetFar(cameraFar); SetGraphOption(GraphManager::goSkyBox, false); @@ -478,7 +478,7 @@ void Environment::ApplyWheater() SetGraphOption(GraphManager::goBloom, true); SetGraphOption(GraphManager::goHDR, true); SetGraphOption(GraphManager::goFog, false); - + EnableSun(false); EnableRain(false); break; @@ -501,7 +501,7 @@ void Environment::ApplyWorldType() EnableGroundFog(false); EnableMagma(false); EnablePlanarRefl(false); - + GraphManager::HDRParams hdrParams; hdrParams.lumKey = 1.1f; hdrParams.brightThreshold = 1.5f; @@ -531,7 +531,7 @@ void Environment::ApplyWorldType() break; } - case wtWorld3: + case wtWorld3: { EnableLamps(false); EnableWater(false); @@ -544,7 +544,7 @@ void Environment::ApplyWorldType() hdrParams.lumKey = 4.0f; hdrParams.brightThreshold = 4.5f; hdrParams.gaussianScalar = 20.0f; - hdrParams.exposure = 3.0f; + hdrParams.exposure = 3.0f; hdrParams.colorCorrection = glm::vec2(1.0f, 0.0f); GetGraph()->SetHDRParams(hdrParams); break; @@ -717,7 +717,7 @@ void Environment::ProcessScene(float dt) if (_rain && GetCamera()) { - _rain->GetGameObj().SetPos(GetCamera()->GetPos()); + _rain->GetGameObj().SetPos(GetCamera()->GetPos()); } /*if (_rain && GetCamera()) @@ -732,7 +732,7 @@ void Environment::ProcessScene(float dt) if (_world->GetControl()->GetAsyncKey('W')) vec.x += 3.0f * dt; if (_world->GetControl()->GetAsyncKey('A')) - vec.y += 3.0f * dt; + vec.y += 3.0f * dt; if (_world->GetControl()->GetAsyncKey('Z')) vec.z += 3.0f * dt; if (_world->GetControl()->GetAsyncKey('S')) @@ -743,10 +743,10 @@ void Environment::ProcessScene(float dt) vec.z -= 3.0f * dt; if (dir) - desc.startPos.SetMax(vec); + desc.startPos.SetMax(vec); else - desc.startPos.SetMin(vec); - + desc.startPos.SetMin(vec); + em->SetParticleDesc(desc); }*/ } @@ -857,7 +857,7 @@ Environment::WorldType Environment::GetWorldType() const void Environment::SetWorldType(WorldType value) { if (_worldType != value) - { + { _worldType = value; ApplyWorldType(); } @@ -1076,14 +1076,14 @@ float Environment::GetPerspectiveCameraFar() const switch (_wheater) { case ewFair: - return 120.0f; + return 120.0f; case ewNight: return 120.0f; - + case ewClody: return 120.0f; - + case ewRainy: return 100.0f; diff --git a/src/Rock3dGame/source/game/FinalMenu.cpp b/src/Rock3dGame/source/game/FinalMenu.cpp index 9b0841df..a6c75d5a 100644 --- a/src/Rock3dGame/source/game/FinalMenu.cpp +++ b/src/Rock3dGame/source/game/FinalMenu.cpp @@ -38,7 +38,7 @@ void FinalMenu::AddLineBox(const lsl::string& caption, const lsl::string& text) { LineBox line; - line.caption = menu()->CreateLabel(caption, _linesRoot, "Small", NullVec2, gui::Text::haCenter, gui::Text::vaTop, 0xFFDC0000); + line.caption = menu()->CreateLabel(caption, _linesRoot, "Small", NullVec2, gui::Text::haCenter, gui::Text::vaTop, 0xFFDC0000); line.caption->SetAlign(gui::Widget::waTop); line.caption->SetWordWrap(true); @@ -71,7 +71,7 @@ void FinalMenu::DeleteAll() } void FinalMenu::OnShow(bool value) -{ +{ if (value) { //menu()->ShowMessage("", GetString("svFinalMessage"), GetString(svOk), uiRoot()->GetVPSize()/2, gui::Widget::waCenter, 1.0f); @@ -206,9 +206,9 @@ void FinalMenu::OnProgress(float deltaTime) _bg->GetMaterial().GetSampler().SetFiltering(graph::Sampler2d::sfLinear); gui::Widget* labelsParent[cLabelEnd] = {root()}; - for (int i = 0; i < cLabelEnd; ++i) + for (int i = 0; i < cLabelEnd; ++i) _labels[i] = menu->CreateLabel(strLabels[i], labelsParent[i], fontLabels[i], NullVec2, horLabels[i], vertLabels[i], colorLabels[i]); - + _labels[mlCredits]->SetAlign(gui::Widget::waBottom); _labels[mlCredits]->SetAnchor(gui::Widget::waBottom); _labels[mlCredits]->SetFlag(gui::Widget::wfClientClip, true); @@ -229,7 +229,7 @@ FinalMenu::~FinalMenu() } void FinalMenu::OnShow(bool value) -{ +{ if (value) { menu()->ShowMessage("", GetString("svFinalMessage"), GetString(svOk), uiRoot()->GetVPSize()/2, gui::Widget::waCenter, 1.0f); @@ -246,14 +246,14 @@ void FinalMenu::OnAdjustLayout(const glm::vec2& vpSize) _labels[mlCredits]->SetPos(glm::vec2(vpSize.x/2, vpSize.y/2 - 115.0f)); _labels[mlCredits]->SetSize(500.0f, vpSize.y); - + for (int i = 0; i < cMenuItemEnd; ++i) _menuItems[i]->SetPos(glm::vec2(_menuItems[i]->GetSize().x/2, vpSize.y - 60.0f + i * (_menuItems[i]->GetSize().y + 10.0f))); } void FinalMenu::OnInvalidate() { - + } bool FinalMenu::OnClick(gui::Widget* sender, const gui::MouseClick& mClick) diff --git a/src/Rock3dGame/source/game/FinishMenu.cpp b/src/Rock3dGame/source/game/FinishMenu.cpp index c7784c0a..179a362d 100644 --- a/src/Rock3dGame/source/game/FinishMenu.cpp +++ b/src/Rock3dGame/source/game/FinishMenu.cpp @@ -11,7 +11,7 @@ namespace game namespace n { - + FinishMenu::FinishMenu(Menu* menu, gui::Widget* parent): MenuFrame(menu, parent), _time(-1.0f), _playerCount(0) { D3DXCOLOR color1(0xffe9a73f); @@ -28,8 +28,8 @@ FinishMenu::FinishMenu(Menu* menu, gui::Widget* parent): MenuFrame(menu, parent) { _boxes[i].leftFrame = menu->CreatePlane(root(), this, "GUI\\playerLeftFrame.png", true); _boxes[i].leftFrame->SetAlign(gui::Widget::waLeftTop); - - _boxes[i].rightFrame = menu->CreatePlane(_boxes[i].leftFrame, this, "GUI\\playerRightFrame.png", true); + + _boxes[i].rightFrame = menu->CreatePlane(_boxes[i].leftFrame, this, "GUI\\playerRightFrame.png", true); _boxes[i].rightFrame->SetAlign(gui::Widget::waLeftTop); _boxes[i].lineFrame = menu->CreatePlane(_boxes[i].leftFrame, this, "GUI\\playerLineFrame.png", true); @@ -40,7 +40,7 @@ FinishMenu::FinishMenu(Menu* menu, gui::Widget* parent): MenuFrame(menu, parent) _boxes[i].photo = menu->CreatePlane(_boxes[i].leftFrame, this, "", true, IdentityVec2, gui::Material::bmTransparency); - for (int j = 0; j < cLabelEnd; ++j) + for (int j = 0; j < cLabelEnd; ++j) _boxes[i].labels[j] = menu->CreateLabel(strLabels[j], _boxes[i].leftFrame, fontLabels[j], NullVec2, horLabels[j], vertLabels[j], colorLabels[j]); _boxes[i].labels[mlPriceInfo]->SetText(menu->GetString(svMoney) + "\n" + menu->GetString(svPoints)); diff --git a/src/Rock3dGame/source/game/GameBase.cpp b/src/Rock3dGame/source/game/GameBase.cpp index b542c9ec..d739af51 100644 --- a/src/Rock3dGame/source/game/GameBase.cpp +++ b/src/Rock3dGame/source/game/GameBase.cpp @@ -23,7 +23,7 @@ Behaviors::ClassList Behaviors::classList; Behavior::Behavior(Behaviors* owner): _owner(owner), _removed(false) -{ +{ } void Behavior::Save(lsl::SWriter* writer) @@ -55,8 +55,8 @@ void Behavior::SetPxNotify(PxNotify notify, bool value) { case pxContact: GetGameObj()->GetPxActor().SetContactReportFlag(NX_NOTIFY_ALL, value); - break; - + break; + case pxContactModify: GetGameObj()->GetPxActor().SetContactReportFlag(NX_NOTIFY_CONTACT_MODIFICATION, value); break; @@ -126,7 +126,7 @@ void ResurrectObj::Resurrect() if (owner && parent) { owner->LockDestr(); - + D3DXVECTOR3 pos = gameObj->GetWorldPos(); glm::quat rot = gameObj->GetWorldRot(); @@ -190,7 +190,7 @@ void FxSystemWaitingEnd::OnProgress(float deltaTime) if (resCnt == 0) GetGameObj()->Death(); - } + } } @@ -282,7 +282,7 @@ void EventEffect::DestroyEffObj(MapObj* mapObj, bool destrWorld) //удаляем только дочерний объект if (mapObj->GetOwner()->GetOwner() == GetGameObj()) { - GetGameObj()->GetIncludeList().Delete(mapObj); + GetGameObj()->GetIncludeList().Delete(mapObj); } else if (destrWorld) { @@ -342,8 +342,8 @@ MapObj* EventEffect::CreateEffect(const EffectDesc& desc) { LSL_ASSERT(_effect); - MapObj* mapObj = 0; - + MapObj* mapObj = 0; + //дочерний объект if (desc.parent) { @@ -441,7 +441,7 @@ void EventEffect::SaveSource(lsl::SWriter* writer) writer->WriteValue("pos", _pos, 3); writer->WriteValue("impulse", _impulse, 3); - writer->WriteValue("ignoreRot", _ignoreRot); + writer->WriteValue("ignoreRot", _ignoreRot); } void EventEffect::LoadSource(lsl::SReader* reader) @@ -456,16 +456,16 @@ void EventEffect::LoadSource(lsl::SReader* reader) { child->AddFixUp(true, this, NULL); child = child->NextValue(); - } + } } lsl::SReader* child = reader->ReadRef("sound", true, this, 0); - SetEffect(MapObjRec::Lib::LoadRecordRef(reader, "effect")); - + SetEffect(MapObjRec::Lib::LoadRecordRef(reader, "effect")); + reader->ReadValue("pos", _pos, 3); reader->ReadValue("impulse", _impulse, 3); - reader->ReadValue("ignoreRot", _ignoreRot); + reader->ReadValue("ignoreRot", _ignoreRot); } void EventEffect::OnFixUp(const FixUpNames& fixUpNames) @@ -610,7 +610,7 @@ void LowLifePoints::OnProgress(float deltaTime) _MyBase::OnProgress(deltaTime); float maxLife = GetGameObj()->GetMaxLife(); - float life = GetGameObj()->GetLife(); + float life = GetGameObj()->GetLife(); if (GetGameObj()->GetLiveState() != GameObject::lsDeath && maxLife > 0.0f && life > 0 && life/maxLife < _lifeLevel) { @@ -780,7 +780,7 @@ void LifeEffect::OnProgress(float deltaTime) snd::Source3d* source = GiveSource3d(); if (source) { - _play = true; + _play = true; source->SetPlayMode(snd::pmOnce); source->SetPos(0); @@ -793,7 +793,7 @@ void LifeEffect::OnProgress(float deltaTime) PxWheelSlipEffect::PxWheelSlipEffect(Behaviors* owner): _MyBase(owner) -{ +{ } PxWheelSlipEffect::~PxWheelSlipEffect() @@ -820,10 +820,10 @@ void PxWheelSlipEffect::OnProgress(float deltaTime) CarWheel& wheel = lsl::StaticCast(*GetGameObj()); snd::Source3d* source = GiveSource3d(); - + NxWheelContactData contactDesc; NxShape* contact = wheel.GetShape()->GetNxShape()->getContact(contactDesc); - float slip = 0.0f; + float slip = 0.0f; if (contact) slip = std::max(abs(contactDesc.lateralSlip) - slipLat, 0.0f) + std::max(abs(contactDesc.longitudalSlip) - slipLong, 0.0f); @@ -834,7 +834,7 @@ void PxWheelSlipEffect::OnProgress(float deltaTime) desc.child = false; if (GetMakeEffect()) GetMakeEffect()->GetGameObj().SetPos(GetPos() + desc.pos); - else + else MakeEffect(desc); if (source) @@ -897,7 +897,7 @@ void ImmortalEffect::OnImmortalStatus(bool status) if (GetEffect()) { EffectDesc desc; - desc.child = true; + desc.child = true; MakeEffect(desc); } @@ -921,7 +921,7 @@ void ImmortalEffect::OnImmortalStatus(bool status) } else { - _fadeOutTime = 0.0f; + _fadeOutTime = 0.0f; } } @@ -953,7 +953,7 @@ void ImmortalEffect::OnProgress(float deltaTime) MapObj* mapObj = GetMakeEffect(); if (mapObj && _dmgTime >= 0) - { + { float alpha = ClampValue(_dmgTime / 0.25f, 0.0f, 1.0f); const graph::Actor::Nodes& nodes = GetMakeEffect()->GetGameObj().GetGrActor().GetNodes(); @@ -973,7 +973,7 @@ void ImmortalEffect::OnProgress(float deltaTime) } if (mapObj && _fadeInTime >= 0) - { + { _fadeInTime += deltaTime; float alpha = ClampValue(_fadeInTime / 0.5f, 0.0f, 1.0f); mapObj->GetGameObj().SetScale(_scale * alpha); @@ -982,7 +982,7 @@ void ImmortalEffect::OnProgress(float deltaTime) } if (mapObj && _fadeOutTime >= 0) - { + { _fadeOutTime += deltaTime; float alpha = ClampValue(_fadeOutTime / 0.5f, 0.0f, 1.0f); mapObj->GetGameObj().SetScale(_scale * (1.0f - alpha)); @@ -1014,7 +1014,7 @@ SlowEffect::SlowEffect(Behaviors* owner): _MyBase(owner) void SlowEffect::OnDestroyEffect(MapObj* sender) { GetGameObj()->GetPxActor().GetNxActor()->setLinearDamping(0.0f); - Remove(); + Remove(); } void SlowEffect::OnProgress(float deltaTime) @@ -1067,7 +1067,7 @@ void SoundMotor::Init() _srcRPM->SetPlayMode(snd::pmInfite); } } - + void SoundMotor::Free() { if (_init) @@ -1094,7 +1094,7 @@ void SoundMotor::OnMotor(float deltaTime, float rpm, float minRPM, float maxRPM) float idleAlpha = lsl::ClampValue(0.5f * (_curRPM - minRPM)/minRPM, 0.0f, 1.0f); float alpha = ClampValue((_curRPM - minRPM)/(maxRPM - minRPM), 0.0f, 1.0f); - _srcRPM->Play(); + _srcRPM->Play(); _srcRPM->SetVolume((_rpmVolumeRange.x + alpha * (_rpmVolumeRange.y - _rpmVolumeRange.x)) * idleAlpha); _srcRPM->SetFrequencyRatio((_rpmFreqRange.x + alpha * (_rpmFreqRange.y - _rpmFreqRange.x))); @@ -1263,7 +1263,7 @@ void PodushkaAnim::OnProgress(float deltaTime) LSL_ASSERT(_target); GameCar* car = lsl::StaticCast(GetGameObj()->GetParent()); - + float linSpeed = car->GetLeadWheelSpeed(); if (abs(linSpeed) > 1.0f) { @@ -1321,16 +1321,16 @@ void Behaviors::InitClassList() classList.Add(btTouchDeath); classList.Add(btResurrectObj); - classList.Add(btFxSystemWaitingEnd); - classList.Add(btFxSystemSrcSpeed); + classList.Add(btFxSystemWaitingEnd); + classList.Add(btFxSystemSrcSpeed); classList.Add(btLowLifePoints); classList.Add(btDamageEffect); classList.Add(btDeathEffect); - classList.Add(btLifeEffect); + classList.Add(btLifeEffect); classList.Add(btSlowEffect); classList.Add(btPxWheelSlipEffect); - classList.Add(btShotEffect); - classList.Add(btImmortalEffect); + classList.Add(btShotEffect); + classList.Add(btImmortalEffect); classList.Add(btSoundMotor); classList.Add(btGusenizaAnim); classList.Add(btPodushkaAnim); diff --git a/src/Rock3dGame/source/game/GameCar.cpp b/src/Rock3dGame/source/game/GameCar.cpp index a50d0a9b..7a215feb 100644 --- a/src/Rock3dGame/source/game/GameCar.cpp +++ b/src/Rock3dGame/source/game/GameCar.cpp @@ -10,7 +10,7 @@ namespace r3d namespace game { -const float GameCar::cMaxSteerAngle = D3DX_PI / 6; +const float GameCar::cMaxSteerAngle = D3DX_PI / 6; @@ -31,7 +31,7 @@ float CarMotorDesc::CalcRPM(float wheelAxleSpeed, unsigned curGear) const { if (curGear == cNeutralGear) return static_cast(idlingRPM); - else + else { float rpm = abs(wheelAxleSpeed) * gears[curGear] * gearDiff * 60.0f / (2.0f * D3DX_PI); @@ -52,7 +52,7 @@ float CarMotorDesc::CalcTorque(float rpm, unsigned curGear) const CarWheel::CarWheel(CarWheels* owner): _owner(owner), _wheelShape(0), _summAngle(0), _trailEff(0), _actTrail(0), invertWheel(false), _steerAngle(0), _lead(false), _steer(false), _offset(NullVector), _pxPrevPos(NullVector), _pxPrevRot(NullQuaternion) { _myContactModify = new MyContactModify(this); - _trails = new _Trails(this); + _trails = new _Trails(this); } CarWheel::~CarWheel() @@ -69,7 +69,7 @@ CarWheel::~CarWheel() } CarWheel::MyContactModify::MyContactModify(CarWheel* wheel): _wheel(wheel) -{ +{ } bool CarWheel::MyContactModify::onWheelContact(NxWheelShape* wheelShape, NxVec3& contactPoint, NxVec3& contactNormal, NxReal& contactPosition, NxReal& normalForce, NxShape* otherShape, NxMaterialIndex& otherShapeMaterialIndex, NxU32 otherShapeFeatureIndex) @@ -81,11 +81,11 @@ bool CarWheel::MyContactModify::onWheelContact(NxWheelShape* wheelShape, NxVec3& normalForce = 0.0f; } else - { + { float tireSpring = _wheel->_owner->GetOwner()->GetTireSpring(); float nReac = normalForce/normReaction; _wheel->_nReac = nReac; - + //Ограничение допустимой перегрузки, чтобы машина при падении не ускорялась в связи с чрезмерно больгим сцеплением. Допустимая перегрузка в 1.5g. if (tireSpring > 0.0f && nReac > tireSpring) normalForce = 0.0f; @@ -102,11 +102,11 @@ void CarWheel::Save(lsl::SWriter* writer) writer->WriteValue("shape", _wheelShape->GetName()); MapObjRec::Lib::SaveRecordRef(writer, "trailEff", _trailEff); - + writer->WriteValue("lead", _lead); writer->WriteValue("steer", _steer); lsl::SWriteValue(writer, "offset", _offset); - writer->WriteValue("invertWheel", invertWheel); + writer->WriteValue("invertWheel", invertWheel); } void CarWheel::Load(lsl::SReader* reader) @@ -133,14 +133,14 @@ void CarWheel::Load(lsl::SReader* reader) bool lead; reader->ReadValue("lead", lead); SetLead(lead); - + bool steer; reader->ReadValue("steer", steer); SetSteer(steer); lsl::SReadValue(reader, "offset", _offset); - reader->ReadValue("invertWheel", invertWheel); + reader->ReadValue("invertWheel", invertWheel); } void CarWheel::CreateWheelShape() @@ -171,7 +171,7 @@ void CarWheel::DestroyWheelShape() _wheelShape->Release(); GetPxActor().GetShapes().Delete(_wheelShape); _wheelShape = 0; - + } void CarWheel::PxSyncWheel(float alpha) @@ -180,9 +180,9 @@ void CarWheel::PxSyncWheel(float alpha) LSL_ASSERT(wheel); NxReal st = wheel->getSuspensionTravel(); - NxReal r = wheel->getRadius(); + NxReal r = wheel->getRadius(); NxMat34 localPose = wheel->getLocalPose(); - //cast along -Y + //cast along -Y NxVec3 dir = localPose.M.getColumn(1); NxVec3 t = localPose.t; @@ -214,7 +214,7 @@ void CarWheel::PxSyncWheel(float alpha) D3DXVECTOR3 resPos((t - dir * st).get()); if (alpha < 1.0f) - D3DXVec3Lerp(&resPos, &_pxPrevPos, &resPos, alpha); + D3DXVec3Lerp(&resPos, &_pxPrevPos, &resPos, alpha); else _pxPrevPos = resPos; GetGrActor().SetPos(resPos + _offset); @@ -285,7 +285,7 @@ float CarWheel::GetLongSlip() NxWheelContactData contactDesc; NxShape* contact = GetShape()->GetNxShape()->getContact(contactDesc); - + return contact ? contactDesc.longitudalSlip : 0; } @@ -293,7 +293,7 @@ float CarWheel::GetLatSlip() { NxWheelContactData contactDesc; NxShape* contact = GetShape()->GetNxShape()->getContact(contactDesc); - + return contact ? contactDesc.lateralSlip : 0; } @@ -318,9 +318,9 @@ void CarWheel::SetLead(bool value) { if (_lead) _owner->RemoveLeadWheel(this); - + _lead = value; - + if (_lead) _owner->InsertLeadWheel(this); } @@ -338,9 +338,9 @@ void CarWheel::SetSteer(bool value) { if (_steer) _owner->RemoveSteerWheel(this); - + _steer = value; - + if (_steer) _owner->InsertSteerWheel(this); } @@ -464,10 +464,10 @@ void CarWheels::SetSteerContactModify(ContactModify* value) GameCar::GameCar(): _clutchStrength(0), _clutchTime(0.0f), _springTime(0), _mineTime(0), _curGear(-1), _moveCar(mcNone), _steerWheel(swNone), _kSteerControl(1.0f), _steerSpeed(D3DX_PI/2.0f), _steerRot(D3DX_PI), _angDamping(IdentityVector), _flyYTorque(D3DX_PI/1.6f), _clampXTorque(0), _clampYTorque(0), _motorTorqueK(1), _wheelSteerK(1), _gravEngine(false), _clutchImmunity(false), _maxSpeed(0), _tireSpring(0), _disableColor(false), _steerAngle(0), _anyWheelContact(false), _wheelsContact(false), _bodyContact(false) { - _wheels = new Wheels(this); + _wheels = new Wheels(this); GetPxActor().SetContactReportFlags(NX_NOTIFY_ALL | NX_NOTIFY_CONTACT_MODIFICATION); - GetPxActor().SetFlag(NX_AF_CONTACT_MODIFICATION, true); + GetPxActor().SetFlag(NX_AF_CONTACT_MODIFICATION, true); RegFixedStepEvent(); } @@ -491,13 +491,13 @@ void GameCar::MotorProgress(float deltaTime, float& curMotorTorque, float& curBr curRPM = GetWheelRPM(); curBreakTorque = _motor.restTorque; curMotorTorque = 0; - break; - + break; + case mcBrake: SetCurGear(cNeutralGear); curRPM = GetWheelRPM(); curBreakTorque = _motor.brakeTorque; - curMotorTorque = 0; + curMotorTorque = 0; break; case mcBack: @@ -528,7 +528,7 @@ void GameCar::MotorProgress(float deltaTime, float& curMotorTorque, float& curBr else { if (_curGear == cNeutralGear || _curGear == cBackGear) - SetCurGear(1); + SetCurGear(1); curRPM = GetWheelRPM(); curBreakTorque = _motor.restTorque; @@ -539,7 +539,7 @@ void GameCar::MotorProgress(float deltaTime, float& curMotorTorque, float& curBr } inline float NxQuatAngle(const NxQuat& quat1, const NxQuat& quat2) -{ +{ return acos(abs(quat1.dot(quat2)/sqrt(quat1.magnitudeSquared() * quat2.magnitudeSquared()))) * 2; } @@ -563,7 +563,7 @@ void GameCar::WheelsProgress(float deltaTime, float motorTorque, float breakTorq if (_steerWheel == smManual) { - //nothing + //nothing } else { @@ -590,7 +590,7 @@ void GameCar::WheelsProgress(float deltaTime, float motorTorque, float breakTorq pxWheel->setMotorTorque(motorTorque); } if ((*iter)->GetSteer()) - { + { (*iter)->SetSteerAngle(_steerAngle); } if ((*iter)->GetPos().x < 0) @@ -711,7 +711,7 @@ void GameCar::JumpProgress(float deltaTime) //если нет контакта необходжимо машину замедлять и быстро приземлять, чтобы она не улетала на прыжках в космос //nxActor->setLinearDamping(0.4f); nxActor->addForce(1.0f * px::Scene::cDefGravity, NX_ACCELERATION); - + //наклоняем машину вперед если она движется в OXY NxVec3 vel = nxActor->getLinearVelocity(); vel.z = 0.0f; @@ -722,13 +722,13 @@ void GameCar::JumpProgress(float deltaTime) void GameCar::StabilizeForce(float deltaTime) { - NxVec3 angMomentum = GetPxActor().GetNxActor()->getAngularMomentum(); - NxMat33 mat = GetPxActor().GetNxActor()->getGlobalOrientation(); + NxVec3 angMomentum = GetPxActor().GetNxActor()->getAngularMomentum(); + NxMat33 mat = GetPxActor().GetNxActor()->getGlobalOrientation(); NxMat33 invMat; if ((_angDamping.x != -1 || _angDamping.y != -1 || _angDamping.z != -1 || _clampYTorque > 0 || _clampXTorque > 0 || IsClutchLocked()) && mat.getInverse(invMat)) { - angMomentum = invMat * angMomentum; + angMomentum = invMat * angMomentum; if (!_anyWheelContact && _clampYTorque > 0) { float angY = std::min(abs(angMomentum.y), GetPxActor().GetNxActor()->getMassSpaceInertiaTensor().y * _clampYTorque * 2.0f); @@ -742,7 +742,7 @@ void GameCar::StabilizeForce(float deltaTime) float angMomZ = angMomentum.z * _angDamping.z; if (IsClutchLocked()) - { + { if (_clutchStrength != 0) angMomZ = _clutchStrength * GetNxActor()->getMass(); else @@ -822,15 +822,15 @@ void GameCar::SaveSource(lsl::SWriter* writer) child->WriteValue("clampXTorque", _clampXTorque); child->WriteValue("clampYTorque", _clampYTorque); child->WriteValue("gravEngine", _gravEngine); - child->WriteValue("clutchImmunity", _clutchImmunity); + child->WriteValue("clutchImmunity", _clutchImmunity); child->WriteValue("maxSpeed", _maxSpeed); child->WriteValue("tireSpring", _tireSpring); child->WriteValue("disableColor", _disableColor); - lsl::SWriteValue(writer, "angDamping", _angDamping); + lsl::SWriteValue(writer, "angDamping", _angDamping); } - writer->WriteValue("wheels", _wheels); + writer->WriteValue("wheels", _wheels); } void GameCar::LoadSource(lsl::SReader* reader) @@ -841,7 +841,7 @@ void GameCar::LoadSource(lsl::SReader* reader) { child->ReadValue("autoGear", _motor.autoGear); child->ReadValue("brakeTorque", _motor.brakeTorque); - child->ReadValue("gearDiff", _motor.gearDiff); + child->ReadValue("gearDiff", _motor.gearDiff); child->ReadValue("maxRPM", _motor.maxRPM); child->ReadValue("maxTorque", _motor.maxTorque); child->ReadValue("SEM", _motor.SEM); @@ -853,7 +853,7 @@ void GameCar::LoadSource(lsl::SReader* reader) child->ReadValue("clampXTorque", _clampXTorque); child->ReadValue("clampYTorque", _clampYTorque); child->ReadValue("gravEngine", _gravEngine); - child->ReadValue("clutchImmunity", _clutchImmunity); + child->ReadValue("clutchImmunity", _clutchImmunity); child->ReadValue("maxSpeed", _maxSpeed); child->ReadValue("tireSpring", _tireSpring); child->ReadValue("disableColor", _disableColor); @@ -868,10 +868,10 @@ void GameCar::LoadSource(lsl::SReader* reader) //преобразуем в локльную систему координат тела актера void NxQuatFromWorldToLocal(const NxMat33& worldMat, const NxMat33& worldMatRot, NxMat33& outLocalMatRot) -{ +{ NxMat33 invWorldMat; worldMat.getInverse(invWorldMat); - outLocalMatRot.multiply(invWorldMat, worldMatRot); + outLocalMatRot.multiply(invWorldMat, worldMatRot); } void NxQuatFromLocalToWorld(const NxMat33& worldMat, const NxMat33& localMatRot, NxMat33& outWorldMatRot) @@ -915,7 +915,7 @@ bool GameCar::OnContactModify(const px::Scene::OnContactModifyEvent& contact) //если цель является основным взаимодействующим лицом, то необходимо инверитровать нормаль if (contact.actorIndex == 0) triNorm = -triNorm; - + NxMat33 wFricMat = NxMat33(contact.data->localorientation0); if (shapeDyn0) NxQuatFromLocalToWorld(contact.shape0->getActor().getCMassGlobalPose().M, wFricMat, wFricMat); @@ -929,13 +929,13 @@ bool GameCar::OnContactModify(const px::Scene::OnContactModifyEvent& contact) if (firstFric.magnitude() < 0.5f) { firstFric = wFricMat.getColumn(1); - secFric = triNorm.cross(firstFric); + secFric = triNorm.cross(firstFric); } ////если firstFric совпадает с нормалью, то оставляем старый базис if (secFric.magnitude() > 0.1f) { firstFric.normalize(); - secFric.normalize(); + secFric.normalize(); //корректируем нормаль для ортоганальной системы triNorm = firstFric.cross(secFric); triNorm.normalize(); @@ -983,7 +983,7 @@ bool GameCar::OnContactModify(const px::Scene::OnContactModifyEvent& contact) //contact.data->dynamicFriction0 = friction; //contact.data->staticFriction0 = friction - 0.05f; } - + contact.data->dynamicFriction0 = 0; contact.data->staticFriction0 = 0; @@ -1015,8 +1015,8 @@ void GameCar::OnContact(const px::Scene::OnContactEvent& contact) GameObject* target = GetGameObjFromActor(contact.actor); int targetPlayerId = target && target->GetMapObj() && target->GetMapObj()->GetPlayer() ? target->GetMapObj()->GetPlayer()->GetId() : cUndefPlayerId; - int senderPlayerId = GetMapObj() && GetMapObj()->GetPlayer() ? GetMapObj()->GetPlayer()->GetId() : cUndefPlayerId; - + int senderPlayerId = GetMapObj() && GetMapObj()->GetPlayer() ? GetMapObj()->GetPlayer()->GetId() : cUndefPlayerId; + NxVec3 force = contact.pair->sumNormalForce; float forceLength = contact.pair->sumNormalForce.magnitude(); @@ -1039,7 +1039,7 @@ void GameCar::OnContact(const px::Scene::OnContactEvent& contact) if (contact.actorIndex == 0) norm = -norm; - NxVec3 vel = GetPxActor().GetNxActor()->getLinearVelocity(); + NxVec3 vel = GetPxActor().GetNxActor()->getLinearVelocity(); NxContactStreamIterator contIter(contact.stream); bool borderContact = abs(norm.z) < 0.5f && ContainsContactGroup(contIter, contact.actorIndex, px::Scene::cdgShotTransparency); @@ -1065,7 +1065,7 @@ void GameCar::OnContact(const px::Scene::OnContactEvent& contact) float dirDot2 = dir.dot(tang); if (tangDot > 0.1f && (dirDot < 0.707f || dirDot2 < -0.707f)) - { + { if (tangDot < 0.995f) { //binormal @@ -1083,13 +1083,13 @@ void GameCar::OnContact(const px::Scene::OnContactEvent& contact) } tang.normalize(); - + //tangent tang = tang.cross(norm); } else tang = NxVec3(0, 0, 0); - + float velN = norm.dot(vel); //if (dirDot < 0.707f && dirDot2) velN = lsl::ClampValue(abs(velN), 4.0f, 14.0f); //2, 12 @@ -1151,7 +1151,7 @@ void GameCar::OnProgress(float deltaTime) for (Wheels::iterator iter = _wheels->begin(); iter != _wheels->end(); ++iter) { - CarWheel* wheel = *iter; + CarWheel* wheel = *iter; wheel->OnProgress(deltaTime); } @@ -1168,7 +1168,7 @@ void GameCar::OnFixedStep(float deltaTime) float curMotorTorque = 0; float curBreakTorque = 0; float curRPM = 0; - _anyWheelContact = false; + _anyWheelContact = false; _wheelsContact = true; _bodyContact = false; @@ -1177,13 +1177,13 @@ void GameCar::OnFixedStep(float deltaTime) if (_mineTime > 0 && (_mineTime -= deltaTime) < 0.0f) _mineTime = 0.0f; - + MotorProgress(deltaTime, curMotorTorque, curBreakTorque, curRPM); TransmissionProgress(deltaTime, curRPM); - WheelsProgress(deltaTime, curMotorTorque, curBreakTorque); - JumpProgress(deltaTime); + WheelsProgress(deltaTime, curMotorTorque, curBreakTorque); + JumpProgress(deltaTime); - GetBehaviors().OnMotor(deltaTime, curRPM, static_cast(_motor.idlingRPM), static_cast(_motor.maxRPM)); + GetBehaviors().OnMotor(deltaTime, curRPM, static_cast(_motor.idlingRPM), static_cast(_motor.maxRPM)); } GameCar* GameCar::IsCar() @@ -1275,7 +1275,7 @@ GameCar::SteerWheelState GameCar::GetSteerWheel() const } void GameCar::SetSteerWheel(SteerWheelState value) -{ +{ _steerWheel = value; } @@ -1311,7 +1311,7 @@ float GameCar::GetLeadWheelSpeed() if (!_wheels->GetLeadGroup().empty()) { NxWheelShape* wheel = _wheels->GetLeadGroup().front()->GetShape()->GetNxShape(); - + float speed = wheel->getAxleSpeed() * wheel->getRadius(); //погрешность 0.1 м/с return abs(speed) > 0.1f ? speed : 0.0f; @@ -1333,7 +1333,7 @@ float GameCar::GetDrivenWheelSpeed() if (wheel) { - float speed = wheel->GetShape()->GetNxShape()->getAxleSpeed() * wheel->GetShape()->GetRadius(); + float speed = wheel->GetShape()->GetNxShape()->getAxleSpeed() * wheel->GetShape()->GetRadius(); //погрешность 0.1 м/с return abs(speed) > 0.1f ? speed : 0.0f; } @@ -1544,7 +1544,7 @@ void DestrObj::OnDeath(GameObject* sender, DamageType damageType, GameObject* ta { _MyBase::OnDeath(sender, damageType, target); - _checkDestruction = true; + _checkDestruction = true; } void DestrObj::SaveSource(lsl::SWriter* writer) @@ -1587,7 +1587,7 @@ void DestrObj::OnProgress(float deltaTime) _destrList->LockNotify(); try { - _destrList->Clear(); + _destrList->Clear(); } LSL_FINALLY(_destrList->UnlockDestr(); _destrList->UnlockNotify();) } diff --git a/src/Rock3dGame/source/game/GameMode.cpp b/src/Rock3dGame/source/game/GameMode.cpp index d9d81e34..49fd5991 100644 --- a/src/Rock3dGame/source/game/GameMode.cpp +++ b/src/Rock3dGame/source/game/GameMode.cpp @@ -44,7 +44,7 @@ GameMode::GameMode(World* world): _world(world), _musicReport(0), _fadeMusic(1.0 _world->GetControl()->InsertEvent(this); } - + GameMode::~GameMode() { _world->GetControl()->RemoveEvent(this); @@ -69,7 +69,7 @@ GameMode::~GameMode() #ifdef STEAM_SERVICE lsl::SafeDelete(_steamService); #endif - lsl::SafeDelete(_race); + lsl::SafeDelete(_race); } GameMode::MusicCat::MusicCat(GameMode* game): _game(game), _pos(0), _pcmTotal(0) @@ -150,7 +150,7 @@ void GameMode::MusicCat::GenRandom(int ignore) unsigned slotsOffset = slots.size() - slotsCount; unsigned count = std::max(node.playList.size() - 1, 1U); int index = (count * slotsOffset + 2 * (slotsCount - 1) * j) / (2 * count); - + index = slots[index]; _playList[index] = node.playList[j]; list.push_back(index); @@ -179,7 +179,7 @@ void GameMode::MusicCat::SaveGame(lsl::SWriter* writer) { lsl::SWriter* tracksNode = writer->NewDummyNode("tracks"); for (unsigned i = 0; i < _tracks.size(); ++i) - { + { lsl::SWriter* track = tracksNode->NewDummyNode(lsl::StrFmt("sound%d", i).c_str()); track->WriteRef("item", _tracks[i].sound); track->WriteValue("name", _tracks[i].name); @@ -243,7 +243,7 @@ void GameMode::MusicCat::AddTrack(const Track& track) void GameMode::MusicCat::ClearTracks() { _curTrack = Track(); - _tracks.clear(); + _tracks.clear(); } const GameMode::Track& GameMode::MusicCat::GetCurTrack() const @@ -264,7 +264,7 @@ void GameMode::MusicCat::Play(bool showInfo) while (!_playList.empty()) { int ind = _playList.back(); - _playList.pop_back(); + _playList.pop_back(); if (Play(ind, false, showInfo)) break; @@ -336,7 +336,7 @@ GameMode::Commentator::~Commentator() _source->Release(); _source->UnregReport(this); - _game->GetWorld()->GetLogic()->ReleaseSndSource(_source); + _game->GetWorld()->GetLogic()->ReleaseSndSource(_source); } void GameMode::Commentator::Play(const Sounds& sounds, bool replace) @@ -354,7 +354,7 @@ void GameMode::Commentator::Play(const Sounds& sounds, bool replace) _sounds.insert(_sounds.end(), sounds.begin(), sounds.end()); if (!isSpeaking && Next()) _timeSilience = 0; - } + } } bool GameMode::Commentator::Next() @@ -425,7 +425,7 @@ void GameMode::Commentator::LoadGame(lsl::SReader* reader) lsl::SReader* comment = comments ? comments->FirstChildValue() : 0; while (comment) { - Comment item; + Comment item; comment->ReadValue("chance", item.chance); comment->ReadValue("delay", item.delay); lsl::SReadEnum(comment, "busy", item.busy, cBusyActionStr, cBusyActionEnd); @@ -627,7 +627,7 @@ const GameMode::Voice* GameMode::Commentator::Generate(const lsl::string& name, { const Comment* comment = FindComment(name); if (comment == 0) - return 0; + return 0; return Generate(*comment, playerId); } @@ -673,7 +673,7 @@ void GameMode::PrepareGame() LSL_LOG("game init race"); - _race = new Race(this, "race"); + _race = new Race(this, "race"); LSL_LOG("game init net"); @@ -730,14 +730,14 @@ void GameMode::StartGame() if (weapon) weapon->SetCntCharge(99); } - + _race->GetTournament().SetCurPlanet(_race->GetTournament().GetPlanets()[1]); _race->GetTournament().GetCurPlanet().Unlock(); _race->GetTournament().GetCurPlanet().Open(); //_race->GetTournament().GetCurPlanet().SetPass(2); _race->GetTournament().SetCurTrack(_race->GetTournament().GetPlanets()[1]->GetTracks()[0]); _race->GetHuman()->GetPlayer()->AddPoints(999999); - + StartRace(); #endif*/ } @@ -782,7 +782,7 @@ void GameMode::AdjustGameStartup() { _guiStartup->SetSize(Menu::GetImageAspectSize(_guiStartup->GetMaterial(), size)); _guiStartup->SetPos(size/2.0f); - } + } } void GameMode::SetSemaphore(MapObj* value) @@ -817,12 +817,12 @@ void GameMode::SaveGameOpt(lsl::SWriter* writer) { lsl::SWriter* quality = writer->NewDummyNode("quality"); if (quality) - { + { quality->WriteValue("filtering", _world->GetEnv()->GetFiltering()); quality->WriteValue("msaa", _world->GetEnv()->GetMultisampling()); quality->WriteValue("shadow", _world->GetEnv()->GetShadowQuality()); quality->WriteValue("environment", _world->GetEnv()->GetEnvQuality()); - quality->WriteValue("light", _world->GetEnv()->GetLightQuality()); + quality->WriteValue("light", _world->GetEnv()->GetLightQuality()); quality->WriteValue("postEffect", _world->GetEnv()->GetPostEffQuality()); lsl::SWriteEnum(quality, "frameRateMode", _world->GetEnv()->GetSyncFrameRate(), Environment::cSyncFrameRateStr, Environment::cSyncFrameRateEnd); } @@ -834,7 +834,7 @@ void GameMode::SaveGameOpt(lsl::SWriter* writer) { volume->WriteValue("musicVolume", _world->GetLogic()->GetVolume(Logic::scMusic)); volume->WriteValue("effectsVolume", _world->GetLogic()->GetVolume(Logic::scEffects)); - volume->WriteValue("voiceVolume", _world->GetLogic()->GetVolume(Logic::scVoice)); + volume->WriteValue("voiceVolume", _world->GetLogic()->GetVolume(Logic::scVoice)); } writer->WriteValue("maxPlayers", _maxPlayers); @@ -892,7 +892,7 @@ void GameMode::LoadGameOpt(lsl::SReader* reader, bool discreteVideoChanges) if (quality->ReadValue("light", intVal)) _world->GetEnv()->SetLightQuality(Environment::Quality(intVal)); if (quality->ReadValue("postEffect", intVal)) - _world->GetEnv()->SetPostEffQuality(Environment::Quality(intVal)); + _world->GetEnv()->SetPostEffQuality(Environment::Quality(intVal)); if (lsl::SReadEnum(quality, "frameRateMode", syncFrameRate, Environment::cSyncFrameRateStr, Environment::cSyncFrameRateEnd)) _world->GetEnv()->SetSyncFrameRate(syncFrameRate); } @@ -1013,20 +1013,20 @@ void GameMode::ResetConfig() _world->GetEnv()->AutodetectQuality(); _world->GetLogic()->AutodetectVolume(); - _prefCamera = pcIsometric; + _prefCamera = pcIsometric; _cameraDistance = 1.25f; _discreteVideoChanged = true; _prefCameraAutodetect = true; } void GameMode::SaveGameData(lsl::SWriter* writer) -{ +{ lsl::SWriter* languages = writer->NewDummyNode("languages"); for (Languages::const_iterator iter = _languages.begin(); iter != _languages.end(); ++iter) { lsl::SWriter* language = languages->NewDummyNode(iter->name.c_str()); - language->WriteValue("file", iter->file); + language->WriteValue("file", iter->file); language->WriteValue("locale", iter->locale); lsl::SWriteEnum(language, "charset", iter->charset, cLangCharsetStr, cLangCharsetEnd); language->WriteValue("primId", iter->primId); @@ -1041,7 +1041,7 @@ void GameMode::SaveGameData(lsl::SWriter* writer) } _menuMusic->SaveGame(writer->NewDummyNode("menuMusic")); - _gameMusic->SaveGame(writer->NewDummyNode("gameMusic")); + _gameMusic->SaveGame(writer->NewDummyNode("gameMusic")); _commentator->SaveGame(writer->NewDummyNode("commentator")); } @@ -1059,7 +1059,7 @@ void GameMode::LoadGameData(lsl::SReader* reader) item.charset = lcDefault; item.name = language->GetMyName(); - language->ReadValue("file", item.file); + language->ReadValue("file", item.file); language->ReadValue("locale", item.locale); lsl::SReadEnum(language, "charset", item.charset, cLangCharsetStr, cLangCharsetEnd); language->ReadValue("primId", item.primId); @@ -1122,7 +1122,7 @@ void GameMode::ResetGameData() lang.primId = 22; lang.locale = "portuguese"; lang.charset = lcEastEurope; - _languages.push_back(lang); + _languages.push_back(lang); _commentatorStyles.clear(); CommentatorStyle commentatorStyle; @@ -1136,14 +1136,14 @@ void GameMode::ResetGameData() // _commentator->Add(cEventNameMap[cRaceFinish], "Voice\\finish1.ogg", 100, 0, baQueue); _commentator->Add(cEventNameMap[cRaceLastLap], "Voice\\lastLap1.ogg", 100, 0, baQueue); - + _commentator->Add(cEventNameMap[cPlayerOverboard], "Voice\\lowLuck1.ogg", 100, 0, baSkip, true, 33, false, false, true); _commentator->AddVoice(cEventNameMap[cPlayerOverboard], "Voice\\overboard1.ogg", 33, false, false, true); _commentator->AddVoice(cEventNameMap[cPlayerOverboard], "Voice\\playerLostControl1.ogg", 33, true, false, true); // _commentator->Add(cEventNameMap[cPlayerDeathMine], "Voice\\lowLuck1.ogg", 100, 0, baSkip, true, 0, false, false, true); _commentator->Add(cEventNameMap[cPlayerKill], "Voice\\playerKill1.ogg", 100, 0, baSkip, true, 0, false, false, true); - + _commentator->Add(cEventNameMap[cPlayerMoveInverse], "Voice\\playerMoveInverse1.ogg", 100, 0, baQueue, false, 0, true); _commentator->Add(cEventNameMap[cPlayerLostControl], "Voice\\playerLostControl1.ogg", 100, 0, baSkip, true, 0, true); _commentator->Add(cEventNameMap[cPlayerLeadFinish], "Voice\\leaderFinish1.ogg", 100, 0, baQueue, true, 0, true); @@ -1158,7 +1158,7 @@ void GameMode::ResetGameData() _commentator->Add("svSnake", "Voice\\snake.ogg", 100, 0); _commentator->Add("svTyler", "Voice\\tailer.ogg", 100, 0); _commentator->Add("svTarkvin", "Voice\\tarkvin.ogg", 100, 0); - + _menuMusic->ClearTracks(); _menuMusic->AddTrack(Track(GetSound("Music\\Track1.ogg"), "Cold Hard Bitch", "Jet")); _menuMusic->AddTrack(Track(GetSound("Music\\Track14.ogg"), "Angel's wings (acoustic)", "Social Distortion")); @@ -1201,11 +1201,11 @@ void GameMode::LoadGameData() file.LoadNodeFromFile(node, "game.xml"); - node.BeginLoad(); + node.BeginLoad(); LoadGameData(&node); node.EndLoad(); } - catch (const lsl::EUnableToOpen&) + catch (const lsl::EUnableToOpen&) { ResetGameData(); SaveGameData(); @@ -1221,12 +1221,12 @@ bool GameMode::OnHandleInput(const InputMessage& msg) { if (_startUpTime == -9) { - _world->GetVideo()->Stop(); + _world->GetVideo()->Stop(); _startUpTime = -10; } else if (_movieTime == 7) { - _world->GetVideo()->Stop(); + _world->GetVideo()->Stop(); _movieTime = 8; } else if (_guiLogo && _startUpTime >= 0.0f) @@ -1252,8 +1252,8 @@ bool GameMode::OnHandleInput(const InputMessage& msg) /*unsigned i = 0; while (EnumDisplayDevices(NULL, i, &dd, 0)) { - LSL_LOG(lsl::StrFmt("device i=%d name=%s desc=%s primary=%d active=%d mirroring=%d removable=%d vga=%d pruned=%d", i, dd.DeviceName, dd.DeviceString, (dd.StateFlags & DISPLAY_DEVICE_PRIMARY_DEVICE) != 0, (dd.StateFlags & DISPLAY_DEVICE_ACTIVE) != 0, (dd.StateFlags & DISPLAY_DEVICE_MIRRORING_DRIVER) != 0, (dd.StateFlags & DISPLAY_DEVICE_REMOVABLE) != 0, (dd.StateFlags & DISPLAY_DEVICE_VGA_COMPATIBLE) != 0, (dd.StateFlags & DISPLAY_DEVICE_MODESPRUNED) != 0)); - ++i; + LSL_LOG(lsl::StrFmt("device i=%d name=%s desc=%s primary=%d active=%d mirroring=%d removable=%d vga=%d pruned=%d", i, dd.DeviceName, dd.DeviceString, (dd.StateFlags & DISPLAY_DEVICE_PRIMARY_DEVICE) != 0, (dd.StateFlags & DISPLAY_DEVICE_ACTIVE) != 0, (dd.StateFlags & DISPLAY_DEVICE_MIRRORING_DRIVER) != 0, (dd.StateFlags & DISPLAY_DEVICE_REMOVABLE) != 0, (dd.StateFlags & DISPLAY_DEVICE_VGA_COMPATIBLE) != 0, (dd.StateFlags & DISPLAY_DEVICE_MODESPRUNED) != 0)); + ++i; }*/ return true; @@ -1276,7 +1276,7 @@ bool GameMode::OnHandleInput(const InputMessage& msg) if (msg.action == gaDebug4) { - //_steamService->Sync(); + //_steamService->Sync(); } if (msg.action == gaDebug5) @@ -1368,7 +1368,7 @@ void GameMode::Run(bool playIntro) _guiLogo->GetMaterial().SetColor(D3DXCOLOR(1, 1, 1, 0)); _guiLogo2 = _world->GetGraph()->GetGUI().CreatePlaneFon(); - _guiLogo2->GetMaterial().GetSampler().GetOrCreateTex()->GetOrCreateData()->SetFileName("Data\\GUI\\laboratoria24.png"); + _guiLogo2->GetMaterial().GetSampler().GetOrCreateTex()->GetOrCreateData()->SetFileName("Data\\GUI\\laboratoria24.png"); _guiLogo2->GetMaterial().GetSampler().GetTex()->Init(_world->GetGraph()->GetEngine()); _guiLogo2->GetMaterial().SetBlending(gui::Material::bmTransparency); _guiLogo2->GetMaterial().SetColor(D3DXCOLOR(1, 1, 1, 0)); @@ -1378,7 +1378,7 @@ void GameMode::Run(bool playIntro) _guiStartup->GetMaterial().GetSampler().GetOrCreateTex()->GetOrCreateData()->SetFileName("Data\\GUI\\startLogo.dds"); _guiStartup->GetMaterial().GetSampler().GetTex()->Init(_world->GetGraph()->GetEngine()); _guiStartup->GetMaterial().GetSampler().SetFiltering(graph::Sampler2d::sfLinear); - _guiStartup->GetMaterial().SetBlending(gui::Material::bmTransparency); + _guiStartup->GetMaterial().SetBlending(gui::Material::bmTransparency); _guiStartup->GetMaterial().SetColor(D3DXCOLOR(1, 1, 1, 0)); AdjustGameStartup(); @@ -1424,11 +1424,11 @@ void GameMode::LoadConfig(bool discreteVideoChanges) file.LoadNodeFromFile(node, "user.xml"); - node.BeginLoad(); + node.BeginLoad(); LoadConfig(&node, discreteVideoChanges); node.EndLoad(); } - catch (const lsl::EUnableToOpen&) + catch (const lsl::EUnableToOpen&) { ResetConfig(); SaveConfig(); @@ -1436,7 +1436,7 @@ void GameMode::LoadConfig(bool discreteVideoChanges) } void GameMode::SaveGame(bool saveProfile) -{ +{ if (saveProfile) { _race->SaveLib(); @@ -1504,7 +1504,7 @@ void GameMode::ExitMatch(bool saveGame) bool GameMode::IsMatchStarted() const { - return _race->IsMatchStarted(); + return _race->IsMatchStarted(); } void GameMode::StartRace() @@ -1513,7 +1513,7 @@ void GameMode::StartRace() _goRaceTime = -1; _finishTime = -1; - _menu->SetState(Menu::msInfo); + _menu->SetState(Menu::msInfo); } void GameMode::ExitRace(bool saveGame, const Race::Results* results) @@ -1528,7 +1528,7 @@ void GameMode::ExitRace(bool saveGame, const Race::Results* results) _commentator->Stop(); _gameMusic->Stop(); SetSemaphore(NULL); - _race->ExitRace(results); + _race->ExitRace(results); SaveGame(saveGame); } @@ -1662,7 +1662,7 @@ void GameMode::StopMusic() lsl::SafeRelease(_musicReport); } - _music->Stop(); + _music->Stop(); snd::Sound* lastSound = _music->GetSound(); _music->SetSound(NULL, true); @@ -1741,7 +1741,7 @@ void GameMode::OnFinishFrameClose() } void GameMode::OnFrame(float deltaTime, float pxAlpha) -{ +{ const float logoDelay = 1.0f; const float logoFadeTime = 1.0f; const float logoTime = 3.0f; @@ -1797,7 +1797,7 @@ void GameMode::OnFrame(float deltaTime, float pxAlpha) _startUpTime = -3; } else if (_guiLogo) - { + { _startUpTime += deltaTime; float logo2Delay = logoFadeTime + logoTime + logoFadeTime + logoDelay + logoDelay; @@ -1836,7 +1836,7 @@ void GameMode::OnFrame(float deltaTime, float pxAlpha) } else _startUpTime = -2; - } + } else if (_startGame && !IsMoviePlaying()) { _menu->OnProgress(deltaTime); @@ -1883,7 +1883,7 @@ void GameMode::OnFrame(float deltaTime, float pxAlpha) _movieTime = 1; } else if (_movieTime == 1) - { + { _world->SetVideoMode(true); _menuMusic->Pause(true); @@ -1927,15 +1927,15 @@ void GameMode::OnFrame(float deltaTime, float pxAlpha) void GameMode::OnGraphEvent(HWND hwnd, long eventCode, LONG_PTR param1, LONG_PTR param2) { switch (eventCode) - { + { case EC_COMPLETE: case EC_USERABORT: - case EC_ERRORABORT: + case EC_ERRORABORT: if (_startUpTime != -1) _startUpTime = -10; if (_movieTime != -1) _movieTime = 8; - break; + break; } } @@ -2038,17 +2038,17 @@ void GameMode::AutodetectLanguage() if (language == 0 && !_languages.empty()) language = &_languages.front(); - if (language) - SetLanguage(language->name); + if (language) + SetLanguage(language->name); //SetThreadUILanguage(MAKELANGID(LANG_ENGLISH, SUBLANG_ENGLISH_US)); //SetThreadUILanguage(MAKELANGID(LANG_ENGLISH, SUBLANG_ENGLISH_US)); //setlocale(LC_ALL, "english"); //_setmbcp(_MB_CP_LOCALE); //SetThreadLocale(MAKELCID(MAKELANGID(LANG_ENGLISH, SUBLANG_ENGLISH_US), SORT_DEFAULT)); - //GetSystemDefaultLCID - //setlocale( LC_ALL, ".1252" ); - //pt-BR + //GetSystemDefaultLCID + //setlocale( LC_ALL, ".1252" ); + //pt-BR } void GameMode::ApplyLanguage() @@ -2173,7 +2173,7 @@ int GameMode::upgradeMaxLevel() const } void GameMode::upgradeMaxLevel(int value) -{ +{ _upgradeMaxLevel = value; if (_startGame) diff --git a/src/Rock3dGame/source/game/GameObject.cpp b/src/Rock3dGame/source/game/GameObject.cpp index 719cba64..7dbde10c 100644 --- a/src/Rock3dGame/source/game/GameObject.cpp +++ b/src/Rock3dGame/source/game/GameObject.cpp @@ -44,8 +44,8 @@ GameObject::~GameObject() delete _includeList; - delete _pxActor; - delete _grActor; + delete _pxActor; + delete _grActor; } void GameObject::SetSyncFrameEvent(bool value) @@ -85,8 +85,8 @@ void GameObject::Destroy() if (!_destroy) { _destroy = true; - - for (ListenerList::Position pos = _listenerList.First(); GameObjListener** iter = _listenerList.Current(pos); _listenerList.Next(pos)) + + for (ListenerList::Position pos = _listenerList.First(); GameObjListener** iter = _listenerList.Current(pos); _listenerList.Next(pos)) (*iter)->OnDestroy(this); } } @@ -158,7 +158,7 @@ D3DXVECTOR3 GameObject::GetContactPoint(const px::Scene::OnContactEvent& contact while (contIter.goNextPair()) while (contIter.goNextPatch()) while (contIter.goNextPoint()) - { + { return contIter.getPoint().get(); } @@ -180,7 +180,7 @@ bool GameObject::ContainsContactGroup(NxContactStreamIterator& contIter, unsigne void GameObject::OnContact(const px::Scene::OnContactEvent& contact) { - for (ListenerList::Position pos = _listenerList.First(); GameObjListener** iter = _listenerList.Current(pos); _listenerList.Next(pos)) + for (ListenerList::Position pos = _listenerList.First(); GameObjListener** iter = _listenerList.Current(pos); _listenerList.Next(pos)) (*iter)->OnContact(contact); } @@ -221,7 +221,7 @@ void GameObject::SendDeath(DamageType damageType, GameObject* target) { OnDeath(this, damageType, target); - for (ListenerList::Position pos = _listenerList.First(); GameObjListener** iter = _listenerList.Current(pos); _listenerList.Next(pos)) + for (ListenerList::Position pos = _listenerList.First(); GameObjListener** iter = _listenerList.Current(pos); _listenerList.Next(pos)) (*iter)->OnDeath(this, damageType, target); } @@ -256,7 +256,7 @@ void GameObject::OnProgress(float deltaTime) if (_immortalTime > 0) { - _immortalTime -= deltaTime; + _immortalTime -= deltaTime; if (_immortalTime <= 0) { _immortalTime = 0; @@ -302,7 +302,7 @@ void GameObject::OnFrame(float deltaTime, float pxAlpha) _posSyncLength = 0.0f; if (_rotSyncAngle != 0) - { + { if (_rotSyncAngle > 0) { _rotSyncAngle = std::max(_rotSyncAngle - 1.3f * D3DX_PI * deltaTime, 0.0f); @@ -357,7 +357,7 @@ void GameObject::SaveSource(lsl::SWriter* writer) writer->WriteValue("grActor", _grActor); writer->WriteValue("pxActor", _pxActor); - writer->WriteValue("maxLife", _maxLife); + writer->WriteValue("maxLife", _maxLife); //Внешний родитель, сохр. ссылку. Пока нет необходимости в таком функционале //if (GetOwner() != GetParent()) @@ -366,11 +366,11 @@ void GameObject::SaveSource(lsl::SWriter* writer) void GameObject::LoadSource(lsl::SReader* reader) { - reader->ReadValue("grActor", _grActor); + reader->ReadValue("grActor", _grActor); reader->ReadValue("pxActor", _pxActor); reader->ReadValue("maxLife", _maxLife); - + //reader->ReadRef("parent", false, this, 0); } @@ -409,7 +409,7 @@ void GameObject::LoadProxy(lsl::SReader* reader) _behaviors->storeSource = true; _behaviors->storeProxy = true; - reader->ReadValue("behaviors", _behaviors); + reader->ReadValue("behaviors", _behaviors); } void GameObject::Save(lsl::SWriter* writer) @@ -424,7 +424,7 @@ void GameObject::Save(lsl::SWriter* writer) } void GameObject::Load(lsl::SReader* reader) -{ +{ if (storeSource) LoadSource(reader); if (storeProxy) @@ -507,7 +507,7 @@ void GameObject::ClearListenerList() { for (ListenerList::const_iterator iter = _listenerList.begin(); iter != _listenerList.end(); ++iter) (*iter)->Release(); - + _listenerList.Clear(); } @@ -535,7 +535,7 @@ void GameObject::Resc() void GameObject::Damage(int senderPlayerId, float value, float newLife, bool death, DamageType damageType) { MyEventData data; - data.target = this; + data.target = this; data.targetPlayerId = GetMapObj() && GetMapObj()->GetPlayer() ? GetMapObj()->GetPlayer()->GetId() : cUndefPlayerId; data.damage = value; data.damageType = damageType; @@ -544,8 +544,8 @@ void GameObject::Damage(int senderPlayerId, float value, float newLife, bool dea if (_liveState != lsDeath) { - for (ListenerList::Position pos = _listenerList.First(); GameObjListener** iter = _listenerList.Current(pos); _listenerList.Next(pos)) - (*iter)->OnDamage(this, value, damageType); + for (ListenerList::Position pos = _listenerList.First(); GameObjListener** iter = _listenerList.Current(pos); _listenerList.Next(pos)) + (*iter)->OnDamage(this, value, damageType); if (senderPlayerId != cUndefPlayerId) { @@ -598,7 +598,7 @@ void GameObject::LowLife(Behavior* behavior) { OnLowLife(this, behavior); - for (ListenerList::Position pos = _listenerList.First(); GameObjListener** iter = _listenerList.Current(pos); _listenerList.Next(pos)) + for (ListenerList::Position pos = _listenerList.First(); GameObjListener** iter = _listenerList.Current(pos); _listenerList.Next(pos)) (*iter)->OnLowLife(this, behavior); } @@ -656,9 +656,9 @@ void GameObject::SetLogic(Logic* value) LogicReleased(); } - + _logic = value; - + for (Children::iterator iter = _children.begin(); iter != _children.end(); ++iter) (*iter)->SetLogic(value); @@ -683,7 +683,7 @@ void GameObject::SendEvent(unsigned id, int playerId, MyEventData* data) if (_logic == NULL || GetMapObj() == NULL) return; - GameMode* game = _logic->GetMap()->GetWorld()->GetGame(); + GameMode* game = _logic->GetMap()->GetWorld()->GetGame(); if (data) data->playerId = playerId; @@ -855,7 +855,7 @@ void GameObject::SetRotSync(const glm::quat& value) _rotSyncAxis = Vec3GlmToDx(glm::axis(_rotSync)); _rotSyncAngle = glm::angle(_rotSync); float angle = abs(_rotSyncAngle); - + if (angle > D3DX_PI) { _rotSyncAngle = (2 * D3DX_PI - angle) * (_rotSyncAngle > 0 ? -1.0f : 1.0f); diff --git a/src/Rock3dGame/source/game/HudMenu.cpp b/src/Rock3dGame/source/game/HudMenu.cpp index a124dd59..a2c9dca5 100644 --- a/src/Rock3dGame/source/game/HudMenu.cpp +++ b/src/Rock3dGame/source/game/HudMenu.cpp @@ -18,7 +18,7 @@ PlayerStateFrame::PlayerStateFrame(Menu* menu, HudMenu* hudMenu, gui::Widget* pa UpdateOpponents(); for (int i = 0; i < cCarLifeEnd; ++i) - { + { _carLifes[i].target = NULL; _carLifes[i].timer = -1; _carLifes[i].timeMax = 4; @@ -33,7 +33,7 @@ PlayerStateFrame::PlayerStateFrame(Menu* menu, HudMenu* hudMenu, gui::Widget* pa _raceState = menu->CreatePlane(root(), 0, "GUI\\placeMineHyper.png", true, IdentityVec2, gui::Material::bmTransparency); _raceState->SetAlign(gui::Widget::waLeftTop); - _place = menu->CreateLabel(svNull, _raceState, "Header", NullVec2, gui::Text::haCenter, gui::Text::vaCenter, clrWhite); + _place = menu->CreateLabel(svNull, _raceState, "Header", NullVec2, gui::Text::haCenter, gui::Text::vaCenter, clrWhite); _lifeBack = menu->CreatePlane(_raceState, 0, "GUI\\lifeBarBack.png", true, IdentityVec2, gui::Material::bmTransparency); _lifeBar = menu->CreateBar(_lifeBack, NULL, "GUI\\lifeBar.png", ""); @@ -48,7 +48,7 @@ PlayerStateFrame::PlayerStateFrame(Menu* menu, HudMenu* hudMenu, gui::Widget* pa menu->ShowChat(true); menu->RegUser(this); } - + PlayerStateFrame::~PlayerStateFrame() { menu()->ShowChat(false); @@ -84,7 +84,7 @@ PlayerStateFrame::~PlayerStateFrame() ClearOpponents(); ClearSlots(); - + menu()->GetGUI()->ReleaseWidget(_lifeBar); menu()->GetGUI()->ReleaseWidget(_lifeBack); menu()->GetGUI()->ReleaseWidget(_place); @@ -94,7 +94,7 @@ PlayerStateFrame::~PlayerStateFrame() void PlayerStateFrame::NewPickItem(Slot::Type slotType, GameObject::BonusType bonusType, int targetPlayerId, bool kill) { const glm::vec2 photoSize = glm::vec2(50.0f, 50.0f); - const D3DXCOLOR color2 = D3DXCOLOR(214.0f, 214.0f, 214.0f, 255.0f)/255.0f; + const D3DXCOLOR color2 = D3DXCOLOR(214.0f, 214.0f, 214.0f, 255.0f)/255.0f; string image; graph::Tex2DResource* photo = NULL; @@ -163,7 +163,7 @@ void PlayerStateFrame::NewPickItem(Slot::Type slotType, GameObject::BonusType bo item.photo = menu()->CreatePlane(item.image, NULL, "", true, IdentityVec2, gui::Material::bmTransparency); item.photo->GetMaterial().GetSampler().SetFiltering(graph::Sampler2d::sfLinear); item.photo->SetPos(glm::vec2(-40.0f, 0.0f)); - + item.label = menu()->CreateLabel(svNull, item.photo, "Small", NullVec2, gui::Text::haLeft, gui::Text::vaCenter, color2); item.label->SetAlign(gui::Widget::waLeft); item.label->SetPos(photoSize.x/2 + 0.0f, 0.0f); @@ -265,7 +265,7 @@ void PlayerStateFrame::NewAchievment(AchievmentCondition::MyEventData* data) _achievmentsBuffer.pop_back(); } else - { + { item.image = menu()->CreatePlane(root(), NULL, image, true, IdentityVec2, gui::Material::bmTransparency); item.points = menu()->CreatePlane(item.image, NULL, pointsImage, true, IdentityVec2, gui::Material::bmTransparency); @@ -281,7 +281,7 @@ void PlayerStateFrame::NewAchievment(AchievmentCondition::MyEventData* data) item.pointsK = NULL; } - const glm::vec2 startPos[8] = { + const glm::vec2 startPos[8] = { glm::vec2(0 - item.slotSize.x * 2, 1 * vpSize.y / 4), glm::vec2(0 - item.slotSize.x, 2 * vpSize.y / 4), glm::vec2(0 - item.slotSize.x, 3 * vpSize.y / 4), @@ -299,7 +299,7 @@ void PlayerStateFrame::NewAchievment(AchievmentCondition::MyEventData* data) item.image->SetVisible(true); item.image->GetMaterial().SetColor(D3DXCOLOR(1, 1, 1, 1)); - item.points->GetMaterial().SetColor(D3DXCOLOR(1, 1, 1, 0)); + item.points->GetMaterial().SetColor(D3DXCOLOR(1, 1, 1, 0)); if (item.pointsK) item.pointsK->GetMaterial().SetColor(D3DXCOLOR(1, 1, 1, 0)); item.points->SetVisible(menu()->IsCampaign()); @@ -375,7 +375,7 @@ void PlayerStateFrame::ProccessAchievments(float deltaTime) } void PlayerStateFrame::ShowCarLifeBar(CarLifeE type, int targetPlayerId, float carLifeTimeMax) -{ +{ Player* targetPlayer = menu()->GetRace()->GetPlayerById(targetPlayerId); if (targetPlayer == NULL) @@ -413,7 +413,7 @@ void PlayerStateFrame::ProccessCarLifeBar(float deltaTime) if (_carLifes[i].timer < 0 || _carLifes[i].target == NULL) continue; - float targetAlpha = 1.0f; + float targetAlpha = 1.0f; if ((_carLifes[i].timer += deltaTime) > _carLifes[i].timeMax || _carLifes[i].target->GetCar().gameObj == NULL) { @@ -442,7 +442,7 @@ void PlayerStateFrame::ProccessCarLifeBar(float deltaTime) glm::vec2 vec = glm::vec2((projVec / projVec.w).x, (projVec / projVec.w).y); // remove after D3DXVECTOR3 replacement if (projVec.z < 0) - { + { vec = glm::normalize(vec); vec = vec * sqrt(2.0f); } @@ -492,12 +492,12 @@ void PlayerStateFrame::InsertSlot(WeaponType type, Slot* slot) } gui::Widget* slotParent = _weaponBox[type].box ? (gui::Widget*)_weaponBox[type].box : _raceState; - + _weaponBox[type].view = menu()->CreateViewPort3d(slotParent, 0, ""); float sizeX = 60; - _weaponBox[type].view->SetSize(glm::vec2(sizeX, sizeX)); + _weaponBox[type].view->SetSize(glm::vec2(sizeX, sizeX)); - _weaponBox[type].mesh = menu()->CreateMesh3d(_weaponBox[type].view, slot->GetItem().GetMesh(), slot->GetItem().GetTexture()); + _weaponBox[type].mesh = menu()->CreateMesh3d(_weaponBox[type].view, slot->GetItem().GetMesh(), slot->GetItem().GetTexture()); _weaponBox[type].mesh->AddRef(); _weaponBox[type].mesh->GetMaterial()->GetSampler().SetFiltering(graph::Sampler2d::sfAnisotropic); @@ -512,7 +512,7 @@ void PlayerStateFrame::ClearSlot(WeaponType type) { menu()->GetGUI()->ReleaseWidget(_weaponBox[type].label); _weaponBox[type].label = 0; - + _weaponBox[type].mesh->Release(); _weaponBox[type].mesh = 0; @@ -546,7 +546,7 @@ void PlayerStateFrame::UpdateSlots() if (slot && slot->GetItem().IsWeaponItem() && slot->GetItem().IsWeaponItem()->GetMapObj()) InsertSlot(WeaponType(i - Player::stHyper), slot); } -} +} void PlayerStateFrame::UpdateOpponents() { @@ -564,13 +564,13 @@ void PlayerStateFrame::UpdateOpponents() opponent.player->AddRef(); opponent.dummy = menu()->GetGUI()->CreateDummy(); - opponent.dummy->SetParent(root()); + opponent.dummy->SetParent(root()); opponent.point = menu()->CreatePlane(opponent.dummy, NULL, "GUI\\playerPoint.png", true, IdentityVec2, gui::Material::bmTransparency); opponent.point->SetPos(opponent.point->GetSize().x/2, -opponent.point->GetSize().y/2); opponent.label = menu()->CreateLabel(svNull, opponent.dummy, "VerySmall", NullVec2, gui::Text::haCenter, gui::Text::vaCenter, clrWhite); - opponent.label->SetPos(opponent.point->GetSize().x/2, -opponent.point->GetSize().y); + opponent.label->SetPos(opponent.point->GetSize().x/2, -opponent.point->GetSize().y); _opponents.push_back(opponent); } @@ -665,7 +665,7 @@ void PlayerStateFrame::UpdateState(float deltaTime) for (Opponents::const_iterator iter = _opponents.begin(); iter != _opponents.end(); ++iter) { if (_carLifes[i].target == iter->player) - { + { Opponent opponent = *iter; _opponents.erase(iter); _opponents.insert(_opponents.begin(), opponent); @@ -693,7 +693,7 @@ void PlayerStateFrame::UpdateState(float deltaTime) glm::vec2((projVec / projVec.w).x, (projVec / projVec.w).y); // remove after D3DXVECTOR3 replacement if (projVec.z < 0) - { + { vec = glm::normalize(vec); vec = vec * sqrt(2.0f); } @@ -723,7 +723,7 @@ void PlayerStateFrame::UpdateState(float deltaTime) { float rad = opponent.radius + iter2->radius; float dist = glm::length(iter2->center - opponent.center); - alpha = std::min(rad != 0 ? dist / rad : 0, alpha); + alpha = std::min(rad != 0 ? dist / rad : 0, alpha); } alpha = std::min(alpha, targetAlpha); @@ -883,7 +883,7 @@ MiniMapFrame::MiniMapFrame(Menu* menu, HudMenu* hudMenu, gui::Widget* parent): _ _map = _menu->CreateViewPort3d(_root, 0, "", gui::ViewPort3d::msStatic, false); - _lapBack = _menu->CreatePlane(_root, 0, "GUI\\lap.png", true, IdentityVec2, gui::Material::bmTransparency); + _lapBack = _menu->CreatePlane(_root, 0, "GUI\\lap.png", true, IdentityVec2, gui::Material::bmTransparency); _lap = _menu->CreateLabel(svNull, _root, "Small", NullVec2, gui::Text::haCenter, gui::Text::vaCenter, clrWhite); UpdateMap(); @@ -892,7 +892,7 @@ MiniMapFrame::MiniMapFrame(Menu* menu, HudMenu* hudMenu, gui::Widget* parent): _ _lapBack->SetVisible(menu->enableHUD()); _lap->SetVisible(menu->enableHUD()); } - + MiniMapFrame::~MiniMapFrame() { ClearPlayers(); @@ -987,10 +987,10 @@ void MiniMapFrame::AlignMidNodes(Node& node1, Node& node2, float cosErr, float s void MiniMapFrame::BuildPath(WayPath& path, res::VertexData& data) { const float cosErr = cos(20.0f * D3DX_PI/180); - const float sizeErr = 2.0f; + const float sizeErr = 2.0f; const float smRadius = 10.0f; const int smSlice = 2; - + Nodes nodes; if (path.GetCount() < 2) @@ -1015,7 +1015,7 @@ void MiniMapFrame::BuildPath(WayPath& path, res::VertexData& data) Node& nextNode = *nextIter; glm::vec2 dir = glm::normalize(nextNode.pos - node.pos); - + if (nextIter != --nodes.end()) { AlignNode(node, nextNode, cosErr, sizeErr); @@ -1097,7 +1097,7 @@ void MiniMapFrame::CreatePlayers() for (Race::PlayerList::const_iterator iter = _menu->GetRace()->GetPlayerList().begin(); iter != _menu->GetRace()->GetPlayerList().end(); ++iter) { - gui::Plane3d* plane = _menu->GetGUI()->GetContext().CreatePlane3d(); + gui::Plane3d* plane = _menu->GetGUI()->GetContext().CreatePlane3d(); plane->SetSize(glm::vec2(10.0f, 10.0f)); _map->GetBox()->InsertChild(plane); @@ -1162,11 +1162,11 @@ void MiniMapFrame::UpdateMap() for (Trace::Pathes::const_iterator iter = GetTrace()->GetPathes().begin(); iter != GetTrace()->GetPathes().end(); ++iter) { WayPath* path = *iter; - + if (path->GetCount() > 1) { gui::VBuf3d* buf3d = _menu->GetGUI()->GetContext().CreateVBuf3d(); - + buf3d->GetOrCreateMesh(); buf3d->GetMesh()->primitiveType = D3DPT_TRIANGLESTRIP; res::VertexData& data = *buf3d->GetMesh()->GetOrCreateData(); @@ -1180,7 +1180,7 @@ void MiniMapFrame::UpdateMap() _map->GetBox()->InsertChild(buf3d); } } - + _map->SetAlign(true); WayNode* node = GetTrace()->GetPathes().front()->GetFirst(); @@ -1250,11 +1250,11 @@ HudMenu::HudMenu(Menu* menu, gui::Widget* parent, Player* player): _menu(menu), { LSL_ASSERT(menu && _player); - _player->AddRef(); + _player->AddRef(); _root = _menu->GetGUI()->CreateDummy(); _root->SetParent(parent); - + _miniMapFrame = new MiniMapFrame(menu, this, _root); _playerStateFrame = new PlayerStateFrame(menu, this, _root); @@ -1263,7 +1263,7 @@ HudMenu::HudMenu(Menu* menu, gui::Widget* parent, Player* player): _menu(menu), _menu->GetNet()->RegUser(this); _menu->GetControl()->InsertEvent(this); } - + HudMenu::~HudMenu() { _menu->GetControl()->RemoveEvent(this); @@ -1271,7 +1271,7 @@ HudMenu::~HudMenu() delete _playerStateFrame; delete _miniMapFrame; - + _menu->GetGUI()->ReleaseWidget(_root); _player->Release(); @@ -1294,11 +1294,11 @@ bool HudMenu::OnClick(gui::Widget* sender, const gui::MouseClick& mClick) if (sender == _menu->GetAcceptSender()) { _menu->ShowCursor(false); - _menu->Pause(false); + _menu->Pause(false); if (_menu->GetAcceptResultYes()) { - Menu* menu = _menu; + Menu* menu = _menu; if (menu->IsNetGame() && menu->GetNet()->isClient()) { diff --git a/src/Rock3dGame/source/game/HumanPlayer.cpp b/src/Rock3dGame/source/game/HumanPlayer.cpp index 498fcc13..69098b6f 100644 --- a/src/Rock3dGame/source/game/HumanPlayer.cpp +++ b/src/Rock3dGame/source/game/HumanPlayer.cpp @@ -8,7 +8,7 @@ namespace r3d namespace game { - + HumanPlayer::HumanPlayer(Player* player): _player(player), _curWeapon(0) { LSL_ASSERT(_player); @@ -33,7 +33,7 @@ HumanPlayer::~HumanPlayer() } HumanPlayer::Control::Control(HumanPlayer* owner): _owner(owner), _accelDown(false), _backDown(false), _leftDown(false), _rightDown(false) -{ +{ } bool HumanPlayer::Control::OnHandleInput(const InputMessage& msg) @@ -48,7 +48,7 @@ bool HumanPlayer::Control::OnHandleInput(const InputMessage& msg) _backDown = msg.state == lsl::ksDown; if (msg.action == gaWheelLeft) - _leftDown = msg.state == lsl::ksDown; + _leftDown = msg.state == lsl::ksDown; if (msg.action == gaWheelRight) _rightDown = msg.state == lsl::ksDown; } @@ -57,7 +57,7 @@ bool HumanPlayer::Control::OnHandleInput(const InputMessage& msg) if (player->IsBlock()) return false; - + game::MapObj* mapObj = _owner->_player->GetCar().mapObj; if (mapObj == NULL) return false; @@ -126,7 +126,7 @@ bool HumanPlayer::Control::OnHandleInput(const InputMessage& msg) } void HumanPlayer::Control::OnInputProgress(float deltaTime) -{ +{ ControlManager* control = _owner->GetRace()->GetWorld()->GetControl(); Player* player = _owner->_player; game::MapObj* mapObj = player->GetCar().mapObj; diff --git a/src/Rock3dGame/source/game/Logic.cpp b/src/Rock3dGame/source/game/Logic.cpp index 8d628301..4b0a5167 100644 --- a/src/Rock3dGame/source/game/Logic.cpp +++ b/src/Rock3dGame/source/game/Logic.cpp @@ -48,7 +48,7 @@ Map* LogicBehavior::GetMap() LogicEventEffect::LogicEventEffect(LogicBehaviors* owner): _MyBase(owner), _effect(0), _pos(NullVector) { - _gameObjEvent = new GameObjEvent(this); + _gameObjEvent = new GameObjEvent(this); } LogicEventEffect::~LogicEventEffect() @@ -150,7 +150,7 @@ void LogicEventEffect::SetEffect(MapObjRec* value) const D3DXVECTOR3& LogicEventEffect::GetPos() const { - return _pos; + return _pos; } void LogicEventEffect::SetPos(const D3DXVECTOR3& value) @@ -191,7 +191,7 @@ PairPxContactEffect::ContactMap::iterator PairPxContactEffect::GetOrCreateContac index = lsl::ClampValue(index, 0, _sounds.size() - 1); node->source = GetLogic()->CreateSndSource3d(Logic::scEffects); - node->source->SetSound(_sounds[index]); + node->source->SetSound(_sounds[index]); } } @@ -201,13 +201,13 @@ PairPxContactEffect::ContactMap::iterator PairPxContactEffect::GetOrCreateContac void PairPxContactEffect::InsertContact(ContactMap::iterator iter, NxShape* shape1, NxShape* shape2, const D3DXVECTOR3& point) { ContactNode* node = iter->second; - + if (node->last == node->list.end()) { if (node->list.size() >= 2) return; - node->last = node->list.insert(node->list.end(), Contact()); + node->last = node->list.insert(node->list.end(), Contact()); } //effect может быть удален из вне, например в RemoveContactByEffect if (!node->last->effect) @@ -271,14 +271,14 @@ void PairPxContactEffect::ReleaseContacts(bool death) { for (ContactMap::iterator iter = _contactMap.begin(); iter != _contactMap.end();) iter = ReleaseContact(iter, iter->second->list.begin(), iter->second->list.end(), death); - + LSL_ASSERT(_contactMap.empty()); } void PairPxContactEffect::RemoveContactByEffect(MapObj* effect) { for (ContactMap::iterator iter = _contactMap.begin(); iter != _contactMap.end(); ++iter) - for (ContactList::iterator cIter = iter->second->list.begin(); cIter != iter->second->list.end(); ++cIter) + for (ContactList::iterator cIter = iter->second->list.begin(); cIter != iter->second->list.end(); ++cIter) if (cIter->effect == effect) { lsl::SafeRelease(cIter->effect); @@ -378,7 +378,7 @@ void PairPxContactEffect::RemoveSound(snd::Sound* sound) void PairPxContactEffect::ClearSounds() { - for (Sounds::iterator iter = _sounds.begin(); iter != _sounds.end(); ++iter) + for (Sounds::iterator iter = _sounds.begin(); iter != _sounds.end(); ++iter) (*iter)->Release(); _sounds.clear(); @@ -403,7 +403,7 @@ LogicBehaviors::~LogicBehaviors() { Clear(); } - + void LogicBehaviors::InitClassList() { static bool initClassList = false; @@ -569,7 +569,7 @@ void Logic::Shot(Player* player, MapObj* target, Player::SlotType type) ctx.shot.SetTargetMapObj(target); WeaponItem* wpn = player->GetSlotInst(type) ? player->GetSlotInst(type)->GetItem().IsWeaponItem() : NULL; - if (wpn && wpn->IsReadyShot()) + if (wpn && wpn->IsReadyShot()) player->Shot(ctx, type, player->GetNextBonusProjId()); } @@ -585,7 +585,7 @@ void Logic::Shot(Player* player, MapObj* target) if (netPlayer) netPlayer->Shot(target); } - else + else { Proj::ShotContext ctx; ctx.logic = this; diff --git a/src/Rock3dGame/source/game/MainMenu2.cpp b/src/Rock3dGame/source/game/MainMenu2.cpp index e2cbffe1..ffa7eb66 100644 --- a/src/Rock3dGame/source/game/MainMenu2.cpp +++ b/src/Rock3dGame/source/game/MainMenu2.cpp @@ -13,7 +13,7 @@ namespace n { GameModeFrame::GameModeFrame(Menu* menu, MainMenu* mainMenu, gui::Widget* parent): MenuFrame(menu, parent), _mainMenu(mainMenu) -{ +{ } void GameModeFrame::OnShow(bool value) @@ -33,13 +33,13 @@ bool GameModeFrame::OnClick(gui::Widget* sender, const gui::MouseClick& mClick) { _mainMenu->PushState(MainMenu::msTournament); return true; - } + } if (sender == _mainMenu->GetItem(miSkirmish)) { _mainMenu->PushState(MainMenu::msDifficulty); return true; - } + } if (sender == _mainMenu->GetItem(miBack)) { @@ -175,7 +175,7 @@ void NetBrowserFrame::UpdateGrid() { _gridScroll = 0; glm::vec2 cellSize = NullVec2; - unsigned count = net()->netService().endpointList().size(); + unsigned count = net()->netService().endpointList().size(); gui::Widget::Children::const_iterator iter = _grid->GetChildren().begin(); lsl::Vector navElements; lsl::Vector gridItems; @@ -187,7 +187,7 @@ void NetBrowserFrame::UpdateGrid() gui::Button* item = iter != _grid->GetChildren().end() ? static_cast(*iter) : NULL; if (item == NULL) { - item = _mainMenu->CreateMenuButton(svNull, _grid, this); + item = _mainMenu->CreateMenuButton(svNull, _grid, this); iter = _grid->GetChildren().end(); } else @@ -204,7 +204,7 @@ void NetBrowserFrame::UpdateGrid() { Menu::NavElement navElement = {gridItems[index - 1], {NULL, NULL, gridItems[index - 2], gridItems[index]}, {cVirtualKeyEnd, cVirtualKeyEnd}}; navElements.push_back(navElement); - } + } if (i + 1 == count) { @@ -219,14 +219,14 @@ void NetBrowserFrame::UpdateGrid() } } - gui::Widget::Children children = _grid->GetChildren(); + gui::Widget::Children children = _grid->GetChildren(); while (children.size() > count) - { + { menu()->ReleaseWidget(children.back()); children.erase(--children.end()); } - _grid->cellSize(cellSize); + _grid->cellSize(cellSize); int itemCount = gridItems.size(); { @@ -295,7 +295,7 @@ void NetBrowserFrame::StartWaiting(bool start, StringValue hint) _grid->SetVisible(!start); _info->SetVisible(hint != svNull); - _info->SetText(GetString(hint)); + _info->SetText(GetString(hint)); } void NetBrowserFrame::Refresh() @@ -310,7 +310,7 @@ void NetBrowserFrame::OnShow(bool value) if (value) { - _mainMenu->SetItems(menuItemsStr, cMenuItemEnd, false, this); + _mainMenu->SetItems(menuItemsStr, cMenuItemEnd, false, this); StartWaiting(false); net()->RegUser(this); @@ -339,7 +339,7 @@ void NetBrowserFrame::OnAdjustLayout(const glm::vec2& vpSize) bool NetBrowserFrame::OnClick(gui::Widget* sender, const gui::MouseClick& mClick) { //if (sender == _mainMenu->GetItem(miRefresh)) - //{ + //{ // return true; //} @@ -365,7 +365,7 @@ bool NetBrowserFrame::OnClick(gui::Widget* sender, const gui::MouseClick& mClick } unsigned i = 0; - for (gui::Widget::Children::const_iterator iter = _grid->GetChildren().begin(); iter != _grid->GetChildren().end(); ++iter, ++i) + for (gui::Widget::Children::const_iterator iter = _grid->GetChildren().begin(); iter != _grid->GetChildren().end(); ++iter, ++i) { gui::Button* item = static_cast(*iter); @@ -396,7 +396,7 @@ void NetBrowserFrame::OnPingComplete() NetIPAddressFrame::NetIPAddressFrame(Menu* menu, MainMenu* mainMenu, gui::Widget* parent): MenuFrame(menu, parent), _mainMenu(mainMenu) -{ +{ //D3DXCOLOR color1(0xffafafaf); D3DXCOLOR color1 = Menu::cTextColor; @@ -408,14 +408,14 @@ NetIPAddressFrame::NetIPAddressFrame(Menu* menu, MainMenu* mainMenu, gui::Widget gui::Widget* labelsParent[cLabelEnd] = {root(), root()}; - for (int i = 0; i < cLabelEnd; ++i) + for (int i = 0; i < cLabelEnd; ++i) _labels[i] = menu->CreateLabel(strLabels[i], labelsParent[i], fontLabels[i], NullVec2, horLabels[i], vertLabels[i], colorLabels[i]); _labels[mlInfo]->SetWordWrap(true); } NetIPAddressFrame::~NetIPAddressFrame() { - menu()->GetControl()->RemoveEvent(this); + menu()->GetControl()->RemoveEvent(this); for (int i = 0; i < cLabelEnd; ++i) menu()->ReleaseWidget(_labels[i]); @@ -459,11 +459,11 @@ void NetIPAddressFrame::OnShow(bool value) PushLine(""); StartWaiting(false); - menu()->GetControl()->InsertEvent(this); + menu()->GetControl()->InsertEvent(this); } else { - menu()->GetControl()->RemoveEvent(this); + menu()->GetControl()->RemoveEvent(this); } } @@ -492,7 +492,7 @@ bool NetIPAddressFrame::OnClick(gui::Widget* sender, const gui::MouseClick& mCli if (sender == _mainMenu->GetItem(miBack)) { - net()->Close(); + net()->Close(); _mainMenu->BackState(); return true; @@ -581,7 +581,7 @@ LobbyFrame::~LobbyFrame() void LobbyFrame::UpdateGrid() { _gridScroll = 0; - glm::vec2 cellSize = NullVec2; + glm::vec2 cellSize = NullVec2; unsigned count = steamService()->lobby()->GetLobbyMembers().size(); gui::Widget::Children::const_iterator iter = _grid->GetChildren().begin(); lsl::Vector navElements; @@ -595,7 +595,7 @@ void LobbyFrame::UpdateGrid() gui::Button* item = iter != _grid->GetChildren().end() ? static_cast(*iter) : NULL; if (item == NULL) { - item = _mainMenu->CreateMenuButton(svNull, _grid, this); + item = _mainMenu->CreateMenuButton(svNull, _grid, this); iter = _grid->GetChildren().end(); } else @@ -612,7 +612,7 @@ void LobbyFrame::UpdateGrid() { Menu::NavElement navElement = {gridItems[index - 1], {NULL, NULL, gridItems[index - 2], gridItems[index]}, {cVirtualKeyEnd, cVirtualKeyEnd}}; navElements.push_back(navElement); - } + } if (i + 1 == count) { @@ -630,14 +630,14 @@ void LobbyFrame::UpdateGrid() focusedItem = item; } - gui::Widget::Children children = _grid->GetChildren(); + gui::Widget::Children children = _grid->GetChildren(); while (children.size() > count) - { + { menu()->ReleaseWidget(children.back()); children.erase(--children.end()); } - _grid->cellSize(cellSize); + _grid->cellSize(cellSize); int itemCount = gridItems.size(); { @@ -709,7 +709,7 @@ void LobbyFrame::StartWaiting(bool start, StringValue hint) _grid->SetVisible(!start); _info->SetVisible(hint != svNull); - _info->SetText(GetString(hint)); + _info->SetText(GetString(hint)); } void LobbyFrame::Refresh() @@ -724,7 +724,7 @@ void LobbyFrame::OnShow(bool value) if (value) { - _mainMenu->SetItems(menuItemsStr, cMenuItemEnd, false, this); + _mainMenu->SetItems(menuItemsStr, cMenuItemEnd, false, this); menu()->RegUser(this); @@ -784,7 +784,7 @@ bool LobbyFrame::OnClick(gui::Widget* sender, const gui::MouseClick& mClick) } unsigned i = 0; - for (gui::Widget::Children::const_iterator iter = _grid->GetChildren().begin(); iter != _grid->GetChildren().end(); ++iter, ++i) + for (gui::Widget::Children::const_iterator iter = _grid->GetChildren().begin(); iter != _grid->GetChildren().end(); ++iter, ++i) { gui::Button* item = static_cast(*iter); @@ -861,7 +861,7 @@ void MatchmakingFrame::UpdateGrid() gui::Button* item = iter != _grid->GetChildren().end() ? static_cast(*iter) : NULL; if (item == NULL) { - item = _mainMenu->CreateMenuButton(svNull, _grid, this); + item = _mainMenu->CreateMenuButton(svNull, _grid, this); iter = _grid->GetChildren().end(); } else @@ -878,7 +878,7 @@ void MatchmakingFrame::UpdateGrid() { Menu::NavElement navElement = {gridItems[index - 1], {NULL, NULL, gridItems[index - 2], gridItems[index]}, {cVirtualKeyEnd, cVirtualKeyEnd}}; navElements.push_back(navElement); - } + } if (i + 1 == count) { @@ -896,14 +896,14 @@ void MatchmakingFrame::UpdateGrid() focusedItem = item; } - gui::Widget::Children children = _grid->GetChildren(); + gui::Widget::Children children = _grid->GetChildren(); while (children.size() > count) - { + { menu()->ReleaseWidget(children.back()); children.erase(--children.end()); } - _grid->cellSize(cellSize); + _grid->cellSize(cellSize); int itemCount = gridItems.size(); { @@ -975,7 +975,7 @@ void MatchmakingFrame::StartWaiting(bool start, StringValue hint) _grid->SetVisible(!start); _info->SetVisible(hint != svNull); - _info->SetText(GetString(hint)); + _info->SetText(GetString(hint)); } void MatchmakingFrame::Refresh() @@ -990,7 +990,7 @@ void MatchmakingFrame::OnShow(bool value) if (value) { - _mainMenu->SetItems(menuItemsStr, cMenuItemEnd, false, this); + _mainMenu->SetItems(menuItemsStr, cMenuItemEnd, false, this); StartWaiting(false); menu()->RegUser(this); @@ -1037,7 +1037,7 @@ bool MatchmakingFrame::OnClick(gui::Widget* sender, const gui::MouseClick& mClic } unsigned i = 0; - for (gui::Widget::Children::const_iterator iter = _grid->GetChildren().begin(); iter != _grid->GetChildren().end(); ++iter, ++i) + for (gui::Widget::Children::const_iterator iter = _grid->GetChildren().begin(); iter != _grid->GetChildren().end(); ++iter, ++i) { gui::Button* item = static_cast(*iter); @@ -1130,7 +1130,7 @@ void SteamBrowserFrame::UpdateGrid() gui::Button* item = iter != _grid->GetChildren().end() ? static_cast(*iter) : NULL; if (item == NULL) { - item = _mainMenu->CreateMenuButton(svNull, _grid, this); + item = _mainMenu->CreateMenuButton(svNull, _grid, this); iter = _grid->GetChildren().end(); } else @@ -1147,7 +1147,7 @@ void SteamBrowserFrame::UpdateGrid() { Menu::NavElement navElement = {gridItems[index - 1], {NULL, NULL, gridItems[index - 2], gridItems[index]}, {cVirtualKeyEnd, cVirtualKeyEnd}}; navElements.push_back(navElement); - } + } if (i + 1 == count) { @@ -1165,14 +1165,14 @@ void SteamBrowserFrame::UpdateGrid() focusedItem = item; } - gui::Widget::Children children = _grid->GetChildren(); + gui::Widget::Children children = _grid->GetChildren(); while (children.size() > count) - { + { menu()->ReleaseWidget(children.back()); children.erase(--children.end()); } - _grid->cellSize(cellSize); + _grid->cellSize(cellSize); int itemCount = gridItems.size(); { @@ -1244,7 +1244,7 @@ void SteamBrowserFrame::StartWaiting(bool start, StringValue hint) _grid->SetVisible(!start); _info->SetVisible(hint != svNull); - _info->SetText(GetString(hint)); + _info->SetText(GetString(hint)); } void SteamBrowserFrame::Refresh() @@ -1263,7 +1263,7 @@ void SteamBrowserFrame::OnShow(bool value) if (value) { - _mainMenu->SetItems(menuItemsStr, cMenuItemEnd, false, this); + _mainMenu->SetItems(menuItemsStr, cMenuItemEnd, false, this); StartWaiting(false); menu()->RegUser(this); @@ -1314,7 +1314,7 @@ bool SteamBrowserFrame::OnClick(gui::Widget* sender, const gui::MouseClick& mCli } unsigned i = 0; - for (gui::Widget::Children::const_iterator iter = _grid->GetChildren().begin(); iter != _grid->GetChildren().end(); ++iter, ++i) + for (gui::Widget::Children::const_iterator iter = _grid->GetChildren().begin(); iter != _grid->GetChildren().end(); ++iter, ++i) { gui::Button* item = static_cast(*iter); @@ -1373,15 +1373,15 @@ void SteamBrowserFrame::OnDisconnectedPlayer(NetPlayer* sender) ServerTypeFrame::ServerTypeFrame(Menu* menu, MainMenu* mainMenu, gui::Widget* parent): MenuFrame(menu, parent), _mainMenu(mainMenu) -{ +{ } void ServerTypeFrame::OnShow(bool value) { - const lsl::string menuItemsStr[cMenuItemEnd] = {"svLocalServer", + const lsl::string menuItemsStr[cMenuItemEnd] = {"svLocalServer", #ifdef STEAM_SERVICE #ifndef _RETAIL - "svSteamServer", + "svSteamServer", #endif "svSteamLobby", #endif @@ -1400,7 +1400,7 @@ bool ServerTypeFrame::OnClick(gui::Widget* sender, const gui::MouseClick& mClick _mainMenu->SetServerType(MainMenu::stLocal); _mainMenu->PushState(MainMenu::msGameMode); return true; - } + } #ifdef STEAM_SERVICE #ifndef _RETAIL @@ -1415,7 +1415,7 @@ bool ServerTypeFrame::OnClick(gui::Widget* sender, const gui::MouseClick& mClick if (sender == _mainMenu->GetItem(miLobby)) { _mainMenu->SetServerType(MainMenu::stLobby); - _mainMenu->PushState(MainMenu::msGameMode); + _mainMenu->PushState(MainMenu::msGameMode); return true; } #endif @@ -1433,12 +1433,12 @@ bool ServerTypeFrame::OnClick(gui::Widget* sender, const gui::MouseClick& mClick ClientTypeFrame::ClientTypeFrame(Menu* menu, MainMenu* mainMenu, gui::Widget* parent): MenuFrame(menu, parent), _mainMenu(mainMenu) -{ +{ } void ClientTypeFrame::OnShow(bool value) { - const lsl::string menuItemsStr[cMenuItemEnd] = {"svConnectLan", "svConnectIP", + const lsl::string menuItemsStr[cMenuItemEnd] = {"svConnectLan", "svConnectIP", #ifdef STEAM_SERVICE #ifndef _RETAIL "svConnectSteam", "svConnectSteamLan", @@ -1460,14 +1460,14 @@ bool ClientTypeFrame::OnClick(gui::Widget* sender, const gui::MouseClick& mClick _mainMenu->SetServerType(MainMenu::cServerTypeEnd); _mainMenu->PushState(MainMenu::msNetBrowser); return true; - } + } if (sender == _mainMenu->GetItem(miConnectIP)) { _mainMenu->SetServerType(MainMenu::cServerTypeEnd); _mainMenu->PushState(MainMenu::msNetIPAdress); return true; - } + } #ifdef STEAM_SERVICE #ifndef _RETAIL @@ -1519,7 +1519,7 @@ NetworkFrame::NetworkFrame(Menu* menu, MainMenu* mainMenu, gui::Widget* parent): gui::Widget* labelsParent[cLabelEnd] = {root()}; - for (int i = 0; i < cLabelEnd; ++i) + for (int i = 0; i < cLabelEnd; ++i) _labels[i] = menu->CreateLabel(strLabels[i], labelsParent[i], fontLabels[i], NullVec2, horLabels[i], vertLabels[i], colorLabels[i]); } @@ -1574,13 +1574,13 @@ bool NetworkFrame::OnClick(gui::Widget* sender, const gui::MouseClick& mClick) menu()->FinalizateNet(); _mainMenu->BackState(); return true; - } + } return false; } void NetworkFrame::OnAdjustLayout(const glm::vec2& vpSize) -{ +{ _labels[mlIPAdress]->SetPos(glm::vec2(vpSize.x/2, vpSize.y/2 + 75.0f)); } @@ -1653,7 +1653,7 @@ CreditsFrame::CreditsFrame(Menu* menu, MainMenu* mainMenu, gui::Widget* parent): { _label = menu->CreateLabel(svCredits, root(), "Small", NullVec2, gui::Text::haCenter, gui::Text::vaTop, D3DXCOLOR(0xffff8a70)); _label->SetAlign(gui::Widget::waTop); - _label->SetFlag(gui::Widget::wfClientClip, true); + _label->SetFlag(gui::Widget::wfClientClip, true); _label->SetSize(350.0f, 265.0f); } @@ -1777,7 +1777,7 @@ void ProfileFrame::UpdateGrid() gui::Widget::Children::const_iterator iter = _grid->GetChildren().begin(); bool netGame = _mainMenu->ContainsState(MainMenu::msNetwork); lsl::Vector navElements; - lsl::Vector> gridItems; + lsl::Vector> gridItems; for (unsigned i = 0; i < count; ++i) { @@ -1788,7 +1788,7 @@ void ProfileFrame::UpdateGrid() gui::Button* item = iter != _grid->GetChildren().end() ? static_cast(*iter) : NULL; if (item == NULL) { - item = _mainMenu->CreateMenuButton(svNull, _grid, this); + item = _mainMenu->CreateMenuButton(svNull, _grid, this); iter = _grid->GetChildren().end(); } else @@ -1813,7 +1813,7 @@ void ProfileFrame::UpdateGrid() Menu::NavElement navElement2 = {gridItems[index - 1].second, {gridItems[index - 1].first, gridItems[index - 1].first, gridItems[index - 2].second, gridItems[index].second}, {cVirtualKeyEnd, cVirtualKeyEnd}}; navElements.push_back(navElement2); } - } + } if (i + 1 == count) { @@ -1836,9 +1836,9 @@ void ProfileFrame::UpdateGrid() } } - gui::Widget::Children children = _grid->GetChildren(); + gui::Widget::Children children = _grid->GetChildren(); while (children.size() > itemCount) - { + { menu()->ReleaseWidget(children.back()); children.erase(--children.end()); } @@ -1874,7 +1874,7 @@ void ProfileFrame::OnShow(bool value) } void ProfileFrame::OnInvalidate() -{ +{ } void ProfileFrame::OnAdjustLayout(const glm::vec2& vpSize) @@ -1977,13 +1977,13 @@ bool MainFrame::OnClick(gui::Widget* sender, const gui::MouseClick& mClick) { _mainMenu->PushState(MainMenu::msGameMode); return true; - } + } if (sender == _mainMenu->GetItem(miNetwork)) { _mainMenu->PushState(MainMenu::msNetwork); return true; - } + } if (sender == _mainMenu->GetItem(miOptions)) { @@ -2037,12 +2037,12 @@ MainMenu::MainMenu(Menu* menu, gui::Widget* parent): _menu(menu), _state(msMain) _mainFrame = new MainFrame(menu, this, _root); _gameMode = new GameModeFrame(menu, this, _root); _network = new NetworkFrame(menu, this, _root); - _netBrowser = new NetBrowserFrame(menu, this, _root); - _profile = new ProfileFrame(menu, this, _root); + _netBrowser = new NetBrowserFrame(menu, this, _root); + _profile = new ProfileFrame(menu, this, _root); _tournament = new TournamentFrame(menu, this, _root); - _credits = new CreditsFrame(menu, this, _root); - _difficultyFrame = new DifficultyFrame(menu, this, _root); - _netIPAddressFrame = new NetIPAddressFrame(menu, this, _root); + _credits = new CreditsFrame(menu, this, _root); + _difficultyFrame = new DifficultyFrame(menu, this, _root); + _netIPAddressFrame = new NetIPAddressFrame(menu, this, _root); _serverTypeFrame = new ServerTypeFrame(menu, this, _root); _clientTypeFrame = new ClientTypeFrame(menu, this, _root); @@ -2074,13 +2074,13 @@ MainMenu::~MainMenu() delete _lobbyFrame; delete _matchmakingFrame; #endif - + delete _clientTypeFrame; - delete _serverTypeFrame; + delete _serverTypeFrame; delete _netIPAddressFrame; delete _difficultyFrame; delete _credits; - delete _tournament; + delete _tournament; delete _profile; delete _netBrowser; delete _network; @@ -2102,15 +2102,15 @@ void MainMenu::ApplyState(State state) _mainFrame->Show(state == msMain); _gameMode->Show(state == msGameMode); - _network->Show(state == msNetwork); - _netBrowser->Show(state == msNetBrowser); - _profile->Show(state == msLoad); + _network->Show(state == msNetwork); + _netBrowser->Show(state == msNetBrowser); + _profile->Show(state == msLoad); _tournament->Show(state == msTournament); - _credits->Show(state == msCredits); - _difficultyFrame->Show(state == msDifficulty); - _netIPAddressFrame->Show(state == msNetIPAdress); + _credits->Show(state == msCredits); + _difficultyFrame->Show(state == msDifficulty); + _netIPAddressFrame->Show(state == msNetIPAdress); _serverTypeFrame->Show(state == msServerType); - _clientTypeFrame->Show(state == msClientType); + _clientTypeFrame->Show(state == msClientType); #ifdef STEAM_SERVICE _matchmakingFrame->Show(state == msMatchmaking); @@ -2204,7 +2204,7 @@ void MainMenu::OnProcessEvent(unsigned id, EventData* data) void MainMenu::OnDisconnected(net::INetConnection* sender) { _steamConnecting = false; - _menu->HideMessage(); + _menu->HideMessage(); _menu->ShowMessage(_menu->GetString(svWarning), _menu->GetString(svHintHostConnectionFailed), _menu->GetString(svOk), _menu->GetGUI()->GetVPSize()/2.0f, gui::Widget::waCenter, 0.0f); } @@ -2246,11 +2246,11 @@ void MainMenu::AdjustLayout(const glm::vec2& vpSize) _gameMode->AdjustLayout(vpSize); _network->AdjustLayout(vpSize); _netBrowser->AdjustLayout(vpSize); - _profile->AdjustLayout(vpSize); + _profile->AdjustLayout(vpSize); _tournament->AdjustLayout(vpSize); - _credits->AdjustLayout(vpSize); - _difficultyFrame->AdjustLayout(vpSize); - _netIPAddressFrame->AdjustLayout(vpSize); + _credits->AdjustLayout(vpSize); + _difficultyFrame->AdjustLayout(vpSize); + _netIPAddressFrame->AdjustLayout(vpSize); _serverTypeFrame->AdjustLayout(vpSize); _clientTypeFrame->AdjustLayout(vpSize); @@ -2286,7 +2286,7 @@ MainMenu::State MainMenu::GetState() const void MainMenu::SetState(State value) { if (_state != value) - { + { _state = value; ApplyState(_state); } @@ -2454,7 +2454,7 @@ void MainMenu::ConnectMatch(const net::Endpoint& endpoint _steamConnecting = true; _menu->ShowMessageLoading(); } - else + else #endif if (_menu->ConnectMatch(endpoint, true)) { diff --git a/src/Rock3dGame/source/game/Map.cpp b/src/Rock3dGame/source/game/Map.cpp index c63e0709..0cb67cd0 100644 --- a/src/Rock3dGame/source/game/Map.cpp +++ b/src/Rock3dGame/source/game/Map.cpp @@ -19,7 +19,7 @@ void Map::MapObjList::InsertItem(const Value& value) //типы GameObject нельзя имзенять после добавления на карту! value->GetGameObj().AddRef(); - value->GetGameObj().SetLogic(_owner->_world->GetLogic()); + value->GetGameObj().SetLogic(_owner->_world->GetLogic()); unsigned id = ++(_owner->_lastId); value->SetId(id); @@ -39,12 +39,12 @@ void Map::MapObjList::RemoveItem(const Value& value) Map::Map(World* world): _world(world), _lastId(cDefMapObjId) { - for (int i = 0; i < MapObjLib::cCategoryEnd; ++i) - _mapObjList[i] = new MapObjList(this); - + for (int i = 0; i < MapObjLib::cCategoryEnd; ++i) + _mapObjList[i] = new MapObjList(this); + _ground = new MapObj(); TouchDeath& touchDeath = _ground->GetGameObj().GetBehaviors().Add(); - + px::PlaneShape& shape = _ground->GetGameObj().GetPxActor().GetShapes().Add(); shape.SetNormal(ZVector); shape.SetDist(0.0f); @@ -52,7 +52,7 @@ Map::Map(World* world): _world(world), _lastId(cDefMapObjId) _ground->GetGameObj().GetPxActor().SetScene(_world->GetPxScene()); _trace = new game::Trace(4); - + } Map::~Map() @@ -70,10 +70,10 @@ void Map::Save(lsl::SWriter* writer) { for (int i = 0; i < MapObjLib::cCategoryEnd; ++i) writer->WriteValue(IMapObjLib_cCategoryStr[i], _mapObjList[i]); - - writer->WriteValue("trace", _trace); - lsl::SWriteValue(writer, "sunPos", _world->GetEnv()->GetSunPos()); + writer->WriteValue("trace", _trace); + + lsl::SWriteValue(writer, "sunPos", _world->GetEnv()->GetSunPos()); lsl::SWriteValue(writer, "sunRot", _world->GetEnv()->GetSunRot()); } @@ -83,8 +83,8 @@ void Map::Load(lsl::SReader* reader) for (int i = 0; i < MapObjLib::cCategoryEnd; ++i) reader->ReadValue(IMapObjLib_cCategoryStr[i], _mapObjList[i]); - - reader->ReadValue("trace", _trace); + + reader->ReadValue("trace", _trace); D3DXVECTOR3 sunPos; if (lsl::SReadValue(reader, "sunPos", sunPos)) @@ -115,7 +115,7 @@ MapObj& Map::AddMapObj(MapObj* ref) MapObj& newMapObj = AddMapObj(ref->GetRecord()->GetCategory(), ref->GetType()); RootNode* serNode = new RootNode("tmp", GetRoot()); - + lsl::SWriter* writer = serNode->BeginSave(); ref->SaveTo(writer); serNode->EndSave(); @@ -132,7 +132,7 @@ MapObj& Map::AddMapObj(MapObj* ref) MapObj& Map::AddMapObj(MapObjLib::Category category, MapObj::Type type) { - MapObj& mapObj =_mapObjList[category]->Add(type); + MapObj& mapObj =_mapObjList[category]->Add(type); return mapObj; } diff --git a/src/Rock3dGame/source/game/MapObj.cpp b/src/Rock3dGame/source/game/MapObj.cpp index 69286804..7c522aaa 100644 --- a/src/Rock3dGame/source/game/MapObj.cpp +++ b/src/Rock3dGame/source/game/MapObj.cpp @@ -142,14 +142,14 @@ void MapObj::InitClassList() if (!initClassList) { initClassList = true; - + classList.Add(gotGameObj); - + classList.Add(gotGameCar); classList.Add(gotRockCar); classList.Add(gotProj); classList.Add(gotWeapon); - classList.Add(gotDestrObj); + classList.Add(gotDestrObj); } } @@ -270,7 +270,7 @@ MapObj::ClassList* MapObj::GetOrCreateClassList() } return _classList; } - + void MapObj::SetClassList(ClassList* value) { if (ReplaceRef(_classList, value)) @@ -317,7 +317,7 @@ const MapObj::GameObj& MapObj::GetGameObj() const MapObj::GameObj& MapObj::SetGameObj(Type type) { SetType(type); - + return *_gameObj; } @@ -351,7 +351,7 @@ void MapObj::SetRecord(MapObjRec* value) if (ReplaceRef(_record, value)) { _record = value; - + if (_record) try { @@ -435,7 +435,7 @@ void MapObjects::InsertItem(const Value& value) value->GetGameObj().storeName = false; value->GetGameObj().SetOwner(_root); - value->SetParent(_owner); + value->SetParent(_owner); SpecialListChanged(value, false); } @@ -453,7 +453,7 @@ void MapObjects::SaveItem(lsl::SWriter* writer, iterator pItem, const std::strin { lsl::SWriter* child = writer->NewDummyNode((*pItem)->GetName().c_str()); //Переходим напрямую к методам сохранения поскольку mapObj является промежуточным звеном и только делегирует вызовы - (*pItem)->Save(child); + (*pItem)->Save(child); } void MapObjects::LoadItem(lsl::SReader* reader) diff --git a/src/Rock3dGame/source/game/Menu.cpp b/src/Rock3dGame/source/game/Menu.cpp index d2dc16ca..64823df5 100644 --- a/src/Rock3dGame/source/game/Menu.cpp +++ b/src/Rock3dGame/source/game/Menu.cpp @@ -66,7 +66,7 @@ Menu::Menu(GameMode* game): _game(game), _state(msMain2), _loadingVisible(false) _game->RegUser(this); GetNet()->RegUser(this); } - + Menu::~Menu() { _game->GetWorld()->GetControl()->RemoveEvent(_controlEvent); @@ -75,7 +75,7 @@ Menu::~Menu() HideAccept(); HideMessage(); - + SetFinalMenu(false); SetFinishMenu2(false); SetOptionsMenu(false); @@ -96,7 +96,7 @@ Menu::~Menu() delete _soundShemes[i]; GetWorld()->GetLogic()->ReleaseSndSource(_audioSource); - + GetGUI()->ReleaseWidget(_cursor); delete _controlEvent; @@ -366,7 +366,7 @@ void Menu::SetScreenFon(bool init) { _screenFon = GetGUI()->CreatePlaneFon(); _screenFon->GetMaterial().SetColor(clrBlack); - } + } else if (!init && _screenFon) { GetGUI()->ReleaseWidget(_screenFon); @@ -381,7 +381,7 @@ void Menu::SetMainMenu2(bool init) _mainMenu2 = new n::MainMenu(this, GetGUI()->GetRoot()); _mainMenu2->Show(true); _mainMenu2->SetState(n::MainMenu::msMain); - } + } else if (!init && _mainMenu2) { lsl::SafeDelete(_mainMenu2); @@ -455,7 +455,7 @@ void Menu::SetInfoMenu(bool init) _infoMenu->SetState(n::InfoMenu::msLoading); _infoMenu->Show(true); _infoMenu->GetRoot()->ShowModal(true); - } + } else if (!init && _infoMenu) { lsl::SafeDelete(_infoMenu); @@ -1251,7 +1251,7 @@ void Menu::DelProfile(int profileIndex) Race::Profile* Menu::GetLastProfile(bool netGame) { Race::Profile* profile = netGame ? GetRace()->GetLastNetProfile() : GetRace()->GetLastProfile(); - + if (profile == NULL) { for (Race::Profiles::const_iterator iter = GetRace()->GetProfiles().begin(); iter != GetRace()->GetProfiles().end(); ++iter) @@ -1582,7 +1582,7 @@ gui::PlaneFon* Menu::CreatePlane(gui::Widget* parent, gui::Widget::Event* guiEve plane->RegEvent(_soundShemes[soundSheme]); if (guiEven) plane->RegEvent(guiEven); - + if (imageSize) plane->SetSize(GetImageSize(plane->GetMaterial()) * size); else @@ -1600,7 +1600,7 @@ gui::Button* Menu::CreateArrowButton(gui::Widget* parent, gui::Widget::Event* gu { gui::Button* button = GetGUI()->CreateButton(); button->SetParent(parent); - + gui::Material* fonMat = button->GetOrCreateFon(); fonMat->GetSampler().SetTex(GetTexture("GUI\\viewArrow.tga")); fonMat->SetBlending(gui::Material::bmTransparency); @@ -1619,7 +1619,7 @@ gui::Button* Menu::CreateSpaceArrowButton(gui::Widget* parent, gui::Widget::Even { gui::Button* button = GetGUI()->CreateButton(); button->SetParent(parent); - + gui::Material* fonMat = button->GetOrCreateFon(); fonMat->GetSampler().SetTex(GetTexture("GUI\\spaceArrow.tga")); fonMat->SetBlending(gui::Material::bmTransparency); @@ -1738,7 +1738,7 @@ gui::DropBox* Menu::CreateDropBox(gui::Widget* parent, gui::Widget::Event* guiEv dropBox->GetButMaterial().GetSampler().SetTex(GetTexture("GUI\\dropBoxButton.tga")); dropBox->GetTextMaterial().SetColor(cTextColor); dropBox->GetSelMaterial().SetColor(D3DXCOLOR(250.0f, 255.0f, 0.0f, 255.0f)/255.0f); - + dropBox->SetItems(items); return dropBox; @@ -1896,7 +1896,7 @@ gui::ScrollBox* Menu::CreateScrollBox(gui::Widget* parent, gui::Widget::Event* g gui::ScrollBox* scrollBox = GetGUI()->CreateScrollBox(); scrollBox->SetParent(parent); scrollBox->SetSize(size); - + scrollBox->GetArrowMaterial().GetSampler().SetTex(GetTexture("GUI\\scrollArrow.tga")); scrollBox->GetArrowMaterial().SetBlending(gui::Material::bmTransparency); scrollBox->GetArrowSelMaterial().GetSampler().SetTex(GetTexture("GUI\\scrollArrowSel.tga")); @@ -2004,7 +2004,7 @@ gui::Plane3d* Menu::CreatePlane3d(gui::ViewPort3d* parent, const std::string& fo gui::Plane3d* plane3d = parent->GetContext().CreatePlane3d(); plane3d->SetSize(size); parent->GetBox()->InsertChild(plane3d); - + if (!fon.empty()) { plane3d->GetOrCreateMaterial()->GetSampler().SetTex(GetTexture(fon)); @@ -2060,7 +2060,7 @@ void Menu::OnProgress(float deltaTime) _messageTime = -1.0f; _messageDlg->root()->SetVisible(true); } - + if (_musicTime != -1.0f) { const float cMusicDelay = 1.0f; @@ -2300,7 +2300,7 @@ lsl::string Menu::FormatCurrency(int val, lsl::string unit) { std::stringstream sstream; sstream << Currency(val, unit); - + return sstream.str(); } diff --git a/src/Rock3dGame/source/game/OptionsMenu.cpp b/src/Rock3dGame/source/game/OptionsMenu.cpp index ea55402f..55e14497 100644 --- a/src/Rock3dGame/source/game/OptionsMenu.cpp +++ b/src/Rock3dGame/source/game/OptionsMenu.cpp @@ -71,8 +71,8 @@ GameFrame::GameFrame(Menu* menu, OptionsMenu* optionsMenu, gui::Widget* parent): _itemsBg[i] = menu->CreatePlane(_grid, NULL, "GUI\\labelBg1.png", true, IdentityVec2, gui::Material::bmTransparency); _itemsBg[i]->SetAlign(gui::Widget::waLeft); } - - for (int i = 0; i < cLabelEnd; ++i) + + for (int i = 0; i < cLabelEnd; ++i) _labels[i] = menu->CreateLabel(GetString(strLabels[i]), _itemsBg[i], fontLabels[i], NullVec2, horLabels[i], vertLabels[i], colorLabels[i]); for (int i = 0; i < cStepperEnd; ++i) @@ -122,7 +122,7 @@ void GameFrame::AdjustGrid(const glm::vec2& vpSize) int i = 0; int cellsOnLine = 1; int cellsGrid = 7; - + for (gui::Widget::Children::const_iterator iter = _grid->GetChildren().begin(); iter != _grid->GetChildren().end(); ++iter) { gui::Widget* child = *iter; @@ -170,9 +170,9 @@ void GameFrame::ScrollGrid(int step) } void GameFrame::LoadCfg() -{ - menu()->SetStepperEnabled(_steppers[dbDiff], menu()->enabledOptionDiff()); - menu()->SetStepperEnabled(_steppers[dbLapsCount], menu()->enabledLapsCount()); +{ + menu()->SetStepperEnabled(_steppers[dbDiff], menu()->enabledOptionDiff()); + menu()->SetStepperEnabled(_steppers[dbLapsCount], menu()->enabledLapsCount()); menu()->SetStepperEnabled(_steppers[dbUpgradeMaxLevel], menu()->EnabledOptionUpgradeMaxLevel()); menu()->SetStepperEnabled(_steppers[dbWeaponMaxLevel], menu()->EnabledOptionWeaponMaxLevel()); menu()->SetStepperEnabled(_steppers[dbMaxPlayers], menu()->enabledMaxPlayers()); @@ -192,7 +192,7 @@ void GameFrame::LoadCfg() _steppers[dbMaxComputers]->SetSelIndex(menu()->maxComputers()); _steppers[dbSpringBorders]->SetSelIndex(menu()->springBorders()); _steppers[dbEnableMineBug]->SetSelIndex(menu()->enableMineBug()); - _steppers[dbDisableVideo]->SetSelIndex(menu()->GetDisableVideo()); + _steppers[dbDisableVideo]->SetSelIndex(menu()->GetDisableVideo()); } void GameFrame::OnShow(bool value) @@ -225,7 +225,7 @@ void GameFrame::OnAdjustLayout(const glm::vec2& vpSize) } void GameFrame::OnInvalidate() -{ +{ } bool GameFrame::OnClick(gui::Widget* sender, const gui::MouseClick& mClick) @@ -273,7 +273,7 @@ bool GameFrame::ApplyChanges() menu()->GetGame()->SetCameraDistance(1.0f + val * 0.25f); break; - case dbUpgradeMaxLevel: + case dbUpgradeMaxLevel: menu()->SetUpgradeMaxLevel(val); break; @@ -307,7 +307,7 @@ bool GameFrame::ApplyChanges() } void GameFrame::CancelChanges() -{ +{ } @@ -375,7 +375,7 @@ MediaFrame::MediaFrame(Menu* menu, OptionsMenu* optionsMenu, gui::Widget* parent } gui::Widget* labelsParent[cLabelEnd] = {root(), root(), root(), root(), root(), root(), root(), root()}; - for (int i = 0; i < cLabelEnd; ++i) + for (int i = 0; i < cLabelEnd; ++i) _labels[i] = menu->CreateLabel(GetString(strLabels[i]), labelsParent[i], fontLabels[i], NullVec2, horLabels[i], vertLabels[i], colorLabels[i]); for (int i = 0; i < cStepperEnd; ++i) @@ -407,7 +407,7 @@ void MediaFrame::LoadCfg() _steppers[dbShadow]->SetSelIndex(menu()->GetEnv()->GetShadowQuality()); _steppers[dbEnv]->SetSelIndex(menu()->GetEnv()->GetEnvQuality()); _steppers[dbLight]->SetSelIndex(menu()->GetEnv()->GetLightQuality()); - _steppers[dbPostProcess]->SetSelIndex(menu()->GetEnv()->GetPostEffQuality()); + _steppers[dbPostProcess]->SetSelIndex(menu()->GetEnv()->GetPostEffQuality()); _steppers[dbWindowMode]->SetSelIndex(menu()->GetFullScreen() == false); } @@ -438,7 +438,7 @@ void MediaFrame::OnAdjustLayout(const glm::vec2& vpSize) } void MediaFrame::OnInvalidate() -{ +{ } bool MediaFrame::ApplyChanges() @@ -523,8 +523,8 @@ NetworkTab::NetworkTab(Menu* menu, OptionsMenu* optionsMenu, gui::Widget* parent _itemsBg[i] = menu->CreatePlane(root(), NULL, "GUI\\labelBg1.png", true, IdentityVec2, gui::Material::bmTransparency); _itemsBg[i]->SetAlign(gui::Widget::waLeft); } - - for (int i = 0; i < cLabelEnd; ++i) + + for (int i = 0; i < cLabelEnd; ++i) _labels[i] = menu->CreateLabel(strLabels[i], labelsParent[i], fontLabels[i], NullVec2, horLabels[i], vertLabels[i], colorLabels[i]); for (int i = 0; i < cStepperEnd; ++i) @@ -613,12 +613,12 @@ void NetworkTab::OnAdjustLayout(const glm::vec2& vpSize) } void NetworkTab::OnInvalidate() -{ +{ } bool NetworkTab::OnClick(gui::Widget* sender, const gui::MouseClick& mClick) { - for (int i = 0; i < cVolumeBarEnd; ++i) + for (int i = 0; i < cVolumeBarEnd; ++i) if (sender == _volumeBars[i]) { ApplyVolume(false); @@ -717,7 +717,7 @@ void ControlsFrame::AdjustGrid(const glm::vec2& vpSize) int i = 0; int cellsOnLine = 1; int cellsGrid = 6; - + for (InputBoxes::const_iterator iter = _boxes.begin(); iter != _boxes.end(); ++iter) { const InputBox& box = *iter; @@ -739,7 +739,7 @@ void ControlsFrame::AdjustGrid(const glm::vec2& vpSize) box.keys[0]->SetEnabled(false); box.keys[1]->SetEnabled(false); } - + box.sprite->SetPos(0, 0); box.label->SetPos(-box.sprite->GetSize().x/2 + 35, 0); @@ -764,8 +764,8 @@ void ControlsFrame::ScrollGrid(int step) } void ControlsFrame::LoadCfg() -{ - glm::vec2 cellSize = NullVec2; +{ + glm::vec2 cellSize = NullVec2; unsigned itemCount = 0; InputBoxes::iterator iter = _boxes.begin(); @@ -779,16 +779,16 @@ void ControlsFrame::LoadCfg() InputBox newItem; newItem.sprite = menu()->CreatePlane(_grid, NULL, "GUI\\labelBg2.png", true, IdentityVec2, gui::Material::bmTransparency); newItem.label = menu()->CreateLabel("", newItem.sprite, "Small", NullVec2, gui::Text::haLeft, gui::Text::vaCenter, 0xffafafaf); - - for (int j = 0; j < cControllerTypeEnd; ++j) + + for (int j = 0; j < cControllerTypeEnd; ++j) { newItem.keys[j] = menu()->CreateMenuButton(svNull, "Small", "GUI\\keyBg.png", "GUI\\keyBgSel.png", newItem.sprite, this, IdentityVec2, gui::Button::bsSimple, clrBlack, Menu::ssButton1); newItem.keys[j]->GetOrCreateTextSelMaterial()->SetColor(clrWhite); - } + } _boxes.push_back(newItem); item = &_boxes.back(); - iter = _boxes.end(); + iter = _boxes.end(); } else ++iter; @@ -797,7 +797,7 @@ void ControlsFrame::LoadCfg() for (int j = 0; j < cControllerTypeEnd; ++j) { - ControllerType controller = (ControllerType)j; + ControllerType controller = (ControllerType)j; VirtualKey virtualKey = menu()->GetControl()->GetGameKey(controller, action); VirtualKeyInfo info = menu()->GetControl()->GetVirtualKeyInfo(controller, virtualKey); @@ -806,13 +806,13 @@ void ControlsFrame::LoadCfg() item->virtualKeys[j] = virtualKey; } - + cellSize = item->sprite->GetSize(); ++itemCount; } while (_boxes.size() > itemCount) - { + { menu()->ReleaseWidget(_boxes.back().sprite); _boxes.erase(--_boxes.end()); } @@ -929,7 +929,7 @@ bool ControlsFrame::ApplyChanges() } void ControlsFrame::CancelChanges() -{ +{ } @@ -957,7 +957,7 @@ OptionsMenu::OptionsMenu(Menu* menu, gui::Widget* parent): _menu(menu), _state(m _menuBgMask->GetMaterial().SetColor(D3DXCOLOR(0, 0, 0, 0.8f)); _menuBgMask->SetAnchor(gui::Widget::waCenter); - _menuBg = _menu->CreatePlane(_menuBgMask, this, "GUI\\optionsBg.png", true, IdentityVec2, gui::Material::bmTransparency); + _menuBg = _menu->CreatePlane(_menuBgMask, this, "GUI\\optionsBg.png", true, IdentityVec2, gui::Material::bmTransparency); _mediaFrame = new MediaFrame(menu, this, _menuBg); _gameFrame = new GameFrame(menu, this, _menuBg); @@ -965,7 +965,7 @@ OptionsMenu::OptionsMenu(Menu* menu, gui::Widget* parent): _menu(menu), _state(m _controlsFrame = new ControlsFrame(menu, this, _menuBg); gui::Widget* labelsParent[cLabelEnd] = {_menuBg}; - for (int i = 0; i < cLabelEnd; ++i) + for (int i = 0; i < cLabelEnd; ++i) _labels[i] = menu->CreateLabel(strLabels[i], labelsParent[i], fontLabels[i], NullVec2, horLabels[i], vertLabels[i], colorLabels[i]); for (int i = 0; i < cMenuItemEnd; ++i) @@ -1104,7 +1104,7 @@ bool OptionsMenu::OnMouseEnter(gui::Widget* sender, const gui::MouseMove& mMove) { if (sender->GetData() != NULL) { - gui::Button* button = lsl::StaticCast(sender->GetData()); + gui::Button* button = lsl::StaticCast(sender->GetData()); button->Select(true, false); gui::Label* label = static_cast(button->GetChildren().front()); @@ -1118,7 +1118,7 @@ void OptionsMenu::OnMouseLeave(gui::Widget* sender, bool wasReset) { if (sender->GetData() != NULL) { - gui::Button* button = lsl::StaticCast(sender->GetData()); + gui::Button* button = lsl::StaticCast(sender->GetData()); for (int i = 0; i < cStateEnd; ++i) if (button == _stateItems[i]) @@ -1154,7 +1154,7 @@ template void OptionsMenu::RegSteppers(lsl::Vector<_T2>& n Menu::NavElement navElement2 = {steppers[i - 1]->GetRight(), {steppers[i - 1]->GetLeft(), steppers[i - 1]->GetLeft(), steppers[i - 2]->GetRight(), steppers[i]->GetRight()}, {cVirtualKeyEnd, cVirtualKeyEnd}}; navElements.push_back(navElement2); - } + } if (i + 1 == stepperCount) { @@ -1243,7 +1243,7 @@ void OptionsMenu::RegNavElements(gui::StepperBox* steppers[], int stepperCount, { Menu::NavElement navElement = {_stateItems[i - 1], {_menuItems[miApply], _menuItems[miBack], _stateItems[i - 2], _stateItems[i]}, {cVirtualKeyEnd, cVirtualKeyEnd}}; navElements.push_back(navElement); - } + } if (i + 1 == cStateEnd) { @@ -1264,7 +1264,7 @@ void OptionsMenu::RegNavElements(gui::StepperBox* steppers[], int stepperCount, } { Menu::NavElement navElement = {_menuItems[miApply], {_menuItems[miBack], _stateItems[0], lastStepperLeft, firstStepperLeft}, {cVirtualKeyEnd, cVirtualKeyEnd}}; - navElements.push_back(navElement); + navElements.push_back(navElement); } gui::Widget* focus = NULL; @@ -1274,7 +1274,7 @@ void OptionsMenu::RegNavElements(gui::StepperBox* steppers[], int stepperCount, focus = navElements[i].widget; break; } - + _menu->SetNavElements(_menuItems[miBack], true, &navElements[0], navElements.size()); if (focus) focus->SetFocused(true, true); @@ -1286,7 +1286,7 @@ gui::Button* OptionsMenu::CreateMenuButton(StringValue name, gui::Widget* parent } gui::Button* OptionsMenu::CreateMenuButton2(StringValue name, gui::Widget* parent, gui::Widget::Event* guiEvent) -{ +{ gui::Button* button = _menu->CreateMenuButton(svNull, "", "GUI\\buttonBg4.png", "GUI\\buttonBgSel4.png", parent, guiEvent, IdentityVec2, gui::Button::bsSelAnim, clrWhite, Menu::ssButton1); button->SetAlign(gui::Widget::waLeft); @@ -1296,7 +1296,7 @@ gui::Button* OptionsMenu::CreateMenuButton2(StringValue name, gui::Widget* paren label->AdjustSizeByText(); gui::Dummy* dummy = _menu->CreateDummy(button, this, Menu::ssButton1); - dummy->SetAlign(gui::Widget::waLeft); + dummy->SetAlign(gui::Widget::waLeft); dummy->SetSize(button->GetSize().x + label->GetSize().x + 10.0f, button->GetSize().y); dummy->SetData(button); @@ -1331,7 +1331,7 @@ gui::VolumeBar* OptionsMenu::CreateVolumeBar(gui::Widget* parent, gui::Widget::E volumeBar->GetBack().GetSampler().SetTex(_menu->GetTexture("GUI\\optBarBg.png")); volumeBar->GetBack().SetBlending(gui::Material::bmTransparency); - volumeBar->GetFront().GetSampler().SetTex(_menu->GetTexture("GUI\\optBar.png")); + volumeBar->GetFront().GetSampler().SetTex(_menu->GetTexture("GUI\\optBar.png")); volumeBar->GetFront().SetBlending(gui::Material::bmTransparency); volumeBar->SetSize(240.0f, 45.0f); @@ -1368,7 +1368,7 @@ void OptionsMenu::Show(bool value) } void OptionsMenu::OnProgress(float deltaTime) -{ +{ } gui::Widget* OptionsMenu::GetRoot() @@ -1444,7 +1444,7 @@ StartOptionsMenu::StartOptionsMenu(Menu* menu, gui::Widget* parent): MenuFrame(m _itemsBg[i]->SetAlign(gui::Widget::waLeft); } - for (int i = 0; i < cLabelEnd; ++i) + for (int i = 0; i < cLabelEnd; ++i) _labels[i] = menu->CreateLabel(strLabels[i], labelsParent[i], fontLabels[i], NullVec2, horLabels[i], vertLabels[i], colorLabels[i]); _labels[mlInfo]->SetWordWrap(true); @@ -1467,7 +1467,7 @@ StartOptionsMenu::~StartOptionsMenu() } void StartOptionsMenu::LoadCfg() -{ +{ _steppers[dbCamera]->SetSelIndex(_lastCameraIndex = GameMode::cPrefCameraEnd); _steppers[dbResolution]->SetSelIndex(menu()->GetDisplayModeIndex()); _steppers[dbLanguage]->SetSelIndex(menu()->GetGame()->GetLanguageIndex()); @@ -1493,7 +1493,7 @@ void StartOptionsMenu::OnShow(bool value) Menu::NavElement navElement2 = {_steppers[i - 1]->GetRight(), {_steppers[i - 1]->GetLeft(), NULL, _steppers[i - 2]->GetRight(), _steppers[i]->GetRight()}, {cVirtualKeyEnd, cVirtualKeyEnd}}; navElements.push_back(navElement2); - } + } if (i + 1 == cStepperEnd) { @@ -1518,7 +1518,7 @@ void StartOptionsMenu::OnShow(bool value) { Menu::NavElement navElement = {_menuItems[miApply], {NULL, NULL, _steppers[cStepperEnd - 1]->GetLeft(), _steppers[0]->GetLeft()}, {cVirtualKeyEnd, cVirtualKeyEnd}}; - navElements.push_back(navElement); + navElements.push_back(navElement); } menu()->SetNavElements(_menuItems[miApply], true, &navElements[0], navElements.size()); @@ -1533,7 +1533,7 @@ void StartOptionsMenu::OnAdjustLayout(const glm::vec2& vpSize) _menuBgMask->SetSize(vpSize); - int index = 0; + int index = 0; for (int i = 0; i < cStepperEnd; ++i) { if (_labels[i]->GetVisible()) @@ -1562,7 +1562,7 @@ void StartOptionsMenu::OnAdjustLayout(const glm::vec2& vpSize) } void StartOptionsMenu::OnInvalidate() -{ +{ } bool StartOptionsMenu::OnClick(gui::Widget* sender, const gui::MouseClick& mClick) @@ -1604,7 +1604,7 @@ bool StartOptionsMenu::OnClick(gui::Widget* sender, const gui::MouseClick& mClic menu()->ShowStartOptions(false); game->CheckStartupMenu(); } - + return true; } @@ -1672,13 +1672,13 @@ bool StartOptionsMenu::ApplyChanges() break; } } - } + } return res; } void StartOptionsMenu::CancelChanges() -{ +{ } } diff --git a/src/Rock3dGame/source/game/Player.cpp b/src/Rock3dGame/source/game/Player.cpp index 99672264..07a78f09 100644 --- a/src/Rock3dGame/source/game/Player.cpp +++ b/src/Rock3dGame/source/game/Player.cpp @@ -24,7 +24,7 @@ const D3DXCOLOR Player::cLeftColors[Player::cColorsCount] = {clrWhite, clrBlue, const D3DXCOLOR Player::cRightColors[Player::cColorsCount] = {D3DXCOLOR(0xff06affa), D3DXCOLOR(0xffb70bae), D3DXCOLOR(0xffb1c903), D3DXCOLOR(0xffa93900), D3DXCOLOR(0xff30373d), D3DXCOLOR(0xff009f15), D3DXCOLOR(0xff70769c)}; -Slot::ClassList Slot::classList; +Slot::ClassList Slot::classList; @@ -40,7 +40,7 @@ SlotItem::~SlotItem() } void SlotItem::RegProgressEvent() -{ +{ if (GetPlayer()) GetPlayer()->GetRace()->GetGame()->RegProgressEvent(this); } @@ -67,7 +67,7 @@ void SlotItem::Load(SReader* reader) { reader->ReadValue("name", _name); reader->ReadValue("info", _info); - reader->ReadValue("cost", _cost); + reader->ReadValue("cost", _cost); reader->ReadRef("mesh", true, this, 0); reader->ReadRef("texture", true, this, 0); @@ -79,10 +79,10 @@ void SlotItem::OnFixUp(const FixUpNames& fixUpNames) { for (FixUpNames::const_iterator iter = fixUpNames.begin(); iter != fixUpNames.end(); ++iter) { - if (iter->name == "mesh") + if (iter->name == "mesh") SetMesh(static_cast(iter->collItem)); - if (iter->name == "texture") + if (iter->name == "texture") SetTexture(static_cast(iter->collItem)); } } @@ -134,7 +134,7 @@ Slot* SlotItem::GetSlot() const Player* SlotItem::GetPlayer() const { - return _slot ? _slot->GetPlayer() : NULL; + return _slot ? _slot->GetPlayer() : NULL; } const std::string& SlotItem::GetName() const @@ -230,7 +230,7 @@ void MobilityItem::CarFunc::WriteTo(lsl::SWriter* writer) lsl::SWriter* wLatTire = writer->NewDummyNode("latTire"); latTire.WriteTo(wLatTire); - writer->WriteValue("maxTorque", maxTorque); + writer->WriteValue("maxTorque", maxTorque); writer->WriteValue("life", life); writer->WriteValue("maxSpeed", maxSpeed); writer->WriteValue("tireSpring", tireSpring); @@ -256,7 +256,7 @@ void MobilityItem::Save(SWriter* writer) { _MyBase::Save(writer); - lsl::SWriter* funcMap = writer->NewDummyNode("carFuncMap"); + lsl::SWriter* funcMap = writer->NewDummyNode("carFuncMap"); int i = 0; for (CarFuncMap::iterator iter = carFuncMap.begin(); iter != carFuncMap.end(); ++iter, ++i) @@ -287,7 +287,7 @@ void MobilityItem::Load(SReader* reader) carFunc.ReadFrom(func); carFuncMap[car] = carFunc; - + func = func->NextValue(); } } @@ -320,7 +320,7 @@ WheelItem::WheelItem(Slot* slot): _MyBase(slot) MotorItem::MotorItem(Slot* slot): _MyBase(slot) -{ +{ } @@ -450,7 +450,7 @@ void WeaponItem::OnCreateCar(MapObj* car) } void WeaponItem::OnDestroyCar(MapObj* car) -{ +{ lsl::SafeRelease(_inst); } @@ -479,7 +479,7 @@ void WeaponItem::Load(SReader* reader) reader->ReadValue("cntCharge", _cntCharge); reader->ReadValue("curCharge", _curCharge); reader->ReadValue("chargeStep", _chargeStep); - reader->ReadValue("chargeCost", _chargeCost); + reader->ReadValue("chargeCost", _chargeCost); _wpnDesc.LoadFrom(reader, this); } @@ -531,7 +531,7 @@ void WeaponItem::SetMapObj(MapObjRec* value) { if (ReplaceRef(_mapObj, value)) { - _mapObj = value; + _mapObj = value; } } @@ -650,7 +650,7 @@ MineItem::MineItem(Slot* slot): _MyBase(slot) DroidItem::DroidItem(Slot* slot): WeaponItem(slot), _repairValue(5.0f), _repairPeriod(1.0f), _time(0.0f) -{ +{ } DroidItem::~DroidItem() @@ -731,7 +731,7 @@ void DroidItem::SetRepairPeriod(float value) ReflectorItem::ReflectorItem(Slot* slot): WeaponItem(slot), _reflectValue(0.25f) -{ +{ } ReflectorItem::~ReflectorItem() @@ -899,14 +899,14 @@ Player::~Player() SetHeadlight(hlmNone); SetCar(0); - FreeColorMat(); + FreeColorMat(); } Player::CarState::CarState(): owner(NULL), record(0), colorMat(0), color(clrWhite), mapObj(0), gameObj(0), grActor(0), nxActor(0), track(0), curTile(0), curNode(0), lastNode(0), numLaps(0) { pos = NullVec2; pos3 = NullVector; - rot3 = NullQuaternion; + rot3 = NullQuaternion; dir = IdentityVec2; dir3 = IdentityVector; worldMat = IdentityMatrix; @@ -961,14 +961,14 @@ void Player::CarState::Update(float deltaTime) dir = glm::normalize(dir); dirLine = Line2FromDir(dir, pos); - normLine = Line2FromNorm(dir, pos); + normLine = Line2FromNorm(dir, pos); WayNode* tile = owner->GetMap()->GetTrace().IsTileContains(pos3, curTile); //Существуем множество проблем если подбирать ближвйщий узел, например с lastNode, а целесообразность пока неясна, поэтому пока убрано //Тайл не найден //if (!tile) //Поиск ближайщего узла - // tile = owner->GetMap()->GetTrace().FindClosestNode(pos3); + // tile = owner->GetMap()->GetTrace().FindClosestNode(pos3); SetCurTile(tile); // if (curTile && curTile->GetNext() && curTile->GetNext()->IsContains(pos3)) @@ -981,16 +981,16 @@ void Player::CarState::Update(float deltaTime) Line2FromDir(curTile->GetTile().GetDir(), pos, trackDirLine); Line2FromNorm(curTile->GetTile().GetDir(), pos, trackNormLine); - track = curTile->GetTile().ComputeTrackInd(pos); + track = curTile->GetTile().ComputeTrackInd(pos); } // bool chLastNode = curTile && lastNode != curTile; bool newLastNode1 = chLastNode && !lastNode; bool newLastNode2 = chLastNode && lastNode && ((lastNode->GetNext() && lastNode->GetNext()->GetPoint()->IsFind(curTile)) || lastNode->GetPoint()->IsFind(curTile, lastNode) || lastNode->GetPath()->GetFirst()->GetPoint()->IsFind(curTile, lastNode->GetPath()->GetFirst())); - + bool onLapPass = false; - + if (newLastNode1 || newLastNode2) { //круг пройден @@ -1024,7 +1024,7 @@ void Player::CarState::Update(float deltaTime) moveInverseStart = -1; } - //контроль за скоростью + //контроль за скоростью maxSpeedTime += deltaTime; if (speed > maxSpeed || maxSpeedTime > 1.0f) { @@ -1117,7 +1117,7 @@ float Player::CarState::GetPathLength(bool lastCorrect) const if (tile) return tile->GetPath()->GetLength(); - Map* map = owner && owner->GetRace() ? owner->GetRace()->GetGame()->GetWorld()->GetMap() : NULL; + Map* map = owner && owner->GetRace() ? owner->GetRace()->GetGame()->GetWorld()->GetMap() : NULL; return map && map->GetTrace().GetPathes().size() > 0 ? map->GetTrace().GetPathes().front()->GetLength() : 1.0f; } @@ -1132,7 +1132,7 @@ float Player::CarState::GetDist(bool lastCorrect) const } float Player::CarState::GetLap(bool lastCorectDist) const -{ +{ float dist = GetDist(lastCorectDist); return numLaps + dist/GetPathLength(lastCorectDist); @@ -1144,7 +1144,7 @@ D3DXVECTOR3 Player::CarState::GetMapPos() const if (curTile) { res = curTile->GetTile().GetPoint(curTile->GetTile().ComputeCoordX(pos)); - } + } else if (lastNode) { res = lastNode->GetTile().GetPoint(lastNodeCoordX); @@ -1168,14 +1168,14 @@ void Player::InsertBonusProj(Proj* proj, int projId) proj->AddRef(); proj->InsertListener(this); - _bonusProjs.push_back(bonusProj); + _bonusProjs.push_back(bonusProj); } void Player::RemoveBonusProj(BonusProjs::const_iterator iter) { iter->proj->Release(); iter->proj->RemoveListener(this); - _bonusProjs.erase(iter); + _bonusProjs.erase(iter); } void Player::RemoveBonusProj(Proj* proj) @@ -1212,7 +1212,7 @@ void Player::InitLight(HeadLight headLight, const D3DXVECTOR3& pos, const glm::q _lights[headLight]->GetSource()->SetPhi(D3DX_PI/3.0f); _lights[headLight]->GetSource()->SetTheta(D3DX_PI/6.0f); } - + _lights[headLight]->GetSource()->SetPos(pos); _lights[headLight]->GetSource()->SetRot(rot); @@ -1299,7 +1299,7 @@ void Player::ReleaseCar() _car.nxActor = NULL; lsl::SafeRelease(_car.grActor); lsl::SafeRelease(_car.gameObj); - lsl::SafeRelease(_car.mapObj); + lsl::SafeRelease(_car.mapObj); } void Player::ApplyMobility() @@ -1314,15 +1314,15 @@ void Player::ApplyMobility() NxTireFunctionDesc longTireDesc = car->GetWheels().front().GetShape()->GetLongitudalTireForceFunction(); longTireDesc.asymptoteSlip = longTireDesc.asymptoteValue = longTireDesc.extremumSlip = longTireDesc.extremumValue = longTireDesc.stiffnessFactor = 0.0f; - + NxTireFunctionDesc latTireDesc = car->GetWheels().front().GetShape()->GetLateralTireForceFunction(); latTireDesc.asymptoteSlip = latTireDesc.asymptoteValue = latTireDesc.extremumSlip = latTireDesc.extremumValue = latTireDesc.stiffnessFactor = 0.0f; float maxLife = 0.0f; float maxSpeed = 0.0f; float tireSpring = _carTireSpringBase; - - for (int i = 0; i < cSlotTypeEnd; ++i) + + for (int i = 0; i < cSlotTypeEnd; ++i) { MobilityItem* mobi = _slot[i] ? _slot[i]->GetItem().IsMobilityItem() : 0; MobilityItem::CarFunc* carFunc = 0; @@ -1334,7 +1334,7 @@ void Player::ApplyMobility() } if (carFunc) { - motorDesc.maxTorque += carFunc->maxTorque; + motorDesc.maxTorque += carFunc->maxTorque; maxLife += mobi->CalcLife(*carFunc); maxSpeed = std::max(carFunc->maxSpeed, maxSpeed); tireSpring += carFunc->tireSpring; @@ -1385,7 +1385,7 @@ void Player::FreeColorMat() void Player::ApplyColorMat() { - FreeColorMat(); + FreeColorMat(); if (_car.mapObj && _car.gameObj->GetGrActor().GetNodes().Size() > 0 && _car.gameObj->GetGrActor().GetNodes().begin()->GetType() == graph::Actor::ntIVBMesh && !_car.gameObj->GetDisableColor()) { @@ -1407,7 +1407,7 @@ void Player::ApplyColor() } void Player::CheatUpdate(float deltaTime) -{ +{ Player* opponent = NULL; float maxLapDist = 0; _car.cheatFaster = false; @@ -1459,7 +1459,7 @@ void Player::CheatUpdate(float deltaTime) float torqueK = ClampValue((dist - cHumanEasingMinDist[diff]) / (cHumanEasingMaxDist[diff] - cHumanEasingMinDist[diff]), 0.0f, 1.0f); torqueK = cCompCheatMinTorqueK[diff] + (cCompCheatMaxTorqueK[diff] - cCompCheatMinTorqueK[diff]) * torqueK; - _car.cheatFaster = true; + _car.cheatFaster = true; SetCheatK(_car, torqueK, torqueK); } } @@ -1533,7 +1533,7 @@ void Player::OnDeath(GameObject* sender, DamageType damageType, GameObject* targ case dtMine: SendEvent(cPlayerDeathMine); break; - } + } SendEvent(cPlayerDeath, &MyEventData(Slot::cTypeEnd, GameObject::cBonusTypeEnd, NULL, sender->GetTouchPlayerId(), damageType)); } @@ -1562,7 +1562,7 @@ void Player::OnProgress(float deltaTime) { _timeRestoreCar = 0; CreateCar(false); - ResetCar(); + ResetCar(); } _car.cheatFaster = false; @@ -1586,7 +1586,7 @@ Player* Player::FindClosestEnemy(float viewAngle, bool zTest) float minDist = 0; Player* enemy = 0; - + for (Race::PlayerList::const_iterator iter = _race->GetPlayerList().begin(); iter != _race->GetPlayerList().end(); ++iter) { Player* tPlayer = *iter; @@ -1634,7 +1634,7 @@ float Player::ComputeCarBBSize() AABB aabb = _car.grActor->GetLocalAABB(false); aabb.Transform(_car.grActor->GetWorldScale()); - + return D3DXVec3Length(&aabb.GetSizes()); } @@ -1660,7 +1660,7 @@ void Player::CreateCar(bool newRace) _car.moveInverseStart = -1; _car.maxSpeed = 0; _car.maxSpeedTime = 0; - + _car.gameObj->SetImmortalFlag(_finished); _car.gameObj->InsertListener(this); @@ -1683,7 +1683,7 @@ void Player::CreateCar(bool newRace) WayNode* node = GetMap()->GetTrace().GetPathes().front()->GetFirst(); _car.SetCurTile(node); _car.SetCurNode(node); - _car.SetLastNode(node); + _car.SetLastNode(node); ClearBonusProjs(); _timeRestoreCar = 0; _nextBonusProjId = cBonusProjUndef + 1; @@ -1717,11 +1717,11 @@ void Player::ResetCar() if (lastNode && _car.mapObj) { - /*D3DXVECTOR3 pos = lastNode->GetTile().GetPoint(_car.lastNodeCoordX) + ZVector * lastNode->GetTile().ComputeHeight(0.5f) * 0.5f; + /*D3DXVECTOR3 pos = lastNode->GetTile().GetPoint(_car.lastNodeCoordX) + ZVector * lastNode->GetTile().ComputeHeight(0.5f) * 0.5f; glm::vec2 dir2 = lastNode->GetTile().GetDir(); NxRay nxRay(NxVec3(pos), NxVec3(-ZVector)); - NxRaycastHit hit; + NxRaycastHit hit; NxShape* hitShape = _car.gameObj->GetPxActor().GetScene()->GetNxScene()->raycastClosestShape(nxRay, NX_STATIC_SHAPES, hit, 1 << px::Scene::cdgTrackPlane, NX_MAX_F32, NX_RAYCAST_SHAPE); if (hitShape == NULL) @@ -1739,7 +1739,7 @@ void Player::ResetCar() { D3DXVECTOR3 newPos; glm::vec2 newDir2; - bool isFind = false; + bool isFind = false; for (int j = 0; j < 3; ++j) { @@ -1758,7 +1758,7 @@ void Player::ResetCar() } NxRay nxRay(NxVec3(rayPos), NxVec3(-ZVector)); - NxRaycastHit hit; + NxRaycastHit hit; NxShape* hitShape = _car.gameObj->GetPxActor().GetScene()->GetNxScene()->raycastClosestShape(nxRay, NX_ALL_SHAPES, hit, 1 << px::Scene::cdgTrackPlane | 1 << px::Scene::cdgPlaneDeath | 1 << px::Scene::cdgDefault, NX_MAX_F32, NX_RAYCAST_SHAPE); GameObject* hitGameObj = GameObject::GetGameObjFromShape(hitShape); @@ -1801,7 +1801,7 @@ void Player::ResetCar() _car.gameObj->SetWorldPos(pos); _car.gameObj->SetWorldRot(NullQuaternion); - _car.gameObj->SetWorldDir(D3DXVECTOR3(dir2.x, dir2.y, 0.0f)); + _car.gameObj->SetWorldDir(D3DXVECTOR3(dir2.x, dir2.y, 0.0f)); _car.gameObj->GetPxActor().GetNxActor()->setLinearVelocity(NxVec3(NullVector)); _car.gameObj->GetPxActor().GetNxActor()->setLinearMomentum(NxVec3(NullVector)); @@ -1922,7 +1922,7 @@ void Player::SetHeadlight(HeadLightMode value) FreeLight(hlSecond); break; } - + case hlmTwo: { InitLight(hlFirst, D3DXVECTOR3(0.3f, 1.0f, 3.190f), glm::quat(0.939f, 0.0009f, 0.344f, -0.029f)); @@ -1964,7 +1964,7 @@ void Player::SetReflScene(bool value) if (_reflScene != value) { _reflScene = value; - + ApplyReflScene(); } } @@ -2007,7 +2007,7 @@ Slot* Player::GetSlotInst(Slot::Type type) void Player::TakeBonus(GameObject* bonus, BonusType type, float value) { MapObjRec* record = bonus->GetMapObj() ? bonus->GetMapObj()->GetRecord() : NULL; - bonus->Death(); + bonus->Death(); switch (type) { @@ -2117,7 +2117,7 @@ const D3DXCOLOR& Player::GetColor() const void Player::SetColor(const D3DXCOLOR& value) { _car.color = value; - + ApplyColor(); } @@ -2217,7 +2217,7 @@ void Player::SetBlockTime(float value) graph::Tex2DResource* Player::GetPhoto() { const Planet::PlayerData* plr = _race->GetTournament().GetPlayerData(_gamerId); - + return plr ? plr->photo : NULL; } diff --git a/src/Rock3dGame/source/game/Race.cpp b/src/Rock3dGame/source/game/Race.cpp index 67e2d8bf..08ae3f4d 100644 --- a/src/Rock3dGame/source/game/Race.cpp +++ b/src/Rock3dGame/source/game/Race.cpp @@ -98,7 +98,7 @@ void Workshop::LoadWheels() func.latTire.extremumValue = 2.25f; func.latTire.asymptoteSlip = 2.0f; func.latTire.asymptoteValue = 1.0f; - } + } //dirtdevil { WheelItem::CarFunc& func = item.carFuncMap[_race->GetCar("dirtdevil")]; @@ -112,7 +112,7 @@ void Workshop::LoadWheels() func.latTire.extremumValue = 2.25f; func.latTire.asymptoteSlip = 2.0f; func.latTire.asymptoteValue = 1.0f; - } + } //manticora { WheelItem::CarFunc& func = item.carFuncMap[_race->GetCar("manticora")]; @@ -147,7 +147,7 @@ void Workshop::LoadWheels() WheelItem::CarFunc& boss = item.carFuncMap[_race->GetCar("monstertruckBoss")]; boss = func; } - + SaveSlot(slot, "wheel1"); } { @@ -173,10 +173,10 @@ void Workshop::LoadWheels() func.latTire.extremumValue = 2.6f; func.latTire.asymptoteSlip = 2.0f; func.latTire.asymptoteValue = 1.25f; - } + } //dirtdevil { - WheelItem::CarFunc& func = item.carFuncMap[_race->GetCar("dirtdevil")]; + WheelItem::CarFunc& func = item.carFuncMap[_race->GetCar("dirtdevil")]; //long func.longTire.extremumSlip = 0.5f; func.longTire.extremumValue = 6.0f; @@ -187,10 +187,10 @@ void Workshop::LoadWheels() func.latTire.extremumValue = 2.6f; func.latTire.asymptoteSlip = 2.0f; func.latTire.asymptoteValue = 1.0f; - } + } //manticora { - WheelItem::CarFunc& func = item.carFuncMap[_race->GetCar("manticora")]; + WheelItem::CarFunc& func = item.carFuncMap[_race->GetCar("manticora")]; //long func.longTire.extremumSlip = 0.5f; func.longTire.extremumValue = 6.5f; @@ -207,7 +207,7 @@ void Workshop::LoadWheels() } //monstertruck { - WheelItem::CarFunc& func = item.carFuncMap[_race->GetCar("monstertruck")]; + WheelItem::CarFunc& func = item.carFuncMap[_race->GetCar("monstertruck")]; //long func.longTire.extremumSlip = 0.5f; func.longTire.extremumValue = 6.0f; @@ -222,7 +222,7 @@ void Workshop::LoadWheels() WheelItem::CarFunc& boss = item.carFuncMap[_race->GetCar("monstertruckBoss")]; boss = func; } - + SaveSlot(slot, "wheel2"); } { @@ -248,10 +248,10 @@ void Workshop::LoadWheels() func.latTire.extremumValue = 3.0f; func.latTire.asymptoteSlip = 2.0f; func.latTire.asymptoteValue = 1.5f; - } + } //buggi { - WheelItem::CarFunc& func = item.carFuncMap[_race->GetCar("buggi")]; + WheelItem::CarFunc& func = item.carFuncMap[_race->GetCar("buggi")]; //long func.longTire.extremumSlip = 0.4f; func.longTire.extremumValue = 6.0f; @@ -310,7 +310,7 @@ void Workshop::LoadWheels() } //monstertruck { - WheelItem::CarFunc& func = item.carFuncMap[_race->GetCar("monstertruck")]; + WheelItem::CarFunc& func = item.carFuncMap[_race->GetCar("monstertruck")]; //long func.longTire.extremumSlip = 0.5f; func.longTire.extremumValue = 6.0f; @@ -356,7 +356,7 @@ void Workshop::LoadWheels() WheelItem::CarFunc& boss = item.carFuncMap[_race->GetCar("gusenizaBoss")]; boss = func; } - + SaveSlot(slot, "gusWheel1"); } { @@ -386,7 +386,7 @@ void Workshop::LoadWheels() WheelItem::CarFunc& boss = item.carFuncMap[_race->GetCar("gusenizaBoss")]; boss = func; } - + SaveSlot(slot, "gusWheel2"); } { @@ -437,12 +437,12 @@ void Workshop::LoadTruba() { WheelItem::CarFunc& func = item.carFuncMap[_race->GetCar("marauder")]; func.maxTorque = 100.0f; - } + } //dirtdevil { WheelItem::CarFunc& func = item.carFuncMap[_race->GetCar("dirtdevil")]; func.maxTorque = 100.0f; - } + } //manticora { WheelItem::CarFunc& func = item.carFuncMap[_race->GetCar("manticora")]; @@ -461,7 +461,7 @@ void Workshop::LoadTruba() } //monstertruck { - WheelItem::CarFunc& func = item.carFuncMap[_race->GetCar("monstertruck")]; + WheelItem::CarFunc& func = item.carFuncMap[_race->GetCar("monstertruck")]; func.maxTorque = 50.0f; //boss WheelItem::CarFunc& boss = item.carFuncMap[_race->GetCar("monstertruckBoss")]; @@ -484,15 +484,15 @@ void Workshop::LoadTruba() { WheelItem::CarFunc& func = item.carFuncMap[_race->GetCar("marauder")]; func.maxTorque = 150.0f; - } + } //dirtdevil { WheelItem::CarFunc& func = item.carFuncMap[_race->GetCar("dirtdevil")]; func.maxTorque = 150.0f; - } + } //manticora { - WheelItem::CarFunc& func = item.carFuncMap[_race->GetCar("manticora")]; + WheelItem::CarFunc& func = item.carFuncMap[_race->GetCar("manticora")]; func.maxTorque = 200.0f; //boss WheelItem::CarFunc& boss = item.carFuncMap[_race->GetCar("manticoraBoss")]; @@ -508,13 +508,13 @@ void Workshop::LoadTruba() } //monstertruck { - WheelItem::CarFunc& func = item.carFuncMap[_race->GetCar("monstertruck")]; + WheelItem::CarFunc& func = item.carFuncMap[_race->GetCar("monstertruck")]; func.maxTorque = 65.0f; //boss WheelItem::CarFunc& boss = item.carFuncMap[_race->GetCar("monstertruckBoss")]; boss = func; } - + SaveSlot(slot, "truba2"); } { @@ -534,22 +534,22 @@ void Workshop::LoadTruba() } //buggi { - WheelItem::CarFunc& func = item.carFuncMap[_race->GetCar("buggi")]; + WheelItem::CarFunc& func = item.carFuncMap[_race->GetCar("buggi")]; func.maxTorque = 200.0f; } - //dirtdevil + //dirtdevil { WheelItem::CarFunc& func = item.carFuncMap[_race->GetCar("dirtdevil")]; func.maxTorque = 200.0f; } //tankchetti { - WheelItem::CarFunc& func = item.carFuncMap[_race->GetCar("tankchetti")]; + WheelItem::CarFunc& func = item.carFuncMap[_race->GetCar("tankchetti")]; func.maxTorque = 200.0f; } //manticora { - WheelItem::CarFunc& func = item.carFuncMap[_race->GetCar("manticora")]; + WheelItem::CarFunc& func = item.carFuncMap[_race->GetCar("manticora")]; func.maxTorque = 300.0f; //boss WheelItem::CarFunc& boss = item.carFuncMap[_race->GetCar("manticoraBoss")]; @@ -557,7 +557,7 @@ void Workshop::LoadTruba() } //guseniza { - WheelItem::CarFunc& func = item.carFuncMap[_race->GetCar("guseniza")]; + WheelItem::CarFunc& func = item.carFuncMap[_race->GetCar("guseniza")]; func.maxTorque = 200.0f; //boss WheelItem::CarFunc& boss = item.carFuncMap[_race->GetCar("gusenizaBoss")]; @@ -565,13 +565,13 @@ void Workshop::LoadTruba() } //monstertruck { - WheelItem::CarFunc& func = item.carFuncMap[_race->GetCar("monstertruck")]; + WheelItem::CarFunc& func = item.carFuncMap[_race->GetCar("monstertruck")]; func.maxTorque = 80.0f; //boss WheelItem::CarFunc& boss = item.carFuncMap[_race->GetCar("monstertruckBoss")]; boss = func; } - + SaveSlot(slot, "truba3"); } } @@ -592,12 +592,12 @@ void Workshop::LoadEngines() { MotorItem::CarFunc& func = item.carFuncMap[_race->GetCar("marauder")]; func.maxTorque = 800.0f; - } + } //dirtdevil { MotorItem::CarFunc& func = item.carFuncMap[_race->GetCar("dirtdevil")]; - func.maxTorque = 800.0f; - } + func.maxTorque = 800.0f; + } //manticora { MotorItem::CarFunc& func = item.carFuncMap[_race->GetCar("manticora")]; @@ -618,7 +618,7 @@ void Workshop::LoadEngines() { MotorItem::CarFunc& func = item.carFuncMap[_race->GetCar("podushka")]; func.maxTorque = 750.0f; - + //long func.longTire.extremumSlip = 0.3f; func.longTire.extremumValue = 6.0f; @@ -675,16 +675,16 @@ void Workshop::LoadEngines() { MotorItem::CarFunc& func = item.carFuncMap[_race->GetCar("marauder")]; func.maxTorque = 1000.0f; - } + } //dirtdevil { MotorItem::CarFunc& func = item.carFuncMap[_race->GetCar("dirtdevil")]; - func.maxTorque = 1000.0f; - } + func.maxTorque = 1000.0f; + } //manticora { MotorItem::CarFunc& func = item.carFuncMap[_race->GetCar("manticora")]; - func.maxTorque = 1500.0f; + func.maxTorque = 1500.0f; //boss MotorItem::CarFunc& boss = item.carFuncMap[_race->GetCar("manticoraBoss")]; boss = func; @@ -741,7 +741,7 @@ void Workshop::LoadEngines() MotorItem::CarFunc& boss = item.carFuncMap[_race->GetCar("devildriverBoss")]; boss = func; } - + SaveSlot(slot, "engine2"); } { @@ -767,7 +767,7 @@ void Workshop::LoadEngines() //dirtdevil { MotorItem::CarFunc& func = item.carFuncMap[_race->GetCar("dirtdevil")]; - func.maxTorque = 1200.0f; + func.maxTorque = 1200.0f; } //tankchetti { @@ -777,7 +777,7 @@ void Workshop::LoadEngines() //manticora { MotorItem::CarFunc& func = item.carFuncMap[_race->GetCar("manticora")]; - func.maxTorque = 1900.0f; + func.maxTorque = 1900.0f; //boss MotorItem::CarFunc& boss = item.carFuncMap[_race->GetCar("manticoraBoss")]; boss = func; @@ -836,7 +836,7 @@ void Workshop::LoadEngines() } SaveSlot(slot, "engine3"); - } + } } void Workshop::LoadArmors() @@ -855,15 +855,15 @@ void Workshop::LoadArmors() { ArmorItem::CarFunc& func = item.carFuncMap[_race->GetCar("marauder")]; func.life = 50.0f; - } + } //dirtdevil { ArmorItem::CarFunc& func = item.carFuncMap[_race->GetCar("dirtdevil")]; func.life = 35.0f; - } + } //manticora { - ArmorItem::CarFunc& func = item.carFuncMap[_race->GetCar("manticora")]; + ArmorItem::CarFunc& func = item.carFuncMap[_race->GetCar("manticora")]; func.life = 50.0f; //boss ArmorItem::CarFunc& boss = item.carFuncMap[_race->GetCar("manticoraBoss")]; @@ -899,7 +899,7 @@ void Workshop::LoadArmors() ArmorItem::CarFunc& boss = item.carFuncMap[_race->GetCar("devildriverBoss")]; boss = func; } - + SaveSlot(slot, "armor1"); } { @@ -916,12 +916,12 @@ void Workshop::LoadArmors() { ArmorItem::CarFunc& func = item.carFuncMap[_race->GetCar("marauder")]; func.life = 65.0f; - } + } //dirtdevil { ArmorItem::CarFunc& func = item.carFuncMap[_race->GetCar("dirtdevil")]; func.life = 50.0f; - } + } //manticora { ArmorItem::CarFunc& func = item.carFuncMap[_race->GetCar("manticora")]; @@ -960,7 +960,7 @@ void Workshop::LoadArmors() ArmorItem::CarFunc& boss = item.carFuncMap[_race->GetCar("devildriverBoss")]; boss = func; } - + SaveSlot(slot, "armor2"); } { @@ -1031,9 +1031,9 @@ void Workshop::LoadArmors() ArmorItem::CarFunc& boss = item.carFuncMap[_race->GetCar("devildriverBoss")]; boss = func; } - + SaveSlot(slot, "armor3"); - } + } } void Workshop::LoadWeapons() @@ -1076,7 +1076,7 @@ void Workshop::LoadWeapons() } SaveSlot(slot, "bulletGun"); - } + } { Slot* slot = new Slot(0); @@ -1193,7 +1193,7 @@ void Workshop::LoadWeapons() } SaveSlot(slot, "tankLaser"); - } + } { Slot* slot = new Slot(0); @@ -1508,7 +1508,7 @@ void Workshop::LoadWeapons() } SaveSlot(slot, "sphereGun"); - } + } { Slot* slot = new Slot(0); @@ -1547,7 +1547,7 @@ void Workshop::LoadWeapons() } SaveSlot(slot, "torpedaWeapon"); - } + } { Slot* slot = new Slot(0); @@ -1668,7 +1668,7 @@ void Workshop::LoadWeapons() { Slot* slot = new Slot(0); - MineItem& item = slot->CreateItem(); + MineItem& item = slot->CreateItem(); item.SetName(_SC(scMaslo)); item.SetInfo(_SC(scMasloInfo)); item.SetMesh(_race->GetMesh("Weapon\\maslo.r3d")); @@ -1677,7 +1677,7 @@ void Workshop::LoadWeapons() item.SetMaxCharge(7); item.SetCntCharge(1); item.SetDamage(0.0f); - item.SetCost(8000); + item.SetCost(8000); item.SetChargeCost(4000); { @@ -1734,7 +1734,7 @@ void Workshop::LoadWeapons() item.SetWpnDesc(desc); } - SaveSlot(slot, "mine1"); + SaveSlot(slot, "mine1"); } { @@ -1818,7 +1818,7 @@ void Workshop::LoadWeapons() { Slot* slot = new Slot(0); - HyperItem& item = slot->CreateItem(); + HyperItem& item = slot->CreateItem(); item.SetName(_SC(scSpring)); item.SetInfo(_SC(scSpringInfo)); item.SetMesh(_race->GetMesh("Weapon\\spring.r3d")); @@ -1827,7 +1827,7 @@ void Workshop::LoadWeapons() item.SetMaxCharge(7); item.SetCntCharge(1); item.SetDamage(0.0f); - item.SetCost(6000); + item.SetCost(6000); item.SetChargeCost(2000); { @@ -1876,12 +1876,12 @@ void Workshop::LoadWeapons() projDesc.minTimeLife = 2.0f; desc.projList.push_back(projDesc); - desc.shotDelay = 1.5f; + desc.shotDelay = 1.5f; item.SetWpnDesc(desc); } - SaveSlot(slot, "hyperdrive"); + SaveSlot(slot, "hyperdrive"); } } @@ -1890,9 +1890,9 @@ void Workshop::LoadLib() lsl::SafeDelete(_lib); try - { - SerialFileXML xml; - xml.LoadNodeFromFile(*_rootNode, "workshop.xml"); + { + SerialFileXML xml; + xml.LoadNodeFromFile(*_rootNode, "workshop.xml"); _lib = new RecordLib("workshop", _rootNode); _lib->SetOwner(_race); @@ -1915,7 +1915,7 @@ void Workshop::LoadLib() DeleteSlots(); for (RecordLib::RecordList::const_iterator iter = _lib->GetRecordList().begin(); iter != _lib->GetRecordList().end(); ++iter) - AddSlot(*iter); + AddSlot(*iter); } const RecordLib& Workshop::GetLib() @@ -1969,7 +1969,7 @@ void Workshop::ClearItems() for (Items::iterator iter = _items.begin(); iter != _items.end(); ++iter) (*iter)->Release(); - _items.clear(); + _items.clear(); } bool Workshop::BuyItem(Player* player, Slot* slot) @@ -2063,7 +2063,7 @@ int Workshop::GetChargeSellCost(WeaponItem* slot) const void Workshop::Reset() { - ClearItems(); + ClearItems(); } const Workshop::Items& Workshop::GetItems() @@ -2122,13 +2122,13 @@ const Garage::PlaceItem* Garage::PlaceSlot::FindItem(Slot* slot) const } Garage::Car::Car(): _record(0), _wheel(0), _cost(0), _name(scNull), _desc(scNull), _initialUpgradeSet(0) -{ +{ } Garage::Car::~Car() { ClearSlots(); - ClearBodies(); + ClearBodies(); SetWheel(0); SetRecord(0); @@ -2157,7 +2157,7 @@ void Garage::Car::ClearSlots() { for (int i = 0; i < Player::cSlotTypeEnd; ++i) { - SetSlot(Player::SlotType(i), PlaceSlot()); + SetSlot(Player::SlotType(i), PlaceSlot()); } } @@ -2171,14 +2171,14 @@ void Garage::Car::SaveTo(lsl::SWriter* writer, Garage* owner) { std::stringstream sstream; sstream << "bodyMesh" << i; - lsl::SWriter* child = bodyMeshes->NewDummyNode(sstream.str().c_str()); + lsl::SWriter* child = bodyMeshes->NewDummyNode(sstream.str().c_str()); child->WriteValue("meshId", iter->meshId); child->WriteValue("decal", iter->decal); - child->WriteRef("mesh", iter->mesh); - child->WriteRef("texture", iter->texture); - } + child->WriteRef("mesh", iter->mesh); + child->WriteRef("texture", iter->texture); + } writer->WriteValue("cost", _cost); @@ -2199,7 +2199,7 @@ void Garage::Car::SaveTo(lsl::SWriter* writer, Garage* owner) child->WriteValue("show", slot.show); child->WriteValue("lock", slot.lock); lsl::SWriteValue(child, "pos", slot.pos); - RecordLib::SaveRecordRef(child, "defItem", slot.defItem ? slot.defItem->GetRecord() : NULL); + RecordLib::SaveRecordRef(child, "defItem", slot.defItem ? slot.defItem->GetRecord() : NULL); lsl::SWriter* items = child->NewDummyNode("items"); int j = 0; @@ -2222,12 +2222,12 @@ void Garage::Car::SaveTo(lsl::SWriter* writer, Garage* owner) { std::stringstream sstream; sstream << "item" << i; - lsl::SWriter* child = nightLights->NewDummyNode(sstream.str().c_str()); + lsl::SWriter* child = nightLights->NewDummyNode(sstream.str().c_str()); child->WriteValue("head", _nightLights[i].head); lsl::SWriteValue(child, "pos", _nightLights[i].pos); lsl::SWriteValue(child, "size", _nightLights[i].size); - } + } } void Garage::Car::LoadFrom(lsl::SReader* reader, Garage* owner) @@ -2241,7 +2241,7 @@ void Garage::Car::LoadFrom(lsl::SReader* reader, Garage* owner) { lsl::SReader* child = bodyMeshes->FirstChildValue(); while (child) - { + { BodyMesh bodyMesh; child->ReadValue("meshId", bodyMesh.meshId); @@ -2253,7 +2253,7 @@ void Garage::Car::LoadFrom(lsl::SReader* reader, Garage* owner) if (child->ReadRef("texture", true, NULL, &fixUpName)) bodyMesh.texture = fixUpName.GetCollItem(); - + AddBody(bodyMesh); child = child->NextValue(); @@ -2292,7 +2292,7 @@ void Garage::Car::LoadFrom(lsl::SReader* reader, Garage* owner) { lsl::SReader* child = items->FirstChildValue(); while (child) - { + { PlaceItem item; record = RecordLib::LoadRecordRef(child, "record"); @@ -2314,7 +2314,7 @@ void Garage::Car::LoadFrom(lsl::SReader* reader, Garage* owner) { lsl::SReader* child = nightLights->FirstChildValue(); while (child) - { + { NightLight nightLight; child->ReadValue("head", nightLight.head); @@ -2474,7 +2474,7 @@ void Garage::FillStandartSlots(Car* car, const std::string& wheel, bool truba, c for (int i = 0; i < Player::cSlotTypeEnd; ++i) { PlaceSlot place; - + switch (i) { case Player::stWheel: @@ -2493,7 +2493,7 @@ void Garage::FillStandartSlots(Car* car, const std::string& wheel, bool truba, c place.lock = true; } break; - + case Player::stTruba: if (truba) { @@ -2510,13 +2510,13 @@ void Garage::FillStandartSlots(Car* car, const std::string& wheel, bool truba, c place.lock = true; } break; - + case Player::stArmor: place.active = true; place.show = false; if (!lockedMax) - { + { place.items.push_back(&GetShop().GetSlot("armor1")); place.items.push_back(&GetShop().GetSlot("armor2")); } @@ -2524,7 +2524,7 @@ void Garage::FillStandartSlots(Car* car, const std::string& wheel, bool truba, c place.defItem = place.items.front().slot; place.lock = true; break; - + case Player::stMotor: place.active = true; place.show = false; @@ -2538,8 +2538,8 @@ void Garage::FillStandartSlots(Car* car, const std::string& wheel, bool truba, c place.defItem = place.items.front().slot; place.lock = true; break; - - case Player::stHyper: + + case Player::stHyper: { //коллизинируют по свойству place.show, в этом суча необходимо его сделать частью PlaceItem LSL_ASSERT(!spring || !hyperDrive); @@ -2564,7 +2564,7 @@ void Garage::FillStandartSlots(Car* car, const std::string& wheel, bool truba, c place.lock = true; break; } - + case Player::stMine: place.active = true; place.show = false; @@ -2654,7 +2654,7 @@ void Garage::LoadCars() place.lock = true; car->SetSlot(Player::stWeapon1, place); - } + } } //dirtdevil @@ -2715,7 +2715,7 @@ void Garage::LoadCars() place.show = true; place.pos = D3DXVECTOR3(1.7f, 0.0f, 0.08f); - place.items.push_back(&GetShop().GetSlot("blasterGun")); + place.items.push_back(&GetShop().GetSlot("blasterGun")); place.defItem = place.items.front().slot; place.lock = true; @@ -2727,7 +2727,7 @@ void Garage::LoadCars() place.show = true; place.pos = D3DXVECTOR3(0.0f, 1.0f, 0.3f); D3DXVECTOR3 offset; - + glm::quat rot = glm::angleAxis(-D3DX_PI / 3.0f, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("rocketLauncher"), rot)); @@ -2748,10 +2748,10 @@ void Garage::LoadCars() place.show = true; place.pos = D3DXVECTOR3(0.0f, -1.0f, 0.3f); D3DXVECTOR3 offset; - + glm::quat rot = glm::angleAxis(D3DX_PI / 3.0f, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("rocketLauncher"), rot)); - + rot = glm::angleAxis(D3DX_PI / 3.0f, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("pulsator"), rot)); @@ -2791,7 +2791,7 @@ void Garage::LoadCars() place.pos = D3DXVECTOR3(-0.27f, 0.0f, 0.36f); place.items.push_back(&GetShop().GetSlot("tankLaser")); - + place.defItem = place.items.front().slot; place.lock = true; @@ -2981,7 +2981,7 @@ void Garage::LoadCars() car->SetDesc(_SC(scMonsterTruckInfo)); car->SetRecord(_race->GetDB()->GetRecord(MapObjLib::ctCar, "monstertruck")); car->AddBody(_race->GetMesh("Car\\monstertruck.r3d"), _race->GetTexture("Car\\monstertruck.tga"), true); - car->SetWheel(_race->GetMesh("Car\\monstertruckWheel.r3d")); + car->SetWheel(_race->GetMesh("Car\\monstertruckWheel.r3d")); car->SetWheels("Data\\Car\\monstertruckWheelGUI.txt"); car->SetCost(200000); @@ -3099,7 +3099,7 @@ void Garage::LoadCars() Car* boss = AddCar(); boss->Assign(car); boss->SetRecord(_race->GetDB()->GetRecord(MapObjLib::ctCar, "monstertruckBoss")); - boss->AddBody(_race->GetMesh("Car\\monstertruckBoss.r3d"), _race->GetTexture("Car\\monstertruckBoss.tga"), true); + boss->AddBody(_race->GetMesh("Car\\monstertruckBoss.r3d"), _race->GetTexture("Car\\monstertruckBoss.tga"), true); } //devildriver @@ -3131,7 +3131,7 @@ void Garage::LoadCars() Car* boss = AddCar(); boss->Assign(car); boss->SetRecord(_race->GetDB()->GetRecord(MapObjLib::ctCar, "devildriverBoss")); - boss->AddBody(_race->GetMesh("Car\\devildriverBoss.r3d"), _race->GetTexture("Car\\devildriverBoss.tga"), true); + boss->AddBody(_race->GetMesh("Car\\devildriverBoss.r3d"), _race->GetTexture("Car\\devildriverBoss.tga"), true); } //buggi @@ -3158,7 +3158,7 @@ void Garage::LoadCars() place.lock = true; car->SetSlot(Player::stWeapon1, place); - } + } } //tankchetti @@ -3208,8 +3208,8 @@ void Garage::LoadLib() lsl::RootNode rootNode("garageRoot", _race); try - { - SerialFileXML xml; + { + SerialFileXML xml; xml.LoadNodeFromFile(rootNode, "garage.xml"); rootNode.Load(this); @@ -3239,12 +3239,12 @@ void Garage::Save(lsl::SWriter* writer) { std::stringstream sstream; sstream << "car" << i; - lsl::SWriter* child = cars->NewDummyNode(sstream.str().c_str()); + lsl::SWriter* child = cars->NewDummyNode(sstream.str().c_str()); (*iter)->SaveTo(child, this); } - lsl::SWriteValue(writer, "touchBorderDamage", logic->GetTouchBorderDamage()); + lsl::SWriteValue(writer, "touchBorderDamage", logic->GetTouchBorderDamage()); lsl::SWriteValue(writer, "touchBorderDamageForce", logic->GetTouchBorderDamageForce()); lsl::SWriteValue(writer, "touchCarDamage", logic->GetTouchCarDamage()); lsl::SWriteValue(writer, "touchCarDamageForce", logic->GetTouchCarDamageForce()); @@ -3261,7 +3261,7 @@ void Garage::Load(lsl::SReader* reader) { lsl::SReader* child = cars->FirstChildValue(); while (child) - { + { Garage::Car* car = AddCar(); car->LoadFrom(child, this); @@ -3323,7 +3323,7 @@ void Garage::RemoveItem(Items::const_iterator iter) void Garage::RemoveItem(Car* item) { - RemoveItem(_items.Find(item)); + RemoveItem(_items.Find(item)); } void Garage::ClearItems() @@ -3331,11 +3331,11 @@ void Garage::ClearItems() for (Items::iterator iter = _items.begin(); iter != _items.end(); ++iter) (*iter)->Release(); - _items.clear(); + _items.clear(); } Garage::Items::iterator Garage::FindItem(Car* item) -{ +{ for (Items::iterator iter = _items.begin(); iter != _items.end(); ++iter) if (*iter == item) return iter; @@ -3365,7 +3365,7 @@ Slot* Garage::InstalSlot(Player* player, Player::SlotType type, Car* car, Slot* Slot* slotInst = player->GetSlotInst(type); if (slotInst) - { + { WeaponItem* weapon = slotInst->GetItem().IsWeaponItem(); if (weapon) { @@ -3413,7 +3413,7 @@ void Garage::GetSupportedSlots(Player* player, Car* car, std::pair ( ZeroMemory(slots, sizeof(slots)); Car* myCar = player->GetCar().record ? FindCar(player->GetCar().record) : NULL; - + for (int i = 0; i < Player::cSlotTypeEnd; ++i) { if (slots[i].first != NULL) @@ -3422,7 +3422,7 @@ void Garage::GetSupportedSlots(Player* player, Car* car, std::pair ( Player::SlotType type = (Player::SlotType)i; - Record* slotRec = player->GetSlot(type); + Record* slotRec = player->GetSlot(type); Slot* slot = slotRec ? _race->GetWorkshop().FindSlot(slotRec) : NULL; if (slot == NULL) continue; @@ -3452,7 +3452,7 @@ void Garage::GetSupportedSlots(Player* player, Car* car, std::pair ( } } - if (includeDef) + if (includeDef) for (int i = 0; i < Player::cSlotTypeEnd; ++i) { Player::SlotType type = (Player::SlotType)i; @@ -3515,7 +3515,7 @@ Slot* Garage::GetUpgradeCar(Car* car, Player* player, Player::SlotType type, int } else { - Record* record = GetUpgradeCar(car, type, level); + Record* record = GetUpgradeCar(car, type, level); return record ? _race->GetWorkshop().FindSlot(record) : NULL; } @@ -3551,7 +3551,7 @@ void Garage::UpgradeCar(Player* player, int level, bool instalMaxCharge) } if (instalMaxCharge) - { + { Slot* slot = player->GetSlotInst(type); WeaponItem* weapon = slot ? slot->GetItem().IsWeaponItem() : NULL; if (weapon) @@ -3702,7 +3702,7 @@ float Garage::GetSpeedSkill(Garage::Car* car, Player* player) if (maxSpeed < speed) maxSpeed = speed; - } + } float speed = 0.0f; speed += GetMobilitySkill(car, player, Player::stMotor, -1); @@ -3713,7 +3713,7 @@ float Garage::GetSpeedSkill(Garage::Car* car, Player* player) } int Garage::GetCarCost(Car* car) -{ +{ return _race->GetCost(car->GetCost()); } @@ -3773,7 +3773,7 @@ bool Garage::BuyCar(Player* player, Garage::Car* car) Record* slot = player->GetSlot(type); if (curCar) - { + { const PlaceSlot& curPlace = curCar->GetSlot(type); if (!curPlace.lock && curSlot && curSlot != slot) @@ -3782,7 +3782,7 @@ bool Garage::BuyCar(Player* player, Garage::Car* car) for (int j = 0; j < Player::cSlotTypeEnd; ++j) if (slots[j].first && slots[j].first->GetRecord() == curSlot) { - isFind = true; + isFind = true; break; } if (!isFind) @@ -3854,7 +3854,7 @@ void Garage::SetWeaponMaxLevel(int value) for (Race::PlayerList::const_iterator iter = _race->GetPlayerList().begin(); iter != _race->GetPlayerList().end(); ++iter) { if ((*iter)->IsHuman()) - { + { for (int i = _weaponMaxLevel; i < Garage::cWeaponMaxLevel; ++i) (*iter)->SetSlot((Player::SlotType)(i + Player::stWeapon1), NULL); } @@ -3891,11 +3891,11 @@ int Planet::Track::GetIndex() const return _index; } -Planet* Planet::Track::GetPlanet() +Planet* Planet::Track::GetPlanet() { return _planet; } - + unsigned Planet::Track::GetLapsCount() { return _planet->_race->IsCampaign() ? numLaps : _planet->_race->GetTournament().GetLapsCount(); @@ -3987,7 +3987,7 @@ void Planet::CompletePass(int pass) for (Cars::const_iterator iter = _cars.begin(); iter != _cars.end(); ++iter) if (iter->pass == pass) - _race->GetGarage().InsertItem(_race->GetGarage().FindCar(iter->record)); + _race->GetGarage().InsertItem(_race->GetGarage().FindCar(iter->record)); } void Planet::SaveSlots(lsl::SWriter* writer, const std::string& name, Slots& mSlots, Tournament* owner) @@ -4195,7 +4195,7 @@ void Planet::SetPass(int value) { if (_pass >= 0) CompletePass(_pass); - + _pass = value; if (_pass >= 0) @@ -4223,7 +4223,7 @@ void Planet::SaveTo(lsl::SWriter* writer, Tournament* owner) for (TrackMap::const_iterator iterMap = _trackMap.begin(); iterMap != _trackMap.end(); ++iterMap, ++i) { const Tracks& trackList = iterMap->second; - + lsl::SWriter* tracks = trackMap->NewDummyNode(lsl::StrFmt("tracks%d", i).c_str()); tracks->WriteAttr("pass", iterMap->first); @@ -4288,7 +4288,7 @@ void Planet::SaveTo(lsl::SWriter* writer, Tournament* owner) child->WriteValue("id", iter->id); lsl::SWriteValue(child, "name", iter->name); lsl::SWriteValue(child, "bonus", iter->bonus); - child->WriteRef("photo", iter->photo); + child->WriteRef("photo", iter->photo); child->WriteValue("maxPass", iter->maxPass); SaveCars(child, "cars", iter->cars, owner); @@ -4304,7 +4304,7 @@ void Planet::LoadFrom(lsl::SReader* reader, Tournament* owner) ClearCars(); ClearSlots(); ClearPlayers(); - ClearTracks(); + ClearTracks(); lsl::SReadValue(reader, "name", _name); lsl::SReadValue(reader, "info", _info); @@ -4416,7 +4416,7 @@ void Planet::LoadFrom(lsl::SReader* reader, Tournament* owner) { lsl::SReader* child = players->FirstChildValue(); while (child) - { + { PlayerData player; child->ReadValue("id", player.id); @@ -4425,7 +4425,7 @@ void Planet::LoadFrom(lsl::SReader* reader, Tournament* owner) child->ReadValue("maxPass", player.maxPass); if (child->ReadRef("photo", true, NULL, &fixUpName)) - player.photo = fixUpName.GetCollItem(); + player.photo = fixUpName.GetCollItem(); LoadCars(child, "cars", player.cars, owner); LoadSlots(child, "slots", player.slots, owner); @@ -4443,7 +4443,7 @@ void Planet::LoadFrom(lsl::SReader* reader, Tournament* owner) { lsl::SReader* child = tracks->FirstChildValue(); while (child) - { + { Track* track = AddTrack(1); child->ReadValue("level", track->level); @@ -4524,7 +4524,7 @@ int Planet::GetRequestPoints(int pass) const } bool Planet::HasRequestPoints(int pass, int points) const -{ +{ int req = GetRequestPoints(pass); if (req == -1) return false; @@ -4540,7 +4540,7 @@ Planet::State Planet::GetState() const void Planet::SetState(State value) { if (_state == value) - return; + return; switch (value) { @@ -4691,7 +4691,7 @@ void Planet::InsertCar(const CarData& car) void Planet::InsertCar(MapObjRec* car, int pass) { CarData data; - data.record = car; + data.record = car; data.pass = pass; InsertCar(data); @@ -4736,7 +4736,7 @@ const Planet::Cars& Planet::GetCars() const void Planet::InsertPlayer(const PlayerData& data) { if (data.photo) - data.photo->AddRef(); + data.photo->AddRef(); for (Cars::const_iterator iter = data.cars.begin(); iter != data.cars.end(); ++iter) iter->record->AddRef(); for (Slots::const_iterator iter = data.slots.begin(); iter != data.slots.end(); ++iter) @@ -4750,7 +4750,7 @@ void Planet::ClearPlayers() for (Players::iterator iter = _players.begin(); iter != _players.end(); ++iter) { if (iter->photo) - iter->photo->Release(); + iter->photo->Release(); for (Cars::const_iterator iterCar = iter->cars.begin(); iterCar != iter->cars.end(); ++iterCar) iterCar->record->Release(); @@ -4790,7 +4790,7 @@ Planet::PlayerData Planet::GetBoss() const Tournament::Tournament(Race* race, const std::string& name): _race(race), _curPlanet(0), _curTrack(0), _wheater(Environment::ewFair), _wheaterNightPass(false), _lapsCount(4) -{ +{ SetName(name); SetOwner(race); @@ -4873,25 +4873,25 @@ void Tournament::LoadPlanets() Planet::Track* track = planet->AddTrack(1); track->level = "Data\\Map\\World1\\map8.r3dMap"; track->numLaps = 4; - } + } - planet->InsertCar("marauder", 0); - planet->InsertCar("dirtdevil", 0); + planet->InsertCar("marauder", 0); + planet->InsertCar("dirtdevil", 0); planet->InsertCar("manticora", 0); - planet->InsertSlot("rocketLauncher", 0); - planet->InsertSlot("pulsator", 0); + planet->InsertSlot("rocketLauncher", 0); + planet->InsertSlot("pulsator", 0); //Player1 { Planet::PlayerData data; data.id = Race::cComputer1; data.name = scTarquin; - data.photo = _race->GetTexture("GUI\\Chars\\tarquin.png"); + data.photo = _race->GetTexture("GUI\\Chars\\tarquin.png"); data.maxPass = 2; //first - data.cars.push_back(Planet::CarData(_race->GetCar("manticoraBoss"), 1)); + data.cars.push_back(Planet::CarData(_race->GetCar("manticoraBoss"), 1)); // data.slots.push_back(Planet::SlotData(_race->GetSlot("engine1"), 0, Player::stMotor, 1)); data.slots.push_back(Planet::SlotData(_race->GetSlot("armor1"), 0, Player::stArmor, 1)); @@ -4923,11 +4923,11 @@ void Tournament::LoadPlanets() Planet::PlayerData data; data.id = Race::cComputer2; data.name = scRip; - data.photo = _race->GetTexture("GUI\\Chars\\rip.png"); + data.photo = _race->GetTexture("GUI\\Chars\\rip.png"); data.maxPass = 2; //first - data.cars.push_back(Planet::CarData(_race->GetCar("marauder"), 1)); + data.cars.push_back(Planet::CarData(_race->GetCar("marauder"), 1)); // data.slots.push_back(Planet::SlotData(_race->GetSlot("engine1"), 0, Player::stMotor, 1)); data.slots.push_back(Planet::SlotData(_race->GetSlot("armor1"), 0, Player::stArmor, 1)); @@ -4957,7 +4957,7 @@ void Tournament::LoadPlanets() Planet::PlayerData data; data.id = Race::cComputer3; data.name = scSnake; - data.photo = _race->GetTexture("GUI\\Chars\\snake.png"); + data.photo = _race->GetTexture("GUI\\Chars\\snake.png"); data.maxPass = 2; //first @@ -4968,7 +4968,7 @@ void Tournament::LoadPlanets() data.slots.push_back(Planet::SlotData(_race->GetSlot("wheel1"), 0, Player::stWheel, 1)); data.slots.push_back(Planet::SlotData(_race->GetSlot("truba2"), 0, Player::stTruba, 1)); // - data.slots.push_back(Planet::SlotData(_race->GetSlot("rifleWeapon"), 4, Player::stWeapon1, 1)); + data.slots.push_back(Planet::SlotData(_race->GetSlot("rifleWeapon"), 4, Player::stWeapon1, 1)); data.slots.push_back(Planet::SlotData(_race->GetSlot("maslo"), 2, Player::stMine, 1)); //data.slots.push_back(Planet::SlotData(_race->GetSlot("spring"), 1, Player::stHyper, 1)); @@ -4985,7 +4985,7 @@ void Tournament::LoadPlanets() //data.slots.push_back(Planet::SlotData(_race->GetSlot("spring"), 3, Player::stHyper, 2)); planet->InsertPlayer(data); - } + } } { @@ -4999,7 +4999,7 @@ void Tournament::LoadPlanets() wheaters.push_back(Planet::Wheater(Environment::ewRainy, 25)); wheaters.push_back(Planet::Wheater(Environment::ewNight, 10)); planet->SetWheaters(wheaters); - + Planet::RequestPoints points; points[1] = 2000; points[2] = 2400; @@ -5061,19 +5061,19 @@ void Tournament::LoadPlanets() track->numLaps = 4; } - planet->InsertCar("guseniza", 0); + planet->InsertCar("guseniza", 0); - planet->InsertSlot("fireGun", 0); - planet->InsertSlot("drobilka", 0); - planet->InsertSlot("torpedaWeapon", 0); - planet->InsertSlot("turel", 0); + planet->InsertSlot("fireGun", 0); + planet->InsertSlot("drobilka", 0); + planet->InsertSlot("torpedaWeapon", 0); + planet->InsertSlot("turel", 0); //Player1 { Planet::PlayerData data; data.id = Race::cComputer1; data.name = scTarquin; - data.photo = _race->GetTexture("GUI\\Chars\\tarquin.png"); + data.photo = _race->GetTexture("GUI\\Chars\\tarquin.png"); data.maxPass = 2; //first @@ -5111,7 +5111,7 @@ void Tournament::LoadPlanets() Planet::PlayerData data; data.id = Race::cComputer2; data.name = scRip; - data.photo = _race->GetTexture("GUI\\Chars\\rip.png"); + data.photo = _race->GetTexture("GUI\\Chars\\rip.png"); data.maxPass = 2; //first @@ -5149,7 +5149,7 @@ void Tournament::LoadPlanets() Planet::PlayerData data; data.id = Race::cComputer3; data.name = scTarquin; - data.photo = _race->GetTexture("GUI\\Chars\\snake.png"); + data.photo = _race->GetTexture("GUI\\Chars\\snake.png"); data.maxPass = 2; //first @@ -5178,7 +5178,7 @@ void Tournament::LoadPlanets() data.slots.push_back(Planet::SlotData(_race->GetSlot("hyperdrive"), 3, Player::stHyper, 2)); planet->InsertPlayer(data); - } + } } { @@ -5246,20 +5246,20 @@ void Tournament::LoadPlanets() Planet::Track* track = planet->AddTrack(1); track->level = "Data\\Map\\World3\\map8.r3dMap"; track->numLaps = 4; - } - + } + planet->InsertCar("podushka", 0); planet->InsertCar("monstertruck", 0); - - planet->InsertSlot("mortira", 0); - planet->InsertSlot("phaseImpulse", 0); + + planet->InsertSlot("mortira", 0); + planet->InsertSlot("phaseImpulse", 0); //Player1 { Planet::PlayerData data; data.id = Race::cComputer1; data.name = scTarquin; - data.photo = _race->GetTexture("GUI\\Chars\\tarquin.png"); + data.photo = _race->GetTexture("GUI\\Chars\\tarquin.png"); data.maxPass = 2; //first @@ -5272,7 +5272,7 @@ void Tournament::LoadPlanets() // data.slots.push_back(Planet::SlotData(_race->GetSlot("asyncFrost"), 4, Player::stWeapon1, 1)); data.slots.push_back(Planet::SlotData(_race->GetSlot("torpedaWeapon"), 2, Player::stWeapon2, 1)); - data.slots.push_back(Planet::SlotData(_race->GetSlot("fireGun"), 5, Player::stWeapon3, 1)); + data.slots.push_back(Planet::SlotData(_race->GetSlot("fireGun"), 5, Player::stWeapon3, 1)); data.slots.push_back(Planet::SlotData(_race->GetSlot("mine2"), 4, Player::stMine, 1)); data.slots.push_back(Planet::SlotData(_race->GetSlot("hyperdrive"), 6, Player::stHyper, 1)); @@ -5298,7 +5298,7 @@ void Tournament::LoadPlanets() Planet::PlayerData data; data.id = Race::cComputer2; data.name = scRip; - data.photo = _race->GetTexture("GUI\\Chars\\rip.png"); + data.photo = _race->GetTexture("GUI\\Chars\\rip.png"); data.maxPass = 2; //first @@ -5335,7 +5335,7 @@ void Tournament::LoadPlanets() Planet::PlayerData data; data.id = Race::cComputer3; data.name = scSnake; - data.photo = _race->GetTexture("GUI\\Chars\\snake.png"); + data.photo = _race->GetTexture("GUI\\Chars\\snake.png"); data.maxPass = 2; //first @@ -5361,12 +5361,12 @@ void Tournament::LoadPlanets() // data.slots.push_back(Planet::SlotData(_race->GetSlot("tankLaser"), 7, Player::stWeapon1, 2)); data.slots.push_back(Planet::SlotData(_race->GetSlot("drobilka"), 7, Player::stWeapon2, 2)); - data.slots.push_back(Planet::SlotData(_race->GetSlot("pulsator"), 3, Player::stWeapon3, 2)); + data.slots.push_back(Planet::SlotData(_race->GetSlot("pulsator"), 3, Player::stWeapon3, 2)); data.slots.push_back(Planet::SlotData(_race->GetSlot("mine2"), 4, Player::stMine, 2)); data.slots.push_back(Planet::SlotData(_race->GetSlot("hyperdrive"), 5, Player::stHyper, 2)); planet->InsertPlayer(data); - } + } } { @@ -5448,7 +5448,7 @@ void Tournament::LoadPlanets() Planet::PlayerData data; data.id = Race::cComputer1; data.name = scTarquin; - data.photo = _race->GetTexture("GUI\\Chars\\tarquin.png"); + data.photo = _race->GetTexture("GUI\\Chars\\tarquin.png"); data.maxPass = 2; //first @@ -5461,7 +5461,7 @@ void Tournament::LoadPlanets() // data.slots.push_back(Planet::SlotData(_race->GetSlot("asyncFrost"), 4, Player::stWeapon1, 1)); data.slots.push_back(Planet::SlotData(_race->GetSlot("torpedaWeapon"), 2, Player::stWeapon2, 1)); - data.slots.push_back(Planet::SlotData(_race->GetSlot("fireGun"), 5, Player::stWeapon3, 1)); + data.slots.push_back(Planet::SlotData(_race->GetSlot("fireGun"), 5, Player::stWeapon3, 1)); data.slots.push_back(Planet::SlotData(_race->GetSlot("mine2"), 4, Player::stMine, 1)); data.slots.push_back(Planet::SlotData(_race->GetSlot("hyperdrive"), 6, Player::stHyper, 1)); @@ -5487,7 +5487,7 @@ void Tournament::LoadPlanets() Planet::PlayerData data; data.id = Race::cComputer2; data.name = scRip; - data.photo = _race->GetTexture("GUI\\Chars\\rip.png"); + data.photo = _race->GetTexture("GUI\\Chars\\rip.png"); data.maxPass = 2; //first @@ -5524,7 +5524,7 @@ void Tournament::LoadPlanets() Planet::PlayerData data; data.id = Race::cComputer3; data.name = scSnake; - data.photo = _race->GetTexture("GUI\\Chars\\snake.png"); + data.photo = _race->GetTexture("GUI\\Chars\\snake.png"); data.maxPass = 2; //first @@ -5550,12 +5550,12 @@ void Tournament::LoadPlanets() // data.slots.push_back(Planet::SlotData(_race->GetSlot("tankLaser"), 7, Player::stWeapon1, 2)); data.slots.push_back(Planet::SlotData(_race->GetSlot("drobilka"), 7, Player::stWeapon2, 2)); - data.slots.push_back(Planet::SlotData(_race->GetSlot("pulsator"), 3, Player::stWeapon3, 2)); + data.slots.push_back(Planet::SlotData(_race->GetSlot("pulsator"), 3, Player::stWeapon3, 2)); data.slots.push_back(Planet::SlotData(_race->GetSlot("mine2"), 4, Player::stMine, 2)); data.slots.push_back(Planet::SlotData(_race->GetSlot("hyperdrive"), 5, Player::stHyper, 2)); planet->InsertPlayer(data); - } + } } { @@ -5627,16 +5627,16 @@ void Tournament::LoadPlanets() planet->InsertCar("devildriver", 0); planet->InsertCar("buggi", 3); - planet->InsertCar("tankchetti", 3); + planet->InsertCar("tankchetti", 3); - planet->InsertSlot("hyperBlaster", 0); + planet->InsertSlot("hyperBlaster", 0); //Player1 { Planet::PlayerData data; data.id = Race::cComputer1; data.name = scTarquin; - data.photo = _race->GetTexture("GUI\\Chars\\tarquin.png"); + data.photo = _race->GetTexture("GUI\\Chars\\tarquin.png"); data.maxPass = 2; //first @@ -5645,7 +5645,7 @@ void Tournament::LoadPlanets() data.slots.push_back(Planet::SlotData(_race->GetSlot("engine3"), 0, Player::stMotor, 1)); data.slots.push_back(Planet::SlotData(_race->GetSlot("armor3"), 0, Player::stArmor, 1)); // - data.slots.push_back(Planet::SlotData(_race->GetSlot("sonar"), 5, Player::stWeapon1, 1)); + data.slots.push_back(Planet::SlotData(_race->GetSlot("sonar"), 5, Player::stWeapon1, 1)); data.slots.push_back(Planet::SlotData(_race->GetSlot("mine3"), 6, Player::stMine, 1)); data.slots.push_back(Planet::SlotData(_race->GetSlot("hyperdrive"), 7, Player::stHyper, 1)); @@ -5655,7 +5655,7 @@ void Tournament::LoadPlanets() data.slots.push_back(Planet::SlotData(_race->GetSlot("engine3"), 0, Player::stMotor, 2)); data.slots.push_back(Planet::SlotData(_race->GetSlot("armor3"), 0, Player::stArmor, 2)); // - data.slots.push_back(Planet::SlotData(_race->GetSlot("sonar"), 7, Player::stWeapon1, 2)); + data.slots.push_back(Planet::SlotData(_race->GetSlot("sonar"), 7, Player::stWeapon1, 2)); data.slots.push_back(Planet::SlotData(_race->GetSlot("mine3"), 7, Player::stMine, 2)); data.slots.push_back(Planet::SlotData(_race->GetSlot("hyperdrive"), 7, Player::stHyper, 2)); @@ -5666,7 +5666,7 @@ void Tournament::LoadPlanets() Planet::PlayerData data; data.id = Race::cComputer2; data.name = scRip; - data.photo = _race->GetTexture("GUI\\Chars\\rip.png"); + data.photo = _race->GetTexture("GUI\\Chars\\rip.png"); data.maxPass = 2; //first @@ -5692,7 +5692,7 @@ void Tournament::LoadPlanets() // data.slots.push_back(Planet::SlotData(_race->GetSlot("asyncFrost"), 7, Player::stWeapon1, 2)); data.slots.push_back(Planet::SlotData(_race->GetSlot("mortira"), 3, Player::stWeapon2, 2)); - data.slots.push_back(Planet::SlotData(_race->GetSlot("rocketLauncher"), 7, Player::stWeapon3, 2)); + data.slots.push_back(Planet::SlotData(_race->GetSlot("rocketLauncher"), 7, Player::stWeapon3, 2)); data.slots.push_back(Planet::SlotData(_race->GetSlot("mine2"), 7, Player::stMine, 2)); data.slots.push_back(Planet::SlotData(_race->GetSlot("hyperdrive"), 7, Player::stHyper, 2)); @@ -5703,7 +5703,7 @@ void Tournament::LoadPlanets() Planet::PlayerData data; data.id = Race::cComputer3; data.name = scSnake; - data.photo = _race->GetTexture("GUI\\Chars\\snake.png"); + data.photo = _race->GetTexture("GUI\\Chars\\snake.png"); data.maxPass = 2; //first @@ -5716,7 +5716,7 @@ void Tournament::LoadPlanets() // data.slots.push_back(Planet::SlotData(_race->GetSlot("tankLaser"), 7, Player::stWeapon1, 1)); data.slots.push_back(Planet::SlotData(_race->GetSlot("drobilka"), 7, Player::stWeapon2, 1)); - data.slots.push_back(Planet::SlotData(_race->GetSlot("turel"), 4, Player::stWeapon3, 1)); + data.slots.push_back(Planet::SlotData(_race->GetSlot("turel"), 4, Player::stWeapon3, 1)); data.slots.push_back(Planet::SlotData(_race->GetSlot("mine2"), 5, Player::stMine, 1)); data.slots.push_back(Planet::SlotData(_race->GetSlot("hyperdrive"), 6, Player::stHyper, 1)); @@ -5734,7 +5734,7 @@ void Tournament::LoadPlanets() data.slots.push_back(Planet::SlotData(_race->GetSlot("hyperdrive"), 7, Player::stHyper, 2)); planet->InsertPlayer(data); - } + } } } @@ -5765,8 +5765,8 @@ void Tournament::LoadLib() lsl::RootNode rootNode("tournametRoot", _race); try - { - SerialFileXML xml; + { + SerialFileXML xml; xml.LoadNodeFromFile(rootNode, "tournamet.xml"); rootNode.Load(this); @@ -5790,7 +5790,7 @@ void Tournament::Save(lsl::SWriter* writer) { std::stringstream sstream; sstream << "planet" << i; - lsl::SWriter* child = planets->NewDummyNode(sstream.str().c_str()); + lsl::SWriter* child = planets->NewDummyNode(sstream.str().c_str()); (*iter)->SaveTo(child, this); } @@ -5801,7 +5801,7 @@ void Tournament::Save(lsl::SWriter* writer) { std::stringstream sstream; sstream << "gamer" << i; - lsl::SWriter* child = gamers->NewDummyNode(sstream.str().c_str()); + lsl::SWriter* child = gamers->NewDummyNode(sstream.str().c_str()); (*iter)->SaveTo(child, this); } @@ -5817,9 +5817,9 @@ void Tournament::Load(lsl::SReader* reader) { lsl::SReader* child = planets->FirstChildValue(); while (child) - { + { Planet* planet = AddPlanet(); - planet->LoadFrom(child, this); + planet->LoadFrom(child, this); child = child->NextValue(); } @@ -5830,7 +5830,7 @@ void Tournament::Load(lsl::SReader* reader) { lsl::SReader* child = gamers->FirstChildValue(); while (child) - { + { Planet* gamer = AddGamer(); gamer->LoadFrom(child, this); @@ -5879,7 +5879,7 @@ Planet* Tournament::FindPlanet(const std::string& name) Planet* Tournament::NextPlanet(Planet* planet) { Planets::iterator iter = FindPlanet(planet); - + if (iter != _planets.end() && iter != --_planets.end()) return *(++iter); @@ -5889,8 +5889,8 @@ Planet* Tournament::NextPlanet(Planet* planet) Planet* Tournament::PrevPlanet(Planet* planet) { Planets::iterator iter = FindPlanet(planet); - - if (iter != _planets.begin()) + + if (iter != _planets.begin()) return *(--iter); return 0; @@ -5952,7 +5952,7 @@ void Tournament::CompleteTrack(int points, bool& passComplete, bool& passChampio passChampion = false; planetChampion = false; - Planet::Track* nextTrack = NextTrack(_curTrack); + Planet::Track* nextTrack = NextTrack(_curTrack); if (nextTrack == NULL) { @@ -6007,7 +6007,7 @@ void Tournament::SetCurPlanet(Planet* value) { _trackList.clear(); _curPlanet = value; - + if (_curPlanet) { SetCurTrack(NextTrack(NULL)); @@ -6062,7 +6062,7 @@ Planet::Track* Tournament::NextTrack(Planet::Track* track) Planet::Track* nextTrack = NULL; if (_race->IsCampaign()) - { + { if (track != NULL) { nextTrack = _curPlanet->NextTrack(track); @@ -6081,7 +6081,7 @@ Planet::Track* Tournament::NextTrack(Planet::Track* track) if (_trackList.size() == 0) { for (Planet::TrackMap::const_iterator iter = _curPlanet->GetTrackMap().begin(); iter != _curPlanet->GetTrackMap().end(); ++iter) - { + { if (iter->second.size() > 0) { _trackList.insert(_trackList.end(), iter->second.begin(), iter->second.end()); @@ -6093,7 +6093,7 @@ Planet::Track* Tournament::NextTrack(Planet::Track* track) _wheaterNightPass = false; } - + nextTrack = _trackList.front(); _trackList.erase(_trackList.begin()); } @@ -6194,7 +6194,7 @@ Race::Race(GameMode* game, const std::string& name): _game(game), _profile(0), _ LSL_LOG("race create aiSystem"); - _aiSystem = new AISystem(this); + _aiSystem = new AISystem(this); LSL_LOG("race create profiles"); @@ -6216,7 +6216,7 @@ Race::~Race() ClearProfiles(); ClearAIPlayers(); FreeHuman(); - ClearPlayerList(); + ClearPlayerList(); delete _snClientProfile; delete _skProfile; @@ -6230,7 +6230,7 @@ Race::~Race() } Race::Profile::Profile(Race* race, const std::string& name): _race(race), _name(name), _netGame(false), _difficulty(gdNormal) -{ +{ } void Race::Profile::Enter() @@ -6264,7 +6264,7 @@ void Race::Profile::SaveGame(std::ostream& stream) SaveGame(writer); lsl::SWriteEnum(writer, "dfficulty", _difficulty, cDifficultyStr, cDifficultyEnd); - node.EndSave(); + node.EndSave(); lsl::SerialFileXML file; file.SaveNode(node, stream); @@ -6274,7 +6274,7 @@ void Race::Profile::LoadGame(std::istream& stream) { Reset(); - lsl::RootNode node("profile", _race); + lsl::RootNode node("profile", _race); lsl::SerialFileXML file; file.LoadNode(node, stream); @@ -6335,7 +6335,7 @@ void Race::Profile::difficulty(Difficulty value) } Race::SnProfile::SnProfile(Race* race, const std::string& name): _MyBase(race, name) -{ +{ } void Race::SnProfile::SaveWorkshop(lsl::SWriter* writer) @@ -6349,7 +6349,7 @@ void Race::SnProfile::SaveWorkshop(lsl::SWriter* writer) std::stringstream stream; stream << "slot" << i; - RecordLib::SaveRecordRef(slots, stream.str(), (*iter)->GetRecord()); + RecordLib::SaveRecordRef(slots, stream.str(), (*iter)->GetRecord()); } } @@ -6358,11 +6358,11 @@ void Race::SnProfile::LoadWorkshop(lsl::SReader* reader) Workshop& shop = _race->GetWorkshop(); shop.ClearItems(); - lsl::SReader* slots = reader->ReadValue("slots"); + lsl::SReader* slots = reader->ReadValue("slots"); lsl::SReader* slot = slots ? slots->FirstChildValue() : 0; while (slot) { - Record* record = RecordLib::LoadRecordRefFrom(slot); + Record* record = RecordLib::LoadRecordRefFrom(slot); if (Slot* item = shop.FindSlot(record)) shop.InsertItem(item); @@ -6387,11 +6387,11 @@ void Race::SnProfile::LoadGarage(lsl::SReader* reader) Garage& shop = _race->GetGarage(); shop.ClearItems(); - lsl::SReader* cars = reader->ReadValue("cars"); + lsl::SReader* cars = reader->ReadValue("cars"); lsl::SReader* car = cars ? cars->FirstChildValue() : 0; while (car) { - MapObjRec* record = MapObjLib::LoadRecordRefFrom(car); + MapObjRec* record = MapObjLib::LoadRecordRefFrom(car); if (Garage::Car* item = shop.FindCar(record)) shop.InsertItem(item); @@ -6429,7 +6429,7 @@ void Race::SnProfile::LoadTournament(lsl::SReader* reader) tournament.GetPlanets()[i]->SetState(Planet::State(v)); if (planet->ReadValue("pass", v)) tournament.GetPlanets()[i]->SetPass(v); - } + } } if (reader->ReadValue("planet", ind)) @@ -6502,14 +6502,14 @@ void Race::SnProfile::LoadPlayer(Player* player, lsl::SReader* reader) lsl::SReader* node = reader->ReadValue(lsl::StrFmt("slot%d", i).c_str()); if (node) { - Record* slotRef = RecordLib::LoadRecordRefFrom(node); + Record* slotRef = RecordLib::LoadRecordRefFrom(node); Slot* slot = _race->GetWorkshop().FindSlot(slotRef); - const lsl::SReader::ValueDesc* desc = node ? node->ReadAttr("charge") : 0; - + const lsl::SReader::ValueDesc* desc = node ? node->ReadAttr("charge") : 0; + if (car && slot) { Slot* inst = _race->GetGarage().InstalSlot(player, Player::SlotType(i), car, slot); - + WeaponItem* wpn = inst ? inst->GetItem().IsWeaponItem() : 0; if (wpn && desc) { @@ -6517,7 +6517,7 @@ void Race::SnProfile::LoadPlayer(Player* player, lsl::SReader* reader) desc->CastTo(&v); inst->GetItem().IsWeaponItem()->SetCntCharge(v); } - } + } } } } @@ -6526,7 +6526,7 @@ void Race::SnProfile::SaveHumans(lsl::SWriter* writer) { lsl::SWriter* humans = writer->NewDummyNode("humans"); - int i = 0; + int i = 0; for (PlayerList::const_iterator iter = _race->GetPlayerList().begin(); iter != _race->GetPlayerList().end(); ++iter, ++i) if ((*iter)->IsHuman() || (*iter)->IsOpponent()) { @@ -6596,7 +6596,7 @@ void Race::SnProfile::SaveGame(lsl::SWriter* writer) //SaveGarage(writer); SaveHumans(writer); - //SaveAIPlayers(writer); + //SaveAIPlayers(writer); } void Race::SnProfile::LoadGame(lsl::SReader* reader) @@ -6629,7 +6629,7 @@ void Race::SkProfile::EnterGame() //planet->SetPass(3); } } - + _race->GetTournament().GetPlanets()[0]->Unlock(); _race->GetTournament().GetPlanets()[0]->Open(); _race->GetTournament().SetCurPlanet(_race->GetTournament().GetPlanets()[0]); @@ -6664,7 +6664,7 @@ void Race::DisposePlayer(Player* player) { if (GetWorld()->GetCamera()->GetPlayer() == player) GetWorld()->GetCamera()->SetPlayer(0); - + SendEvent(cPlayerDispose, &EventData(player->GetId())); player->Release(); @@ -6672,12 +6672,12 @@ void Race::DisposePlayer(Player* player) } void Race::CompleteRace(Player* player) -{ +{ //защита от двойного завершения трасы на всякий случай if (GetResult(player->GetId()) == NULL) { Result result; - result.playerId = player->GetId(); + result.playerId = player->GetId(); result.place = !_results.empty() ? _results.back().place + 1 : 1; result.voiceNameDur = 1.5f; @@ -6718,7 +6718,7 @@ void Race::CompleteRace(const Results* results) typedef lsl::List MyPlayers; - MyPlayers players; + MyPlayers players; if (results) { @@ -6758,7 +6758,7 @@ void Race::CompleteRace(const Results* results) players.sort(); //принудительно завершаем гонку для сотавшихся игроков - for (MyPlayers::iterator iter = players.begin(); iter != players.end(); ++iter) + for (MyPlayers::iterator iter = players.begin(); iter != players.end(); ++iter) CompleteRace(iter->inst); if (IsCampaign()) @@ -6848,7 +6848,7 @@ void Race::SaveGame(lsl::SWriter* writer) void Race::LoadGame(lsl::SReader* reader) { lsl::StringVec vec; - lsl::string str; + lsl::string str; ClearProfiles(); _planetsCompleted.clear(); @@ -6929,9 +6929,9 @@ void Race::OnLateProgress(float deltaTime, bool pxStep) Player* lastThird = _playerPlaceList.size() >= 3 ? _playerPlaceList[2] : NULL; _playerPlaceList = _playerList; - struct Pred + struct Pred { - bool operator()(const Player* p1, const Player* p2) const + bool operator()(const Player* p1, const Player* p2) const { if (p1->GetFinished() && p2->GetFinished()) return p1->GetPlace() < p2->GetPlace(); @@ -6949,7 +6949,7 @@ void Race::OnLateProgress(float deltaTime, bool pxStep) for (unsigned i = 0; i < _playerPlaceList.size(); ++i) _playerPlaceList[i]->SetPlace(i + 1); - Player* leaderPlayer = !_playerPlaceList.empty() ? _playerPlaceList.front(): NULL; + Player* leaderPlayer = !_playerPlaceList.empty() ? _playerPlaceList.front(): NULL; Player* secondPlayer = _playerPlaceList.size() >= 2 ? _playerPlaceList[1] : NULL; Player* thirdPlayer = _playerPlaceList.size() >= 3 ? _playerPlaceList[2] : NULL; Player* nextLastPlayer = _playerPlaceList.size() >= 2 ? _playerPlaceList[_playerPlaceList.size() - 2] : NULL; @@ -7000,7 +7000,7 @@ Player* Race::AddPlayer(int plrId) const D3DXCOLOR color[cMaxPlayers] = {D3DXCOLOR(0xFF5B29A5), D3DXCOLOR(0xFF9E9E9E), D3DXCOLOR(0xFFFF80C0), D3DXCOLOR(0xFF83F7CC), D3DXCOLOR(0xFF83E500), D3DXCOLOR(0xFFD8E585), D3DXCOLOR(0xFF6100B9), D3DXCOLOR(0xFF006CA4)}; Player* player = new Player(this); - player->AddRef(); + player->AddRef(); player->SetId(plrId); _playerList.push_back(player); @@ -7092,7 +7092,7 @@ HumanPlayer* Race::CreateHuman(Player* player) FreeHuman(); _human = new HumanPlayer(player); - _human->AddRef(); + _human->AddRef(); return _human; } @@ -7130,7 +7130,7 @@ void Race::CreatePlayers(unsigned numAI) { Player* player = AddPlayer(cComputer1 + i - 1); -#if DEBUG_WEAPON +#if DEBUG_WEAPON continue; #endif @@ -7234,7 +7234,7 @@ void Race::DelProfile(Profile* profile, bool saveLib) { DelProfile(_profiles.Find(profile), saveLib); } - + void Race::ClearProfiles(bool saveLib) { while (!_profiles.empty()) @@ -7278,7 +7278,7 @@ std::string Race::MakeProfileName(const std::string& base) const return test; } - + const Race::Profiles& Race::GetProfiles() const { return _profiles; @@ -7294,7 +7294,7 @@ void Race::EnterProfile(Profile* profile, Mode mode) _mode = mode; _carChanged = false; _minDifficulty = cDifficultyEnd; - _profile->AddRef(); + _profile->AddRef(); if (mode != rmSkirmish && profile != _snClientProfile) { @@ -7310,7 +7310,7 @@ void Race::EnterProfile(Profile* profile, Mode mode) void Race::ExitProfile() { if (_profile) - { + { _profile->Release(); _profile = 0; @@ -7337,16 +7337,16 @@ void Race::NewProfile(Mode mode, bool netGame, bool netClient) std::string name = MakeProfileName(); Race::Profile* profile = AddProfile(name); - profile->netGame(netGame); + profile->netGame(netGame); EnterProfile(profile, rmChampionship); } break; } - + case rmSkirmish: { - EnterProfile(_skProfile, rmSkirmish); + EnterProfile(_skProfile, rmSkirmish); _skProfile->netGame(netGame); LoadProfile(); break; @@ -7363,7 +7363,7 @@ bool Race::IsMatchStarted() const void Race::SaveProfile() { if (_profile) - _profile->SaveGameFile(); + _profile->SaveGameFile(); } void Race::LoadProfile() @@ -7483,7 +7483,7 @@ void Race::ResetCarPos() { const unsigned cRowLength = 4; const float rowSpace = 7.0f; - + D3DXVECTOR3 stPos = ZVector * 7.0f; D3DXVECTOR3 dirVec = XVector; D3DXVECTOR3 lineVec = YVector; @@ -7529,24 +7529,24 @@ void Race::ResetCarPos() plSize += gameObj->GetGrActor().GetLocalAABB(true).GetSizes().y; } - spaceY = std::max((nodeWidth - plSize) / (count + 1.0f), 0.0f); + spaceY = std::max((nodeWidth - plSize) / (count + 1.0f), 0.0f); } Player* player = _playerList[i]; MapObj* mapObj = player->GetCar().mapObj; - GameObject* gameObj = player->GetCar().gameObj; + GameObject* gameObj = player->GetCar().gameObj; if (mapObj) { AABB aabb = gameObj->GetGrActor().GetLocalAABB(true); - D3DXVECTOR3 size = aabb.GetSizes(); + D3DXVECTOR3 size = aabb.GetSizes(); //dirVec начинается с небольшого порога чтобы машина не оказалась на последнем тайле gameObj->SetWorldPos(stPos + dirVec * (0.1f - i / 4 * rowSpace) + lineVec * (-nodeWidth / 2.0f + spaceY + size.y/2.0f + stepY)); stepY += size.y + spaceY; gameObj->GetGrActor().SetDir(dirVec); - gameObj->GetGrActor().SetUp(ZVector); + gameObj->GetGrActor().SetUp(ZVector); gameObj->SetWorldRot(gameObj->GetGrActor().GetWorldRot()); gameObj->GetPxActor().GetNxActor()->setLinearVelocity(NxVec3(NullVector)); @@ -7566,7 +7566,7 @@ void Race::StartRace() { _startRace = true; - _goRace = false; + _goRace = false; _game->RegFixedStepEvent(this); _game->RegLateProgressEvent(this); @@ -7575,7 +7575,7 @@ void Race::StartRace() ResetChampion(); _lastThirdPlace = _lastLeadPlace = 0; - GetWorld()->LoadLevel(_tournament->GetCurTrack().level); + GetWorld()->LoadLevel(_tournament->GetCurTrack().level); #ifdef _DEBUG Environment::Wheater wheater = Environment::ewClody; @@ -7681,7 +7681,7 @@ void Race::ExitRace(const Results* results) _achievment->ResetRaceState(); GetWorld()->GetCamera()->SetPlayer(NULL); - GetWorld()->GetEnv()->ReleaseScene(); + GetWorld()->GetEnv()->ReleaseScene(); GetWorld()->GetLogic()->CleanGameObjs(); GetMap()->Clear(); @@ -7774,7 +7774,7 @@ void Race::SendEvent(unsigned id, EventData* data) void Race::OnLapPass(Player* player) { - bool isHuman = player->IsHuman(); + bool isHuman = player->IsHuman(); if (player->GetCar().numLaps >= _tournament->GetCurTrack().GetLapsCount()) { diff --git a/src/Rock3dGame/source/game/RaceMenu2.cpp b/src/Rock3dGame/source/game/RaceMenu2.cpp index 0af71bb6..7b334248 100644 --- a/src/Rock3dGame/source/game/RaceMenu2.cpp +++ b/src/Rock3dGame/source/game/RaceMenu2.cpp @@ -16,7 +16,7 @@ namespace n CarFrame::CarFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent): MenuFrame(menu, parent), _raceMenu(raceMenu), _car(NULL), _carMapObj(NULL), _camStyle(cCamStyleEnd) { MapObjRec* record = menu->GetDB()->GetRecord(MapObjLib::ctDecoration, "Misc\\garage"); - _garageMapObj = &menu->GetRace()->GetMap()->AddMapObj(record); + _garageMapObj = &menu->GetRace()->GetMap()->AddMapObj(record); _garageMapObj->GetGameObj().GetGrActor().SetVisible(false); record = menu->GetDB()->GetRecord(MapObjLib::ctDecoration, "Misc\\question"); @@ -83,7 +83,7 @@ Garage::Car* CarFrame::GetCar() void CarFrame::SetCar(Garage::Car* value, const D3DXCOLOR& color, bool secret) { if (Object::ReplaceRef(_car, value) || (value && !secret && _carMapObj == NULL)) - { + { if (_carMapObj) menu()->GetRace()->GetMap()->DelMapObj(_carMapObj); _carMapObj = NULL; @@ -96,7 +96,7 @@ void CarFrame::SetCar(Garage::Car* value, const D3DXCOLOR& color, bool secret) RockCar& gameCar = _carMapObj->GetGameObj(); float wheelOffs = 0; - for (GameCar::Wheels::const_iterator iter = gameCar.GetWheels().begin(); iter != gameCar.GetWheels().end(); ++iter) + for (GameCar::Wheels::const_iterator iter = gameCar.GetWheels().begin(); iter != gameCar.GetWheels().end(); ++iter) { (*iter)->SetPos((*iter)->GetPos() + D3DXVECTOR3(0, 0, -0.5f) * (*iter)->GetShape()->GetSuspensionTravel() + (*iter)->GetOffset()); @@ -184,7 +184,7 @@ void CarFrame::SetSlots(Player* player, bool includeDefSlots) } if (slot) - { + { const Garage::PlaceItem* placeItem = placeSlot.FindItem(slot->GetSlot()->GetRecord()); if (placeItem && slot->GetMapObj()) { @@ -206,7 +206,7 @@ void CarFrame::SetCamStyle(CamStyle value, bool instant) D3DXVECTOR3 pos = NullVector; glm::quat rot = NullQuaternion; CameraManager* camera = menu()->GetRace()->GetWorld()->GetCamera(); - graph::Camera* cameraInst = menu()->GetRace()->GetWorld()->GetGraph()->GetCamera(); + graph::Camera* cameraInst = menu()->GetRace()->GetWorld()->GetGraph()->GetCamera(); camera->StopFly(); @@ -303,7 +303,7 @@ void CarFrame::SetCamStyle(CamStyle value, bool instant) SpaceshipFrame::SpaceshipFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent): MenuFrame(menu, parent), _raceMenu(raceMenu), _redLampTime(0.0f) { - { + { D3DXVECTOR3 center = D3DXVECTOR3(63.0f, 0.0f, 23.0f); MapObjRec* record = menu->GetDB()->GetRecord(MapObjLib::ctDecoration, "Misc\\space2"); @@ -322,7 +322,7 @@ SpaceshipFrame::SpaceshipFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* pare { MapObjRec* record = menu->GetDB()->GetRecord(MapObjLib::ctDecoration, "Misc\\angar"); - _angarMapObj = &menu->GetRace()->GetMap()->AddMapObj(record); + _angarMapObj = &menu->GetRace()->GetMap()->AddMapObj(record); _angarMapObj->GetGameObj().GetGrActor().SetVisible(false); } } @@ -375,7 +375,7 @@ void SpaceshipFrame::OnShow(bool value) menu()->GetEnv()->SwitchOnLamp(2, true); CameraManager* camera = menu()->GetRace()->GetWorld()->GetCamera(); - graph::Camera* cameraInst = menu()->GetRace()->GetWorld()->GetGraph()->GetCamera(); + graph::Camera* cameraInst = menu()->GetRace()->GetWorld()->GetGraph()->GetCamera(); camera->StopFly(); cameraInst->SetPos(D3DXVECTOR3(-43.756214f, -11.786510f, 21.129881f)); @@ -398,7 +398,7 @@ void SpaceshipFrame::OnShow(bool value) GarageFrame::GarageFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent): MenuFrame(menu, parent), _raceMenu(raceMenu), _lastCarIndex(-1) { - const D3DXCOLOR color2 = D3DXCOLOR(214.0f, 214.0f, 214.0f, 255.0f)/255.0f; + const D3DXCOLOR color2 = D3DXCOLOR(214.0f, 214.0f, 214.0f, 255.0f)/255.0f; StringValue strLabels[cLabelEnd] = {svGarage, svNull, svNull, svNull, svCarCost}; std::string fontLabels[cLabelEnd] = {"Header", "Header", "VerySmall", "Item", "Header"}; @@ -425,7 +425,7 @@ GarageFrame::GarageFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent): M _headerBg->SetVisible(false); _moneyBg = menu->CreatePlane(_bottomPanel, this, "GUI\\moneyBg.png", true, IdentityVec2, gui::Material::bmTransparency); - _moneyBg->SetAlign(gui::Widget::waRightBottom); + _moneyBg->SetAlign(gui::Widget::waRightBottom); _stateBg = menu->CreatePlane(_bottomPanel, this, "GUI\\statFrame2.png", true, IdentityVec2, gui::Material::bmTransparency); _stateBg->SetAlign(gui::Widget::waLeftTop); @@ -474,12 +474,12 @@ GarageFrame::GarageFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent): M _rightArrow->SetRot(D3DX_PI); gui::Widget* labelsParent[cLabelEnd] = {_headerBg, _bottomPanel, _bottomPanel, _moneyBg, _bottomPanel}; - for (int i = 0; i < cLabelEnd; ++i) - _labels[i] = menu->CreateLabel(strLabels[i], labelsParent[i], fontLabels[i], NullVec2, horLabels[i], vertLabels[i], colorLabels[i]); + for (int i = 0; i < cLabelEnd; ++i) + _labels[i] = menu->CreateLabel(strLabels[i], labelsParent[i], fontLabels[i], NullVec2, horLabels[i], vertLabels[i], colorLabels[i]); _labels[mlCarInfo]->SetWordWrap(true); _leftColorGrid = menu->CreateGrid(_leftPanel, NULL, gui::Grid::gsVertical); - _leftColorGrid->SetAlign(gui::Widget::waLeft); + _leftColorGrid->SetAlign(gui::Widget::waLeft); _leftColorGrid->SetRot(-D3DX_PI); _leftColorGrid->hideInvisible(false); UpdateColorList(_leftColorGrid, Player::cLeftColors, Player::cColorsCount); @@ -490,7 +490,7 @@ GarageFrame::GarageFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent): M UpdateColorList(_rightColorGrid, Player::cRightColors, Player::cColorsCount); _carGrid = menu->CreateGrid(_topPanel, NULL, gui::Grid::gsHorizontal); - _carGrid->SetAlign(gui::Widget::waLeftTop); + _carGrid->SetAlign(gui::Widget::waLeftTop); } GarageFrame::~GarageFrame() @@ -651,7 +651,7 @@ void GarageFrame::AdjustCarList() void GarageFrame::SelectCar(const CarData& carData) { _carData = carData; - _raceMenu->carFrame()->SetCar(carData.car, player()->GetColor(), carData.locked); + _raceMenu->carFrame()->SetCar(carData.car, player()->GetColor(), carData.locked); Invalidate(); } @@ -660,7 +660,7 @@ void GarageFrame::PrevCar() { Cars::const_iterator iter = FindCar(car()); - if (iter != _cars.begin()) + if (iter != _cars.begin()) SelectCar(*(--iter)); } @@ -678,7 +678,7 @@ gui::Widget* GarageFrame::AddColor(gui::Grid* grid, const D3DXCOLOR& color) gui::PlaneFon* plane = menu()->CreatePlane(box, NULL, "GUI\\colorBox.png", true, IdentityVec2, gui::Material::bmOpaque, Menu::ssButton4); plane->SetEnabled(false); - plane->GetMaterial().SetColor(color); + plane->GetMaterial().SetColor(color); return box; } @@ -707,7 +707,7 @@ void GarageFrame::RefreshColorList(gui::Grid* grid, const D3DXCOLOR colors[], un gui::PlaneFon* plane = static_cast((*iter)->GetChildren().front()); (*iter)->SetVisible(menu()->IsNetGame() ? net()->player()->CheckColor(plane->GetMaterial().GetColor()) : true); - ++iter; + ++iter; } } @@ -770,7 +770,7 @@ void GarageFrame::OnShow(bool value) { Menu::NavElement navElement = {gridItemsLeft[index - 1], {_rightColorGrid->GetChildren().front(), _leftArrow, gridItemsLeft[index - 2], gridItemsLeft[index]}, {cVirtualKeyEnd, cVirtualKeyEnd}}; navElements.push_back(navElement); - } + } if (index + 1 == itemCount) { @@ -795,7 +795,7 @@ void GarageFrame::OnShow(bool value) { Menu::NavElement navElement = {gridItemsRight[index - 1], {_rightArrow, _leftColorGrid->GetChildren().front(), gridItemsRight[index - 2], gridItemsRight[index]}, {cVirtualKeyEnd, cVirtualKeyEnd}}; navElements.push_back(navElement); - } + } if (index + 1 == itemCount) { @@ -861,8 +861,8 @@ void GarageFrame::OnAdjustLayout(const glm::vec2& vpSize) _rightArrow->SetPos(glm::vec2(vpSize.x - _rightPanel->GetSize().x - 45.0f, vpSize.y/2)); _leftColorGrid->SetPos(glm::vec2(-20.0f, 0.0f)); - _rightColorGrid->SetPos(glm::vec2(-20.0f, 0.0f)); - + _rightColorGrid->SetPos(glm::vec2(-20.0f, 0.0f)); + _labels[mlCarName]->SetPos(glm::vec2(10.0f, -155.0f)); _labels[mlMoney]->SetPos(glm::vec2(-53.0f, -29.0f)); _labels[mlPrice]->SetPos(glm::vec2(-523.0f, -80.0f)); @@ -968,7 +968,7 @@ bool GarageFrame::OnClick(gui::Widget* sender, const gui::MouseClick& mClick) if (sender == menu()->GetAcceptSender()) { if (menu()->GetAcceptResultYes()) - { + { if (menu()->BuyCar(car())) _raceMenu->SetState(RaceMenu::msMain); else @@ -1021,10 +1021,10 @@ WorkshopFrame::WorkshopFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent _bottomPanel->SetAlign(gui::Widget::waBottom); _leftPanel = menu->CreatePlane(root(), this, "GUI\\leftPanel3.png", true, IdentityVec2, gui::Material::bmTransparency); - _leftPanel->SetAlign(gui::Widget::waLeft); + _leftPanel->SetAlign(gui::Widget::waLeft); _moneyBg = menu->CreatePlane(_bottomPanel, this, "GUI\\moneyBg.png", true, IdentityVec2, gui::Material::bmTransparency); - _moneyBg->SetAlign(gui::Widget::waRightBottom); + _moneyBg->SetAlign(gui::Widget::waRightBottom); _stateBg = menu->CreatePlane(_bottomPanel, this, "GUI\\statFrame2.png", true, IdentityVec2, gui::Material::bmTransparency); _stateBg->SetAlign(gui::Widget::waLeftTop); @@ -1123,8 +1123,8 @@ WorkshopFrame::WorkshopFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent } gui::Widget* labelsParent[cLabelEnd] = {_topPanel, _moneyBg, _bottomPanel}; - for (int i = 0; i < cLabelEnd; ++i) - _labels[i] = menu->CreateLabel(strLabels[i], labelsParent[i], fontLabels[i], NullVec2, horLabels[i], vertLabels[i], colorLabels[i]); + for (int i = 0; i < cLabelEnd; ++i) + _labels[i] = menu->CreateLabel(strLabels[i], labelsParent[i], fontLabels[i], NullVec2, horLabels[i], vertLabels[i], colorLabels[i]); _labels[mlHint]->SetWordWrap(true); _dragItem.viewport = menu->CreateViewPort3d(root(), NULL, "", gui::ViewPort3d::msStatic); @@ -1196,7 +1196,7 @@ void WorkshopFrame::UpdateGoods() return false; } }; - + Workshop::Items items = workshop().GetItems(); items.sort(Pred()); @@ -1285,7 +1285,7 @@ bool WorkshopFrame::StopDrag(bool dropOut, bool intoGood) { if (!intoGood && _dragItem.slotType != Player::cSlotTypeEnd && player()->GetSlot(_dragItem.slotType) == NULL) { - InstalSlot(_dragItem.slotType, _dragItem.slot, _dragItem.chargeCount); + InstalSlot(_dragItem.slotType, _dragItem.slot, _dragItem.chargeCount); } else { @@ -1298,7 +1298,7 @@ bool WorkshopFrame::StopDrag(bool dropOut, bool intoGood) ShowAccept(message, _dragItem.viewport, _dragItem.viewport->GetSize(), _dragItem.slot); return false; } - else + else SellSlot(_dragItem.slot, _dragItem.slotType != Player::cSlotTypeEnd, _dragItem.chargeCount); } } @@ -1341,7 +1341,7 @@ void WorkshopFrame::SetSlotActive(Player::SlotType type, bool active, bool enabl box.mesh3d->SetActive(false); if (box.slotIcon) box.slotIcon->SetVisible(true); - box.chargeBox->SetVisible(false); + box.chargeBox->SetVisible(false); box.chargeButton->SetVisible(false); box.level->SetVisible(false); } @@ -1351,10 +1351,10 @@ void WorkshopFrame::UpdateSlot(Player::SlotType type, Slot* slot) { LSL_ASSERT(car()); - SlotBox& box = _slots[type]; + SlotBox& box = _slots[type]; int wpnSlotIndex = type - Player::stWeapon1; - if (!car()->GetSlot(type).active || + if (!car()->GetSlot(type).active || (menu()->IsSkirmish() && wpnSlotIndex >= 0 && wpnSlotIndex < Garage::cWeaponMaxLevel && wpnSlotIndex >= garage().GetWeaponMaxLevel())) { SetSlotActive(type, false, false); @@ -1385,11 +1385,11 @@ void WorkshopFrame::UpdateSlot(Player::SlotType type, Slot* slot) } box.level->SetVisible(wpn == NULL); - + if (wpn) - { + { box.upLevel = wpn->GetCntCharge(); - box.chargeBar->SetProgress(box.upLevel / (float)wpn->GetMaxCharge()); + box.chargeBar->SetProgress(box.upLevel / (float)wpn->GetMaxCharge()); } else { @@ -1403,7 +1403,7 @@ void WorkshopFrame::UpdateSlot(Player::SlotType type, Slot* slot) box.level->GetSel()->GetSampler().SetTex(GetTexture(imgs[std::min(level + 1, 2)])); box.level->SetSelSize(menu()->GetImageSize(*box.level->GetSel())); - box.level->SetEnabled(box.upLevel < Garage::cUpgMaxLevel && + box.level->SetEnabled(box.upLevel < Garage::cUpgMaxLevel && (menu()->IsCampaign() || box.upLevel < garage().GetUpgradeMaxLevel())); } } @@ -1473,7 +1473,7 @@ void WorkshopFrame::SelectSlots(Slot* slot, bool select) _numSelectedSlots = 0; float minDamage = -1.0f; Player::SlotType slotType = Player::cSlotTypeEnd; - + for (int i = 0; i < Player::cSlotTypeEnd; ++i) { Player::SlotType type = (Player::SlotType)i; @@ -1498,7 +1498,7 @@ void WorkshopFrame::SelectSlots(Slot* slot, bool select) } if (checkSlot) - { + { WeaponItem* wpn = plrSlot ? plrSlot->GetItem().IsWeaponItem() : NULL; if (wpn) @@ -1558,7 +1558,7 @@ void WorkshopFrame::SetOverGood(gui::Widget* value) void WorkshopFrame::SetOverGood2(gui::Widget* value) { if (Object::ReplaceRef(_overGood2, value)) - { + { if (_overGood2) lsl::StaticCast(_overGood2)->SetStyle(_overGood2->GetParent() == _goodGrid ? gui::ViewPort3d::msMouseOverAnim : gui::ViewPort3d::msStatic); @@ -1644,7 +1644,7 @@ bool WorkshopFrame::UpdateSlotInfo(gui::Widget* sender, const SlotBox& slotBox, if (!isSender) return false; - int index = (int)type; + int index = (int)type; int infoId = cSlotInfo + index * 10; if (slotBox.chargeButton->IsMouseEnter()) @@ -1748,7 +1748,7 @@ void WorkshopFrame::OnAdjustLayout(const glm::vec2& vpSize) { _leftPanel->SetPos(glm::vec2(30, (_topPanel->GetSize().y - 30.0f + vpSize.y - _bottomPanel->GetSize().y)/2)); _moneyBg->SetPos(glm::vec2(vpSize.x/2 + 1, -_bottomPanel->GetSize().y + 5)); - //_stateBg->SetPos(glm::vec2(418.0f, -_bottomPanel->GetSize().y + 25.0f)); + //_stateBg->SetPos(glm::vec2(418.0f, -_bottomPanel->GetSize().y + 25.0f)); _stateBg->SetPos(glm::vec2(vpSize.x/2 - _stateBg->GetSize().x - 15.0f, -_bottomPanel->GetSize().y + 25.0f)); _damageBarBonus->SetPos(glm::vec2(48.0f, 3.0f)); @@ -1768,7 +1768,7 @@ void WorkshopFrame::OnAdjustLayout(const glm::vec2& vpSize) _labels[mlHint]->SetPos(glm::vec2((_menuItems[miExit]->GetPos().x + _menuItems[miExit]->GetSize().x + _stateBg->GetPos().x)/2, -72.0f)); _labels[mlHint]->SetSize(glm::vec2(800.0f, 105.0f)); - + float scale = vpSize.y/720.0f; float centerX = vpSize.x * 0.63f; float centerY = vpSize.y * 0.451f; @@ -1781,11 +1781,11 @@ void WorkshopFrame::OnAdjustLayout(const glm::vec2& vpSize) float slotSpace = 15.0f; glm::vec2 slotOffset[Player::cSlotTypeEnd] = { - glm::vec2(leftOffset, centerY + slotSize.y/2 + slotSpace), - glm::vec2(leftOffset, centerY - slotSize.y/2 - slotSpace), - glm::vec2(centerX - slotSize.x/2 - 6.0f * slotSpace, bottomOffset), - glm::vec2(centerX + slotSize.x/2 + 6.0f * slotSpace, bottomOffset), - glm::vec2(rightOffset, centerY - slotSize.y/2 - slotSpace), + glm::vec2(leftOffset, centerY + slotSize.y/2 + slotSpace), + glm::vec2(leftOffset, centerY - slotSize.y/2 - slotSpace), + glm::vec2(centerX - slotSize.x/2 - 6.0f * slotSpace, bottomOffset), + glm::vec2(centerX + slotSize.x/2 + 6.0f * slotSpace, bottomOffset), + glm::vec2(rightOffset, centerY - slotSize.y/2 - slotSpace), glm::vec2(rightOffset, centerY + slotSize.y/2 + slotSpace), glm::vec2(centerX - (slotSize.x + 4.5f * slotSpace) * 1.5f, topOffset), glm::vec2(centerX - (slotSize.x + 4.5f * slotSpace) * 0.5f, topOffset), @@ -1917,7 +1917,7 @@ bool WorkshopFrame::OnClick(gui::Widget* sender, const gui::MouseClick& mClick) } else { - Slot* slot = static_cast(menu()->GetAcceptData()); + Slot* slot = static_cast(menu()->GetAcceptData()); BuySlot(_overGood2, slot); } } @@ -1935,12 +1935,12 @@ bool WorkshopFrame::OnClick(gui::Widget* sender, const gui::MouseClick& mClick) StopDrag(true, true); } else if (slot) - { + { if (_numSelectedSlots == 0) { ShowMessage(svHintWeaponNotSupport, sender, _goodGrid->cellSize()); } - else if (menu()->IsCampaign()) + else if (menu()->IsCampaign()) { std::string message = GetString(svBuyWeapon); if (HasString(svBuyWeapon)) @@ -1989,7 +1989,7 @@ bool WorkshopFrame::OnClick(gui::Widget* sender, const gui::MouseClick& mClick) } if (_slots[i].level == sender && slot && !IsDragItem()) - { + { UpgradeSlot(sender, type, _slots[i].upLevel + 1); return true; } @@ -2083,7 +2083,7 @@ void WorkshopFrame::OnProcessEvent(unsigned id, EventData* data) GamersFrame::GamersFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent): MenuFrame(menu, parent), _raceMenu(raceMenu), _planetIndex(-1) { - const D3DXCOLOR color2 = D3DXCOLOR(214.0f, 214.0f, 214.0f, 255.0f)/255.0f; + const D3DXCOLOR color2 = D3DXCOLOR(214.0f, 214.0f, 214.0f, 255.0f)/255.0f; StringValue strLabels[cLabelEnd] = {svNull, svNull, svNull}; std::string fontLabels[cLabelEnd] = {"VerySmall", "Header", "Item"}; @@ -2094,7 +2094,7 @@ GamersFrame::GamersFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent): M _space = menu->CreatePlane(root(), this, "GUI\\space1.dds", true); _space->SetAnchor(gui::Widget::waCenter); - _viewport = menu->CreateViewPort3d(root(), NULL, "", gui::ViewPort3d::msAnim, false); + _viewport = menu->CreateViewPort3d(root(), NULL, "", gui::ViewPort3d::msAnim, false); glm::quat quat = glm::angleAxis(D3DX_PI / 24.0f, Vec3DxToGlm(ZVector)); _viewport->SetRot3dSpeed(quat); quat = glm::angleAxis(D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); @@ -2105,13 +2105,13 @@ GamersFrame::GamersFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent): M _bottomPanel = menu->CreatePlane(root(), this, "GUI\\bottomPanel4.png", true, IdentityVec2, gui::Material::bmTransparency); _bottomPanel->SetAnchor(gui::Widget::waBottom); - _bottomPanel->SetAlign(gui::Widget::waBottom); + _bottomPanel->SetAlign(gui::Widget::waBottom); _photo = menu->CreatePlane(_bottomPanel, this, "", true, IdentityVec2, gui::Material::bmTransparency); _photo->SetAlign(gui::Widget::waBottom); _photo->GetMaterial().GetSampler().SetFiltering(graph::Sampler2d::sfLinear); - _photoLight = menu->CreatePlane(_bottomPanel, this, "GUI\\wndLight4.png", true, IdentityVec2, gui::Material::bmTransparency); + _photoLight = menu->CreatePlane(_bottomPanel, this, "GUI\\wndLight4.png", true, IdentityVec2, gui::Material::bmTransparency); _leftArrow = _raceMenu->CreateArrow(root(), this); _leftArrow->SetAlign(gui::Widget::waRight); @@ -2119,14 +2119,14 @@ GamersFrame::GamersFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent): M _rightArrow = _raceMenu->CreateArrow(root(), this); _rightArrow->SetAlign(gui::Widget::waRight); - _rightArrow->SetRot(D3DX_PI); + _rightArrow->SetRot(D3DX_PI); _nextArrow = _raceMenu->CreateArrow2(_bottomPanel, this); _nextArrow->SetAlign(gui::Widget::waLeft); gui::Widget* labelsParent[cLabelEnd] = {_bottomPanel, _bottomPanel, _bottomPanel}; - for (int i = 0; i < cLabelEnd; ++i) - _labels[i] = menu->CreateLabel(strLabels[i], labelsParent[i], fontLabels[i], NullVec2, horLabels[i], vertLabels[i], colorLabels[i]); + for (int i = 0; i < cLabelEnd; ++i) + _labels[i] = menu->CreateLabel(strLabels[i], labelsParent[i], fontLabels[i], NullVec2, horLabels[i], vertLabels[i], colorLabels[i]); _labels[mlInfo]->SetWordWrap(true); } @@ -2261,7 +2261,7 @@ bool GamersFrame::OnClick(gui::Widget* sender, const gui::MouseClick& mClick) { if (sender == _nextArrow) { - Planet* planet = tournament().GetGamers()[_planetIndex]; + Planet* planet = tournament().GetGamers()[_planetIndex]; if (menu()->IsNetGame()) { @@ -2282,7 +2282,7 @@ bool GamersFrame::OnClick(gui::Widget* sender, const gui::MouseClick& mClick) menu()->PlayMovie("Data\\Video\\intaria_eng.avi"); } else -#endif +#endif _raceMenu->SetState(RaceMenu::msGarage); } @@ -2354,20 +2354,20 @@ AngarFrame::AngarFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent): Men _planetGridBg = menu->CreateGrid(_bottomPanelBg, NULL, gui::Grid::gsHorizontal); _planetGridBg->SetAlign(gui::Widget::waLeft); - _bottomPanel = menu->CreatePlane(_bottomPanelBg, this, "GUI\\bottomPanel6.png", true, IdentityVec2, gui::Material::bmTransparency); + _bottomPanel = menu->CreatePlane(_bottomPanelBg, this, "GUI\\bottomPanel6.png", true, IdentityVec2, gui::Material::bmTransparency); _bottomPanel->SetAlign(gui::Widget::waBottom); _planetGrid = menu->CreateGrid(_bottomPanel, NULL, gui::Grid::gsHorizontal); _planetGrid->SetAlign(gui::Widget::waLeft); - _planetInfo = menu->CreatePlane(_bottomPanel, this, "GUI\\planetInfo.png", true, IdentityVec2, gui::Material::bmTransparency); + _planetInfo = menu->CreatePlane(_bottomPanel, this, "GUI\\planetInfo.png", true, IdentityVec2, gui::Material::bmTransparency); _planetInfo->SetAlign(gui::Widget::waBottom); _planetInfoClose = menu->CreateMenuButton(svNull, "", "GUI\\buttonBg6.png", "GUI\\buttonBgSel6.png", _planetInfo, this, IdentityVec2, gui::Button::bsSelAnim, clrWhite); - _planetBoss = menu->CreatePlane(_planetInfo, this, "", true, IdentityVec2, gui::Material::bmTransparency); + _planetBoss = menu->CreatePlane(_planetInfo, this, "", true, IdentityVec2, gui::Material::bmTransparency); - _planetBossCar = menu->CreateViewPort3d(_planetInfo, NULL, "", gui::ViewPort3d::msAnim); + _planetBossCar = menu->CreateViewPort3d(_planetInfo, NULL, "", gui::ViewPort3d::msAnim); glm::quat quat = glm::angleAxis(D3DX_PI / 2.0f, Vec3DxToGlm(ZVector)); _planetBossCar->SetRot3dSpeed(quat); @@ -2378,10 +2378,10 @@ AngarFrame::AngarFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent): Men } gui::Widget* labelsParent[cLabelEnd] = {_planetInfo, _planetInfo, _planetInfo}; - for (int i = 0; i < cLabelEnd; ++i) + for (int i = 0; i < cLabelEnd; ++i) _labels[i] = menu->CreateLabel(strLabels[i], labelsParent[i], fontLabels[i], NullVec2, horLabels[i], vertLabels[i], colorLabels[i]); _labels[mlBossInfo]->SetAlign(gui::Widget::waLeftTop); - _labels[mlBossInfo]->SetWordWrap(true); + _labels[mlBossInfo]->SetWordWrap(true); _labels[mlBossInfo]->SetFlag(gui::Widget::wfClientClip, true); } @@ -2427,14 +2427,14 @@ AngarFrame::PlanetBox& AngarFrame::AddPlanet(Planet* planet, int index) box->doorDown = menu()->CreatePlane(box->slotClip, NULL, "GUI\\doorDown.png", true, IdentityVec2, gui::Material::bmTransparency); box->doorDown->SetAlign(gui::Widget::waTop); - box->doorUp = menu()->CreatePlane(box->slotClip, NULL, "GUI\\doorUp.png", true, IdentityVec2, gui::Material::bmTransparency); + box->doorUp = menu()->CreatePlane(box->slotClip, NULL, "GUI\\doorUp.png", true, IdentityVec2, gui::Material::bmTransparency); box->doorUp->SetAlign(gui::Widget::waBottom); } if ((planet->GetState() == Planet::psOpen) || (race->GetPlanetChampion() && tournament().GetNextPlanet() == planet)) { box->slot->SetText(GetString(svOpen)); - } + } else if (planet->GetState() == Planet::psClosed) { box->slot->SetText(lsl::StrFmt(GetString(svRequestPoints).c_str(), planet->GetRequestPoints(planet->GetPass()))); @@ -2451,7 +2451,7 @@ AngarFrame::PlanetBox& AngarFrame::AddPlanet(Planet* planet, int index) else if (planet->GetState() == Planet::psCompleted) { box->slot->SetText(GetString(svCompleted)); - } + } return *box; } @@ -2468,7 +2468,7 @@ void AngarFrame::UpdatePlanets() if (index < _planets.size()) { for (unsigned i = index; i < _planets.size(); ++i) - { + { menu()->ReleaseWidget(_planets[i].slot); menu()->ReleaseWidget(_planets[i].viewport); } @@ -2603,7 +2603,7 @@ void AngarFrame::OnShow(bool value) void AngarFrame::OnAdjustLayout(const glm::vec2& vpSize) { - _bottomPanelBg->SetPos(vpSize.x/2, vpSize.y - 20.0f); + _bottomPanelBg->SetPos(vpSize.x/2, vpSize.y - 20.0f); _planetGrid->SetPos(glm::vec2(-_bottomPanel->GetSize().x/2 + 35.0f, -_bottomPanel->GetSize().y/2)); _planetGridBg->SetPos(_planetGrid->GetPos() + glm::vec2(0.0f, -124.0f)); @@ -2632,7 +2632,7 @@ void AngarFrame::OnInvalidate() { if (_planetIndex != -1) { - Planet* planet = tournament().GetPlanet(_planetIndex); + Planet* planet = tournament().GetPlanet(_planetIndex); _planetInfo->SetVisible(true); @@ -2689,7 +2689,7 @@ bool AngarFrame::OnClick(gui::Widget* sender, const gui::MouseClick& mClick) menu()->ChangePlanet(planet); if (newPlanet) - { + { #ifndef _DEBUG if (!menu()->IsNetGame() && menu()->IsCampaign() && !menu()->GetDisableVideo()) { @@ -2719,7 +2719,7 @@ bool AngarFrame::OnClick(gui::Widget* sender, const gui::MouseClick& mClick) for (unsigned i = 0; i < _planets.size(); ++i) { - PlanetBox planetBox = _planets[i]; + PlanetBox planetBox = _planets[i]; if (sender == planetBox.viewport) { @@ -2733,7 +2733,7 @@ bool AngarFrame::OnClick(gui::Widget* sender, const gui::MouseClick& mClick) if (sender == planetBox.slot && i == _planetIndex) { Planet* planet = tournament().GetPlanet(i); - Race* race = menu()->GetRace(); + Race* race = menu()->GetRace(); bool isCurrent = tournament().GetCurPlanetIndex() == i; if (race->GetPlanetChampion()) @@ -2749,7 +2749,7 @@ bool AngarFrame::OnClick(gui::Widget* sender, const gui::MouseClick& mClick) return true; } } - + if (!menu()->IsCampaign() && planet->GetState() == Planet::psOpen) { menu()->ChangePlanet(planet); @@ -2773,7 +2773,7 @@ void AngarFrame::OnFocusChanged(gui::Widget* sender) { for (unsigned i = 0; i < _planets.size(); ++i) { - PlanetBox planetBox = _planets[i]; + PlanetBox planetBox = _planets[i]; if (sender == planetBox.viewport) { @@ -2834,8 +2834,8 @@ AchievmentFrame::AchievmentFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* pa gui::Text::VertAlign vertLabels[cLabelEnd] = {gui::Text::vaCenter, gui::Text::vaCenter}; D3DXCOLOR colorLabels[cLabelEnd] = {color, color2}; - _bottomPanel = menu->CreatePlane(root(), this, "GUI\\achievmentBottomPanel.png", true, IdentityVec2, gui::Material::bmTransparency); - _bottomPanel->SetAlign(gui::Widget::waBottom); + _bottomPanel = menu->CreatePlane(root(), this, "GUI\\achievmentBottomPanel.png", true, IdentityVec2, gui::Material::bmTransparency); + _bottomPanel->SetAlign(gui::Widget::waBottom); _bottomPanel->GetMaterial().GetSampler().SetFiltering(graph::Sampler2d::sfLinear); _bg = menu->CreatePlane(root(), this, "GUI\\achievmentBg.dds", true, IdentityVec2, gui::Material::bmTransparency); @@ -2843,10 +2843,10 @@ AchievmentFrame::AchievmentFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* pa _bg->SetAnchor(gui::Widget::waCenter); _bg->GetMaterial().GetSampler().SetFiltering(graph::Sampler2d::sfLinear); - _panel = menu->CreatePlane(root(), this, "GUI\\achievmentPanel.png", true, IdentityVec2, gui::Material::bmTransparency); + _panel = menu->CreatePlane(root(), this, "GUI\\achievmentPanel.png", true, IdentityVec2, gui::Material::bmTransparency); _panel->GetMaterial().GetSampler().SetFiltering(graph::Sampler2d::sfLinear); _panel->SetAlign(gui::Widget::waTop); - _panel->SetAnchor(gui::Widget::waTop); + _panel->SetAnchor(gui::Widget::waTop); for (int i = 0; i < cMenuItemEnd; ++i) { @@ -2855,7 +2855,7 @@ AchievmentFrame::AchievmentFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* pa } gui::Widget* labelsParent[cLabelEnd] = {_bottomPanel, _panel}; - for (int i = 0; i < cLabelEnd; ++i) + for (int i = 0; i < cLabelEnd; ++i) _labels[i] = menu->CreateLabel(strLabels[i], labelsParent[i], fontLabels[i], NullVec2, horLabels[i], vertLabels[i], colorLabels[i]); } @@ -2881,20 +2881,20 @@ const AchievmentFrame::AchievmentBox* AchievmentFrame::AddAchievment(unsigned in AchievmentBox* box = index < _achievments.size() ? &_achievments[index] : NULL;; if (box == NULL) { - AchievmentBox newBox; + AchievmentBox newBox; newBox.image = menu()->CreatePlane(_panel, this, "", false, IdentityVec2, gui::Material::bmTransparency); newBox.image->GetMaterial().GetSampler().SetFiltering(graph::Sampler2d::sfLinear); newBox.price = menu()->CreateLabel(svNull, newBox.image, "Item", NullVec2, gui::Text::haCenter, gui::Text::vaCenter, D3DXCOLOR(0xFFC3C2C0)); - newBox.button = menu()->CreateMenuButton(svNull, "", "", "", newBox.image, this, IdentityVec2, gui::Button::bsSelAnim); + newBox.button = menu()->CreateMenuButton(svNull, "", "", "", newBox.image, this, IdentityVec2, gui::Button::bsSelAnim); _achievments.push_back(newBox); box = &_achievments.back(); } - box->model = model; + box->model = model; - box->image->SetData(model); + box->image->SetData(model); box->image->GetMaterial().GetSampler().SetTex(GetTexture(model->state() == Achievment::asOpened ? img : lockImg)); box->image->SetSize(menu()->GetImageSize(box->image->GetMaterial())); box->image->SetPos(pos); @@ -2912,7 +2912,7 @@ const AchievmentFrame::AchievmentBox* AchievmentFrame::AddAchievment(unsigned in box->button->GetOrCreateFon()->GetSampler().SetTex(GetTexture("GUI\\okBut.png")); else box->button->GetOrCreateFon()->GetSampler().SetTex(GetTexture("GUI\\okButSel.png")); - + box->button->GetFon()->GetSampler().SetFiltering(graph::Sampler2d::sfLinear); box->button->GetFon()->SetBlending(gui::Material::bmTransparency); box->button->SetSize(menu()->GetImageSize(*box->button->GetFon())); @@ -3005,7 +3005,7 @@ void AchievmentFrame::UpdateAchievments() { Menu::NavElement navElement = {_menuItems[miExit], {NULL, NULL, achievments[mbPhaser].button, achievments[mbPhaser].button}, {vkBack, cVirtualKeyEnd}}; navElements.push_back(navElement); - } + } menu()->SetNavElements(_menuItems[miExit], true, &navElements[0], navElements.size()); } @@ -3067,13 +3067,13 @@ void AchievmentFrame::OnAdjustLayout(const glm::vec2& vpSize) _labels[mlPoints]->SetPos(glm::vec2(0, 40.0f)); _labels[mlRewards]->SetPos(glm::vec2(0.0f, 555.0f)); - + for (int i = 0; i < cMenuItemEnd; ++i) _menuItems[i]->SetPos(glm::vec2(0.0f, _bottomPanel->GetPos().y + 17.0f + i * (_menuItems[i]->GetSize().y + 10.0f))); } void AchievmentFrame::OnInvalidate() -{ +{ } bool AchievmentFrame::OnClick(gui::Widget* sender, const gui::MouseClick& mClick) @@ -3093,15 +3093,15 @@ bool AchievmentFrame::OnClick(gui::Widget* sender, const gui::MouseClick& mClick ShowMessage(svHintCantPoints, sender); return true; } - + const AchievmentBox* box = (sender->GetData() || sender->GetParent() && sender->GetParent()->GetData()) ? GetAchievment((Achievment*)sender->GetData()) : NULL; if (box) { if (box->model->state() == Achievment::asUnlocked) ShowAccept(GetString(svBuyReward), sender, box->model); return true; - } - + } + return false; } @@ -3145,7 +3145,7 @@ void AchievmentFrame::OnMouseLeave(gui::Widget* sender, bool wasReset) RaceMainFrame::RaceMainFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent): MenuFrame(menu, parent), _raceMenu(raceMenu) { const D3DXCOLOR color1 = D3DXCOLOR(214.0f, 214.0f, 214.0f, 255.0f)/255.0f; - const D3DXCOLOR color2 = D3DXCOLOR(214.0f, 184.0f, 164.0f, 255.0f)/255.0f; + const D3DXCOLOR color2 = D3DXCOLOR(214.0f, 184.0f, 164.0f, 255.0f)/255.0f; const std::string menuItemsIcon[cMenuItemEnd] = {"GUI\\icoStart.png", "GUI\\icoWorkshop.png", "GUI\\icoGarage.png", "GUI\\icoSpace.png", "GUI\\icoAchivment.png", "GUI\\icoOptions.png", "GUI\\icoExit.png"}; StringValue strLabels[cLabelEnd] = {svPlayer, svPassing, svTournament, svWeapons, svBossName, svNull, svPassInfo, svTournamentInfo}; @@ -3163,7 +3163,7 @@ RaceMainFrame::RaceMainFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent _bottomPanel->SetAlign(gui::Widget::waBottom); _moneyBg = menu->CreatePlane(_bottomPanel, this, "GUI\\moneyBg.png", true, IdentityVec2, gui::Material::bmTransparency); - _moneyBg->SetAlign(gui::Widget::waRightBottom); + _moneyBg->SetAlign(gui::Widget::waRightBottom); _stateBg = menu->CreatePlane(_bottomPanel, this, "GUI\\statFrame.png", true, IdentityVec2, gui::Material::bmTransparency); _stateBg->SetAlign(gui::Widget::waLeftBottom); @@ -3183,7 +3183,7 @@ RaceMainFrame::RaceMainFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent _speedBarValue = menu->CreateLabel("", _speedBar, "Small", NullVec2, gui::Text::haRight, gui::Text::vaCenter, color1); _speedBarValue->SetPos(glm::vec2(_speedBar->GetSize().x/2 - 15.0f, 0.0f)); - _viewportCar = menu->CreateViewPort3d(_topPanel, NULL, "", gui::ViewPort3d::msAnim); + _viewportCar = menu->CreateViewPort3d(_topPanel, NULL, "", gui::ViewPort3d::msAnim); glm::quat quat = glm::angleAxis(D3DX_PI / 2.0f, Vec3DxToGlm(ZVector)); _viewportCar->SetRot3dSpeed(quat); @@ -3223,7 +3223,7 @@ RaceMainFrame::RaceMainFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent _menuItems[i] = _raceMenu->CreateMenuButton(menuItemsIcon[i], _bottomPanel, this); gui::Widget* labelsParent[cLabelEnd] = {_topPanel, _topPanel, _topPanel, _topPanel, _topPanel, _moneyBg, _topPanel, _topPanel}; - for (int i = 0; i < cLabelEnd; ++i) + for (int i = 0; i < cLabelEnd; ++i) _labels[i] = menu->CreateLabel(strLabels[i], labelsParent[i], fontLabels[i], NullVec2, horLabels[i], vertLabels[i], colorLabels[i]); _netInfo = menu->CreateLabel(svNull, _topPanel, "Small", NullVec2, gui::Text::haLeft, gui::Text::vaTop); @@ -3264,7 +3264,7 @@ RaceMainFrame::PlayerBox* RaceMainFrame::AddPlayer(NetPlayer* netPlayer, unsigne newBox.bgRoot = menu()->CreateDummy(_playerGrid, NULL); - newBox.bg = menu()->CreatePlane(newBox.bgRoot, NULL, "GUI\\netPlayerFrame.png", true, IdentityVec2, gui::Material::bmTransparency); + newBox.bg = menu()->CreatePlane(newBox.bgRoot, NULL, "GUI\\netPlayerFrame.png", true, IdentityVec2, gui::Material::bmTransparency); newBox.photo = menu()->CreatePlane(newBox.bgRoot, NULL, "", false, IdentityVec2, gui::Material::bmTransparency); @@ -3274,7 +3274,7 @@ RaceMainFrame::PlayerBox* RaceMainFrame::AddPlayer(NetPlayer* netPlayer, unsigne newBox.readyLabel = menu()->CreateLabel(svNull, newBox.bgRoot, "VerySmall", NullVec2, gui::Text::haLeft, gui::Text::vaCenter, color1); newBox.readyLabel->SetAlign(gui::Widget::waLeft); - newBox.kick = menu()->CreateMenuButton(svNull, "", "GUI\\netPlayerKick.png", "GUI\\netPlayerKickSel.png", newBox.bgRoot, this, IdentityVec2, gui::Button::bsSelAnim); + newBox.kick = menu()->CreateMenuButton(svNull, "", "GUI\\netPlayerKick.png", "GUI\\netPlayerKickSel.png", newBox.bgRoot, this, IdentityVec2, gui::Button::bsSelAnim); newBox.readyState = menu()->CreatePlane(newBox.bgRoot, NULL, "", false, IdentityVec2, gui::Material::bmTransparency); @@ -3293,14 +3293,14 @@ RaceMainFrame::PlayerBox* RaceMainFrame::AddPlayer(NetPlayer* netPlayer, unsigne box->kick->SetVisible(net()->isHost()); if (box->netPlayer->ownerId() == net::cServerPlayer) - box->readyLabel->SetText(GetString(svHostLabel)); + box->readyLabel->SetText(GetString(svHostLabel)); else - box->readyLabel->SetText(GetString(netPlayer->IsRaceReady() ? svReadyRace : svCancelReadyRace)); + box->readyLabel->SetText(GetString(netPlayer->IsRaceReady() ? svReadyRace : svCancelReadyRace)); box->readyState->SetVisible(box->netPlayer->ownerId() != net::cServerPlayer); box->readyState->GetMaterial().GetSampler().SetTex(GetTexture(netPlayer->IsRaceReady() ? "GUI\\netPlayerReadyStateSel.png" : "GUI\\netPlayerReadyState.png")); - _raceMenu->CreateCar(box->viewportCar, netPlayer->model()); + _raceMenu->CreateCar(box->viewportCar, netPlayer->model()); return box; } @@ -3317,13 +3317,13 @@ void RaceMainFrame::AdjustPlayer(PlayerBox* box, bool invert) box->name->SetPos(glm::vec2(0.0f * dir, -70.0f)); box->name->SetAlign(gui::Widget::waCenter); box->name->SetHorAlign(gui::Text::haCenter); - + box->readyLabel->SetPos(glm::vec2(0.0f * dir, 68.0f)); box->readyLabel->SetAlign(gui::Widget::waCenter); box->readyLabel->SetHorAlign(gui::Text::haCenter); box->readyState->SetSize(menu()->GetImageSize(box->readyState->GetMaterial())); - box->readyState->SetPos(glm::vec2(128.0f * dir, 68.0f)); + box->readyState->SetPos(glm::vec2(128.0f * dir, 68.0f)); box->kick->SetPos(glm::vec2(128.0f * dir, -68.0f)); @@ -3343,12 +3343,12 @@ void RaceMainFrame::UpdatePlayers() if (index < _players.size()) { for (unsigned i = index; i < _players.size(); ++i) - { + { menu()->ReleaseWidget(_players[i].bgRoot); } _players.erase(_players.begin() + index, _players.end()); - } + } } void RaceMainFrame::OnShow(bool value) @@ -3386,7 +3386,7 @@ void RaceMainFrame::OnAdjustLayout(const glm::vec2& vpSize) _labels[mlMoney]->SetPos(glm::vec2(-53.0f, -29.0f)); _labels[mlPassInfo]->SetPos(glm::vec2(-377.0f, 86.0f)); - _labels[mlTournamentInfo]->SetPos(glm::vec2(-102, 86.0f)); + _labels[mlTournamentInfo]->SetPos(glm::vec2(-102, 86.0f)); for (int i = 0; i < cMenuItemEnd; ++i) { @@ -3406,7 +3406,7 @@ void RaceMainFrame::OnAdjustLayout(const glm::vec2& vpSize) _wheater->SetPos(glm::vec2(-282.0f, 112.0f)); int chargeIndex = 0; - float width = 0; + float width = 0; for (int i = 0; i < 6; ++i) if (_chargeBars[i]->GetVisible()) { @@ -3425,10 +3425,10 @@ void RaceMainFrame::OnAdjustLayout(const glm::vec2& vpSize) _netInfo->SetPos(-vpSize.x/2 + 20.0f, _topPanel->GetSize().y + 20.0f); - _viewportCar->SetPos(glm::vec2(605.0f, 87.0f)); + _viewportCar->SetPos(glm::vec2(605.0f, 87.0f)); _viewportCar->SetSize(menu()->StretchImage(IdentityVec2, _frameImages[2]->GetSize(), true, true)); - float leftSpace = vpSize.y - _topPanel->GetSize().y - _bottomPanel->GetSize().y - _stateBg->GetSize().y; + float leftSpace = vpSize.y - _topPanel->GetSize().y - _bottomPanel->GetSize().y - _stateBg->GetSize().y; for (int i = 0; i < (int)_players.size(); ++i) { glm::vec2 size = _players[i].bg->GetSize(); @@ -3467,7 +3467,7 @@ void RaceMainFrame::OnInvalidate() } else { - _netInfo->SetVisible(false); + _netInfo->SetVisible(false); } for (int i = 0; i < cMenuItemEnd; ++i) @@ -3488,7 +3488,7 @@ void RaceMainFrame::OnInvalidate() if (HasString(svPassInfo)) { - _labels[mlPassInfo]->SetText(lsl::StrFmt(GetString(svPassInfo).c_str(), + _labels[mlPassInfo]->SetText(lsl::StrFmt(GetString(svPassInfo).c_str(), GetString(tournament().GetCurPlanet().GetName()).c_str(), tournament().GetCurTrackIndex() + 1, menu()->IsCampaign() ? tournament().GetCurPlanet().GetTracks().size() : tournament().GetCurPlanet().GetTrackList().size())); @@ -3670,7 +3670,7 @@ RaceMenu::RaceMenu(Menu* menu, gui::Widget* parent, Player* player): _menu(menu) _spaceshipFrame = new SpaceshipFrame(menu, this, _root); _mainFrame = new RaceMainFrame(menu, this, _root); _garageFrame = new GarageFrame(menu, this, _root); - _workshopFrame = new WorkshopFrame(menu, this, _root); + _workshopFrame = new WorkshopFrame(menu, this, _root); _gamers = new GamersFrame(menu, this, _root); _angarFrame = new AngarFrame(menu, this, _root); _achievmentFrame = new AchievmentFrame(menu, this, _root); @@ -3705,7 +3705,7 @@ void RaceMenu::ApplyState(State state) { bool carVisible = state == msMain || state == msGarage || state == msWorkshop; bool spaceshipVisible = state == msAngar; - + if (!carVisible) _carFrame->Show(false); if (!spaceshipVisible) @@ -3796,7 +3796,7 @@ gui::Button* RaceMenu::CreateMenuButton(const std::string& icon, gui::Widget* pa } gui::Button* RaceMenu::CreateMenuButton2(StringValue name, gui::Widget* parent, const D3DXCOLOR& textColor, gui::Widget::Event* guiEvent) -{ +{ return _menu->CreateMenuButton(name, "Header", "GUI\\buttonBg2.png", "GUI\\buttonBgSel2.png", parent, guiEvent, IdentityVec2, gui::Button::bsSelAnim, textColor, Menu::ssButton1); } @@ -3817,19 +3817,19 @@ gui::Button* RaceMenu::CreatePlusButton(gui::Widget* parent, gui::Widget::Event* void RaceMenu::CreateCar(gui::ViewPort3d* viewport, Garage::Car* car, const D3DXCOLOR& color, Slot* slots[Player::cSlotTypeEnd]) { - viewport->GetBox()->DeleteChildren(); + viewport->GetBox()->DeleteChildren(); if (car) { for (Garage::BodyMeshes::const_iterator iter = car->GetBodies().begin(); iter != car->GetBodies().end(); ++iter) if (iter->mesh) { - gui::Mesh3d* body = _menu->CreateMesh3d(viewport, iter->mesh, iter->texture, iter->meshId); + gui::Mesh3d* body = _menu->CreateMesh3d(viewport, iter->mesh, iter->texture, iter->meshId); if (iter->decal) body->GetMaterial()->GetSampler().SetColorMode(graph::Sampler2d::tmDecal); body->GetMaterial()->GetSampler().SetColor(color); - body->GetMaterial()->GetSampler().SetFiltering(graph::BaseSampler::sfAnisotropic); - } + body->GetMaterial()->GetSampler().SetFiltering(graph::BaseSampler::sfAnisotropic); + } if (!car->GetWheels().empty() && car->GetWheel()) { diff --git a/src/Rock3dGame/source/game/RecordLib.cpp b/src/Rock3dGame/source/game/RecordLib.cpp index 1b329b3d..92d7a7c7 100644 --- a/src/Rock3dGame/source/game/RecordLib.cpp +++ b/src/Rock3dGame/source/game/RecordLib.cpp @@ -15,8 +15,8 @@ void DevideStr(std::string::const_iterator sIter, std::string::const_iterator eI { ++iter; - if (iter == eIter) - outList.push_back(std::string(lastIter, iter)); + if (iter == eIter) + outList.push_back(std::string(lastIter, iter)); else if (*iter == dev) { outList.push_back(std::string(lastIter, iter)); @@ -117,7 +117,7 @@ RecordNode* RecordNode::FindNode(const lsl::StringList& strList, lsl::StringList RecordNode* node = this; for (lsl::StringList::const_iterator iter = strList.begin(); iter != strList.end(); ++iter) - { + { RecordNode* newNode = 0; for (NodeList::iterator iterNode = node->_nodeList.begin(); iterNode != node->_nodeList.end(); ++iterNode) if ((*iterNode)->GetName() == *iter) @@ -131,7 +131,7 @@ RecordNode* RecordNode::FindNode(const lsl::StringList& strList, lsl::StringList return node; } - node = newNode; + node = newNode; } return node; @@ -252,7 +252,7 @@ void RecordNode::SrcSync() const SerialNode::ValueDesc* desc = iterAttr != (*iter)->GetAttributes().end() ? iterAttr->second : 0; if (desc && desc->ToBool() && *desc->ToBool()) AddNode((*iter)->GetName(), *iter)->SrcSync(); - else + else AddRecord((*iter)->GetName(), *iter); } } @@ -342,7 +342,7 @@ Record* RecordLib::LoadRecordRefFrom(lsl::SReader* reader) std::string path; desc->CastTo(&path); RecordLib* lib = lsl::StaticCast(reader->GetRoot()->AbsoluteFindComponent(path)); - + return lib->FindRecordBySrc(node, lib); } @@ -350,8 +350,8 @@ Record* RecordLib::LoadRecordRefFrom(lsl::SReader* reader) } Record* RecordLib::LoadRecordRef(lsl::SReader* reader, const std::string& name) -{ - if (lsl::SReader* child = reader->ReadValue(name.c_str())) +{ + if (lsl::SReader* child = reader->ReadValue(name.c_str())) return LoadRecordRefFrom(child); return 0; @@ -381,10 +381,10 @@ lsl::SerialNode* RecordLib::CreateSrc(const std::string& name, RecordNode* paren { lsl::SerialNode* srcParent = parent ? parent->GetSrc() : _rootSrc; - lsl::SerialNode* src = srcParent->GetElements().Add(name); + lsl::SerialNode* src = srcParent->GetElements().Add(name); if (node) src->AddAttribute(lsl::SerialFile::cFolder.c_str(), true); - + return src; } @@ -430,10 +430,10 @@ Record* RecordLib::GetOrCreateRecord(const std::string& name) RecordNode* node = this; for (lsl::StringList::iterator iter = stringList.begin(); iter != stringList.end();) - { + { std::string str = *iter; ++iter; - + if (iter != stringList.end()) { RecordNode* newNode = node->FindNode(str); diff --git a/src/Rock3dGame/source/game/ResourceManager.cpp b/src/Rock3dGame/source/game/ResourceManager.cpp index 3cd552d2..c0bbabd0 100644 --- a/src/Rock3dGame/source/game/ResourceManager.cpp +++ b/src/Rock3dGame/source/game/ResourceManager.cpp @@ -22,28 +22,28 @@ const std::string cStringValueStr[cStringValueEnd] = { "svNetCreate", "svConnect", "svRefresh", - "svLoad", - "svOptions", - "svControls", + "svLoad", + "svOptions", + "svControls", "svGame", "svNetwork", - "svAuthors", + "svAuthors", "svExit", "svProfile", - - "svGraphic", + + "svGraphic", "svResolution", "svFiltering", "svMultisampling", - "svShadow", - "svEnv", - "svLight", + "svShadow", + "svEnv", + "svLight", "svPostProcess", "svFixedFrameRate", - "svSound", - "svMusic", - "svSoundFX", - "svSoundDicter", + "svSound", + "svMusic", + "svSoundFX", + "svSoundDicter", "svLanguage", "svCommentator", "svCamera", @@ -60,7 +60,7 @@ const std::string cStringValueStr[cStringValueEnd] = { "svSelectItem", "svEnterIP", - "svChampionship", + "svChampionship", "svSkirmish", "svOnePlayer", @@ -91,13 +91,13 @@ const std::string cStringValueStr[cStringValueEnd] = { "svLockedCarInfo", "svApply", - "svOk", - "svCancel", + "svOk", + "svCancel", "svBack", "svYes", "svNo", "svBuy", - "svWarning", + "svWarning", "svLow", "svMiddle", @@ -246,7 +246,7 @@ const std::string cStringValueStr[cStringValueEnd] = { "scGerry", "scKJin", "scMardock", - "scStinkle", + "scStinkle", "scViolet", "scViper", @@ -259,7 +259,7 @@ const std::string cStringValueStr[cStringValueEnd] = { "scGerryInfo", "scKJinInfo", "scMardockInfo", - "scStinkleInfo", + "scStinkleInfo", "scVioletInfo", "scViperInfo", @@ -319,7 +319,7 @@ const DWORD cLangCharsetCode[cLangCharsetEnd] = {DEFAULT_CHARSET, EASTEUROPE_CHA ComplexMesh::ComplexMesh(ComplexMeshLib* owner): _owner(owner), _tag(-1), _enableTBN(false), _mesh(0), _ivbMesh(0), _meshX(0), _pxMesh(0) -{ +{ } ComplexMesh::~ComplexMesh() @@ -367,7 +367,7 @@ res::MeshData* ComplexMesh::GetOrCreateMesh() { _mesh = &_owner->_meshLib->Add(); _mesh->SetName(_name); - _mesh->SetFileName(_fileName); + _mesh->SetFileName(_fileName); } if (_enableTBN && !_mesh->IsInit()) @@ -391,7 +391,7 @@ graph::IndexedVBMesh* ComplexMesh::GetOrCreateIVBMesh() if (!_ivbMesh) { _ivbMesh = &_owner->_ivbMeshLib->Add(); - _ivbMesh->SetName(GetName()); + _ivbMesh->SetName(GetName()); } _ivbMesh->SetData(GetOrCreateMesh()); @@ -505,8 +505,8 @@ const std::string& ComplexMesh::GetFileName() const void ComplexMesh::SetFileName(const std::string& value) { _fileName = value; - if (_mesh) - _mesh->SetFileName(value); + if (_mesh) + _mesh->SetFileName(value); } bool ComplexMesh::GetEnableTBN() const @@ -565,7 +565,7 @@ void ComplexMeshLib::TagChanged(const Value& value, int prevVal, int newVal) _tagList[newVal].push_back(value); } } - + void ComplexMeshLib::Save(lsl::SWriter* writer) { _MyBase::Save(writer); @@ -713,7 +713,7 @@ graph::Tex2DResource* ComplexImage::GetOrCreateTex2d() _tex2d->SetUsage(D3DUSAGE_AUTOGENMIPMAP); _tex2d->SetGUI(_gui); - _tex2d->SetData(GetOrCreateImage()); + _tex2d->SetData(GetOrCreateImage()); } return _tex2d; @@ -731,7 +731,7 @@ res::CubeImageResource* ComplexImage::GetOrCreateCubeImage() if (!_cubeImage) { _cubeImage = &_owner->_cubeImageLib->Add(); - _cubeImage->SetName(_name); + _cubeImage->SetName(_name); _cubeImage->SetFileName(_fileName); } @@ -772,13 +772,13 @@ void ComplexImage::ReleaseAll() { ReleaseCubeTex(); ReleaseCubeImage(); - ReleaseTex2d(); + ReleaseTex2d(); ReleaseImage(); } void ComplexImage::Reload() { - if (_image && _image->IsInit()) + if (_image && _image->IsInit()) _image->Reload(); if (_tex2d && _tex2d->IsInit()) _tex2d->Reload(); @@ -991,7 +991,7 @@ graph::LibMaterial& ComplexMatLib::LoadLibMat(const std::string& name, bool spri libMat.material.SetAlpha(alpha); libMat.material.SetDiffuse(color); libMat.material.SetAmbient(ambient); - + if (sprite) { libMat.material.SetOption(graph::Material::moLighting, false); @@ -1014,7 +1014,7 @@ graph::Sampler2d& ComplexMatLib::AddSampler2dTo(graph::LibMaterial& libMat, cons if (!imgName.empty()) tex2d = _resManager->GetImageLib().Get(imgName).GetOrCreateTex2d(); graph::Sampler2d& res = libMat.samplers.Add2d(tex2d); - + res.SetAlphaMode(alphaMode); res.SetFiltering(filtering); @@ -1035,14 +1035,14 @@ graph::TextFont& ComplexTextFontLibrary::Get(const std::string& name) throw lsl::Error("TextFont" + name + " does not exist"); return *font; -} +} graph::TextFont& ComplexTextFontLibrary::LoadFont(const std::string& name, int height, unsigned weight, bool italic, DWORD charset, const std::string& faceName) { graph::TextFont& font = Add(); font.SetName(name); - - graph::TextFont::Desc desc; + + graph::TextFont::Desc desc; desc.height = height; desc.weight = weight; desc.italic = italic; @@ -1096,7 +1096,7 @@ void StringLibrary::Load(std::istream& stream) if (endPos >= 0) str.erase(endPos, 1); else - while (sstream.get(cur) && cur != '\"') + while (sstream.get(cur) && cur != '\"') str.push_back(cur); if (!id.empty()) @@ -1312,13 +1312,13 @@ graph::LibMaterial& ResourceManager::LoadBumpLibMat(const std::string& name, con { graph::LibMaterial& libMat = LoadLibMat(name, sprite, blending, alpha); AddSampler2dTo(libMat, imgName, graph::Sampler2d::tmModulate, sprite ? graph::BaseSampler::sfLinear : graph::BaseSampler::sfAnisotropic); - + AddSampler2dTo(libMat, normMap); libMat.samplers[1].stageStates.Set(graph::tssColorOp, D3DTOP_DISABLE); libMat.samplers[1].stageStates.Set(graph::tssAlphaOp, D3DTOP_DISABLE); libMat.material.SetSpecPower(128.0f); - libMat.material.SetSpecular(D3DXCOLOR(0.5f, 0.5f, 0.5f, 1.0f)); + libMat.material.SetSpecular(D3DXCOLOR(0.5f, 0.5f, 0.5f, 1.0f)); return libMat; } @@ -1420,10 +1420,10 @@ void ResourceManager::LoadEffects() LoadImage("Effect\\blaster.dds", 1, true, false); LoadImage("Effect\\dust_smoke_06.dds", 1, true, false); LoadImage("Effect\\ExplosionRay.dds", 1, true, false); - LoadImage("Effect\\ExplosionRing.dds", 1, true, false); - LoadImage("Effect\\lens1.dds", 1, true, false); + LoadImage("Effect\\ExplosionRing.dds", 1, true, false); + LoadImage("Effect\\lens1.dds", 1, true, false); LoadImage("Effect\\streak1.dds", 1, true, false); - LoadImage("Effect\\blink.dds", 1, true, false); + LoadImage("Effect\\blink.dds", 1, true, false); LoadImage("Effect\\lightning1.dds", 1, true, false); LoadImage("Effect\\flare3.dds", 1, true, false); LoadImage("Effect\\trail1.dds", 1, true, false); @@ -1450,7 +1450,7 @@ void ResourceManager::LoadEffects() LoadImage("Effect\\flare1_tc.dds", 1, true, false); LoadImage("Effect\\flare2b.dds", 1, true, false); LoadImage("Effect\\flare2a.dds", 1, true, false); - + @@ -1461,7 +1461,7 @@ void ResourceManager::LoadEffects() LoadImage2dLibMat("Effect\\j_swell", "Effect\\j_swell.dds", true); LoadImage2dLibMat("Effect\\frost", "Effect\\frost.dds", false, graph::Material::bmTransparency, FloatRange(0.5f, 0.0f)); - LoadImage2dLibMat("Effect\\smoke1", "Effect\\smoke1.dds", true, graph::Material::bmTransparency, FloatRange(0.5f, 0.0f), clrWhite * 0.25f); + LoadImage2dLibMat("Effect\\smoke1", "Effect\\smoke1.dds", true, graph::Material::bmTransparency, FloatRange(0.5f, 0.0f), clrWhite * 0.25f); LoadImage2dLibMat("Effect\\smoke2", "Effect\\smoke2.dds", true, graph::Material::bmTransparency, FloatRange(0.8f, 0.0f), ColorRange(D3DXCOLOR(0.5f, 0.32f, 0.25f, 1.0f), D3DXCOLOR(0.25f, 0.25f, 0.25f, 1.0f))); LoadImage2dLibMat("Effect\\smoke3", "Effect\\smoke3.dds", true, graph::Material::bmTransparency, FloatRange(1.0f, 0.0f), clrWhite); LoadImage2dLibMat("Effect\\smoke7", "Effect\\smoke7.dds", true, graph::Material::bmTransparency, FloatRange(1.0f, 0.0f), clrWhite); @@ -1470,12 +1470,12 @@ void ResourceManager::LoadEffects() LoadAnimImage2dLibMat("Effect\\frostRay", "Effect\\frostRay.dds", Vec3Range(NullVector, -XVector * 1.0f), IdentityVector, NullQuaternion, true, graph::Material::bmTransparency, FloatRange(0.0f, 1.0f)); LoadImage2dLibMat("Effect\\frostSmoke", "Effect\\frostSmoke.dds", true, graph::Material::bmTransparency, FloatRange(0.0f, 0.5f)); LoadImage2dLibMat("Effect\\frostHit", "Effect\\frostSmoke.dds", true, graph::Material::bmTransparency, FloatRange(1.0f, 0.0f)); - LoadImage2dLibMat("Effect\\crater", "Effect\\crater.dds", true, graph::Material::bmTransparency, FloatRange(1.0f, 0.0f)); + LoadImage2dLibMat("Effect\\crater", "Effect\\crater.dds", true, graph::Material::bmTransparency, FloatRange(1.0f, 0.0f)); LoadImage2dLibMat("Effect\\flare1", "Effect\\flare1.dds", true, graph::Material::bmAdditive, 0.5f, D3DXCOLOR(1, 0.58f, 0.36f, 1.0f)); LoadImage2dLibMat("Effect\\flare2", "Effect\\flare1.dds", true, graph::Material::bmAdditive, FloatRange(0.0f, 1.0f), clrRed); LoadImage2dLibMat("Effect\\flare3", "Effect\\flare1.dds", true, graph::Material::bmAdditive, FloatRange(1.0f, 0.0f), D3DXCOLOR(1, 0.58f, 0.36f, 1.0f)); - LoadImage2dLibMat("Effect\\flare4", "Effect\\flare2.dds", true, graph::Material::bmAdditive); + LoadImage2dLibMat("Effect\\flare4", "Effect\\flare2.dds", true, graph::Material::bmAdditive); LoadImage2dLibMat("Effect\\flare5", "Effect\\flare3.dds", true, graph::Material::bmAdditive); LoadImage2dLibMat("Effect\\flare6", "Effect\\flare4.dds", true, graph::Material::bmAdditive); LoadImage2dLibMat("Effect\\flare7Red", "Effect\\flare5.dds", true, graph::Material::bmAdditive, 1.0f, clrRed); @@ -1485,38 +1485,38 @@ void ResourceManager::LoadEffects() LoadImage2dLibMat("Effect\\heatTrail", "Effect\\heatTrail.dds", true, graph::Material::bmAdditive, FloatRange(0.8f, 0.0f), clrWhite); LoadImage2dLibMat("Effect\\bullet", "Effect\\bullet.dds", true, graph::Material::bmAdditive, 1.0f, clrWhite); LoadImage2dLibMat("Effect\\rad_add", "Effect\\rad_add.dds", true, graph::Material::bmAdditive, 1.0f, clrWhite); - LoadImage2dLibMat("Effect\\laser3-red2", "Effect\\laser3-red2.dds", true, graph::Material::bmAdditive, FloatRange(0.0f, 1.0f), clrWhite); + LoadImage2dLibMat("Effect\\laser3-red2", "Effect\\laser3-red2.dds", true, graph::Material::bmAdditive, FloatRange(0.0f, 1.0f), clrWhite); LoadImage2dLibMat("Effect\\flash1", "Effect\\flash1.dds", true, graph::Material::bmAdditive, 1.0f, clrWhite); LoadImage2dLibMat("Effect\\flash2", "Effect\\flash2.dds", true, graph::Material::bmAdditive, 1.0f, clrWhite); LoadImage2dLibMat("Effect\\dust_smoke_06", "Effect\\flare1.dds", true, graph::Material::bmAdditive, FloatRange(1.0f, 0.0f), D3DXCOLOR(0.2f, 0.2f, 1.0f, 1.0f)); LoadImage2dLibMat("Effect\\sonar", "Effect\\sonar.dds", true, graph::Material::bmAdditive, FloatRange(1.0f, 0.0f)); LoadImage2dLibMat("Effect\\ExplosionRay", "Effect\\ExplosionRay.dds", true, graph::Material::bmAdditive, FloatRange(1.0f, 0.0f), clrBlue); LoadImage2dLibMat("Effect\\ExplosionRing", "Effect\\ExplosionRing.dds", true, graph::Material::bmAdditive, FloatRange(1.0f, 0.0f), clrYellow); - LoadImage2dLibMat("Effect\\laser3-blue", "Effect\\laser3-blue.dds", true, graph::Material::bmAdditive); - LoadImage2dLibMat("Effect\\lens1", "Effect\\lens1.dds", true, graph::Material::bmAdditive, 1.0f, clrBlue); + LoadImage2dLibMat("Effect\\laser3-blue", "Effect\\laser3-blue.dds", true, graph::Material::bmAdditive); + LoadImage2dLibMat("Effect\\lens1", "Effect\\lens1.dds", true, graph::Material::bmAdditive, 1.0f, clrBlue); LoadImage2dLibMat("Effect\\streak1", "Effect\\streak1.dds", true, graph::Material::bmAdditive, FloatRange(1.0f, 0.0f)); LoadImage2dLibMat("Effect\\blink", "Effect\\blink.dds", true, graph::Material::bmAdditive, FloatRange(1.0f, 0.0f)); LoadImage2dLibMat("Effect\\lightning1", "Effect\\lightning1.dds", true, graph::Material::bmAdditive, FloatRange(1.0f, 0.0f)); LoadImage2dLibMat("Effect\\trail1", "Effect\\trail1.dds", true, graph::Material::bmAdditive, FloatRange(1.0f, 0.0f)); LoadImage2dLibMat("Effect\\ring1", "Effect\\ring1.dds", true, graph::Material::bmAdditive, FloatRange(1.0f, 0.0f)); LoadImage2dLibMat("Effect\\ring2", "Effect\\ring2.dds", true, graph::Material::bmAdditive, FloatRange(0.0f, 1.0f)); - LoadImage2dLibMat("Effect\\frostLine", "Effect\\frostLine.dds", true, graph::Material::bmAdditive, FloatRange(0.0f, 1.0f)); - LoadImage2dLibMat("Effect\\firePatron", "Effect\\firePatron.dds", true, graph::Material::bmAdditive, FloatRange(1.0f, 0.0f)); + LoadImage2dLibMat("Effect\\frostLine", "Effect\\frostLine.dds", true, graph::Material::bmAdditive, FloatRange(0.0f, 1.0f)); + LoadImage2dLibMat("Effect\\firePatron", "Effect\\firePatron.dds", true, graph::Material::bmAdditive, FloatRange(1.0f, 0.0f)); LoadImage2dLibMat("Effect\\fireTrail", "Effect\\fireTrail.dds", true, graph::Material::bmAdditive, FloatRange(1.0f, 0.0f), ColorRange(clrWhite, clrRed)); LoadImage2dLibMat("Effect\\protonRay", "Effect\\protonRay.dds", true, graph::Material::bmAdditive, FloatRange(1.0f, 0.0f)); LoadImage2dLibMat("Effect\\protonRing", "Effect\\protonRing.dds", true, graph::Material::bmAdditive, FloatRange(1.0f, 0.0f)); LoadImage2dLibMat("Effect\\phaseRing", "Effect\\phaseRing.dds", true, graph::Material::bmAdditive); - LoadImage2dLibMat("Effect\\thunder1", "Effect\\thunder1.dds", true, graph::Material::bmAdditive, FloatRange(1.0f, 0.0f), ColorRange(D3DXCOLOR(0xFFEC008C), D3DXCOLOR(0xFF0000FF))); - LoadImage2dLibMat("Effect\\flareLaser1", "Effect\\flare2b.dds", true, graph::Material::bmAdditive, FloatRange(0.7f, 0.0f)); + LoadImage2dLibMat("Effect\\thunder1", "Effect\\thunder1.dds", true, graph::Material::bmAdditive, FloatRange(1.0f, 0.0f), ColorRange(D3DXCOLOR(0xFFEC008C), D3DXCOLOR(0xFF0000FF))); + LoadImage2dLibMat("Effect\\flareLaser1", "Effect\\flare2b.dds", true, graph::Material::bmAdditive, FloatRange(0.7f, 0.0f)); LoadImage2dLibMat("Effect\\flareLaser2", "Effect\\flare1_tc.dds", true, graph::Material::bmAdditive, FloatRange(1.0f, 0.0f)); - LoadImage2dLibMat("Effect\\flareLaser3", "Effect\\flare2a.dds", true, graph::Material::bmAdditive, FloatRange(1.0f, 0.0f)); - - LoadImage2dLibMat("Effect\\smoke6", "Effect\\smoke6.dds", true, graph::Material::bmTransparency, FloatRange(1.0f, 0.1f), ColorRange(clrWhite, clrBlack), Vec2Range(NullVec2, IdentityVec2), Point2U(4, 1)); + LoadImage2dLibMat("Effect\\flareLaser3", "Effect\\flare2a.dds", true, graph::Material::bmAdditive, FloatRange(1.0f, 0.0f)); + + LoadImage2dLibMat("Effect\\smoke6", "Effect\\smoke6.dds", true, graph::Material::bmTransparency, FloatRange(1.0f, 0.1f), ColorRange(clrWhite, clrBlack), Vec2Range(NullVec2, IdentityVec2), Point2U(4, 1)); LoadImage2dLibMat("Effect\\explosion2", "Effect\\explosion2.dds", true, graph::Material::bmAdditive, 1.0f, clrWhite, Vec2Range(NullVec2, IdentityVec2), Point2U(4, 4));//.material.SetOption(graph::Material::moZTest, false); LoadImage2dLibMat("Effect\\explosion3", "Effect\\explosion3.dds", true, graph::Material::bmAdditive, 1.0f, clrWhite, Vec2Range(NullVec2, IdentityVec2), Point2U(6, 6)); LoadImage2dLibMat("Effect\\explosion4", "Effect\\explosion4.dds", true, graph::Material::bmAdditive, 1.0f, clrWhite, Vec2Range(NullVec2, IdentityVec2), Point2U(7, 7)); LoadImage2dLibMat("Effect\\boom1", "Effect\\fireblast09anim2.dds", true, graph::Material::bmTransparency, 1.0f, clrWhite, Vec2Range(NullVec2, IdentityVec2), Point2U(8, 4)); - LoadImage2dLibMat("Effect\\boom2", "Effect\\blueboom1_add.dds", true, graph::Material::bmTransparency, 1.0f, clrWhite, Vec2Range(NullVec2, IdentityVec2), Point2U(8, 8)); + LoadImage2dLibMat("Effect\\boom2", "Effect\\blueboom1_add.dds", true, graph::Material::bmTransparency, 1.0f, clrWhite, Vec2Range(NullVec2, IdentityVec2), Point2U(8, 8)); LoadImage2dLibMat("Effect\\spark1", "Effect\\spark1.dds", true, graph::Material::bmAdditive, FloatRange(1.0f, 0.0f)); LoadImage2dLibMat("Effect\\boomSpark1", "Effect\\szikra_group_6.dds", true, graph::Material::bmAdditive, FloatRange(1.0f, 0.0f)); LoadImage2dLibMat("Effect\\boomSpark2", "Effect\\szikra_group_7.dds", true, graph::Material::bmAdditive, FloatRange(1.0f, 0.0f)); @@ -1524,11 +1524,11 @@ void ResourceManager::LoadEffects() LoadImage2dLibMat("Effect\\fire2", "Effect\\fire2.dds", true, graph::Material::bmAdditive, 1.0f, ColorRange(clrWhite, clrRed), Vec2Range(NullVec2, IdentityVec2), Point2U(5, 5)); LoadImage2dLibMat("Effect\\gunEff2", "Effect\\gunEff2.dds", true, graph::Material::bmAdditive, FloatRange(1.0f, 0.0f), clrWhite, Vec2Range(NullVec2, glm::vec2(1.0f, 0.25f)), Point2U(4, 1)); LoadImage2dLibMat("Effect\\engine1", "Effect\\engine1.dds", true, graph::Material::bmAdditive, 1.0f, clrWhite, Vec2Range(NullVec2, IdentityVec2), Point2U(5, 2)); - LoadImage2dLibMat("Effect\\shield1", "Effect\\shield1.dds", true, graph::Material::bmAdditive, FloatRange(0.0f, 1.0f), clrWhite, Vec2Range(NullVec2, IdentityVec2), Point2U(5, 2)); + LoadImage2dLibMat("Effect\\shield1", "Effect\\shield1.dds", true, graph::Material::bmAdditive, FloatRange(0.0f, 1.0f), clrWhite, Vec2Range(NullVec2, IdentityVec2), Point2U(5, 2)); LoadImage2dLibMatAnim("Effect\\shield2", "Effect\\shield2.dds", true, graph::Material::bmAdditive, 0.4f, clrWhite, Vec3Range(NullVector, IdentityVector)).SetAnisoFlt(); LoadImage2dLibMatAnim("Effect\\shield2Hor", "Effect\\shield2.dds", true, graph::Material::bmAdditive, 0.4f, clrWhite, Vec3Range(NullVector, D3DXVECTOR3(1, 0, 0))).SetAnisoFlt(); LoadImage2dLibMatAnim("Effect\\shield2Vert", "Effect\\shield2.dds", true, graph::Material::bmAdditive, 0.4f, clrWhite, Vec3Range(NullVector, D3DXVECTOR3(0, 1, 0))).SetAnisoFlt(); - LoadImage2dLibMatAnim("Effect\\phaserBolt", "Effect\\shield2.dds", true, graph::Material::bmAdditive, 1.0f, clrWhite, Vec3Range(NullVector, IdentityVector)).SetAnisoFlt(); + LoadImage2dLibMatAnim("Effect\\phaserBolt", "Effect\\shield2.dds", true, graph::Material::bmAdditive, 1.0f, clrWhite, Vec3Range(NullVector, IdentityVector)).SetAnisoFlt(); LoadLibMat("Effect\\gravBall", true, graph::Material::bmOpaque, 1.0f, clrRed); @@ -1565,7 +1565,7 @@ void ResourceManager::LoadWorld1() LoadMesh("World1\\zdaine2.r3d", false, false, false, Planet::wtWorld1 | MeshLib::cTagInitIVB); LoadMesh("World1\\Track\\jump.r3d", false, false, false, Planet::wtWorld1 | MeshLib::cTagInitIVB); - LoadMesh("World1\\Track\\most.r3d", false, false, false, Planet::wtWorld1 | MeshLib::cTagInitIVB); + LoadMesh("World1\\Track\\most.r3d", false, false, false, Planet::wtWorld1 | MeshLib::cTagInitIVB); LoadMesh("World1\\Track\\track1.r3d", false, false, false, Planet::wtWorld1 | MeshLib::cTagInitIVB); LoadMesh("World1\\Track\\track2.r3d", false, false, false, Planet::wtWorld1 | MeshLib::cTagInitIVB); LoadMesh("World1\\Track\\track3.r3d", false, false, false, Planet::wtWorld1 | MeshLib::cTagInitIVB); @@ -1580,7 +1580,7 @@ void ResourceManager::LoadWorld1() LoadMesh("World1\\Track\\pxTrack1.r3d", false, false, false, Planet::wtWorld1 | MeshLib::cTagLoadData); LoadMesh("World1\\Track\\pxTrack2.r3d", false, false, false, Planet::wtWorld1 | MeshLib::cTagLoadData); LoadMesh("World1\\Track\\pxTrack3.r3d", false, false, false, Planet::wtWorld1 | MeshLib::cTagLoadData); - LoadMesh("World1\\Track\\pxTrack4.r3d", false, false, false, Planet::wtWorld1 | MeshLib::cTagLoadData); + LoadMesh("World1\\Track\\pxTrack4.r3d", false, false, false, Planet::wtWorld1 | MeshLib::cTagLoadData); LoadMesh("World1\\Track\\pxTrack5.r3d", false, false, false, Planet::wtWorld1 | MeshLib::cTagLoadData); LoadMesh("World1\\Track\\pxTramp1.r3d", false, false, false, Planet::wtWorld1 | MeshLib::cTagLoadData); LoadMesh("World1\\Track\\pxTramp2.r3d", false, false, false, Planet::wtWorld1 | MeshLib::cTagLoadData); @@ -1610,7 +1610,7 @@ void ResourceManager::LoadWorld1() LoadImage2dLibMat("World1\\stone", "World1\\Texture\\stone.dds"); - LoadImage2dLibMat("World1\\wand", "World1\\Texture\\wand.dds"); + LoadImage2dLibMat("World1\\wand", "World1\\Texture\\wand.dds"); LoadImage2dLibMat("World1\\Track\\most", "World1\\Track\\Texture\\most.dds"); LoadImage2dLibMat("World1\\Track\\track1", "World1\\Track\\Texture\\track1.dds"); LoadAlphaTestLibMat("World1\\zdanie1", "World1\\Texture\\zdanie1.dds"); @@ -1667,12 +1667,12 @@ void ResourceManager::LoadWorld2() LoadMesh("World2\\isle4.r3d", false, false, false, Planet::wtWorld2 | MeshLib::cTagInitIVB); LoadMesh("World2\\Track\\jump.r3d", true, false, false, Planet::wtWorld2 | MeshLib::cTagInitIVB); - LoadMesh("World2\\Track\\most.r3d", true, false, false, Planet::wtWorld2 | MeshLib::cTagInitIVB); + LoadMesh("World2\\Track\\most.r3d", true, false, false, Planet::wtWorld2 | MeshLib::cTagInitIVB); LoadMesh("World2\\Track\\track1.r3d", true, false, false, Planet::wtWorld2 | MeshLib::cTagInitIVB); LoadMesh("World2\\Track\\track2.r3d", true, false, false, Planet::wtWorld2 | MeshLib::cTagInitIVB); LoadMesh("World2\\Track\\track3.r3d", true, false, false, Planet::wtWorld2 | MeshLib::cTagInitIVB); - LoadMesh("World2\\Track\\track4.r3d", true, false, false, Planet::wtWorld2 | MeshLib::cTagInitIVB); - LoadMesh("World2\\Track\\track6.r3d", true, false, false, Planet::wtWorld2 | MeshLib::cTagInitIVB); + LoadMesh("World2\\Track\\track4.r3d", true, false, false, Planet::wtWorld2 | MeshLib::cTagInitIVB); + LoadMesh("World2\\Track\\track6.r3d", true, false, false, Planet::wtWorld2 | MeshLib::cTagInitIVB); LoadMesh("World2\\Track\\tramp1.r3d", true, false, false, Planet::wtWorld2 | MeshLib::cTagInitIVB); LoadMesh("World2\\Track\\tramp2.r3d", true, false, false, Planet::wtWorld2 | MeshLib::cTagInitIVB); LoadMesh("World2\\Track\\jumper1.r3d", true, false, false, Planet::wtWorld2 | MeshLib::cTagInitIVB); @@ -1707,7 +1707,7 @@ void ResourceManager::LoadWorld2() LoadImage("World2\\Texture\\pumpjack.dds", cGenMipLevel, false, false, Planet::wtWorld2 | ImageLib::cTagInitTex2d); LoadImage("World2\\Texture\\semaphore.dds", cGenMipLevel, false, false, Planet::wtWorld2 | ImageLib::cTagInitTex2d); LoadImage("World2\\Texture\\skelet1.dds", cGenMipLevel, false, false, Planet::wtWorld2 | ImageLib::cTagInitTex2d); - LoadImage("World2\\Texture\\strelka1.dds", cGenMipLevel, false, false, Planet::wtWorld2 | ImageLib::cTagInitTex2d); + LoadImage("World2\\Texture\\strelka1.dds", cGenMipLevel, false, false, Planet::wtWorld2 | ImageLib::cTagInitTex2d); LoadImage("World2\\Texture\\tramplin1.dds", cGenMipLevel, false, false, Planet::wtWorld2 | ImageLib::cTagInitTex2d); LoadImage("World2\\Texture\\truba1.dds", cGenMipLevel, false, false, Planet::wtWorld2 | ImageLib::cTagInitTex2d); LoadImage("World2\\Texture\\truba2.dds", cGenMipLevel, false, false, Planet::wtWorld2 | ImageLib::cTagInitTex2d); @@ -1745,9 +1745,9 @@ void ResourceManager::LoadWorld2() LoadImage2dLibMat("World2\\truba2", "World2\\Texture\\truba2.dds"); LoadImage2dLibMat("World2\\truba3", "World2\\Texture\\truba3.dds"); LoadImage2dLibMat("World2\\truba4", "World2\\Texture\\truba4.dds"); - LoadImage2dLibMat("World2\\isle1", "World2\\Texture\\isle1.dds"); + LoadImage2dLibMat("World2\\isle1", "World2\\Texture\\isle1.dds"); - LoadAlphaTestLibMat("World2\\elka", "World2\\Texture\\elka.dds"); + LoadAlphaTestLibMat("World2\\elka", "World2\\Texture\\elka.dds"); LoadAlphaTestLibMat("World2\\deadtree1", "World2\\Texture\\deadtree1.dds"); LoadAlphaTestLibMat("World2\\deadtree2", "World2\\Texture\\deadtree2.dds"); LoadAlphaTestLibMat("World2\\poplar1", "World2\\Texture\\poplar1.dds"); @@ -1776,13 +1776,13 @@ void ResourceManager::LoadWorld3() LoadMesh("World3\\stone2.r3d", false, false, false, Planet::wtWorld3 | MeshLib::cTagInitIVB); LoadMesh("World3\\stone3.r3d", false, false, false, Planet::wtWorld3 | MeshLib::cTagInitIVB); - LoadMesh("World3\\Track\\most.r3d", false, false, false, Planet::wtWorld3 | MeshLib::cTagInitIVB); + LoadMesh("World3\\Track\\most.r3d", false, false, false, Planet::wtWorld3 | MeshLib::cTagInitIVB); LoadMesh("World3\\Track\\track1.r3d", false, false, false, Planet::wtWorld3 | MeshLib::cTagInitIVB); LoadMesh("World3\\Track\\track2.r3d", false, false, false, Planet::wtWorld3 | MeshLib::cTagInitIVB); LoadMesh("World3\\Track\\track3.r3d", false, false, false, Planet::wtWorld3 | MeshLib::cTagInitIVB); LoadMesh("World3\\Track\\track4.r3d", false, false, false, Planet::wtWorld3 | MeshLib::cTagInitIVB); LoadMesh("World3\\Track\\podjem1.r3d", false, false, false, Planet::wtWorld3 | MeshLib::cTagInitIVB); - LoadMesh("World3\\Track\\podjem2.r3d", false, false, false, Planet::wtWorld3 | MeshLib::cTagInitIVB); + LoadMesh("World3\\Track\\podjem2.r3d", false, false, false, Planet::wtWorld3 | MeshLib::cTagInitIVB); LoadMesh("World3\\Track\\pxTrack1.r3d", false, false, false, Planet::wtWorld3 | MeshLib::cTagLoadData); LoadMesh("World3\\Track\\pxTrack2.r3d", false, false, false, Planet::wtWorld3 | MeshLib::cTagLoadData); @@ -1792,7 +1792,7 @@ void ResourceManager::LoadWorld3() LoadMesh("World3\\Track\\pxPodjem2.r3d", false, false, false, Planet::wtWorld3 | MeshLib::cTagLoadData); LoadImage("World3\\Texture\\fabrika.dds", cGenMipLevel, false, false, Planet::wtWorld3 | ImageLib::cTagInitTex2d); - LoadImage("World3\\Texture\\grass.dds", cGenMipLevel, false, false, Planet::wtWorld3 | ImageLib::cTagInitTex2d); + LoadImage("World3\\Texture\\grass.dds", cGenMipLevel, false, false, Planet::wtWorld3 | ImageLib::cTagInitTex2d); LoadImage("World3\\Texture\\tower.dds", cGenMipLevel, false, false, Planet::wtWorld3 | ImageLib::cTagInitTex2d); LoadImage("World3\\Texture\\tower2.dds", cGenMipLevel, false, false, Planet::wtWorld3 | ImageLib::cTagInitTex2d); LoadImage("World3\\Texture\\ventil1.dds", cGenMipLevel, false, false, Planet::wtWorld3 | ImageLib::cTagInitTex2d); @@ -1811,7 +1811,7 @@ void ResourceManager::LoadWorld3() LoadImage2dLibMat("World3\\ventil2", "World3\\Texture\\ventil2.dds"); LoadImage2dLibMat("World3\\windmil", "World3\\Texture\\windmil.dds"); LoadImage2dLibMat("World3\\stone", "World3\\Texture\\stone.dds"); - LoadAlphaTestLibMat("World3\\grass", "World3\\Texture\\grass.dds"); + LoadAlphaTestLibMat("World3\\grass", "World3\\Texture\\grass.dds"); LoadImage2dLibMat("World3\\Track\\track", "World3\\Track\\Texture\\track1.dds"); LoadImage2dLibMat("World3\\Track\\most", "World3\\Track\\Texture\\most.dds"); @@ -1822,23 +1822,23 @@ void ResourceManager::LoadWorld4() LSL_LOG("resourceManager load world4"); LoadMesh("World4\\architect1.r3d", false, false, false, Planet::wtWorld4 | MeshLib::cTagInitIVB); - LoadMesh("World4\\architect2.r3d", false, false, false, Planet::wtWorld4 | MeshLib::cTagInitIVB); - LoadMesh("World4\\architect3_1.r3d", false, false, false, Planet::wtWorld4 | MeshLib::cTagInitIVB); - LoadMesh("World4\\architect3_2.r3d", false, false, false, Planet::wtWorld4 | MeshLib::cTagInitIVB); - LoadMesh("World4\\architect4.r3d", false, false, false, Planet::wtWorld4 | MeshLib::cTagInitIVB); - LoadMesh("World4\\build.r3d", false, false, false, Planet::wtWorld4 | MeshLib::cTagInitIVB); - LoadMesh("World4\\gora1.r3d", false, false, false, Planet::wtWorld4 | MeshLib::cTagInitIVB); - LoadMesh("World4\\gora2.r3d", false, false, false, Planet::wtWorld4 | MeshLib::cTagInitIVB); - LoadMesh("World4\\kolba.r3d", false, false, false, Planet::wtWorld4 | MeshLib::cTagInitIVB); - LoadMesh("World4\\lavaplace1.r3d", false, false, false, Planet::wtWorld4 | MeshLib::cTagInitIVB); - LoadMesh("World4\\lavaplace2.r3d", false, false, false, Planet::wtWorld4 | MeshLib::cTagInitIVB); - LoadMesh("World4\\lavaplace3.r3d", false, false, false, Planet::wtWorld4 | MeshLib::cTagInitIVB); - LoadMesh("World4\\lavaplace4.r3d", false, false, false, Planet::wtWorld4 | MeshLib::cTagInitIVB); - LoadMesh("World4\\lavaplace5.r3d", false, false, false, Planet::wtWorld4 | MeshLib::cTagInitIVB); + LoadMesh("World4\\architect2.r3d", false, false, false, Planet::wtWorld4 | MeshLib::cTagInitIVB); + LoadMesh("World4\\architect3_1.r3d", false, false, false, Planet::wtWorld4 | MeshLib::cTagInitIVB); + LoadMesh("World4\\architect3_2.r3d", false, false, false, Planet::wtWorld4 | MeshLib::cTagInitIVB); + LoadMesh("World4\\architect4.r3d", false, false, false, Planet::wtWorld4 | MeshLib::cTagInitIVB); + LoadMesh("World4\\build.r3d", false, false, false, Planet::wtWorld4 | MeshLib::cTagInitIVB); + LoadMesh("World4\\gora1.r3d", false, false, false, Planet::wtWorld4 | MeshLib::cTagInitIVB); + LoadMesh("World4\\gora2.r3d", false, false, false, Planet::wtWorld4 | MeshLib::cTagInitIVB); + LoadMesh("World4\\kolba.r3d", false, false, false, Planet::wtWorld4 | MeshLib::cTagInitIVB); + LoadMesh("World4\\lavaplace1.r3d", false, false, false, Planet::wtWorld4 | MeshLib::cTagInitIVB); + LoadMesh("World4\\lavaplace2.r3d", false, false, false, Planet::wtWorld4 | MeshLib::cTagInitIVB); + LoadMesh("World4\\lavaplace3.r3d", false, false, false, Planet::wtWorld4 | MeshLib::cTagInitIVB); + LoadMesh("World4\\lavaplace4.r3d", false, false, false, Planet::wtWorld4 | MeshLib::cTagInitIVB); + LoadMesh("World4\\lavaplace5.r3d", false, false, false, Planet::wtWorld4 | MeshLib::cTagInitIVB); LoadMesh("World4\\pushka.r3d", false, false, false, Planet::wtWorld4 | MeshLib::cTagInitIVB); LoadMesh("World4\\naves.r3d", false, false, false, Planet::wtWorld4 | MeshLib::cTagInitIVB); LoadMesh("World4\\volcano.r3d", false, false, false, Planet::wtWorld4 | MeshLib::cTagInitIVB); - LoadMesh("World4\\crystals.r3d", false, false, false, Planet::wtWorld4 | MeshLib::cTagInitIVB); + LoadMesh("World4\\crystals.r3d", false, false, false, Planet::wtWorld4 | MeshLib::cTagInitIVB); LoadMesh("World4\\Track\\most.r3d", false, false, false, Planet::wtWorld4 | MeshLib::cTagInitIVB); LoadMesh("World4\\Track\\most2.r3d", false, false, false, Planet::wtWorld4 | MeshLib::cTagInitIVB); @@ -1892,7 +1892,7 @@ void ResourceManager::LoadWorld4() LoadImage2dLibMat("World4\\lavaplace", "World4\\Texture\\lavaplace.dds"); LoadImage2dLibMat("World4\\pushka", "World4\\Texture\\pushka.dds"); LoadImage2dLibMat("World4\\volcano", "World4\\Texture\\volcano.dds"); - LoadImage2dLibMat("World4\\crystals", "World4\\Texture\\crystals.dds"); + LoadImage2dLibMat("World4\\crystals", "World4\\Texture\\crystals.dds"); LoadImage2dLibMat("World4\\Track\\track1", "World4\\Track\\Texture\\track1.dds"); LoadImage2dLibMat("World4\\Track\\track2", "World4\\Track\\Texture\\track2.dds"); @@ -1913,7 +1913,7 @@ void ResourceManager::LoadWorld5() LoadMesh("World5\\snowstone2.r3d", false, false, false, Planet::wtWorld5 | MeshLib::cTagInitIVB); LoadMesh("World5\\snowTree.r3d", false, false, false, Planet::wtWorld5 | MeshLib::cTagInitIVB); LoadMesh("World5\\transportship.r3d", false, false, false, Planet::wtWorld5 | MeshLib::cTagInitIVB); - LoadMesh("World5\\piece.r3d", false, false, false, Planet::wtWorld5 | MeshLib::cTagInitIVB); + LoadMesh("World5\\piece.r3d", false, false, false, Planet::wtWorld5 | MeshLib::cTagInitIVB); LoadMesh("World5\\Track\\most.r3d", false, false, false, Planet::wtWorld5 | MeshLib::cTagInitIVB); LoadMesh("World5\\Track\\podjem1.r3d", false, false, false, Planet::wtWorld5 | MeshLib::cTagInitIVB); @@ -1925,7 +1925,7 @@ void ResourceManager::LoadWorld5() LoadMesh("World5\\Track\\track4.r3d", false, false, false, Planet::wtWorld5 | MeshLib::cTagInitIVB); LoadMesh("World5\\Track\\trackVentil.r3d", false, false, false, Planet::wtWorld5 | MeshLib::cTagInitIVB); LoadMesh("World5\\Track\\tramp1.r3d", false, false, false, Planet::wtWorld5 | MeshLib::cTagInitIVB); - LoadMesh("World5\\Track\\tramp2.r3d", false, false, false, Planet::wtWorld5 | MeshLib::cTagInitIVB); + LoadMesh("World5\\Track\\tramp2.r3d", false, false, false, Planet::wtWorld5 | MeshLib::cTagInitIVB); LoadMesh("World5\\Track\\PXpodjem1.r3d", false, false, false, Planet::wtWorld5 | MeshLib::cTagLoadData); LoadMesh("World5\\Track\\PXpodjem2.r3d", false, false, false, Planet::wtWorld5 | MeshLib::cTagLoadData); @@ -1933,7 +1933,7 @@ void ResourceManager::LoadWorld5() LoadMesh("World5\\Track\\PXtrack1.r3d", false, false, false, Planet::wtWorld5 | MeshLib::cTagLoadData); LoadMesh("World5\\Track\\PXtrack2.r3d", false, false, false, Planet::wtWorld5 | MeshLib::cTagLoadData); LoadMesh("World5\\Track\\PXtrack3.r3d", false, false, false, Planet::wtWorld5 | MeshLib::cTagLoadData); - LoadMesh("World5\\Track\\PXtrack4.r3d", false, false, false, Planet::wtWorld5 | MeshLib::cTagLoadData); + LoadMesh("World5\\Track\\PXtrack4.r3d", false, false, false, Planet::wtWorld5 | MeshLib::cTagLoadData); LoadImage("World5\\Texture\\cannon.dds", cGenMipLevel, false, false, Planet::wtWorld5 | ImageLib::cTagInitTex2d); LoadImage("World5\\Texture\\cannon2.dds", cGenMipLevel, false, false, Planet::wtWorld5 | ImageLib::cTagInitTex2d); @@ -1953,7 +1953,7 @@ void ResourceManager::LoadWorld5() LoadImage2dLibMat("World5\\snowPlate", "World5\\Texture\\snowPlate.dds"); LoadImage2dLibMat("World5\\transportship", "World5\\Texture\\transportship.dds"); - LoadImage2dLibMat("World5\\cannon2", "World5\\Texture\\cannon2.dds"); + LoadImage2dLibMat("World5\\cannon2", "World5\\Texture\\cannon2.dds"); LoadImage2dLibMat("World5\\piece", "World5\\Texture\\piece.dds"); LoadImage2dLibMat("World5\\snowstone2", "World5\\Texture\\snowstone2.dds"); @@ -1999,7 +1999,7 @@ void ResourceManager::LoadWorld6() LoadMesh("World6\\Track\\most.r3d", false, false, false, Planet::wtWorld6 | MeshLib::cTagInitIVB); LoadMesh("World6\\Track\\pxEnterTunnel.r3d", false, false, false, Planet::wtWorld6 | MeshLib::cTagLoadData); - LoadMesh("World6\\Track\\pxMost.r3d", false, false, false, Planet::wtWorld6 | MeshLib::cTagLoadData); + LoadMesh("World6\\Track\\pxMost.r3d", false, false, false, Planet::wtWorld6 | MeshLib::cTagLoadData); LoadMesh("World6\\Track\\pxTunel.r3d", false, false, false, Planet::wtWorld6 | MeshLib::cTagLoadData); LoadImage("World6\\Texture\\stone.dds", cGenMipLevel, false, false, Planet::wtWorld6 | ImageLib::cTagInitTex2d); @@ -2012,7 +2012,7 @@ void ResourceManager::LoadWorld6() LoadImage("World6\\Track\\Texture\\tonnel.dds", cGenMipLevel, false, false, Planet::wtWorld6 | ImageLib::cTagInitTex2d); LoadImage("World6\\Track\\Texture\\track1.dds", cGenMipLevel, false, false, Planet::wtWorld6 | ImageLib::cTagInitTex2d); - LoadImage("World6\\Track\\Texture\\tramplin3.dds", cGenMipLevel, false, false, Planet::wtWorld6 | ImageLib::cTagInitTex2d); + LoadImage("World6\\Track\\Texture\\tramplin3.dds", cGenMipLevel, false, false, Planet::wtWorld6 | ImageLib::cTagInitTex2d); LoadImage2dLibMat("World6\\stone", "World6\\Texture\\stone.dds"); LoadImage2dLibMat("World6\\nuke", "World6\\Texture\\nuke.dds"); @@ -2072,7 +2072,7 @@ void ResourceManager::LoadCars() LoadMesh("Car\\dirtdevilWheel.r3d"); LoadMesh("Car\\tankchetti.r3d"); LoadMesh("Car\\tankchettiWheel.r3d"); - LoadMesh("Car\\manticora.r3d"); + LoadMesh("Car\\manticora.r3d"); LoadMesh("Car\\manticoraWheel.r3d"); LoadMesh("Car\\manticoraWheelBack.r3d"); LoadMesh("Car\\manticoraGun.r3d"); @@ -2097,9 +2097,9 @@ void ResourceManager::LoadCars() LoadMesh("Car\\marauderCrush.r3d", false, true, true); LoadMesh("Car\\airbladeCrush.r3d", false, true, true); - LoadMesh("Car\\devildriverCrush.r3d", false, true, true); - LoadMesh("Car\\dirtdevilCrush.r3d", false, true, true); - LoadMesh("Car\\gusenizaCrush.r3d", false, true, true); + LoadMesh("Car\\devildriverCrush.r3d", false, true, true); + LoadMesh("Car\\dirtdevilCrush.r3d", false, true, true); + LoadMesh("Car\\gusenizaCrush.r3d", false, true, true); LoadMesh("Car\\manticoraCrush.r3d", false, true, true); LoadMesh("Car\\monstertruckCrush.r3d", false, true, true); LoadMesh("Car\\podushkaCrush.r3d", false, true, true); @@ -2119,9 +2119,9 @@ void ResourceManager::LoadCars() LoadImage("Car\\monstertruck.dds", cGenMipLevel); LoadImage("Car\\podushka.dds", cGenMipLevel); LoadImage("Car\\podushkaBoss.dds", cGenMipLevel); - LoadImage("Car\\monstertruckBoss.dds", cGenMipLevel); + LoadImage("Car\\monstertruckBoss.dds", cGenMipLevel); LoadImage("Car\\manticoraBoss.dds", cGenMipLevel); - LoadImage("Car\\devildriver.dds", cGenMipLevel); + LoadImage("Car\\devildriver.dds", cGenMipLevel); LoadImage("Car\\devildriverBoss.dds", cGenMipLevel); LoadImage("Car\\mustang.dds", cGenMipLevel); LoadImage("Car\\xCar.dds", cGenMipLevel); @@ -2134,7 +2134,7 @@ void ResourceManager::LoadCars() LoadImage("Car\\manticoraCrush.dds", cGenMipLevel, true); LoadImage("Car\\monstertruckCrush.dds", cGenMipLevel, true); LoadImage("Car\\podushkaCrush.dds", cGenMipLevel, true); - + @@ -2144,7 +2144,7 @@ void ResourceManager::LoadCars() LoadCarLibMat("Car\\tankchetti", "Car\\tankchetti.dds"); LoadCarLibMat("Car\\manticora", "Car\\manticora.dds"); LoadCarLibMat("Car\\airblade", "Car\\airblade.dds");//, "Car\\airbladeNorm.dds" - LoadCarLibMat("Car\\guseniza", "Car\\guseniza.dds"); + LoadCarLibMat("Car\\guseniza", "Car\\guseniza.dds"); LoadCarLibMat("Car\\gusenizaBoss", "Car\\gusenizaBoss.dds"); LoadCarLibMat("Car\\monstertruck", "Car\\monstertruck.dds"); LoadCarLibMat("Car\\podushka", "Car\\podushka.dds"); @@ -2167,7 +2167,7 @@ void ResourceManager::LoadCars() libMat.samplers[0].samplerStates.Set(graph::ssAddressU, D3DTADDRESS_WRAP); libMat.samplers[0].samplerStates.Set(graph::ssAddressV, D3DTADDRESS_CLAMP); libMat.samplers[0].SetFiltering(graph::BaseSampler::sfAnisotropic); - } + } LoadImage2dLibMat("Car\\monstertruckWheel", "Car\\monstertruck.dds"); LoadImage2dLibMat("Car\\monstertruckBossWheel", "Car\\monstertruckBoss.dds"); LoadImage2dLibMat("Car\\manticoraBossWheel", "Car\\manticoraBoss.dds"); @@ -2223,19 +2223,19 @@ void ResourceManager::LoadBonus() LoadImage2dLibMat("Bonus\\medpack", "Bonus\\medpack.dds"); LoadImage2dLibMat("Bonus\\money", "Bonus\\money.dds"); LoadImage2dLibMat("Bonus\\shield", "Bonus\\shield.dds"); - LoadImage2dLibMat("Bonus\\speedArrow", "Bonus\\speedArrow.dds", true, graph::Material::bmTransparency).SetAnisoFlt(); + LoadImage2dLibMat("Bonus\\speedArrow", "Bonus\\speedArrow.dds", true, graph::Material::bmTransparency).SetAnisoFlt(); LoadImage2dLibMat("Bonus\\strelkaAnim", "Bonus\\strelkaAnim.dds", true, graph::Material::bmTransparency, 1.0f, clrWhite, Vec2Range(NullVec2, IdentityVec2), Point2U(3, 2)).SetAnisoFlt(); LoadImage2dLibMat("Bonus\\lusha", "Bonus\\lusha.dds", true, graph::Material::bmTransparency).SetAnisoFlt(); LoadImage2dLibMat("Bonus\\snowLusha", "Bonus\\snowLusha.dds", true, graph::Material::bmTransparency).SetAnisoFlt(); LoadImage2dLibMat("Bonus\\hellLusha", "Bonus\\hellLusha.dds", true, graph::Material::bmTransparency).SetAnisoFlt(); - + //maslo { graph::LibMaterial* libMat = &GetMatLib().Add(); libMat->SetName("Bonus\\maslo"); libMat->material.SetSpecPower(64.0f); libMat->material.SetSpecular(D3DXCOLOR(1, 1, 1, 1)); - libMat->material.SetBlending(graph::Material::bmTransparency); + libMat->material.SetBlending(graph::Material::bmTransparency); libMat->material.SetOption(graph::Material::moZWrite, false); AddSampler2dTo(*libMat, "Bonus\\maslo.dds", graph::Sampler2d::tmModulate); @@ -2255,13 +2255,13 @@ void ResourceManager::LoadWeapons() LoadMesh("Weapon\\pulsator.r3d"); LoadMesh("Weapon\\gun.r3d"); LoadMesh("Weapon\\hyperdrive.r3d"); - LoadMesh("Weapon\\mine1.r3d"); + LoadMesh("Weapon\\mine1.r3d"); LoadMesh("Weapon\\mine2.r3d"); LoadMesh("Weapon\\mine3.r3d"); - LoadMesh("Weapon\\mine2Piece.r3d"); + LoadMesh("Weapon\\mine2Piece.r3d"); LoadMesh("Weapon\\rocket.r3d"); LoadMesh("Weapon\\rocketAir.r3d"); - LoadMesh("Weapon\\rocketLauncher.r3d"); + LoadMesh("Weapon\\rocketLauncher.r3d"); LoadMesh("Weapon\\hyperBlaster.r3d"); LoadMesh("Weapon\\torpeda.r3d"); LoadMesh("Weapon\\bulletGun.r3d"); @@ -2272,8 +2272,8 @@ void ResourceManager::LoadWeapons() LoadMesh("Weapon\\airWeapon.r3d"); LoadMesh("Weapon\\maslo.r3d"); LoadMesh("Weapon\\fireGun.r3d"); - LoadMesh("Weapon\\sphereGun.r3d"); - LoadMesh("Weapon\\drobilka.r3d"); + LoadMesh("Weapon\\sphereGun.r3d"); + LoadMesh("Weapon\\drobilka.r3d"); LoadMesh("Weapon\\sonar.r3d"); LoadMesh("Weapon\\shotBall.r3d"); LoadMesh("Weapon\\turel.r3d"); @@ -2306,8 +2306,8 @@ void ResourceManager::LoadWeapons() LoadImage("Weapon\\maslo.dds", cGenMipLevel); LoadImage("Weapon\\fireGun.dds", cGenMipLevel); LoadImage("Weapon\\drobilka.dds", cGenMipLevel); - LoadImage("Weapon\\turel.dds", cGenMipLevel); - LoadImage("Weapon\\spring.dds", cGenMipLevel); + LoadImage("Weapon\\turel.dds", cGenMipLevel); + LoadImage("Weapon\\spring.dds", cGenMipLevel); LoadImage("Weapon\\shotBall.dds", cGenMipLevel); LoadImage("Weapon\\mortira.dds", cGenMipLevel); LoadImage("Weapon\\phaseImpulse.dds", cGenMipLevel); @@ -2315,9 +2315,9 @@ void ResourceManager::LoadWeapons() LoadImage("Weapon\\reflector.dds", cGenMipLevel); LoadImage("Weapon\\rezonator.dds", cGenMipLevel); LoadImage("Weapon\\tankLaser.dds", cGenMipLevel); - - - + + + LoadImage2dLibMat("Weapon\\blaster1", "Weapon\\blaster1.dds"); LoadImage2dLibMat("Weapon\\pulsator", "Weapon\\pulsator.dds"); @@ -2335,14 +2335,14 @@ void ResourceManager::LoadWeapons() LoadImage2dLibMat("Weapon\\maslo", "Weapon\\maslo.dds"); LoadImage2dLibMat("Weapon\\shotBall", "Weapon\\shotBall.dds"); LoadLibMat("Weapon\\mortiraBall", false, graph::Material::bmOpaque, 1.0f, clrBlack, clrBlack); - + LoadImage2dLibMat("Weapon\\bulletGun", "Car\\marauder.dds"); LoadImage2dLibMat("Weapon\\blasterGun", "Car\\manticora.dds"); LoadImage2dLibMat("Weapon\\tankLaser", "Weapon\\tankLaser.dds"); LoadImage2dLibMat("Weapon\\rifleWeapon", "Car\\dirtdevil.dds"); LoadImage2dLibMat("Weapon\\airWeapon", "Car\\airblade.dds"); - LoadImage2dLibMat("Weapon\\fireGun", "Weapon\\fireGun.dds"); - LoadImage2dLibMat("Weapon\\drobilka", "Weapon\\drobilka.dds"); + LoadImage2dLibMat("Weapon\\fireGun", "Weapon\\fireGun.dds"); + LoadImage2dLibMat("Weapon\\drobilka", "Weapon\\drobilka.dds"); LoadImage2dLibMat("Weapon\\turel", "Weapon\\turel.dds"); LoadImage2dLibMat("Weapon\\spring", "Weapon\\spring.dds"); LoadImage2dLibMat("Weapon\\asyncFrost", "Car\\monstertruck.dds"); @@ -2373,7 +2373,7 @@ void ResourceManager::LoadUpgrades() LoadMesh("Upgrade\\wheel3.r3d"); LoadMesh("Upgrade\\truba1.r3d"); LoadMesh("Upgrade\\truba2.r3d"); - LoadMesh("Upgrade\\truba3.r3d"); + LoadMesh("Upgrade\\truba3.r3d"); LoadImage("Upgrade\\armor1.dds", cGenMipLevel); LoadImage("Upgrade\\armor2.dds", cGenMipLevel); @@ -2398,7 +2398,7 @@ void ResourceManager::LoadGUI() LoadMesh("GUI\\planet.r3d", false, true, true); LoadMesh("GUI\\garage.r3d", false, true, true); - LoadMesh("GUI\\angar.r3d", false, true, true); + LoadMesh("GUI\\angar.r3d", false, true, true); LoadMesh("GUI\\question.r3d", false, true, true); LoadImage("GUI\\final.dds"); @@ -2413,19 +2413,19 @@ void ResourceManager::LoadGUI() LoadImage("GUI\\tablo1.png", 1, false, false, -1, true); LoadImage("GUI\\tablo2.png", 1, false, false, -1, true); LoadImage("GUI\\tablo3.png", 1, false, false, -1, true); - LoadImage("GUI\\tablo4.png", 1, false, false, -1, true); + LoadImage("GUI\\tablo4.png", 1, false, false, -1, true); LoadImage("GUI\\cursor.png", 1, false, false, -1, true); - + LoadImage("GUI\\garage1.dds", cGenMipLevel, true, false); LoadImage("GUI\\garage2.dds", cGenMipLevel, true, false); LoadImage("GUI\\angar1.dds", cGenMipLevel, true, false); LoadImage("GUI\\angar2.dds", cGenMipLevel, true, false); LoadImage("GUI\\question.png", cGenMipLevel, true, false); - + LoadImage("GUI\\space2.dds", cGenMipLevel); LoadImage("GUI\\earth.dds", cGenMipLevel); LoadImage("GUI\\intaria.dds", cGenMipLevel); - LoadImage("GUI\\patagonis.dds", cGenMipLevel); + LoadImage("GUI\\patagonis.dds", cGenMipLevel); LoadImage("GUI\\chemi5.dds", cGenMipLevel); LoadImage("GUI\\inferno.dds", cGenMipLevel); LoadImage("GUI\\nho.dds", cGenMipLevel); @@ -2442,7 +2442,7 @@ void ResourceManager::LoadGUI() LoadImage("GUI\\Chars\\gank.png", 1, false, false, -1, true); LoadImage("GUI\\Chars\\gerry.png", 1, false, false, -1, true); LoadImage("GUI\\Chars\\k-jin.png", 1, false, false, -1, true); - LoadImage("GUI\\Chars\\kristoph.png", 1, false, false, -1, true); + LoadImage("GUI\\Chars\\kristoph.png", 1, false, false, -1, true); LoadImage("GUI\\Chars\\mardock.png", 1, false, false, -1, true); LoadImage("GUI\\Chars\\rip.png", 1, false, false, -1, true); LoadImage("GUI\\Chars\\shred.png", 1, false, false, -1, true); @@ -2475,7 +2475,7 @@ void ResourceManager::LoadGUI() LoadImage("GUI\\bottomPanel.png", 1, false, false, -1, true); LoadImage("GUI\\topPanel.png", 1, false, false, -1, true); LoadImage("GUI\\moneyBg.png", 1, false, false, -1, true); - LoadImage("GUI\\statFrame.png", 1, false, false, -1, true); + LoadImage("GUI\\statFrame.png", 1, false, false, -1, true); LoadImage("GUI\\buttonBg1.png", 1, false, false, -1, true); LoadImage("GUI\\buttonBgSel1.png", 1, false, false, -1, true); LoadImage("GUI\\icoStart.png", 1, false, false, -1, true); @@ -2493,7 +2493,7 @@ void ResourceManager::LoadGUI() LoadImage("GUI\\icoOptions.png", 1, false, false, -1, true); LoadImage("GUI\\icoExit.png", 1, false, false, -1, true); - //race net + //race net LoadImage("GUI\\netPlayerFrame.png", 1, false, false, -1, true); LoadImage("GUI\\netPlayerReadyState.png", 1, false, false, -1, true); LoadImage("GUI\\netPlayerReadyStateSel.png", 1, false, false, -1, true); @@ -2506,16 +2506,16 @@ void ResourceManager::LoadGUI() LoadImage("GUI\\bottomPanel2.png", 1, false, false, -1, true); LoadImage("GUI\\rightPanel2.png", 1, false, false, -1, true); LoadImage("GUI\\statFrame2.png", 1, false, false, -1, true); - LoadImage("GUI\\topPanel2.png", 1, false, false, -1, true); + LoadImage("GUI\\topPanel2.png", 1, false, false, -1, true); LoadImage("GUI\\buttonBg2.png", 1, false, false, -1, true); LoadImage("GUI\\buttonBgSel2.png", 1, false, false, -1, true); LoadImage("GUI\\statBar2.png", 1, false, false, -1, true); LoadImage("GUI\\colorBox.png", 1, false, false, -1, true); LoadImage("GUI\\colorBoxBg.png", 1, false, false, -1, true); LoadImage("GUI\\colorBoxBgSel.png", 1, false, false, -1, true); - LoadImage("GUI\\carBox.png", 1, false, false, -1, true); - LoadImage("GUI\\carBoxSel.png", 1, false, false, -1, true); - LoadImage("GUI\\header2.png", 1, false, false, -1, true); + LoadImage("GUI\\carBox.png", 1, false, false, -1, true); + LoadImage("GUI\\carBoxSel.png", 1, false, false, -1, true); + LoadImage("GUI\\header2.png", 1, false, false, -1, true); LoadImage("GUI\\lock.png", 1, false, false, -1, true); LoadImage("GUI\\buyButton_russian.png", 1, false, false, -1, true); LoadImage("GUI\\buyButtonSel_russian.png", 1, false, false, -1, true); @@ -2528,17 +2528,17 @@ void ResourceManager::LoadGUI() LoadImage("GUI\\chargeBox.png", 1, false, false, -1, true); LoadImage("GUI\\chargeButton.png", 1, false, false, -1, true); LoadImage("GUI\\chargeButtonSel.png", 1, false, false, -1, true); - LoadImage("GUI\\leftPanel3.png", 1, false, false, -1, true); - LoadImage("GUI\\slot2.png", 1, false, false, -1, true); + LoadImage("GUI\\leftPanel3.png", 1, false, false, -1, true); + LoadImage("GUI\\slot2.png", 1, false, false, -1, true); LoadImage("GUI\\slot2Frame.png", 1, false, false, -1, true); LoadImage("GUI\\topPanel3.png", 1, false, false, -1, true); LoadImage("GUI\\upLevel1.png", 1, false, false, -1, true); LoadImage("GUI\\upLevel2.png", 1, false, false, -1, true); LoadImage("GUI\\upLevel3.png", 1, false, false, -1, true); - LoadImage("GUI\\statBar2Plus.png", 1, false, false, -1, true); + LoadImage("GUI\\statBar2Plus.png", 1, false, false, -1, true); LoadImage("GUI\\mineSlot.png", 1, false, false, -1, true); LoadImage("GUI\\wpnSlot.png", 1, false, false, -1, true); - LoadImage("GUI\\wpnSlotSel.png", 1, false, false, -1, true); + LoadImage("GUI\\wpnSlotSel.png", 1, false, false, -1, true); LoadImage("GUI\\hyperSlot.png", 1, false, false, -1, true); //cars @@ -2553,7 +2553,7 @@ void ResourceManager::LoadGUI() LoadImage("GUI\\Cars\\buggi.png", 1, false, false, -1, true); LoadImage("GUI\\Cars\\tankchetti.png", 1, false, false, -1, true); LoadImage("GUI\\Cars\\mustang.png", 1, false, false, -1, true); - LoadImage("GUI\\Cars\\manticoraBoss.png", 1, false, false, -1, true); + LoadImage("GUI\\Cars\\manticoraBoss.png", 1, false, false, -1, true); LoadImage("GUI\\Cars\\gusenizaBoss.png", 1, false, false, -1, true); LoadImage("GUI\\Cars\\podushkaBoss.png", 1, false, false, -1, true); LoadImage("GUI\\Cars\\monstertruckBoss.png", 1, false, false, -1, true); @@ -2578,7 +2578,7 @@ void ResourceManager::LoadGUI() LoadImage("GUI\\Rewards\\mustang.png", 1, false, false, -1, true); LoadImage("GUI\\Rewards\\mustangLock.png", 1, false, false, -1, true); LoadImage("GUI\\Rewards\\musicTrack.png", 1, false, false, -1, true); - LoadImage("GUI\\Rewards\\musicTrackLock.png", 1, false, false, -1, true); + LoadImage("GUI\\Rewards\\musicTrackLock.png", 1, false, false, -1, true); //achievments LoadImage("GUI\\Achievments\\points1_2.png", 1, true, false, -1, true); @@ -2603,8 +2603,8 @@ void ResourceManager::LoadGUI() LoadImage("GUI\\Achievments\\firstBlood.png", 1, true, false, -1, true); //gamers - LoadImage("GUI\\arrow2.png", 1, false, false, -1, true); - LoadImage("GUI\\arrowSel2.png", 1, false, false, -1, true); + LoadImage("GUI\\arrow2.png", 1, false, false, -1, true); + LoadImage("GUI\\arrowSel2.png", 1, false, false, -1, true); LoadImage("GUI\\bottomPanel4.png", 1, false, false, -1, true); LoadImage("GUI\\wndLight4.png", 1, false, false, -1, true); LoadImage("GUI\\space1.dds"); @@ -2621,18 +2621,18 @@ void ResourceManager::LoadGUI() LoadImage("GUI\\doorUp.png", 1, false, false, -1, true); LoadImage("GUI\\doorSlot.png", 1, false, false, -1, true); LoadImage("GUI\\doorSlotSel.png", 1, false, false, -1, true); - LoadImage("GUI\\planetInfo.png", 1, false, false, -1, true); + LoadImage("GUI\\planetInfo.png", 1, false, false, -1, true); LoadImage("GUI\\wndLight6.png", 1, false, false, -1, true); LoadImage("GUI\\buttonBg6.png", 1, false, false, -1, true); - LoadImage("GUI\\buttonBgSel6.png", 1, false, false, -1, true); + LoadImage("GUI\\buttonBgSel6.png", 1, false, false, -1, true); - //options + //options LoadImage("GUI\\arrow3.png", 1, false, false, -1, true); LoadImage("GUI\\arrowSel3.png", 1, false, false, -1, true); LoadImage("GUI\\buttonBg4.png", 1, false, false, -1, true); LoadImage("GUI\\buttonBgSel4.png", 1, false, false, -1, true); LoadImage("GUI\\buttonBg5.png", 1, false, false, -1, true); - LoadImage("GUI\\optBar.png", 1, false, false, -1, true); + LoadImage("GUI\\optBar.png", 1, false, false, -1, true); LoadImage("GUI\\optBarBg.png", 1, false, false, -1, true); LoadImage("GUI\\optionsBg.png", 1, false, false, -1, true); LoadImage("GUI\\labelBg1.png", 1, false, false, -1, true); @@ -2679,7 +2679,7 @@ void ResourceManager::LoadGUI() LoadImage("GUI\\Slides\\slide7.dds"); LoadImage("GUI\\Slides\\slide8.dds"); LoadImage("GUI\\Slides\\slide9.dds"); - + LoadSpecLibMat("GUI\\question", "GUI\\question.png"); LoadImage2dLibMat("GUI\\garage1", "GUI\\garage1.dds"); LoadImage2dLibMat("GUI\\garage2", "GUI\\garage2.dds"); @@ -2712,7 +2712,7 @@ void ResourceManager::LoadCarLibMat(graph::LibMaterial* libMat, graph::Tex2DReso libMat->samplers.Clear(); - graph::Sampler2d& colSampler = libMat->samplers.Add2d(tex); + graph::Sampler2d& colSampler = libMat->samplers.Add2d(tex); colSampler.SetFiltering(graph::BaseSampler::sfAnisotropic); colSampler.SetColorMode(graph::Sampler2d::tmDecal); colSampler.SetColor(color); @@ -2760,7 +2760,7 @@ void ResourceManager::LoadMusic() LoadSound("Music\\Track13.ogg"); LoadSound("Music\\Track14.ogg"); LoadSound("Music\\Track15.ogg"); - LoadSound("Music\\TrackFinal.ogg"); + LoadSound("Music\\TrackFinal.ogg"); } void ResourceManager::LoadSounds() @@ -2777,7 +2777,7 @@ void ResourceManager::LoadSounds() LoadSound("Sounds\\engine_player_heavy_mot.ogg", 1.0f, 0.0f, true); LoadSound("Sounds\\engine_player_heavy_tom.ogg", 1.0f, 0.0f, true); - LoadSound("Sounds\\Motor_high02.ogg", 1.0f, 0.0f, true); + LoadSound("Sounds\\Motor_high02.ogg", 1.0f, 0.0f, true); LoadSound("Sounds\\podushka_move.ogg", 1.0f, 0.0f, true); LoadSound("Sounds\\podushka_stop.ogg", 1.0f, 0.0f, true); LoadSound("Sounds\\monstertruckstop.ogg", 1.0f, 0.0f, true); @@ -2785,11 +2785,11 @@ void ResourceManager::LoadSounds() LoadSound("Sounds\\guseniza_move.ogg", 1.0f, 0.0f, true); LoadSound("Sounds\\fazowij_izluchatel.ogg", 1.0f, 0.0f, true); LoadSound("Sounds\\spherePulseDeath.ogg", 1.0f, 0.0f, true); - LoadSound("Sounds\\gun_podushkat.ogg", 1.0f, 0.0f, true); + LoadSound("Sounds\\gun_podushkat.ogg", 1.0f, 0.0f, true); LoadSound("Sounds\\laserGuseniza.ogg", 1.0f, 0.0f, true); LoadSound("Sounds\\mortira.ogg", 1.0f, 0.0f, true); LoadSound("Sounds\\pulsator.ogg", 1.0f, 0.0f, true); - LoadSound("Sounds\\turel.ogg", 1.0f, 0.0f, true); + LoadSound("Sounds\\turel.ogg", 1.0f, 0.0f, true); LoadSound("Sounds\\ultrazwukovoi_blaser.ogg", 1.0f, 0.0f, true); LoadSound("Sounds\\frost_ray.ogg", 1.0f, 0.0f, true); @@ -2800,14 +2800,14 @@ void ResourceManager::LoadSounds() LoadSound("Sounds\\icon_rail.ogg", 1.0f, 0.0f, true); LoadSound("Sounds\\phalanx_shot_a.ogg", 1.0f, 0.0f, true); LoadSound("Sounds\\klicka5.ogg", 2.0f, 0.0f, true); - LoadSound("Sounds\\exhaust_b_heavy.ogg", 2.0f, 0.0f, true); - LoadSound("Sounds\\fireGun.ogg", 2.0f, 0.0f, true); + LoadSound("Sounds\\exhaust_b_heavy.ogg", 2.0f, 0.0f, true); + LoadSound("Sounds\\fireGun.ogg", 2.0f, 0.0f, true); LoadSound("Sounds\\sonar.ogg", 1.0f, 0.0f, true); LoadSound("Sounds\\shieldOn.ogg", 2.0f, 0.0f, true); //LoadSound("Sounds\\bullets_hp_01.ogg", 2.0f, 0.0f, true); //LoadSound("Sounds\\bullets_hp_02.ogg", 2.0f, 0.0f, true); //LoadSound("Sounds\\bullets_hp_03.ogg", 2.0f, 0.0f, true); - LoadSound("Sounds\\airBladeRocket.ogg", 1.0f, 0.0f, true); + LoadSound("Sounds\\airBladeRocket.ogg", 1.0f, 0.0f, true); LoadSound("Sounds\\maslo.ogg", 1.0f, 0.0f, true); LoadSound("Sounds\\rezonator.ogg", 1.0f, 0.0f, true); @@ -2818,7 +2818,7 @@ void ResourceManager::LoadSounds() LoadSound("Sounds\\UI\\pickup_down.ogg", 1.0f, 0.0f, true); LoadSound("Sounds\\UI\\pickup_up.ogg", 1.0f, 0.0f, true); LoadSound("Sounds\\UI\\repaint.ogg", 1.0f, 0.0f, true); - LoadSound("Sounds\\UI\\acception.ogg", 1.0f, 0.0f, true); + LoadSound("Sounds\\UI\\acception.ogg", 1.0f, 0.0f, true); LoadSound("Sounds\\UI\\showPlanet.ogg", 1.0f, 0.0f, true); } @@ -2832,15 +2832,15 @@ void ResourceManager::LoadCommentator(const CommentatorStyle& style) LoadSound("thirdChanged1.ogg", "Voice\\", style.name + "\\", 1.0f, 0.0f, true, true); for (int i = 1; i <= 4; ++i) - LoadSound(lsl::StrFmt("start%d.ogg", i), "Voice\\", style.name + "\\", 1.0f, 0.0f, true, true); + LoadSound(lsl::StrFmt("start%d.ogg", i), "Voice\\", style.name + "\\", 1.0f, 0.0f, true, true); for (int i = 1; i <= 7; ++i) LoadSound(lsl::StrFmt("lastLap%d.ogg", i), "Voice\\", style.name + "\\", 1.0f, 0.0f, true, true); for (int i = 1; i <= 7; ++i) - LoadSound(lsl::StrFmt("lowLife%d.ogg", i), "Voice\\", style.name + "\\", 1.0f, 0.0f, true, true); + LoadSound(lsl::StrFmt("lowLife%d.ogg", i), "Voice\\", style.name + "\\", 1.0f, 0.0f, true, true); for (int i = 1; i <= 3; ++i) - LoadSound(lsl::StrFmt("playerLostControl%d.ogg", i), "Voice\\", style.name + "\\", 1.0f, 0.0f, true, true); + LoadSound(lsl::StrFmt("playerLostControl%d.ogg", i), "Voice\\", style.name + "\\", 1.0f, 0.0f, true, true); for (int i = 1; i <= 6; ++i) - LoadSound(lsl::StrFmt("leaderChanged%d.ogg", i), "Voice\\", style.name + "\\", 1.0f, 0.0f, true, true); + LoadSound(lsl::StrFmt("leaderChanged%d.ogg", i), "Voice\\", style.name + "\\", 1.0f, 0.0f, true, true); for (int i = 1; i <= 6; ++i) LoadSound(lsl::StrFmt("leaderFinish%d.ogg", i), "Voice\\", style.name + "\\", 1.0f, 0.0f, true, true); for (int i = 1; i <= 3; ++i) @@ -2850,7 +2850,7 @@ void ResourceManager::LoadCommentator(const CommentatorStyle& style) for (int i = 1; i <= 5; ++i) LoadSound(lsl::StrFmt("lastFinish%d.ogg", i), "Voice\\", style.name + "\\", 1.0f, 0.0f, true, true); for (int i = 1; i <= 3; ++i) - LoadSound(lsl::StrFmt("playerKill%d.ogg", i), "Voice\\", style.name + "\\", 1.0f, 0.0f, true, true); + LoadSound(lsl::StrFmt("playerKill%d.ogg", i), "Voice\\", style.name + "\\", 1.0f, 0.0f, true, true); for (int i = 1; i <= 7; ++i) LoadSound(lsl::StrFmt("finishFirst%d.ogg", i), "Voice\\", style.name + "\\", 1.0f, 0.0f, true, true); for (int i = 1; i <= 4; ++i) @@ -2878,8 +2878,8 @@ void ResourceManager::LoadCommentator(const CommentatorStyle& style) LoadSound("stinkle.ogg", "Voice\\", style.name + "\\", 1.0f, 0.0f, true, true); LoadSound("violetta.ogg", "Voice\\", style.name + "\\", 1.0f, 0.0f, true, true); LoadSound("viper.ogg", "Voice\\", style.name + "\\", 1.0f, 0.0f, true, true); - LoadSound("butcher.ogg", "Voice\\", style.name + "\\", 1.0f, 0.0f, true, true); - LoadSound("kjin.ogg", "Voice\\", style.name + "\\", 1.0f, 0.0f, true, true); + LoadSound("butcher.ogg", "Voice\\", style.name + "\\", 1.0f, 0.0f, true, true); + LoadSound("kjin.ogg", "Voice\\", style.name + "\\", 1.0f, 0.0f, true, true); } void ResourceManager::LoadWorld(int worldType) @@ -2940,7 +2940,7 @@ void ResourceManager::Load() LoadBonus(); LoadWeapons(); LoadUpgrades(); - LoadGUI(); + LoadGUI(); LoadSounds(); } diff --git a/src/Rock3dGame/source/game/Trace.cpp b/src/Rock3dGame/source/game/Trace.cpp index 5d2ceb20..de366453 100644 --- a/src/Rock3dGame/source/game/Trace.cpp +++ b/src/Rock3dGame/source/game/Trace.cpp @@ -7,7 +7,7 @@ namespace r3d namespace game { - + WayPoint::WayPoint(Trace* trace, unsigned id): _trace(trace), _id(id), _pos(NullVector), _size(0), _off(NullVector) { LSL_ASSERT(_trace); @@ -197,7 +197,7 @@ void WayNode::Tile::ApplyChanges() const Vec2NormCCW(_midDir, _edgeNorm); else Vec2NormCW(_midDir, _edgeNorm); - Line2FromNorm(_edgeNorm, sPos + _nodeRadius * _edgeNorm, _edgeLine); + Line2FromNorm(_edgeNorm, sPos + _nodeRadius * _edgeNorm, _edgeLine); //Вычисляем turnAngle if (_node->GetPrev()) @@ -237,7 +237,7 @@ float WayNode::Tile::GetNextHeight() const const glm::vec2& WayNode::Tile::GetPrevDir() const { const Tile* tile = _node->GetPrev() ? &_node->GetPrev()->GetTile() : this; - + tile->ApplyChanges(); return tile->_dir; } @@ -245,7 +245,7 @@ const glm::vec2& WayNode::Tile::GetPrevDir() const const glm::vec2& WayNode::Tile::GetNextMidNorm() const { const Tile* tile = _node->GetNext() ? &_node->GetNext()->GetTile() : this; - + tile->ApplyChanges(); return tile->_midNorm; } @@ -253,7 +253,7 @@ const glm::vec2& WayNode::Tile::GetNextMidNorm() const const D3DXVECTOR3& WayNode::Tile::GetNextNormLine() const { const Tile* tile = _node->GetNext() ? &_node->GetNext()->GetTile() : this; - + tile->ApplyChanges(); return tile->_midNormLine; } @@ -295,7 +295,7 @@ unsigned WayNode::Tile::ComputeTrackInd(const glm::vec2& point) const float tileWidth = GetWidth(point); float trackDiv = tileWidth / cTrackCnt; float trackPos = Line2DistToPoint(_dirLine, point); - + unsigned trackInd = static_cast(abs(floor(trackPos/trackDiv + cTrackCnt/2.0f))); trackInd = std::max(trackInd , 0); trackInd = std::min(trackInd , cTrackCnt - 1); @@ -306,7 +306,7 @@ unsigned WayNode::Tile::ComputeTrackInd(const glm::vec2& point) const float off = cTrackCnt % 2 > 0 ? 0.0f : 0.5f; int trackInd = static_cast(Round(trackPos / trackDiv + off)); - + trackInd = std::max(trackInd , -cTrackCnt/2); trackInd = std::min(trackInd , cTrackCnt/2);*/ @@ -372,7 +372,7 @@ bool WayNode::Tile::IsContains(const D3DXVECTOR3& point, bool lengthClamp, float float dist1 = Line2DistToPoint(_midNormLine, point2); float dist2 = Line2DistToPoint(GetNextNormLine(), point2); float dirDist = Line2DistToPoint(_dirLine, point2); - + //Высота от плоскости трасы до поверхности ограничивающего цилиндра float coordX = ComputeCoordX(dist1); float coordZ = ComputeZCoord(coordX); @@ -493,7 +493,7 @@ float WayNode::Tile::ComputeCoordX(const glm::vec2& point) const { ApplyChanges(); - float dist = Line2DistToPoint(_normLine, point); + float dist = Line2DistToPoint(_normLine, point); return ComputeCoordX(dist); } @@ -597,7 +597,7 @@ void WayNode::Changed() curNode->_tile->Changed(); curNode = curNode->_next; - } + } } bool WayNode::RayCast(const D3DXVECTOR3& rayPos, const D3DXVECTOR3& rayVec, float* dist) const @@ -842,11 +842,11 @@ WayNode* WayPath::IsTileContains(const D3DXVECTOR3& point, WayNode* mWhere) cons //При отсутсвии результата проверям конечные узлы if (!resNode && _first && _first->IsContains(point)) { - resNode = _first; + resNode = _first; } if (!resNode && _last && _last->IsContains(point)) { - resNode = _last; + resNode = _last; } return resNode; @@ -856,7 +856,7 @@ void WayPath::GetTriStripVBuf(res::VertexData& data, const D3DXVECTOR3* upVec) { data.SetFormat(res::VertexData::vtPos3, true); - if (GetCount() < 2) + if (GetCount() < 2) { data.SetVertexCount(0); return; @@ -920,7 +920,7 @@ WayPoint* Trace::AddPoint(unsigned id) { WayPoint* point = new WayPoint(this, id); _points.push_back(point); - + _pointId = std::max(_pointId, id + 1); return point; @@ -941,7 +941,7 @@ void Trace::Save(SWriter* writer) SWriter* sPoint = sPoints->NewDummyNode(sstream.str().c_str()); sPoint->WriteAttr("id", point->GetId()); lsl::SWriteValue(sPoint, "pos", point->GetPos()); - lsl::SWriteValue(sPoint, "size", point->GetSize()); + lsl::SWriteValue(sPoint, "size", point->GetSize()); } SWriter* sPathes = writer->NewDummyNode("pathes"); @@ -961,7 +961,7 @@ void Trace::Save(SWriter* writer) std::stringstream sstream; sstream << "node" << iNode; SWriter* sNode = sPath->WriteValue(sstream.str().c_str(), node->GetPoint()->GetId()); - + node = node->GetNext(); ++iNode; } @@ -1048,7 +1048,7 @@ WayPath* Trace::AddPath() { WayPath* path = new WayPath(this); _pathes.push_back(path); - + return path; } diff --git a/src/Rock3dGame/source/game/TraceGfx.cpp b/src/Rock3dGame/source/game/TraceGfx.cpp index d9466281..d5eec3f9 100644 --- a/src/Rock3dGame/source/game/TraceGfx.cpp +++ b/src/Rock3dGame/source/game/TraceGfx.cpp @@ -13,7 +13,7 @@ TraceGfx::TraceGfx(Trace* trace): _trace(trace), _selPoint(0), _selPath(0), _sel LSL_ASSERT(_trace); _trace->AddRef(); - + { _libMat = new graph::LibMaterial(); graph::Material& mat = _libMat->material; @@ -26,7 +26,7 @@ TraceGfx::TraceGfx(Trace* trace): _trace(trace), _selPoint(0), _selPath(0), _sel mat.SetOption(graph::Material::moIgnoreFog, true); } - _wayPnt = new graph::Box(); + _wayPnt = new graph::Box(); _wayPnt->material.Set(_libMat); _sprite = new graph::Sprite(); @@ -62,7 +62,7 @@ void TraceGfx::DrawNodes(graph::Engine& engine, D3DXVECTOR3* vBuf, unsigned triC engine.GetContext().RestoreRenderState(graph::rsCullMode); engine.EndDraw(false); - + _libMat->UnApply(engine); } @@ -74,8 +74,8 @@ void TraceGfx::DoRender(graph::Engine& engine) _libMat->material.SetDiffuse(*iter == _selPoint ? clrGreen : clrRed); _wayPnt->SetPos((*iter)->GetPos()); - _wayPnt->SetScale((*iter)->GetSize()); - _wayPnt->Render(engine); + _wayPnt->SetScale((*iter)->GetSize()); + _wayPnt->Render(engine); } //Отрисовка связей между путями @@ -83,7 +83,7 @@ void TraceGfx::DoRender(graph::Engine& engine) D3DXVECTOR3 upVec = engine.GetContext().GetCamera().GetDesc().dir; float iPath = 0.0f; float pathCnt = static_cast(_trace->GetPathes().size()); - + for (Trace::Pathes::const_iterator iter = _trace->GetPathes().begin(); iter != _trace->GetPathes().end(); ++iter, ++iPath) { WayPath* path = *iter; diff --git a/src/Rock3dGame/source/game/View.cpp b/src/Rock3dGame/source/game/View.cpp index 227af33a..9531f444 100644 --- a/src/Rock3dGame/source/game/View.cpp +++ b/src/Rock3dGame/source/game/View.cpp @@ -8,7 +8,7 @@ namespace r3d namespace game { - + View::View(World* world, const Desc& desc): _world(world), _desc(desc) { } @@ -46,7 +46,7 @@ void View::Reset(const Desc& desc2) if (_world->GetGraph()->FindNearMode(resolution, mode)) _desc.resolution = resolution = lsl::Point(mode.width, mode.height); } - + if (_world->GetEdit() == NULL) { SetWindowLong(_desc.handle, GWL_STYLE, _desc.fullscreen ? WS_POPUP | WS_VISIBLE : WS_OVERLAPPEDWINDOW | WS_VISIBLE); @@ -90,11 +90,11 @@ bool View::OnMouseMoveEvent(const Point& coord, bool shift, bool ctrl) _mMove.projCoord = ViewToProj(_mMove.coord); _mMove.click = _mClick; - _world->GetCamera()->ScreenToRay(coord, _mMove.scrRayPos, _mMove.scrRayVec); + _world->GetCamera()->ScreenToRay(coord, _mMove.scrRayPos, _mMove.scrRayVec); return _world->OnMouseMoveEvent(_mMove); } - + bool View::OnKeyEvent(unsigned key, KeyState state, bool repeat) { if (!_world->GetGraph()) @@ -141,7 +141,7 @@ lsl::Point View::ScreenToView(const lsl::Point& point) { lsl::Point wndRc = GetWndSize(); const D3DPRESENT_PARAMETERS& params = _world->GetGraph()->GetEngine().GetParams(); - glm::vec2 wndSize = glm::vec2(static_cast(wndRc.x), static_cast(wndRc.y)); + glm::vec2 wndSize = glm::vec2(static_cast(wndRc.x), static_cast(wndRc.y)); glm::vec2 viewSize = GetVPSize(); @@ -180,7 +180,7 @@ void View::SetWindowSize(HWND handle, const lsl::Point& size, bool fullScreen) if (!fullScreen) { WINDOWINFO wndInfo; - GetWindowInfo(handle, &wndInfo); + GetWindowInfo(handle, &wndInfo); RECT rect; rect.left = rect.top = 0; diff --git a/src/Rock3dGame/source/game/Weapon.cpp b/src/Rock3dGame/source/game/Weapon.cpp index 3a1b9d27..6aaf2bdd 100644 --- a/src/Rock3dGame/source/game/Weapon.cpp +++ b/src/Rock3dGame/source/game/Weapon.cpp @@ -9,7 +9,7 @@ namespace r3d namespace game { - + Proj::Proj(): _pxBox(0), _ignoreContactProj(false), _model(0), _model2(0), _weapon(0), _playerId(cUndefPlayerId), _sprite(0), _tick1(0), _time1(0), _state1(false), _vec1(NullVector) { } @@ -158,7 +158,7 @@ AABB Proj::ComputeAABB(bool onlyModel) } aabb.Add(_model->GetGameObj().GetGrActor().GetLocalAABB(false)); - } + } else if (onlyModel) aabb = AABB(IdentityVector * 0.1f); else @@ -210,7 +210,7 @@ void Proj::SetWeapon(GameObject* weapon) if (_weapon) { weapon->InsertListener(this); - + GameObject* car = _weapon->GetParent() ? _weapon->GetParent() : NULL; _playerId = car && car->GetMapObj() && car->GetMapObj()->GetPlayer() ? car->GetMapObj()->GetPlayer()->GetId() : cUndefPlayerId; } @@ -298,7 +298,7 @@ void Proj::EnableFilter(GameObject* target, unsigned mask) NxShape* shape = target->GetPxActor().GetNxActor()->getShapes()[i]; shape->setGroupsMask(nxMask); } - + target->GetPxActor().GetScene()->GetNxScene()->setFilterOps(NX_FILTEROP_OR, NX_FILTEROP_OR, NX_FILTEROP_AND); } @@ -393,7 +393,7 @@ void Proj::RocketContact(const px::Scene::OnContactEvent& contact) D3DXVECTOR3 contactDir = GetContactPoint(contact); //D3DXVec3Normalize(&contactDir, &contactDir); D3DXVec3Cross(&contactDir, &contactDir, &dir); - + //NxVec3 vec3(RandomRange(-1.0f, 1.0f), 0, RandomRange(-1.0f, 1.0f)); NxVec3 vec3(contactDir); if (vec3.magnitude() > 0.01f) @@ -415,7 +415,7 @@ void Proj::RocketUpdate(float deltaTime) const float cTrackHeight = 4.0f; D3DXVECTOR3 size = _pxBox->GetDimensions(); - NxVec3 pos = GetPxActor().GetNxActor()->getGlobalPosition(); + NxVec3 pos = GetPxActor().GetNxActor()->getGlobalPosition(); NxRay nxRay(pos + NxVec3(0, 0, cTrackHeight), NxVec3(0, 0, -1.0f)); NxRaycastHit hit; @@ -789,7 +789,7 @@ void Proj::TorpedaUpdate(float deltaTime) D3DXVec3Normalize(&dir, &dir); else dir = this->GetGrActor().GetDir(); - + glm::quat rot, rot1; QuatShortestArc(XVector, dir, rot1); if (_desc.angleSpeed > 0) @@ -816,7 +816,7 @@ void Proj::TorpedaUpdate(float deltaTime) } _vec1 = dir * speed; - + this->GetPxActor().GetNxActor()->setLinearVelocity(NxVec3(dir * std::max(_desc.speed, speed))); } } @@ -1045,7 +1045,7 @@ void Proj::SpringUpdate(float deltaTime) Death(); return; }*/ - + /*GameCar* car = _weapon->GetParent()->IsCar(); if (car && !car->IsAnyWheelContact()) @@ -1079,7 +1079,7 @@ void Proj::FrostRayUpdate(float deltaTime) { GameObject* target = LaserUpdate(deltaTime, false); SlowEffect* slow = target ? target->GetBehaviors().Find() : 0; - + if (target && target->IsCar() && slow == 0) { slow = &target->GetBehaviors().Add(); @@ -1138,7 +1138,7 @@ void Proj::ImpulseContact(const px::Scene::OnContactEvent& contact) this->Death(dtEnergy, contactActor); return; } - + ShotDesc shot = _shot; shot.SetTargetMapObj(taget); SetShot(shot); @@ -1176,7 +1176,7 @@ void Proj::ThunderContact(const px::Scene::OnContactEvent& contact) NxVec3 velocity = GetPxActor().GetNxActor()->getLinearVelocity(); NxContactStreamIterator contIter(contact.stream); - + if (ContainsContactGroup(contIter, contact.actorIndex, px::Scene::cdgShotTransparency) && velocity.magnitude() > 5.0f) { _time1 = 0.1f; @@ -1274,11 +1274,11 @@ void Proj::OnContact(const px::Scene::OnContactEvent& contact) case ptMedpack: MedpackContact(contact); break; - + case ptCharge: ChargeContact(contact); break; - + case ptMoney: MoneyContact(contact); break; @@ -1482,11 +1482,11 @@ bool Proj::PrepareProj(GameObject* weapon, const ShotContext& ctx) case ptMedpack: res = MedpackPrepare(weapon); break; - + case ptCharge: res = ChargePrepare(weapon); break; - + case ptMoney: res = MoneyPrepare(weapon); break; @@ -1788,7 +1788,7 @@ bool Weapon::CreateShot(Weapon* weapon, const Weapon::Desc& desc, const Proj::Sh for (ProjDescList::const_iterator iter = desc.projList.begin(); iter != desc.projList.end(); ++iter) { - if (weapon == NULL && + if (weapon == NULL && (iter->type == Proj::ptRocket || iter->type == Proj::ptHyper || iter->type == Proj::ptTorpeda || diff --git a/src/Rock3dGame/source/game/World.cpp b/src/Rock3dGame/source/game/World.cpp index 5d1ef618..7c9d5a25 100644 --- a/src/Rock3dGame/source/game/World.cpp +++ b/src/Rock3dGame/source/game/World.cpp @@ -48,7 +48,7 @@ World::World(): _terminateResult(EXIT_SUCCESS), _terminate(false), _pause(false) } World::~World() -{ +{ //SetTimeResolution(0); } @@ -64,10 +64,10 @@ void World::Init(IView::Desc viewDesc) try { lsl::SerialFileXML file; - lsl::RootNode node("root", this); + lsl::RootNode node("root", this); file.LoadNodeFromFile(node, "user.xml"); - + node.BeginLoad(); lsl::SReadValue(&node, "resolution", viewDesc.resolution); @@ -77,8 +77,8 @@ void World::Init(IView::Desc viewDesc) View::SetWindowSize(viewDesc.handle, viewDesc.resolution, viewDesc.fullscreen); } - catch (const lsl::EUnableToOpen&) - { + catch (const lsl::EUnableToOpen&) + { } } @@ -89,7 +89,7 @@ void World::Init(IView::Desc viewDesc) _graph = new GraphManager(viewDesc.handle, viewDesc.resolution, viewDesc.fullscreen); _graph->SetName("graph"); _graph->SetOwner(this); - _graph->GetEngine().InsertVideoRes(this); + _graph->GetEngine().InsertVideoRes(this); LSL_LOG("view init"); @@ -141,7 +141,7 @@ void World::Init(IView::Desc viewDesc) LSL_LOG("logic init"); - _logic = new Logic(this); + _logic = new Logic(this); LSL_LOG("env init"); @@ -264,7 +264,7 @@ void World::Progress(float deltaTime) } else ++iter; - } + } } void World::FixedStep(float deltaTime) @@ -306,11 +306,11 @@ void World::FrameStep(float deltaTime, float pxAlpha) bool World::OnMouseClickEvent(const MouseClick& mClick) { - bool res = false; + bool res = false; res = res || _control->OnMouseClickEvent(mClick); - res = res || _graph->GetGUI().OnMouseClickEvent(mClick.key, mClick.state, mClick.coord, mClick.shift1, false); + res = res || _graph->GetGUI().OnMouseClickEvent(mClick.key, mClick.state, mClick.coord, mClick.shift1, false); return res; } @@ -321,7 +321,7 @@ bool World::OnMouseMoveEvent(const MouseMove& mMove) res = res || _control->OnMouseMoveEvent(mMove); - res = res || _graph->GetGUI().OnMouseMoveEvent(mMove.coord, mMove.shift1, false); + res = res || _graph->GetGUI().OnMouseMoveEvent(mMove.coord, mMove.shift1, false); return res; } @@ -341,13 +341,13 @@ void World::OnReset(HWND window, lsl::Point resolution, bool fullScreen) LSL_LOG("world on reset"); _graph->Reset(window, resolution, fullScreen); - _videoPlayer->UpdateVideoWindow(resolution); + _videoPlayer->UpdateVideoWindow(resolution); _syncFreq = _graph->GetDisplayMode().refreshRate; - _camera->SetAspect(_view->GetAspect()); + _camera->SetAspect(_view->GetAspect()); if (_game) - _game->OnResetView(); + _game->OnResetView(); #ifdef DRAW_DEBUG_INFO AdjustDbgInfo(_graph->GetGUI().GetVPSize()); @@ -379,16 +379,16 @@ void World::OnWMGraphEvent() void World::OnGraphEvent(HWND hwnd, long eventCode, LONG_PTR param1, LONG_PTR param2) { switch (eventCode) - { + { case EC_COMPLETE: case EC_USERABORT: _videoPlayer->Stop(); break; case EC_ERRORABORT: - LSL_LOG("videoPlayer EC_ERRORABORT"); + LSL_LOG("videoPlayer EC_ERRORABORT"); _videoPlayer->Stop(); - break; + break; } _game->OnGraphEvent(hwnd, eventCode, param1, param2); @@ -408,7 +408,7 @@ void World::MainProgress() //frame sync const float syncStep = 1.0f/_syncFreq; - const int syncFreq = _syncFreq; + const int syncFreq = _syncFreq; const int syncNumFrames = 15; //запас синхронизации, в с const float syncUpThreshold = 0.002f; @@ -417,7 +417,7 @@ void World::MainProgress() const float iterUpThreshold = syncUpThreshold / syncStep; const float iterDownThreshold = syncDownThreshold / syncStep; - bool startRace = _game && _game->IsStartgame() && _game->GetRace()->IsStartRace(); + bool startRace = _game && _game->IsStartgame() && _game->GetRace()->IsStartRace(); bool syncModeOn = true;//_env->GetSyncFrameRate() == Environment::sfrFixed; bool enableSync = syncModeOn; if (_warmIterations > 0) @@ -433,10 +433,10 @@ void World::MainProgress() _firstTick = newTick; _lastTick2 = _lastTick = newTick; } - _time = static_cast((newTick - _firstTick) * 1000 / _cpuFreq); + _time = static_cast((newTick - _firstTick) * 1000 / _cpuFreq); double deltaTime = (newTick - _lastTick) / static_cast(_cpuFreq); _lastTick = newTick; - float dt = _dTimeReal = static_cast(deltaTime); + float dt = _dTimeReal = static_cast(deltaTime); #if !_DEBUG || DEBUG_FRAME_SYNC if (enableSync) @@ -462,7 +462,7 @@ void World::MainProgress() if (!_pause && startRace) Progress(dt); -#ifdef DEBUG_FRAME_SYNC +#ifdef DEBUG_FRAME_SYNC __int64 tick; QueryPerformanceCounter((LARGE_INTEGER*)&tick); #endif @@ -492,7 +492,7 @@ void World::MainProgress() QueryPerformanceCounter((LARGE_INTEGER*)&pxTick); pxTick = pxTick - tick; #endif - + #ifdef DEBUG_FRAME_SYNC QueryPerformanceCounter((LARGE_INTEGER*)&tick); #endif @@ -540,9 +540,9 @@ void World::MainProgress() if (!_graph->Render(dt, _pause)) return; - QueryPerformanceCounter((LARGE_INTEGER*)&newTick); + QueryPerformanceCounter((LARGE_INTEGER*)&newTick); float renderTime = std::min((newTick - _lastTick) / static_cast(_cpuFreq), maxSimDT); -#ifdef DEBUG_FRAME_SYNC +#ifdef DEBUG_FRAME_SYNC __int64 renderTick = newTick - tick; #endif @@ -551,7 +551,7 @@ void World::MainProgress() BOOL inVBlank = false; if (syncModeOn && _curTimeIter > 1) - { + { int syncIter = std::max(static_cast(_curTimeIter - syncFreq * (newTick - _lastTick2) / _cpuFreq), 1); #ifdef DEBUG_FRAME_SYNC @@ -595,10 +595,10 @@ void World::MainProgress() _graph->Present(); #ifdef DEBUG_FRAME_SYNC - Profiler::I().End(); + Profiler::I().End(); #endif - _graph->GPUSync(); + _graph->GPUSync(); __int64 syncTick; QueryPerformanceCounter((LARGE_INTEGER*)&syncTick); @@ -618,7 +618,7 @@ void World::MainProgress() // Sleep(sleepTime); while (syncTick - _lastTick < fixTick) - { + { QueryPerformanceCounter((LARGE_INTEGER*)&syncTick); } @@ -666,7 +666,7 @@ void World::MainProgress() //увеличение числа итераций при превышении порога рассинхронизации в syncError float newTimeIterMin = drawTimeMin / syncStep; - float newTimeIterMax = drawTimeMax / syncStep; + float newTimeIterMax = drawTimeMax / syncStep; _dtStack.back().upTimeIter = newTimeIterMax; upTimeIterAvg = (upTimeIterAvg + newTimeIterMax)/_dtStack.size(); @@ -674,7 +674,7 @@ void World::MainProgress() _dtStack.back().downTimeIter = newTimeIterMin; downTimeIterAvg = (downTimeIterAvg + _dtStack.back().downTimeIter)/_dtStack.size(); - //down + //down if (downTimeIterAvg > _curTimeIter + iterDownThreshold) { if (gpuTimeAvg > 0.004f) @@ -695,7 +695,7 @@ void World::MainProgress() } //up else if (upTimeIterAvg < _curTimeIter - iterUpThreshold) - { + { int upTimeIter = lsl::ClampValue(static_cast(ceil(upTimeIterAvg + iterUpThreshold)), 1, cMaxSimIter); for (; upTimeIter < _curTimeIter; ++upTimeIter) { @@ -706,9 +706,9 @@ void World::MainProgress() } } } - } -#endif - + } +#endif + #ifdef DEBUG_FRAME_SYNC static int fixDbgTimeIter = 0; @@ -729,14 +729,14 @@ void World::MainProgress() if (_control->GetAsyncKey(VK_NUMPAD6)) fixDbgTimeIter = 6; if (_control->GetAsyncKey(VK_DELETE)) - fixDbgTimeIter = -1; + fixDbgTimeIter = -1; } if (fixDbgTimeIter > 0) { _curTimeIter = fixDbgTimeIter; enableSync = true; - } + } else if (fixDbgTimeIter == -1) enableSync = false; #endif @@ -750,15 +750,15 @@ void World::MainProgress() static int minIter = 0; static int maxIter = 0; static float minAlpha = 0; - static float maxAlpha = 0; + static float maxAlpha = 0; static int minCurIter = 0; - static int maxCurIter = 0; + static int maxCurIter = 0; static float maxGPUTime = 0; static float maxRenderTime = 0; static float maxAudioTime = 0; - static float maxThreadTime = 0; - static float maxFrameTime = 0; - static float maxPxTime = 0; + static float maxThreadTime = 0; + static float maxFrameTime = 0; + static float maxPxTime = 0; float audioTime = audioTick / static_cast(_cpuFreq); float threadTime = threadTick / static_cast(_cpuFreq); @@ -769,23 +769,23 @@ void World::MainProgress() { std::string text = lsl::StrFmt((lsl::string() + "dt=%0.1f min=%0.1f max=%0.1f\n" - "avg=%0.1f min=%0.1f max=%0.1f\n" - "alpha=%0.3f min=%0.3f max=%0.3f\n" - "timeIter=%d min=%d max=%d\n" + "avg=%0.1f min=%0.1f max=%0.1f\n" + "alpha=%0.3f min=%0.3f max=%0.3f\n" + "timeIter=%d min=%d max=%d\n" "gpuTime=%0.1f min=%0.1f max=%0.1f\n" "renderTime=%0.1f min=%0.1f max=%0.1f\n" "audioTime=%0.1f min=%0.1f max=%0.1f\n" "threadTime=%0.1f min=%0.1f max=%0.1f\n" "frameTime=%0.1f min=%0.1f max=%0.1f\n" - "pxTime=%0.1f min=%0.1f max=%0.1f\n" + "pxTime=%0.1f min=%0.1f max=%0.1f\n" "\n" ).c_str(), deltaTime * 1000, minDt * 1000, maxDt * 1000, - dt * 1000, minAvg * 1000, maxAvg * 1000, - alpha, minAlpha, maxAlpha, - _curTimeIter, minCurIter, maxCurIter, + dt * 1000, minAvg * 1000, maxAvg * 1000, + alpha, minAlpha, maxAlpha, + _curTimeIter, minCurIter, maxCurIter, gpuTime * 1000, gpuTime * 1000, maxGPUTime * 1000, - renderTime * 1000, renderTime * 1000, maxRenderTime * 1000, + renderTime * 1000, renderTime * 1000, maxRenderTime * 1000, audioTime * 1000, audioTime * 1000, maxAudioTime * 1000, threadTime * 1000, threadTime * 1000, maxThreadTime * 1000, frameTime * 1000, frameTime * 1000, maxFrameTime * 1000, @@ -814,9 +814,9 @@ void World::MainProgress() minIter = 999; maxIter = 0; minAlpha = 1.0f; - maxAlpha = 0.0f; + maxAlpha = 0.0f; minCurIter = maxTimeIter; - maxCurIter = 0; + maxCurIter = 0; maxGPUTime = 0; maxRenderTime = 0; maxAudioTime = 0; @@ -826,7 +826,7 @@ void World::MainProgress() dbgDumpTime = 0.0f; } - + if (minDt > deltaTime) minDt = deltaTime; if (maxDt < deltaTime) @@ -838,29 +838,29 @@ void World::MainProgress() if (minAlpha > alpha) minAlpha = alpha; if (maxAlpha < alpha) - maxAlpha = alpha; + maxAlpha = alpha; if (minCurIter > _curTimeIter) minCurIter = _curTimeIter; if (maxCurIter < _curTimeIter) - maxCurIter = _curTimeIter; + maxCurIter = _curTimeIter; if (maxGPUTime < gpuTime) maxGPUTime = gpuTime; if (maxRenderTime < renderTime) maxRenderTime = renderTime; if (maxAudioTime < audioTime) - maxAudioTime = audioTime; + maxAudioTime = audioTime; if (maxThreadTime < threadTime) - maxThreadTime = threadTime; + maxThreadTime = threadTime; if (maxFrameTime < frameTime) - maxFrameTime = frameTime; + maxFrameTime = frameTime; if (maxPxTime < pxTime) - maxPxTime = pxTime; - + maxPxTime = pxTime; + dbgDumpTime += dt; - + /*static std::fstream fileDump; - static float fileDumpTime = 0.0f; - static int fileDumpFrame = 0; + static float fileDumpTime = 0.0f; + static int fileDumpFrame = 0; if (fileDumpTime > 0) { @@ -868,8 +868,8 @@ void World::MainProgress() fileDump.open("C:\\dump.txt", std::ios_base::out); fileDump << "frame=" << fileDumpFrame << '\n'; - fileDump << "deltaTime=" << deltaTime << '\n'; - fileDump << "timeAccum=" << _timeAccum << '\n'; + fileDump << "deltaTime=" << deltaTime << '\n'; + fileDump << "timeAccum=" << _timeAccum << '\n'; fileDump << '\n'; fileDump << '\n'; @@ -901,7 +901,7 @@ void World::MainProgress() static unsigned bytesReceivedLast[4] = {0, 0, 0, 0}; std::string text = ""; - + if (net::GetNetService().isClient()) { std::string status = "disconnected"; @@ -915,7 +915,7 @@ void World::MainProgress() net::INetChannel* channel = net::GetNetService().channel(); if (connection) { - framePing += 1; + framePing += 1; pingBuf[0] += channel->ping(); if ((pingTime += dt) > 0.5f) { @@ -926,7 +926,7 @@ void World::MainProgress() bytesSendBuf[0] = bytesSend; bytesReceivedLast[0] = bytesReceived - bytesReceivedBuf[0]; bytesReceivedBuf[0] = bytesReceived; - pingBuf[0] = 0; + pingBuf[0] = 0; pingTime = 0; framePing = 0; } @@ -956,7 +956,7 @@ void World::MainProgress() net::INetChannel* channel = net::GetNetService().channel(); framePing += 1; - pingBuf[i] += channel->ping(); + pingBuf[i] += channel->ping(); if (setPing) { unsigned bytesSend = player->bytesSend() + channel->bytesSend(); @@ -966,7 +966,7 @@ void World::MainProgress() bytesSendBuf[i] = bytesSend; bytesReceivedLast[i] = bytesReceived - bytesReceivedBuf[i]; bytesReceivedBuf[i] = bytesReceived; - pingBuf[i] = 0; + pingBuf[i] = 0; framePing = 0; } @@ -998,7 +998,7 @@ bool World::IsPaused() const void World::ResetInput(bool reset) { _inputWasReset = reset; - _control->ResetInput(reset); + _control->ResetInput(reset); } bool World::InputWasReset() const @@ -1007,12 +1007,12 @@ bool World::InputWasReset() const } void World::ResetCamera() -{ +{ _curTimeIter = 1; _warmIterations = 10; _dtStack.clear(); ZeroMemory(_iterBuf, sizeof(_iterBuf)); - + //if (_view->GetDesc().fullscreen && (_env->GetSyncFrameRate() == Environment::sfrFixed)) // SetTimeResolution(1); //else @@ -1087,7 +1087,7 @@ void World::RunWorldEdit() LoadRes(); _edit = new edit::Edit(this); - _camera->ChangeStyle(CameraManager::csFreeView); + _camera->ChangeStyle(CameraManager::csFreeView); _env->SetEditMode(true); } @@ -1101,7 +1101,7 @@ void World::SaveLevel(const std::string& level) { lsl::RootNode rootNode("root", this); - lsl::SWriter* writer = rootNode.BeginSave(); + lsl::SWriter* writer = rootNode.BeginSave(); writer->WriteValue("map", _map); //writer->WriteValue("logic", _logic); rootNode.EndSave(); diff --git a/src/Rock3dGame/source/net/NetGame.cpp b/src/Rock3dGame/source/net/NetGame.cpp index 418e3749..cb6ccf86 100644 --- a/src/Rock3dGame/source/net/NetGame.cpp +++ b/src/Rock3dGame/source/net/NetGame.cpp @@ -190,7 +190,7 @@ void NetGame::CreateHost(net::INetAcceptorImpl* impl) _isHost = true; lsl::appLog.fileName = "appLog.txt"; - + netService().StartServer(_port, impl); netPlayer()->MakeModel(); } @@ -233,7 +233,7 @@ void NetGame::Close() _race = NULL; - netService().Close(); + netService().Close(); _isHost = false; _isClient = false; diff --git a/src/Rock3dGame/source/net/NetPlayer.cpp b/src/Rock3dGame/source/net/NetPlayer.cpp index 267f5eea..fd22004e 100644 --- a/src/Rock3dGame/source/net/NetPlayer.cpp +++ b/src/Rock3dGame/source/net/NetPlayer.cpp @@ -35,7 +35,7 @@ void NetPlayerResponse::OnSerialize(const net::NetMessage& msg, net::BitStream& NetPlayer::NetPlayer(const Desc& desc): NetModelRPC(desc), _net(NetGame::I()), _player(NULL), _human(NULL), _aiPlayer(NULL), _modelOwner(false), _dAlpha(0), _raceReady(false), _raceGoWait(false), _raceFinish(false) //, _response(NULL) -{ +{ RegRPC(&NetPlayer::OnSetGamerId); RegRPC(&NetPlayer::OnSetColor); RegRPC(&NetPlayer::OnSetCar); @@ -57,7 +57,7 @@ NetPlayer::NetPlayer(const Desc& desc): NetModelRPC(desc), _net(NetGame::I()), _ int opponentId = netSlot << Race::cOpponentBit; _player = _net->game()->GetRace()->GetPlayerByNetSlot(netSlot); - + if (_player == NULL) { _player = race()->AddPlayer(opponentId, GenerateGamerId(), netSlot, GenerateColor()); @@ -92,7 +92,7 @@ NetPlayer::NetPlayer(const Desc& desc): NetModelRPC(desc), _net(NetGame::I()), _ _aiPlayer = race()->AddAIPlayer(_player); _aiPlayer->AddRef(); } - } + } //if ((desc.owner && _net->isClient()) || (!desc.owner && _net->isHost())) //{ @@ -102,7 +102,7 @@ NetPlayer::NetPlayer(const Desc& desc): NetModelRPC(desc), _net(NetGame::I()), _ //} net::INetConnection* connection = _net->netService().GetConnectionById(ownerId()); - if (connection) + if (connection) _player->SetNetName(connection->userName()); _net->RegPlayer(this); @@ -183,23 +183,23 @@ void NetPlayer::DoShot(MapObj* target, ShotSlots& slots, unsigned projId, CoordL Weapon::ProjList projList; unsigned coordIndex = 0; - NxMat34 nxMat(true); + NxMat34 nxMat(true); Proj::ShotContext ctx; ctx.shot.SetTargetMapObj(target); - ctx.logic = _net->game()->GetWorld()->GetLogic(); + ctx.logic = _net->game()->GetWorld()->GetLogic(); for (unsigned i = 0; i < slots.count(); ++i) { - Player::SlotType type = slots.AsWpn(i); - Slot* slot = _player->GetSlotInst(type); - WeaponItem* wpn = slot ? slot->GetItem().IsWeaponItem() : NULL; + Player::SlotType type = slots.AsWpn(i); + Slot* slot = _player->GetSlotInst(type); + WeaponItem* wpn = slot ? slot->GetItem().IsWeaponItem() : NULL; if (slots.Get(i) && wpn) { projList.clear(); - if (coordList && coordIndex < coordList->size()) + if (coordList && coordIndex < coordList->size()) { nxMat.t = NxVec3((*coordList)[coordIndex]); ctx.projMat = &nxMat; @@ -232,7 +232,7 @@ void NetPlayer::DoShot(MapObj* target, ShotSlots& slots, unsigned projId, CoordL ++coordIndex; } - } + } } void NetPlayer::SendColor(const D3DXCOLOR& value, bool failed, unsigned target) @@ -256,7 +256,7 @@ void NetPlayer::SlotsWrite(std::ostream& stream) for (int i = 0; i < Player::cSlotTypeEnd; ++i) { Slot* slot = _player->GetSlotInst(Player::SlotType(i)); - WeaponItem* wpn = slot ? slot->GetItem().IsWeaponItem() : 0; + WeaponItem* wpn = slot ? slot->GetItem().IsWeaponItem() : 0; ArmorItem* armor = slot && slot->GetType() == Slot::stArmor ? &slot->GetItem() : NULL; std::string recName = slot && slot->GetRecord() ? slot->GetRecord()->GetName() : ""; @@ -360,7 +360,7 @@ void NetPlayer::OnCarSlotsChanged(const net::NetMessage& msg, const net::NetCmdH { int money; - net::Read(stream, money); + net::Read(stream, money); SlotsRead(stream); model()->SetMoney(money); @@ -392,7 +392,7 @@ void NetPlayer::OnRaceFinish(const net::NetMessage& msg, const net::NetCmdHeader void NetPlayer::OnShot(const net::NetMessage& msg, const net::NetCmdHeader& header, std::istream& stream) { - unsigned target; + unsigned target; ShotSlots slots; unsigned projId; CoordList coordList; @@ -431,7 +431,7 @@ void NetPlayer::OnTakeBonus(const net::NetMessage& msg, const net::NetCmdHeader& MapObj* bonus = map()->GetMapObj(bonusId); - if (bonus == NULL) + if (bonus == NULL) { LSL_LOG("NetPlayer::OnTakeBonus bonus == NULL"); msg.Discard(); @@ -442,19 +442,19 @@ void NetPlayer::OnTakeBonus(const net::NetMessage& msg, const net::NetCmdHeader& } void NetPlayer::OnMineContact1(const net::NetMessage& msg, const net::NetCmdHeader& header, std::istream& stream) -{ +{ unsigned plrId; - unsigned projId; + unsigned projId; D3DXVECTOR3 point; net::Read(stream, plrId); - net::Read(stream, projId); + net::Read(stream, projId); net::Read(stream, point); NetPlayer* bonusPlr = _net->GetPlayer(plrId); - Proj* bonus = bonusPlr ? bonusPlr->model()->GetBonusProj(projId) : NULL; + Proj* bonus = bonusPlr ? bonusPlr->model()->GetBonusProj(projId) : NULL; - if (bonusPlr == NULL) + if (bonusPlr == NULL) { LSL_LOG("NetRace::OnMineContact1 bonusPlr == NULL"); msg.Discard(); @@ -473,14 +473,14 @@ void NetPlayer::OnMineContact1(const net::NetMessage& msg, const net::NetCmdHead void NetPlayer::OnMineContact2(const net::NetMessage& msg, const net::NetCmdHeader& header, std::istream& stream) { - unsigned projId; + unsigned projId; D3DXVECTOR3 point; - net::Read(stream, projId); + net::Read(stream, projId); net::Read(stream, point); - MapObj* bonus = map()->GetMapObj(projId); + MapObj* bonus = map()->GetMapObj(projId); if (bonus == NULL || bonus->GetGameObj().IsProj() == NULL) { @@ -524,7 +524,7 @@ void NetPlayer::ResponseStream(const net::NetMessage& msg, net::BitStream& strea return; D3DXVECTOR3 pos = car->GetPxActor().GetPos(); - glm::quat rot = car->GetPxActor().GetRot(); + glm::quat rot = car->GetPxActor().GetRot(); D3DXVECTOR3 linVel = car->GetNxActor()->getLinearMomentum().get(); D3DXVECTOR3 angVel = car->GetNxActor()->getAngularMomentum().get(); BYTE moveState = car->GetMoveCar(); @@ -543,7 +543,7 @@ void NetPlayer::ResponseStream(const net::NetMessage& msg, net::BitStream& strea { _dAlpha = 1.0f; - D3DXVECTOR3 dPos = pos - car->GetPxActor().GetPos(); + D3DXVECTOR3 dPos = pos - car->GetPxActor().GetPos(); float dPosLength = D3DXVec3Length(&dPos); if (dPosLength > 4.0f) { @@ -558,7 +558,7 @@ void NetPlayer::ResponseStream(const net::NetMessage& msg, net::BitStream& strea if (dPosLength > 4.0f) //>2.0f { car->SetPosSync2(car->GetGrActor().GetPos() - pos, NullVector); - car->GetPxActor().SetPos(pos); + car->GetPxActor().SetPos(pos); } else { @@ -592,8 +592,8 @@ void NetPlayer::ResponseStream(const net::NetMessage& msg, net::BitStream& strea car->GetNxActor()->setLinearMomentum(NxVec3(linVel)); car->GetNxActor()->setAngularMomentum(NxVec3(angVel)); - - car->SetMoveCar((GameCar::MoveCarState)moveState); + + car->SetMoveCar((GameCar::MoveCarState)moveState); car->SetSteerWheel((GameCar::SteerWheelState)steerState); car->SetSteerWheelAngle(steerWheelsAngle); } @@ -630,7 +630,7 @@ void NetPlayer::OnStateRead(const net::NetMessage& msg, const net::NetCmdHeader& void NetPlayer::OnStateWrite(const net::NetMessage& msg, std::ostream& stream) { net::Write(stream, _player->GetColor()); - net::Write(stream, _player->GetCar().record ? _player->GetCar().record->GetName() : ""); + net::Write(stream, _player->GetCar().record ? _player->GetCar().record->GetName() : ""); net::Write(stream, _raceReady); net::Write(stream, _raceGoWait); net::Write(stream, _raceFinish); @@ -641,7 +641,7 @@ void NetPlayer::OnStateWrite(const net::NetMessage& msg, std::ostream& stream) void NetPlayer::OnSerialize(const net::NetMessage& msg, net::BitStream& stream) { - ControlStream(msg, stream); + ControlStream(msg, stream); } void NetPlayer::Process(float deltaTime) @@ -654,8 +654,8 @@ void NetPlayer::Process(float deltaTime) { _dAlpha = 0.0f; car->SetMoveCar(GameCar::mcNone); - car->SetSteerWheel(GameCar::swNone); - } + car->SetSteerWheel(GameCar::swNone); + } } void NetPlayer::Shot(MapObj* target, Player::SlotType type) @@ -671,7 +671,7 @@ void NetPlayer::Shot(MapObj* target, Player::SlotType type) } } else - for (unsigned i = 0; i < slots.count(); ++i) + for (unsigned i = 0; i < slots.count(); ++i) { Player::SlotType type = slots.AsWpn(i); if (type == Player::stMine || type == Player::stHyper) @@ -753,7 +753,7 @@ void NetPlayer::MineContact(Proj* sender, const D3DXVECTOR3& point) { std::ostream& stream = NewRPC(net::cNetTargetAll, &NetPlayer::OnMineContact1); net::Write(stream, (*iter)->id()); - net::Write(stream, id); + net::Write(stream, id); net::Write(stream, point); CloseRPC(); } @@ -764,7 +764,7 @@ void NetPlayer::MineContact(Proj* sender, const D3DXVECTOR3& point) id = sender->GetMapObj()->GetId(); std::ostream& stream = NewRPC(net::cNetTargetAll, &NetPlayer::OnMineContact2); - net::Write(stream, id); + net::Write(stream, id); net::Write(stream, point); CloseRPC(); } @@ -871,7 +871,7 @@ void NetPlayer::CarSlotsChanged() std::ostream& stream = NewRPC(net::cNetTargetOthers, &NetPlayer::OnCarSlotsChanged); net::Write(stream, model()->GetMoney()); - SlotsWrite(stream); + SlotsWrite(stream); CloseRPC(); } @@ -895,7 +895,7 @@ void NetPlayer::RaceReady(bool ready) return; DoRaceReady(ready); - + std::ostream& stream = NewRPC(net::cNetTargetOthers, &NetPlayer::OnRaceReady); net::Write(stream, _raceReady); CloseRPC(); @@ -910,7 +910,7 @@ void NetPlayer::RaceGoWait(bool goWait) { if (_raceGoWait == goWait) return; - + DoRaceGoWait(goWait); std::ostream& stream = NewRPC(net::cNetTargetOthers, &NetPlayer::OnRaceGoWait); diff --git a/src/Rock3dGame/source/net/NetRace.cpp b/src/Rock3dGame/source/net/NetRace.cpp index d2b1928a..910575fd 100644 --- a/src/Rock3dGame/source/net/NetRace.cpp +++ b/src/Rock3dGame/source/net/NetRace.cpp @@ -14,14 +14,14 @@ NetRace::NetRace(const Desc& desc): NetModelRPC(desc), _net(NetGame::I()) RegRPC(&NetRace::OnStartMatch); RegRPC(&NetRace::OnExitMatch); RegRPC(&NetRace::OnSetPlanet); - RegRPC(&NetRace::OnSetTrack); + RegRPC(&NetRace::OnSetTrack); RegRPC(&NetRace::OnStartRace); RegRPC(&NetRace::OnExitRace); RegRPC(&NetRace::OnRaceGo); RegRPC(&NetRace::OnPause); RegRPC(&NetRace::OnDamage1); RegRPC(&NetRace::OnDamage2); - RegRPC(&NetRace::OnSetUpgradeMaxLevel); + RegRPC(&NetRace::OnSetUpgradeMaxLevel); RegRPC(&NetRace::OnSetWeaponMaxLevel); RegRPC(&NetRace::OnSetCurrentDifficulty); RegRPC(&NetRace::OnSetLapsCount); @@ -38,7 +38,7 @@ NetRace::NetRace(const Desc& desc): NetModelRPC(desc), _net(NetGame::I()) _net->RegUser(this); _net->game()->RegUser(this); _maxPlayers = _net->game()->maxPlayers(); - _maxComputers = _net->game()->maxComputers(); + _maxComputers = _net->game()->maxComputers(); } NetRace::~NetRace() @@ -101,7 +101,7 @@ void NetRace::WriteMatch(std::ostream& stream) net::Write(stream, race()->GetTournament().GetCurTrackIndex()); net::Write(stream, (int)race()->GetTournament().GetWheater()); - race()->GetProfile()->SaveGame(stream); + race()->GetProfile()->SaveGame(stream); } void NetRace::DoStartMatch(Race::Mode mode, Difficulty difficulty, Race::Profile* profile) @@ -128,7 +128,7 @@ void NetRace::DoExitMatch() NetGame::NetPlayers players = _net->players(); for (NetGame::NetPlayers::const_iterator iter = players.begin(); iter != players.end(); ++iter) this->player()->DeleteModel(*iter, true); - + game()->ExitMatch(_net->isHost()); } @@ -206,7 +206,7 @@ void NetRace::OnSetTrack(const net::NetMessage& msg, const net::NetCmdHeader& he void NetRace::OnStartRace(const net::NetMessage& msg, const net::NetCmdHeader& header, std::istream& stream) { - DoStartRace(); + DoStartRace(); } void NetRace::OnExitRace(const net::NetMessage& msg, const net::NetCmdHeader& header, std::istream& stream) @@ -219,7 +219,7 @@ void NetRace::OnExitRace(const net::NetMessage& msg, const net::NetCmdHeader& he net::Read(stream, trackIndex); net::Read(stream, wheater); - net::Read(stream, count); + net::Read(stream, count); for (unsigned i = 0; i < count; ++i) { @@ -426,8 +426,8 @@ void NetRace::Damage1(NetPlayer* sender, NetPlayer* target, float value, GameObj BYTE death = 0; if (netTarget != net::cNetTargetAll) - { - gameObj->Damage(sender ? sender->model()->GetId() : cUndefPlayerId, value, damageType); + { + gameObj->Damage(sender ? sender->model()->GetId() : cUndefPlayerId, value, damageType); targetLife = gameObj->GetLife(); death = gameObj->GetLiveState() == GameObject::lsDeath; } @@ -451,7 +451,7 @@ void NetRace::Damage2(NetPlayer* sender, MapObj* target, float value, GameObject BYTE death = 0; if (netTarget != net::cNetTargetAll) - { + { gameObj.Damage(sender ? sender->model()->GetId() : cUndefPlayerId, value, damageType); targetLife = gameObj.GetLife(); death = gameObj.GetLiveState() == GameObject::lsDeath; @@ -520,7 +520,7 @@ void NetRace::OnProcessNetEvent(unsigned id, NetEventData* data) case cNetPlayerFinish: { - CheckFinish(); + CheckFinish(); return; } } @@ -573,7 +573,7 @@ void NetRace::OnStateWrite(const net::NetMessage& msg, std::ostream& stream) } void NetRace::Process(float deltaTime) -{ +{ } void NetRace::StartMatch(Race::Mode mode, Difficulty difficulty, Race::Profile* profile) @@ -630,7 +630,7 @@ void NetRace::StartRace() int humanCount = _net->netPlayers().size(); int maxComputers = race()->IsCampaign() ? lsl::ClampValue((int)_net->game()->maxComputers(), Race::cComputerCount - 1, Race::cCampaignMaxPlayers - 1) : _net->game()->maxComputers(); int maxPlayers = race()->IsCampaign() ? lsl::ClampValue((int)_net->game()->maxPlayers(), humanCount + maxComputers, maxComputers + Race::cCampaignMaxHumans) : _net->game()->maxPlayers(); - + int computerCount = std::min(maxComputers, std::max(maxPlayers - humanCount, 0)); int curComputerCount = _net->aiPlayers().size(); @@ -645,7 +645,7 @@ void NetRace::StartRace() player()->DeleteModel(_net->aiPlayers().back(), false); } - MakeRPC(net::cNetTargetOthers, &NetRace::OnStartRace); + MakeRPC(net::cNetTargetOthers, &NetRace::OnStartRace); DoStartRace(); } @@ -683,7 +683,7 @@ void NetRace::ExitRace() net::Write(stream, result.points); net::Write(stream, result.voiceNameDur); } - + CloseRPC(); } @@ -763,7 +763,7 @@ void NetRace::SetWeaponMaxLevel(int value) if (_net->isHost() && _net->game()->weaponMaxLevel() != value) { _net->game()->weaponMaxLevel(value); - + std::ostream& stream = NewRPC(net::cNetTargetOthers, &NetRace::OnSetWeaponMaxLevel); net::Write(stream, value); CloseRPC(); @@ -797,7 +797,7 @@ void NetRace::SetLapsCount(unsigned value) if (_net->isHost() && _net->game()->lapsCount() != value) { _net->game()->lapsCount(value); - + std::ostream& stream = NewRPC(net::cNetTargetOthers, &NetRace::OnSetLapsCount); net::Write(stream, value); CloseRPC(); diff --git a/src/Rock3dGame/source/net/SteamService.cpp b/src/Rock3dGame/source/net/SteamService.cpp index f8cd7646..8c3954b1 100644 --- a/src/Rock3dGame/source/net/SteamService.cpp +++ b/src/Rock3dGame/source/net/SteamService.cpp @@ -53,7 +53,7 @@ extern "C" void __cdecl SteamAPIDebugTextHook( int nSeverity, const char *pchDeb NetConnectionSteam::NetConnectionSteam(NetAcceptorSteam* owner): _owner(owner), _isOpen(false) -{ +{ } NetConnectionSteam::~NetConnectionSteam() @@ -207,7 +207,7 @@ SteamService* NetConnectionSteam::service() NetChannelSteam::NetChannelSteam(NetAcceptorSteam* owner): _owner(owner), _isOpen(false), _isBind(false) -{ +{ } NetChannelSteam::~NetChannelSteam() @@ -477,7 +477,7 @@ bool NetAcceptorSteam::HandleMessage(const CSteamID& steamId, EMessage msg, cons net::IStreamBuf* stream = GetOrCreatePacket(msg, steamId); unsigned headerSz = sizeof(EMessage); - unsigned dataSz = size - headerSz; + unsigned dataSz = size - headerSz; BYTE* dest = stream->Prepare(dataSz); memmove(dest, data + headerSz, dataSz); @@ -518,7 +518,7 @@ SteamService* NetAcceptorSteam::service() SteamStats::SteamStats(SteamService* service): _service(service), _userStatsLoading(false), _userStatsSaving(false), _raceNumShots(0), _callbackUserStatsReceived( this, &SteamStats::OnUserStatsReceived ), _callbackUserStatsStored( this, &SteamStats::OnUserStatsStored ) -{ +{ } SteamStats::~SteamStats() @@ -537,7 +537,7 @@ void SteamStats::OnUserStatsReceived( UserStatsReceived_t *pCallback ) _userStatsLoading = false; bool success = false; - + if ( k_EResultOK == pCallback->m_eResult ) { int intVal = 0; @@ -579,7 +579,7 @@ void SteamStats::OnUserStatsStored( UserStatsStored_t *pCallback ) _userStatsSaving = false; bool success = false; - + if ( k_EResultOK == pCallback->m_eResult ) { success = true; @@ -639,7 +639,7 @@ bool SteamStats::StoreUserStats() } void SteamStats::AddStat(StatType type, int value) -{ +{ _stats[type].dValue += value; unsigned total = (unsigned)GetStatValue(type); @@ -674,7 +674,7 @@ void SteamStats::UnlockAchievment(AchievmentType type) if (_achievments[type].unlocked || !_achievments[type].loaded) return; - _achievments[type].unlocked = true; + _achievments[type].unlocked = true; SteamUserStats()->SetAchievement(cAchievmentName[type].c_str()); if (type != atWeAreTheChampions) @@ -741,7 +741,7 @@ void SteamStats::OnProcessEvent(unsigned id, EventData* data) Player* player = game()->GetRace()->GetPlayerById(data->playerId); if (data->playerId != myData->targetPlayerId) - _lapKills.push_back(myData->targetPlayerId); + _lapKills.push_back(myData->targetPlayerId); if (player && player->GetCar().numLaps >= 3 && player->GetCar().numLaps >= game()->GetRace()->GetTournament().GetCurTrack().GetLapsCount() - 1 && _lapKills.size() >= 3) { @@ -753,7 +753,7 @@ void SteamStats::OnProcessEvent(unsigned id, EventData* data) break; case cHumanShot: - ++_raceNumShots; + ++_raceNumShots; break; case cPlayerDeath: @@ -820,7 +820,7 @@ void SteamLeaderboard::OnUploadUserStats(LeaderboardScoreUploaded_t* pFindLearde } bool SteamLeaderboard::FindLeaders() -{ +{ if (_leadersLoading) return true; @@ -860,7 +860,7 @@ bool SteamLeaderboard::UploadUserStats() SteamAPICall_t hSteamAPICall = SteamUserStats()->UploadLeaderboardScore(_leaders[i].board, k_ELeaderboardUploadScoreMethodKeepBest, value, NULL, 0); if (hSteamAPICall != NULL) - { + { ++_userStatsUploading; // set the function to call when this API call has completed @@ -894,7 +894,7 @@ SteamLobby::SteamLobby(SteamService* service): _service(service), _lobbyListLoad } SteamLobby::~SteamLobby() -{ +{ } std::string SteamLobby::GetLobbyName(CSteamID id) @@ -1032,7 +1032,7 @@ void SteamLobby::OnLobbyCreated(LobbyCreated_t *pCallback, bool bIOFailure) // success _currentLobby = pCallback->m_ulSteamIDLobby; - // set the name of the lobby if it's ours + // set the name of the lobby if it's ours SetLobbdyName(_currentLobby, lsl::StrFmt("%s's lobby", SteamFriends()->GetPersonaName())); } else @@ -1046,7 +1046,7 @@ void SteamLobby::OnLobbyCreated(LobbyCreated_t *pCallback, bool bIOFailure) void SteamLobby::OnLobbyDataUpdatedCallback( LobbyDataUpdate_t *pCallback ) { - // find the lobby in our local list + // find the lobby in our local list LobbyList::iterator iter; for( iter = _lobbyList.begin(); iter != _lobbyList.end(); ++iter ) @@ -1339,7 +1339,7 @@ void SteamServer::SendUpdatedServerDetailsToSteam() SteamGameServer()->SetMapName( "RRR Map" ); // game type is a special string you can use for your game to differentiate different game play types occurring on the same maps - // When users search for this parameter they do a sub-string search of this string + // When users search for this parameter they do a sub-string search of this string // (i.e if you report "abc" and a client requests "ab" they return your server) //SteamGameServer()->SetGameType( "dm" ); @@ -1379,7 +1379,7 @@ void SteamServer::ReceiveNetworkData() { case k_EMsgClientInitiateConnection: { - // We always let clients do this without even checking for room on the server since we reserve that for + // We always let clients do this without even checking for room on the server since we reserve that for // the authentication phase of the connection which comes next MsgServerSendInfo_t msg; msg.SetSteamIDServer( SteamGameServer()->GetSteamID().ConvertToUint64() ); @@ -1387,7 +1387,7 @@ void SteamServer::ReceiveNetworkData() // You can only make use of VAC when using the Steam authentication system msg.SetSecure( SteamGameServer()->BSecure() ); - + SendData( steamIDRemote, &msg, sizeof( MsgServerSendInfo_t ) ); break; } @@ -1405,7 +1405,7 @@ void SteamServer::ReceiveNetworkData() OnClientBeginAuthentication( steamIDRemote, (void*)pMsg->GetTokenPtr(), pMsg->GetTokenLen() ); } - default: + default: _service->acceptor()->HandleMessage(steamIDRemote, eMsg, (const BYTE*)pchRecvBuf, cubMsgSize); break; } @@ -1424,7 +1424,7 @@ void SteamServer::ServerResponded( HServerListRequest hReq, int iServer ) return; gameserveritem_t* pServer = SteamMatchmakingServers()->GetServerDetails( hReq, iServer ); - + if ( pServer ) { // Filter out servers that don't match our appid here (might get these in LAN calls since we can't put more filters on it) @@ -1458,7 +1458,7 @@ void SteamServer::ServerFailedToRespond( HServerListRequest hReq, int iServer ) //----------------------------------------------------------------------------- // Purpose: Callback from Steam telling us a refresh is complete //----------------------------------------------------------------------------- -void SteamServer::RefreshComplete( HServerListRequest hReq, EMatchMakingServerResponse response ) +void SteamServer::RefreshComplete( HServerListRequest hReq, EMatchMakingServerResponse response ) { if (!_internetListLoading) return; @@ -1476,7 +1476,7 @@ void SteamServer::RefreshComplete( HServerListRequest hReq, EMatchMakingServerRe void SteamServer::OnClientBeginAuthentication( CSteamID steamIDClient, void *pToken, uint32 uTokenLen ) { // First, check this isn't a duplicate and we already have a user logged on from the same steamid - for( unsigned i = 0; i < cMaxPlayers; ++i ) + for( unsigned i = 0; i < cMaxPlayers; ++i ) { if ( _rgClientData[i].m_SteamIDUser == steamIDClient ) { @@ -1491,7 +1491,7 @@ void SteamServer::OnClientBeginAuthentication( CSteamID steamIDClient, void *pTo { if ( _rgPendingClientData[i].m_bActive ) ++nPendingOrActivePlayerCount; - + if ( _rgClientData[i].m_bActive ) ++nPendingOrActivePlayerCount; } @@ -1502,9 +1502,9 @@ void SteamServer::OnClientBeginAuthentication( CSteamID steamIDClient, void *pTo MsgServerFailAuthentication_t msg; SteamGameServerNetworking()->SendP2PPacket( steamIDClient, &msg, sizeof( msg ), k_EP2PSendReliable ); } - + // If we get here there is room, add the player as pending - for( uint32 i = 0; i < cMaxPlayers; ++i ) + for( uint32 i = 0; i < cMaxPlayers; ++i ) { if ( !_rgPendingClientData[i].m_bActive ) { @@ -1545,7 +1545,7 @@ void SteamServer::OnAuthCompleted( bool bAuthSuccessful, uint32 iPendingAuthInde bool bAddedOk = false; - for( uint32 i = 0; i < cMaxPlayers; ++i ) + for( uint32 i = 0; i < cMaxPlayers; ++i ) { if ( !_rgClientData[i].m_bActive ) { @@ -1568,7 +1568,7 @@ void SteamServer::OnAuthCompleted( bool bAuthSuccessful, uint32 iPendingAuthInde if ( bAddedOk ) { uint32 uPlayers = 0; - for( uint32 i = 0; i < cMaxPlayers; ++i ) + for( uint32 i = 0; i < cMaxPlayers; ++i ) { if ( _rgClientData[i].m_bActive ) ++uPlayers; @@ -1601,7 +1601,7 @@ void SteamServer::OnSteamServersDisconnected( SteamServersDisconnected_t *pLogge ShutdownHost(); - _service->SendEvent(cSteamHostDisconnected, &EventData(false)); + _service->SendEvent(cSteamHostDisconnected, &EventData(false)); } //----------------------------------------------------------------------------- @@ -1614,7 +1614,7 @@ void SteamServer::OnSteamServersConnectFailure( SteamServerConnectFailure_t *pCo ShutdownHost(); - _service->SendEvent(cSteamHostCreated, &EventData(false)); + _service->SendEvent(cSteamHostCreated, &EventData(false)); } //----------------------------------------------------------------------------- @@ -1701,7 +1701,7 @@ bool SteamServer::CreateHost() return true; _hostInit = true; - _serverConnecting = true; + _serverConnecting = true; // zero the client connection data memset( &_rgClientData, 0, sizeof( _rgClientData ) ); @@ -1736,14 +1736,14 @@ bool SteamServer::CreateHost() // We don't support specators in our game. // .... but if we did: //SteamGameServer()->SetSpectatorPort( ... ); - //SteamGameServer()->SetSpectatorServerName( ... ); + //SteamGameServer()->SetSpectatorServerName( ... ); // Initiate Anonymous logon. // Coming soon: Logging into authenticated, persistent game server account SteamGameServer()->LogOnAnonymous(); // We want to actively update the master server with our presence so players can - // find us via the steam matchmaking/server browser interfaces + // find us via the steam matchmaking/server browser interfaces SteamGameServer()->EnableHeartbeats( true ); //SteamGameServer()->ForceHeartbeat(); @@ -1764,7 +1764,7 @@ void SteamServer::ShutdownHost() _hostInit = false; _serverConnecting = false; - + // Notify Steam master server we are going offline SteamGameServer()->EnableHeartbeats( false ); @@ -1810,7 +1810,7 @@ void SteamServer::FindInternetList() return; // Track that we are now in a refresh, what type of refresh, and reset our server count - _internetListLoading = true; + _internetListLoading = true; _hostList.clear(); // If another request is outstanding, make sure we release it properly @@ -1853,7 +1853,7 @@ void SteamServer::FindLanServers() return; // Track that we are now in a refresh, what type of refresh, and reset our server count - _internetListLoading = true; + _internetListLoading = true; _hostList.clear(); // If _serverListRequest request is outstanding, make sure we release it properly @@ -2051,7 +2051,7 @@ void SteamService::DisconnectFromServer() _hAuthTicket = k_HAuthTicketInvalid; MsgClientLeavingServer_t msg; - SendData( &msg, sizeof(msg) ); + SendData( &msg, sizeof(msg) ); } //if ( _pP2PAuthedGame ) @@ -2201,7 +2201,7 @@ void SteamService::ReceiveNetworkData() } MsgServerPassAuthentication_t *pMsg = (MsgServerPassAuthentication_t*)pchRecvBuf; - // Our game client doesn't really care about whether the server is secure, or what its + // Our game client doesn't really care about whether the server is secure, or what its // steamID is, but if it did we would pass them in here as they are part of the accept message ReceiveServerAuthenticationResponse( true, pMsg->GetPlayerPosition() ); } @@ -2213,25 +2213,25 @@ void SteamService::ReceiveNetworkData() ReceiveServerAuthenticationResponse( false, 0 ); } break; - + default: _acceptor->HandleMessage( steamIDRemote, eMsg, (const BYTE*)pchRecvBuf, cubMsgSize ); break; } } - else + else { if ( cubMsgSize >= sizeof( DWORD ) ) { EMessage eMsg = (EMessage)*(DWORD*)pchRecvBuf; _acceptor->HandleMessage( steamIDRemote, eMsg, (const BYTE*)pchRecvBuf, cubMsgSize ); - + //if ( _pP2PAuthedGame->HandleMessage( eMsg, pchRecvBuf ) ) // continue; // this was a P2P auth message } - // the message is from another player + // the message is from another player //if ( _acceptor->HandleMessage( steamIDRemote, (BYTE*)pchRecvBuf, cubMsgSize ) ) // continue; // this was a P2P auth message @@ -2348,7 +2348,7 @@ bool SteamService::InitiateConnection(CSteamID steamIDGameServer) //send the packet to the server MsgClientInitiateConnection_t msg; - + if (SendData( &msg, sizeof( msg ) )) { _initiatingConnection = true; @@ -2436,13 +2436,13 @@ NetAcceptorSteam* SteamService::acceptor() SteamService::InitRes SteamService::Initialize() { if (_init) - return irSuccess; + return irSuccess; #ifndef _RETAIL - const int cAppId = 263260; + const int cAppId = 263260; if ( SteamAPI_RestartAppIfNecessary( k_uAppIdInvalid ) ) { - // if Steam is not running or the game wasn't started through Steam, SteamAPI_RestartAppIfNecessary starts the + // if Steam is not running or the game wasn't started through Steam, SteamAPI_RestartAppIfNecessary starts the // local Steam client and also launches this game again. // Once you get a public Steam AppID assigned for this game, you need to replace k_uAppIdInvalid with it and @@ -2482,14 +2482,14 @@ SteamService::InitRes SteamService::Initialize() SteamClient()->SetWarningMessageHook( &SteamAPIDebugTextHook ); // Tell Steam where it's overlay should show notification dialogs, this can be top right, top left, - // bottom right, bottom left. The default position is the bottom left if you don't call this. - // Generally you should use the default and not call this as users will be most comfortable with - // the default position. The API is provided in case the bottom right creates a serious conflict + // bottom right, bottom left. The default position is the bottom left if you don't call this. + // Generally you should use the default and not call this as users will be most comfortable with + // the default position. The API is provided in case the bottom right creates a serious conflict // with important UI in your game. SteamUtils()->SetOverlayNotificationPosition( k_EPositionTopRight ); //const char *pchServerAddress, *pchLobbyID; - //ParseCommandLine( pchCmdLine, &pchServerAddress, &pchLobbyID ); + //ParseCommandLine( pchCmdLine, &pchServerAddress, &pchLobbyID ); return irSuccess; } diff --git a/src/Rock3dGame/source/net/p2pauth.cpp b/src/Rock3dGame/source/net/p2pauth.cpp index e556d281..d892706a 100644 --- a/src/Rock3dGame/source/net/p2pauth.cpp +++ b/src/Rock3dGame/source/net/p2pauth.cpp @@ -26,8 +26,8 @@ namespace game //----------------------------------------------------------------------------- // Purpose: constructor //----------------------------------------------------------------------------- -CNetworkTransport::CNetworkTransport() -: +CNetworkTransport::CNetworkTransport() +: m_CallbackP2PSessionRequest( this, &CNetworkTransport::OnP2PSessionRequest ), m_CallbackP2PSessionConnectFail( this, &CNetworkTransport::OnP2PSessionConnectFail ) { diff --git a/src/Rock3dGame/source/snd/Audio.cpp b/src/Rock3dGame/source/snd/Audio.cpp index 3b45a558..06e848e2 100644 --- a/src/Rock3dGame/source/snd/Audio.cpp +++ b/src/Rock3dGame/source/snd/Audio.cpp @@ -42,14 +42,14 @@ bool Sound::Buffer::Load(seek_pos pos) ov_pcm_seek(&_sound->_oggFile, _pos); int ret = 1; - int sec = 0; + int sec = 0; while (ret && _dataSize < cBufferSize) { ret = ov_read(&_sound->_oggFile, _data + _dataSize, cBufferSize - _dataSize, 0, 2, 1, &sec); _dataSize += ret; } - _endPos = ov_pcm_tell(&_sound->_oggFile); + _endPos = ov_pcm_tell(&_sound->_oggFile); return _dataSize > 0; } @@ -62,7 +62,7 @@ void Sound::Buffer::Free() if (_data) { free(_data); - _data = 0; + _data = 0; } } @@ -74,7 +74,7 @@ bool Sound::Buffer::IsEndBuffer() const void Sound::Buffer::AddRef() const { _MyBase::AddRef(); - + if (GetRefCnt() == 1) _sound->RemoveUnusedBuf(const_cast(this)); } @@ -137,8 +137,8 @@ void Sound::RemoveUnusedBuf(BufferList::const_iterator iter) void Sound::RemoveUnusedBuf(Buffer* buffer) { - BufferList::iterator iter = _unusedBuffers.Find(buffer); - if (iter != _unusedBuffers.end()) + BufferList::iterator iter = _unusedBuffers.Find(buffer); + if (iter != _unusedBuffers.end()) RemoveUnusedBuf(iter); } @@ -162,11 +162,11 @@ void Sound::OptimizeUnusedBufs() void Sound::DoInit() { LSL_ASSERT(_buffers.empty()); - + if (_wfopen_s(&_file, GetAppFilePath(_fileName).c_str(), L"rb") != 0) throw lsl::Error("void Sound::DoInit() " + _fileName); - if (ov_open_callbacks(_file, &_oggFile, 0, 0, OV_CALLBACKS_DEFAULT) < 0) + if (ov_open_callbacks(_file, &_oggFile, 0, 0, OV_CALLBACKS_DEFAULT) < 0) throw lsl::Error("void Sound::DoInit(). ov_open_callbacks"); if (ov_seekable(&_oggFile) == 0) @@ -281,7 +281,7 @@ void Sound::ReleaseBuffer(Buffer* buffer) buffer->Release(); if (!_isLoad) - OptimizeUnusedBufs(); + OptimizeUnusedBufs(); } bool Sound::IsEndBuffer(Buffer* buffer) const @@ -307,7 +307,7 @@ Sound::Buffer* Sound::PrevBuffer(Buffer* pos) seek_pos prevPos = GetPrevBuffer(pos); if (prevPos >= 0) return FindBufferByPos(prevPos); - return NULL; + return NULL; } Sound::Buffer* Sound::FindBufferByPos(seek_pos pos, Buffers::iterator* nearRes) @@ -318,13 +318,13 @@ Sound::Buffer* Sound::FindBufferByPos(seek_pos pos, Buffers::iterator* nearRes) if (iter != _buffers.end() && iter->second->ContainPos(pos)) { buffer = iter->second; - + LSL_ASSERT(buffer); } else if (iter != _buffers.begin() && (--iter)->second->ContainPos(pos)) { buffer = iter->second; - + LSL_ASSERT(buffer); } @@ -441,7 +441,7 @@ SoundLib::SoundLib(Engine* engine): _engine(engine) } SoundLib::~SoundLib() -{ +{ Clear(); } @@ -463,7 +463,7 @@ Engine* SoundLib::GetEngine() Voice::Voice(Engine* engine): _engine(engine), _outMatrix(0), _srcChannels(0), _destChannels(0) { } - + Voice::~Voice() { DoClearReceivers(); @@ -487,14 +487,14 @@ void Voice::SendReceivers(IXAudio2Voice* voice) { LSL_ASSERT(voice); - HRESULT hr; + HRESULT hr; if (!_receivers.empty()) { XAUDIO2_VOICE_SENDS sends; sends.SendCount = _receivers.size(); - sends.pSends = new XAUDIO2_SEND_DESCRIPTOR[_receivers.size()]; + sends.pSends = new XAUDIO2_SEND_DESCRIPTOR[_receivers.size()]; int i = 0; for (VoiceList::iterator iter = _receivers.begin(); iter != _receivers.end(); ++iter, ++i) @@ -678,7 +678,7 @@ SubmixVoice::SubmixVoice(Engine* engine): _MyBase(engine), _xVoice(0) LSL_LOG("Error create SubmixVoice"); } } - + SubmixVoice::~SubmixVoice() { if (_xVoice) @@ -712,11 +712,11 @@ MasteringVoice::MasteringVoice(Engine* engine): _MyBase(engine), _xVoice(0) LSL_LOG("Error create MasteringVoice"); } } - + MasteringVoice::~MasteringVoice() { if (_xVoice) - _xVoice->DestroyVoice(); + _xVoice->DestroyVoice(); } void MasteringVoice::ChangedReceivers() @@ -740,14 +740,14 @@ IXAudio2Voice* MasteringVoice::GetXVoice() Proxy::Proxy(Engine* engine): _MyBase(engine), _init(false), _sound(0), _pos(0), _playMode(pmOnce), _volume(1.0f), _frequencyRatio(1.0f), _onStreamEnd(false), _onTerminate(false), _xVoice(0), _run(false), _streaming(NULL) -{ +{ } - + Proxy::~Proxy() { Free(); - for (ReportList::iterator iter = _reportList.begin(); iter != _reportList.end(); ++iter) + for (ReportList::iterator iter = _reportList.begin(); iter != _reportList.end(); ++iter) (*iter)->Release(); _reportList.Clear(); @@ -766,7 +766,7 @@ void Proxy::VoiceCallback::OnStreamEnd() _proxy->Stop(); _proxy->SetPos(0); break; - + case pmCycle: _proxy->SetPos(-1); break; @@ -775,7 +775,7 @@ void Proxy::VoiceCallback::OnStreamEnd() _proxy->SetPos(-1); break; } - + _proxy->OnStreamEnd(); } @@ -849,7 +849,7 @@ bool Proxy::Streaming::RemoveBuffer(Buffer* buffer) for (Buffers::iterator iter = _buffers.begin(); iter != _buffers.end(); ++iter) if (*iter == buffer) - { + { if (RemoveBuffer(iter, cnt == 0)) return true; @@ -903,7 +903,7 @@ bool Proxy::Streaming::ApplyPosChanged() if (_posChanged) { _posChanged = false; - + _proxy->_sound->Lock(); try { @@ -926,7 +926,7 @@ bool Proxy::Streaming::RemoveUnusedBufs() { if (_unusedBuffers.empty()) { - res = false; + res = false; } else { @@ -965,7 +965,7 @@ bool Proxy::Streaming::DoStream() minBufSize += _cacheSize; //переход в состояние кеширования только при дополнительном превышении _proxy->_cacheSize _cached = _dataSizeBuffers >= minBufSize; - } + } bool work = _buffers.size() < XAUDIO2_MAX_QUEUED_BUFFERS && _dataSizeBuffers < minBufSize; @@ -982,7 +982,7 @@ bool Proxy::Streaming::DoStream() buffer = _proxy->_sound->CreateBufferAfter(_buffers.back()); } else - { + { buffer = _proxy->_sound->CreateBuffer(_pos); if (buffer) offs = _pos - buffer->GetPos(); @@ -999,7 +999,7 @@ bool Proxy::Streaming::DoStream() PushBackBuffer(firstBuffer, firstBuffer == _buffers.back(), 0); } - work = buffer != 0; + work = buffer != 0; } return work; @@ -1059,7 +1059,7 @@ void Proxy::Streaming::Terminate() _MyBase::Terminate(); - Changed(); + Changed(); } void Proxy::Streaming::WaitTerminate() @@ -1095,7 +1095,7 @@ void Proxy::Streaming::ReleaseBuffer(Buffer* buffer) { GetSDK()->Lock(_unusedBufsLock); try - { + { _unusedBuffers.push_back(buffer); } LSL_FINALLY(GetSDK()->Unlock(_unusedBufsLock);) @@ -1124,7 +1124,7 @@ void Proxy::Streaming::SetPos(seek_pos pos) void Proxy::OnStreamEnd() { - _onStreamEnd = true; + _onStreamEnd = true; } void Proxy::OnTerminate() @@ -1145,7 +1145,7 @@ void Proxy::SendReports() report->OnTerminate(this); } } - LSL_FINALLY(_onStreamEnd = false; _onTerminate = false;) + LSL_FINALLY(_onStreamEnd = false; _onTerminate = false;) } void Proxy::ChangedReceivers() @@ -1294,7 +1294,7 @@ void Proxy::RegReport(Report* report) { _reportList.Insert(report); report->AddRef(); - } + } } void Proxy::UnregReport(Report* report) @@ -1352,7 +1352,7 @@ void Proxy::SetSound(Sound* value) bool Proxy::IsSoundCompilant(Sound* value) const { - if (IsInit()) + if (IsInit()) return _sound == value || (_sound->GetVorbisInfo().channels == value->GetVorbisInfo().channels && _sound->GetVorbisInfo().rate == value->GetVorbisInfo().rate); else return false; @@ -1448,7 +1448,7 @@ void Source::ClearReportList() { if (_proxy) _proxy->UnregReport(*iter); - (*iter)->Release(); + (*iter)->Release(); } _reportList.clear(); } @@ -1472,7 +1472,7 @@ void Source::Init() _sound->Init(); _proxy = GetEngine()->AllocProxy(_sound); - _proxy->AddRef(); + _proxy->AddRef(); _proxy->SetPos(_pos); _proxy->SetPlayMode(_playMode); @@ -1481,7 +1481,7 @@ void Source::Init() _proxy->InsertReceiver(GetReceivers()); for (ReportList::const_iterator iter = _reportList.begin(); iter != _reportList.end(); ++iter) - _proxy->RegReport(*iter); + _proxy->RegReport(*iter); int nSrcChannels = _sound->GetVorbisInfo().channels; int nDestChannels = GetEngine()->GetDevCaps().OutputFormat.Format.nChannels; @@ -1493,7 +1493,7 @@ void Source::Init() DoInit(); } } - + void Source::Free(bool unload) { if (_proxy) @@ -1505,7 +1505,7 @@ void Source::Free(bool unload) for (ReportList::const_iterator iter = _reportList.begin(); iter != _reportList.end(); ++iter) _proxy->UnregReport(*iter); _proxy->ClearReceivers(); - + _proxy->Release(); GetEngine()->ReleaseProxy(_proxy, unload); _proxy = 0; @@ -1538,7 +1538,7 @@ bool Source::IsPlaying() const void Source::RegReport(Report* report) { report->AddRef(); - _reportList.push_back(report); + _reportList.push_back(report); if (_proxy) _proxy->RegReport(report); @@ -1550,7 +1550,7 @@ void Source::UnregReport(Report* report) _proxy->UnregReport(report); report->Release(); - _reportList.Remove(report); + _reportList.Remove(report); } Sound* Source::GetSound() @@ -1661,7 +1661,7 @@ void Source3d::ApplyX3dEffect() const Listener* listener = GetEngine()->GetListener(); if (!(GetProxy() && listener && _play)) - return; + return; D3DXVECTOR3 listDist = _pos3d - listener->pos; float listDistLen = D3DXVec3Length(&listDist); @@ -1671,9 +1671,9 @@ void Source3d::ApplyX3dEffect() this->GetProxy()->Stop(); return; } - + CleanUpX3d(); - + int nSrcChannels = GetSound()->GetVorbisInfo().channels; int nDestChannels = GetEngine()->GetDevCaps().OutputFormat.Format.nChannels; @@ -1708,12 +1708,12 @@ void Source3d::ApplyX3dEffect() _dspSettings.pMatrixCoefficients = new float[nSrcChannels * nDestChannels]; X3DAudioCalculate(*GetEngine()->GetX3dAudio(), &xList, &_xEmitter, X3DAUDIO_CALCULATE_MATRIX, &_dspSettings); - + SetOutputMatrix(nSrcChannels, nDestChannels, _dspSettings.pMatrixCoefficients); - + break; } - + case Engine::m3dFlat: { SetDefOutputMatrix(nSrcChannels, nDestChannels, lsl::ClampValue(1.0f - listDistLen / distScaller, 0.0f, 1.0f)); @@ -1828,7 +1828,7 @@ void Source3d::SetDistScaler(float value) Engine::Engine(): _mainVoice(0), _xAudio(0), _initX3dAudio(false), _listener(0), _distScaler(30.0f), _mode3d(m3dFlat), _changed3d(false), _poolMaxSize(20), _isComputing(false) { - ZeroMemory(&_xDevCaps, sizeof(_xDevCaps)); + ZeroMemory(&_xDevCaps, sizeof(_xDevCaps)); } Engine::~Engine() @@ -1930,7 +1930,7 @@ void Engine::OptimizePool() { Proxy* proxy = *_srcPool.begin(); RemovePool(_srcPool.begin()); - + DeleteProxy(proxy); } } @@ -1938,19 +1938,19 @@ void Engine::OptimizePool() void Engine::InsertCache(Proxy* proxy) { _srcCache.push_back(proxy); - proxy->AddRef(); + proxy->AddRef(); } Engine::ProxyList::iterator Engine::RemoveCache(ProxyList::iterator iter) { - (*iter)->Release(); + (*iter)->Release(); - return _srcCache.erase(iter); + return _srcCache.erase(iter); } Engine::ProxyList::iterator Engine::RemoveCache(Proxy* proxy) { - return RemoveCache(_srcCache.Find(proxy)); + return RemoveCache(_srcCache.Find(proxy)); } void Engine::ClearCache() @@ -1958,7 +1958,7 @@ void Engine::ClearCache() for (ProxyList::iterator iter = _srcCache.begin(); iter != _srcCache.end(); ++iter) (*iter)->Release(); - _srcCache.clear(); + _srcCache.clear(); } Proxy* Engine::FlushCache(Sound* sound) @@ -1999,10 +1999,10 @@ Proxy* Engine::AllocProxy(Sound* sound) { Proxy* proxy = 0; - if (sound) + if (sound) { //поиск в пуле - for (ProxyList::iterator iter = _srcPool.begin(); iter != _srcPool.end(); ++iter) + for (ProxyList::iterator iter = _srcPool.begin(); iter != _srcPool.end(); ++iter) if ((*iter)->IsSoundCompilant(sound)) { proxy = *iter; @@ -2010,7 +2010,7 @@ Proxy* Engine::AllocProxy(Sound* sound) break; } - //поиск в кеше, с предварительной очисткой + //поиск в кеше, с предварительной очисткой if (!proxy) { OptimizePool(); @@ -2019,7 +2019,7 @@ Proxy* Engine::AllocProxy(Sound* sound) } //не надено, создаем - if (!proxy) + if (!proxy) proxy = CreateProxy(); else //выполянем дополнительную итерацию расчета на случай если прокси лежат в пуле очень мало и его прошлый владелец не успел его обсчитать @@ -2032,7 +2032,7 @@ Proxy* Engine::AllocProxy(Sound* sound) } void Engine::ReleaseProxy(Proxy* proxy, bool unload) -{ +{ if (proxy->IsInit() && !unload) { proxy->Terminate(); @@ -2057,7 +2057,7 @@ void Engine::InitX3dAudio() { _initX3dAudio = true; - X3DAudioInitialize(_xDevCaps.OutputFormat.dwChannelMask, X3DAUDIO_SPEED_OF_SOUND, _x3dAudio); + X3DAudioInitialize(_xDevCaps.OutputFormat.dwChannelMask, X3DAUDIO_SPEED_OF_SOUND, _x3dAudio); } } @@ -2092,7 +2092,7 @@ void Engine::Init() { HRESULT hr = S_OK; - if (FAILED(hr = XAudio2Create(&_xAudio, 0, XAUDIO2_DEFAULT_PROCESSOR))) + if (FAILED(hr = XAudio2Create(&_xAudio, 0, XAUDIO2_DEFAULT_PROCESSOR))) { LSL_LOG("Error create _xAudio"); @@ -2136,7 +2136,7 @@ void Engine::Compute(float deltaTime) _deleteProxyList.clear(); for (ProxyList::iterator iter = _proxyList.begin(); iter != _proxyList.end(); ++iter) - ComputeProxy(*iter); + ComputeProxy(*iter); for (Source3dList::iterator iter = _proxy3dList.begin(); iter != _proxy3dList.end(); ++iter) { @@ -2239,7 +2239,7 @@ void Engine::SetListener(const Listener* value) if (value) { _listener = new Listener(*value); - InitX3dAudio(); + InitX3dAudio(); } Changed3d(); diff --git a/src/Rock3dGame/source/video/VideoPlayer.cpp b/src/Rock3dGame/source/video/VideoPlayer.cpp index 1b767d49..09505f21 100644 --- a/src/Rock3dGame/source/video/VideoPlayer.cpp +++ b/src/Rock3dGame/source/video/VideoPlayer.cpp @@ -170,7 +170,7 @@ bool Player::OnPaint(HWND handle) HDC hdc; hdc = BeginPaint(handle, &ps); - //The player has video, so ask the player to repaint. + //The player has video, so ask the player to repaint. HRESULT hr = _dShowPlayer->Repaint(hdc); if (hr != S_OK) diff --git a/src/Rock3dGame/source/video/playback.cpp b/src/Rock3dGame/source/video/playback.cpp index 4e58ae57..2b0a2d7e 100644 --- a/src/Rock3dGame/source/video/playback.cpp +++ b/src/Rock3dGame/source/video/playback.cpp @@ -14,7 +14,7 @@ #include "video\video.h" DShowPlayer::DShowPlayer(HWND hwnd, UINT windowMsg): - m_state(STATE_NO_GRAPH), + m_state(STATE_NO_GRAPH), m_hwnd(hwnd), m_windowMsg(windowMsg), m_pGraph(NULL), @@ -145,9 +145,9 @@ HRESULT DShowPlayer::Stop() // EVR/VMR functionality -BOOL DShowPlayer::HasVideo() const -{ - return (m_pVideo && m_pVideo->HasVideo()); +BOOL DShowPlayer::HasVideo() const +{ + return (m_pVideo && m_pVideo->HasVideo()); } // Sets the destination rectangle for the video. @@ -208,13 +208,13 @@ void DShowPlayer::SetFullScreen(bool value) // Graph building -// Create a new filter graph. +// Create a new filter graph. HRESULT DShowPlayer::InitializeGraph() { TearDownGraph(); // Create the Filter Graph Manager. - HRESULT hr = CoCreateInstance(CLSID_FilterGraph, NULL, + HRESULT hr = CoCreateInstance(CLSID_FilterGraph, NULL, CLSCTX_INPROC_SERVER, IID_PPV_ARGS(&m_pGraph)); if (FAILED(hr)) { @@ -305,7 +305,7 @@ HRESULT DShowPlayer::CreateVideoRenderer() } -// Render the streams from a source filter. +// Render the streams from a source filter. HRESULT DShowPlayer::RenderStreams(IBaseFilter *pSource) { @@ -328,7 +328,7 @@ HRESULT DShowPlayer::RenderStreams(IBaseFilter *pSource) } // Add the DSound Renderer to the graph. - hr = AddFilterByCLSID(m_pGraph, CLSID_DSoundRender, + hr = AddFilterByCLSID(m_pGraph, CLSID_DSoundRender, &pAudioRenderer, L"Audio Renderer"); if (FAILED(hr)) { @@ -345,8 +345,8 @@ HRESULT DShowPlayer::RenderStreams(IBaseFilter *pSource) // Loop through all the pins IPin *pPin; while (S_OK == pEnum->Next(1, &pPin, NULL)) - { - // Try to render this pin. + { + // Try to render this pin. // It's OK if we fail some pins, if at least one pin renders. HRESULT hr2 = pGraph2->RenderEx(pPin, AM_RENDEREX_RENDERTOEXISTINGRENDERERS, NULL); @@ -372,7 +372,7 @@ HRESULT DShowPlayer::RenderStreams(IBaseFilter *pSource) SafeRelease(&pAudioRenderer); SafeRelease(&pGraph2); - // If we succeeded to this point, make sure we rendered at least one + // If we succeeded to this point, make sure we rendered at least one // stream. if (SUCCEEDED(hr)) { diff --git a/src/Rock3dGame/source/video/video.cpp b/src/Rock3dGame/source/video/video.cpp index 194c6e28..9ff8ebf0 100644 --- a/src/Rock3dGame/source/video/video.cpp +++ b/src/Rock3dGame/source/video/video.cpp @@ -10,9 +10,9 @@ #include "video\video.h" #include -HRESULT InitializeEVR(IBaseFilter *pEVR, HWND hwnd, IMFVideoDisplayControl ** ppWc); -HRESULT InitWindowlessVMR9(IBaseFilter *pVMR, HWND hwnd, IVMRWindowlessControl9 ** ppWc); -HRESULT InitWindowlessVMR(IBaseFilter *pVMR, HWND hwnd, IVMRWindowlessControl** ppWc); +HRESULT InitializeEVR(IBaseFilter *pEVR, HWND hwnd, IMFVideoDisplayControl ** ppWc); +HRESULT InitWindowlessVMR9(IBaseFilter *pVMR, HWND hwnd, IVMRWindowlessControl9 ** ppWc); +HRESULT InitWindowlessVMR(IBaseFilter *pVMR, HWND hwnd, IVMRWindowlessControl** ppWc); HRESULT FindConnectedPin(IBaseFilter *pFilter, PIN_DIRECTION PinDir, IPin **ppPin); /// VMR-7 Wrapper @@ -27,16 +27,16 @@ CVMR7::~CVMR7() SafeRelease(&m_pWindowless); } -BOOL CVMR7::HasVideo() const -{ - return (m_pWindowless != NULL); +BOOL CVMR7::HasVideo() const +{ + return (m_pWindowless != NULL); } HRESULT CVMR7::AddToGraph(IGraphBuilder *pGraph, HWND hwnd) { IBaseFilter *pVMR = NULL; - HRESULT hr = AddFilterByCLSID(pGraph, CLSID_VideoMixingRenderer, + HRESULT hr = AddFilterByCLSID(pGraph, CLSID_VideoMixingRenderer, &pVMR, L"VMR-7"); if (SUCCEEDED(hr)) @@ -67,7 +67,7 @@ HRESULT CVMR7::FinalizeGraph(IGraphBuilder *pGraph) BOOL bRemoved; hr = RemoveUnconnectedRenderer(pGraph, pFilter, &bRemoved); - // If we removed the VMR, then we also need to release our + // If we removed the VMR, then we also need to release our // pointer to the VMR's windowless control interface. if (bRemoved) { @@ -132,26 +132,26 @@ void CVMR7::SetFullScreen(bool value) } -// Initialize the VMR-7 for windowless mode. +// Initialize the VMR-7 for windowless mode. -HRESULT InitWindowlessVMR( +HRESULT InitWindowlessVMR( IBaseFilter *pVMR, // Pointer to the VMR HWND hwnd, // Clipping window IVMRWindowlessControl** ppWC // Receives a pointer to the VMR. - ) -{ + ) +{ - IVMRFilterConfig* pConfig = NULL; + IVMRFilterConfig* pConfig = NULL; IVMRWindowlessControl *pWC = NULL; - // Set the rendering mode. - HRESULT hr = pVMR->QueryInterface(IID_PPV_ARGS(&pConfig)); + // Set the rendering mode. + HRESULT hr = pVMR->QueryInterface(IID_PPV_ARGS(&pConfig)); if (FAILED(hr)) { goto done; } - hr = pConfig->SetRenderingMode(VMRMode_Windowless); + hr = pConfig->SetRenderingMode(VMRMode_Windowless); if (FAILED(hr)) { goto done; @@ -185,8 +185,8 @@ HRESULT InitWindowlessVMR( done: SafeRelease(&pConfig); SafeRelease(&pWC); - return hr; -} + return hr; +} /// VMR-9 Wrapper @@ -196,9 +196,9 @@ CVMR9::CVMR9() : m_pWindowless(NULL), _videoWindow(NULL) } -BOOL CVMR9::HasVideo() const -{ - return (m_pWindowless != NULL); +BOOL CVMR9::HasVideo() const +{ + return (m_pWindowless != NULL); } CVMR9::~CVMR9() @@ -211,11 +211,11 @@ HRESULT CVMR9::AddToGraph(IGraphBuilder *pGraph, HWND hwnd) { IBaseFilter *pVMR = NULL; - HRESULT hr = AddFilterByCLSID(pGraph, CLSID_VideoMixingRenderer9, + HRESULT hr = AddFilterByCLSID(pGraph, CLSID_VideoMixingRenderer9, &pVMR, L"VMR-9"); if (SUCCEEDED(hr)) { - // Set windowless mode on the VMR. This must be done before the VMR + // Set windowless mode on the VMR. This must be done before the VMR // is connected. hr = InitWindowlessVMR9(pVMR, hwnd, &m_pWindowless); } @@ -250,7 +250,7 @@ HRESULT CVMR9::FinalizeGraph(IGraphBuilder *pGraph) BOOL bRemoved; hr = RemoveUnconnectedRenderer(pGraph, pFilter, &bRemoved); - // If we removed the VMR, then we also need to release our + // If we removed the VMR, then we also need to release our // pointer to the VMR's windowless control interface. if (bRemoved) { @@ -322,26 +322,26 @@ void CVMR9::SetFullScreen(bool value) } -// Initialize the VMR-9 for windowless mode. +// Initialize the VMR-9 for windowless mode. -HRESULT InitWindowlessVMR9( +HRESULT InitWindowlessVMR9( IBaseFilter *pVMR, // Pointer to the VMR HWND hwnd, // Clipping window IVMRWindowlessControl9** ppWC // Receives a pointer to the VMR. - ) -{ + ) +{ - IVMRFilterConfig9 * pConfig = NULL; + IVMRFilterConfig9 * pConfig = NULL; IVMRWindowlessControl9 *pWC = NULL; - // Set the rendering mode. - HRESULT hr = pVMR->QueryInterface(IID_PPV_ARGS(&pConfig)); + // Set the rendering mode. + HRESULT hr = pVMR->QueryInterface(IID_PPV_ARGS(&pConfig)); if (FAILED(hr)) { goto done; } - hr = pConfig->SetRenderingMode(VMR9Mode_Windowless); + hr = pConfig->SetRenderingMode(VMR9Mode_Windowless); if (FAILED(hr)) { goto done; @@ -375,8 +375,8 @@ HRESULT InitWindowlessVMR9( done: SafeRelease(&pConfig); SafeRelease(&pWC); - return hr; -} + return hr; +} /// EVR Wrapper @@ -392,16 +392,16 @@ CEVR::~CEVR() SafeRelease(&m_pVideoDisplay); } -BOOL CEVR::HasVideo() const -{ - return (m_pVideoDisplay != NULL); +BOOL CEVR::HasVideo() const +{ + return (m_pVideoDisplay != NULL); } HRESULT CEVR::AddToGraph(IGraphBuilder *pGraph, HWND hwnd) { IBaseFilter *pEVR = NULL; - HRESULT hr = AddFilterByCLSID(pGraph, CLSID_EnhancedVideoRenderer, + HRESULT hr = AddFilterByCLSID(pGraph, CLSID_EnhancedVideoRenderer, &pEVR, L"EVR"); if (FAILED(hr)) @@ -496,18 +496,18 @@ void CEVR::SetFullScreen(bool value) m_pVideoDisplay->SetFullscreen(value); } -// Initialize the EVR filter. +// Initialize the EVR filter. -HRESULT InitializeEVR( +HRESULT InitializeEVR( IBaseFilter *pEVR, // Pointer to the EVR HWND hwnd, // Clipping window IMFVideoDisplayControl** ppDisplayControl - ) -{ + ) +{ IMFGetService *pGS = NULL; IMFVideoDisplayControl *pDisplay = NULL; - HRESULT hr = pEVR->QueryInterface(IID_PPV_ARGS(&pGS)); + HRESULT hr = pEVR->QueryInterface(IID_PPV_ARGS(&pGS)); if (FAILED(hr)) { goto done; @@ -540,8 +540,8 @@ HRESULT InitializeEVR( done: SafeRelease(&pGS); SafeRelease(&pDisplay); - return hr; -} + return hr; +} // Helper functions. @@ -599,7 +599,7 @@ HRESULT IsPinDirection(IPin *pPin, PIN_DIRECTION dir, BOOL *pResult) return hr; } -HRESULT FindConnectedPin(IBaseFilter *pFilter, PIN_DIRECTION PinDir, +HRESULT FindConnectedPin(IBaseFilter *pFilter, PIN_DIRECTION PinDir, IPin **ppPin) { *ppPin = NULL; @@ -648,14 +648,14 @@ HRESULT FindConnectedPin(IBaseFilter *pFilter, PIN_DIRECTION PinDir, return hr; } -HRESULT AddFilterByCLSID(IGraphBuilder *pGraph, REFGUID clsid, +HRESULT AddFilterByCLSID(IGraphBuilder *pGraph, REFGUID clsid, IBaseFilter **ppF, LPCWSTR wszName) { *ppF = 0; IBaseFilter *pFilter = NULL; - HRESULT hr = CoCreateInstance(clsid, NULL, CLSCTX_INPROC_SERVER, + HRESULT hr = CoCreateInstance(clsid, NULL, CLSCTX_INPROC_SERVER, IID_PPV_ARGS(&pFilter)); if (FAILED(hr)) { diff --git a/src/tools/rock3dExprot.ms b/src/tools/rock3dExprot.ms index 0733f95c..bce9b2b9 100644 --- a/src/tools/rock3dExprot.ms +++ b/src/tools/rock3dExprot.ms @@ -1,6 +1,6 @@ /* НЕЛЬЗЯ ИСПОЛЬЗОВАТЬ ОТРИЦАТЕЛЬНОЕ МАСШТАБИРОВАНИЕ, ТАК КАК РЕАЛИЗАЦИИ -В 3Д МАКСЕ И DIRECTX РАЗЛИЧАЮТСЯ (3Д МАКС АВТОМАТИЧЕСКИ МЕНЯЕТ +В 3Д МАКСЕ И DIRECTX РАЗЛИЧАЮТСЯ (3Д МАКС АВТОМАТИЧЕСКИ МЕНЯЕТ ПОРЯДОК ОБХОДА ВЕРШИН) */ @@ -10,46 +10,46 @@ global curExpMap = 1 rollout ExportMesh "Export Mesh" ( EditText editPath "Path" pos:[10, 10] width:210 - Button btnBrowse "Browse" pos:[227, 8] width:50 + Button btnBrowse "Browse" pos:[227, 8] width:50 CheckBox chkTextureCoord "Saving of texture coordinates" checked:true CheckBox chkConvToLCS "Convert from right to left coordinate system" checked:false - + Button btnExport "Export" width:270 - + on ExportMesh open do ( editPath.Text = "c:\\*.r3d" ) - + on btnBrowse pressed do ( s = GetSaveFileName types:"Rock3d file (*.r3d)|*.r3d" if s != undefined then editPath.Text = s ) - + on btnExport pressed do ( if editPath.Text == undefined then ( MessageBox "Ошибка, введите корректный путь" exit - ) + ) for i = 1 to selection.count do - ( + ( filePath = editPath.Text; if selection.count > 1 then filePath = (getFilenamePath filePath) + (getFilenameFile filePath) + (i as string) + ".r3d" - + fs = fOpen filePath "wb"; if fs == undefined then ( MessageBox "Ошибка записи в файл, процесс будет прекращен..." exit ) - + curMesh = ConvertToMesh selection[i] - + saveExpMap = chkTextureCoord.Checked and meshop.getMapSupport curMesh curExpMap bitSaveExpMap = 0 if saveExpMap then @@ -57,26 +57,26 @@ rollout ExportMesh "Export Mesh" convToLCS = chkConvToLCS.Checked bitConvToLCS = 0 if convToLCS then - bitConvToLCS = 1 - + bitConvToLCS = 1 + meshop.deleteIsoMapVertsAll curMesh meshop.deleteIsoVerts curMesh - + numUniqueVerts = meshop.GetNumVerts curMesh numFaces = meshop.GetNumFaces curMesh - + --association container of Materials ID mathIdKeys = #() --[key]=MathID mathIdValues = #() --[key][numFace]=Index vertex - + --faces using this vertex facesUsingUVerts = #() --[IndexVert][numRefrence]=[numFace, numVertFace, numIndexedVertex] facesUsingUVerts.Count = numUniqueVerts - + --index buffer indexBuf = #() indexBuf.Count = numFaces * 3 - + WriteLong fs curExportVersion WriteByte fs bitConvToLCS WriteByte fs bitSaveExpMap @@ -86,46 +86,46 @@ rollout ExportMesh "Export Mesh" --Matherial ID buffer for i = 1 to numFaces do - ( + ( curFaceMatID = GetFaceMatID curMesh i mathIndex = findItem mathIdKeys curFaceMatID - if mathIndex > 0 then + if mathIndex > 0 then append mathIdValues[mathIndex] i else - ( - append mathIdKeys curFaceMatID + ( + append mathIdKeys curFaceMatID append mathIdValues #(i) - ) + ) ) - + curIndexedVert = 0; - for mathIndex = 1 to mathIdValues.Count do - for faceIndex = 1 to mathIdValues[mathIndex].Count do - ( + for mathIndex = 1 to mathIdValues.Count do + for faceIndex = 1 to mathIdValues[mathIndex].Count do + ( i = mathIdValues[mathIndex][faceIndex] curFace = GetFace curMesh i curFaceSmoothGr = GetFaceSmoothGroup curMesh i local curMapFace if saveExpMap then - curMapFace = meshop.GetMapFace curMesh curExpMap i + curMapFace = meshop.GetMapFace curMesh curExpMap i for j = 1 to 3 do ( - curIndexedVert = curIndexedVert + 1; + curIndexedVert = curIndexedVert + 1; curIndVert = curFace[j] local curIndMapVert if saveExpMap then curIndMapVert = curMapFace[j] - + findEqualVertex = false - if facesUsingUVerts[curIndVert] == undefined then + if facesUsingUVerts[curIndVert] == undefined then facesUsingUVerts[curIndVert] = #([i, j, curIndexedVert]) --add first refrence else - ( + ( for k = 1 to facesUsingUVerts[curIndVert].Count do - ( + ( nxI = facesUsingUVerts[curIndVert][k][1] nxJ = facesUsingUVerts[curIndVert][k][2] - nextIndexedVert = facesUsingUVerts[curIndVert][k][3] + nextIndexedVert = facesUsingUVerts[curIndVert][k][3] nextFaceSmoothGr = GetFaceSmoothGroup curMesh nxI local nextMapFace local nextIndMapVert @@ -134,46 +134,46 @@ rollout ExportMesh "Export Mesh" nextMapFace = meshop.GetMapFace curMesh curExpMap nxI nextIndMapVert = nextMapFace[nxJ] ) - - if curIndexedVert == nextIndexedVert then + + if curIndexedVert == nextIndexedVert then MessageBox("Вырожденный фейс! Непредусмотренный случай...") - + --Criteries unique if nextFaceSmoothGr > 0 and nextFaceSmoothGr == curFaceSmoothGr and (saveExpMap == false or nextIndMapVert == curIndMapVert) then ( - indexBuf[curIndexedVert] = indexBuf[nextIndexedVert] + indexBuf[curIndexedVert] = indexBuf[nextIndexedVert] findEqualVertex = true exit ) ) - append facesUsingUVerts[curIndVert] [i, j, curIndexedVert] --add next refrence - ) + append facesUsingUVerts[curIndVert] [i, j, curIndexedVert] --add next refrence + ) if findEqualVertex == false then ( indexBuf[curIndexedVert] = numVertexs - + --saving vertex curVert = meshop.GetVert curMesh curIndVert if convToLCS then - swap curVert.x curVert.y + swap curVert.x curVert.y WriteFloat fs curVert.x - WriteFloat fs curVert.y + WriteFloat fs curVert.y WriteFloat fs curVert.z - - --saving normals + + --saving normals curFaceNormals = meshop.GetFaceRNormals curMesh i local curNormal if curFaceSmoothGr == 0 or j > curFaceNormals.Count then curNormal = GetFaceNormal curMesh i - else - curNormal = curFaceNormals[j] + else + curNormal = curFaceNormals[j] if convToLCS then swap curNormal.x curNormal.y WriteFloat fs curNormal.x WriteFloat fs curNormal.y WriteFloat fs curNormal.z - + --saving current map channal if saveExpMap == true then ( @@ -181,25 +181,25 @@ rollout ExportMesh "Export Mesh" WriteFloat fs curMapVert.x WriteFloat fs (1 - curMapVert.y) ) - - numVertexs = numVertexs + 1 - ) + + numVertexs = numVertexs + 1 + ) ) ) - - --rewrite count vertex + + --rewrite count vertex fseek fs headerSize #seek_set WriteLong fs numVertexs fseek fs 0 #seek_end - + --saving index buffer WriteLong fs numFaces for i = 1 to numFaces * 3 do WriteLong fs indexBuf[i] - + --saving MathId faceStart = 0 - WriteLong fs mathIdKeys.Count --Materials count + WriteLong fs mathIdKeys.Count --Materials count for i = 1 to mathIdKeys.Count do ( WriteLong fs mathIdKeys[i] --MathID @@ -207,9 +207,9 @@ rollout ExportMesh "Export Mesh" WriteLong fs mathIdValues[i].Count faceStart = faceStart + mathIdValues[i].Count; ) - - fClose fs - ) + + fClose fs + ) ) ) From 9accaf478583d14169d0861e36613c589d6b8366 Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Sat, 26 Jun 2021 17:13:31 +0300 Subject: [PATCH 30/55] replace spaces with tabs --- src/LexStd/header/lslSerialValue.h | 4 +- src/LexStd/source/EulerAngles.cpp | 138 ++++++------- src/MapEditor/TraceView.cpp | 2 +- src/MathLib/header/MathCommon.h | 2 +- src/MathLib/header/lslMath.inl | 12 +- src/MathLib/header/r3dMath.h | 34 +-- src/MathLib/source/r3dMath.cpp | 62 +++--- src/NetLib/source/net/BitStream.cpp | 2 +- src/NetLib/source/net/NetService.cpp | 26 +-- src/RRR3d/RRR3d.cpp | 5 +- src/Rock3dEngine/header/graph/ContextInfo.h | 26 +-- .../header/graph/Driver/DriverTypes.h | 34 +-- src/Rock3dEngine/header/r3dGraphTypes.h | 6 +- src/Rock3dEngine/source/GraphManager.cpp | 20 +- src/Rock3dEngine/source/graph/BloomEffect.cpp | 53 ++--- src/Rock3dEngine/source/graph/HDREffect.cpp | 4 +- .../source/graph/ShadowMapRender.cpp | 8 +- src/Rock3dEngine/source/gui/GUI.cpp | 16 +- src/Rock3dGame/source/dllmain.cpp | 6 +- src/Rock3dGame/source/game/AICar.cpp | 4 +- src/Rock3dGame/source/game/AIPlayer.cpp | 16 +- src/Rock3dGame/source/game/HudMenu.cpp | 10 +- src/Rock3dGame/source/game/Menu.cpp | 18 +- src/Rock3dGame/source/game/OptionsMenu.cpp | 12 +- src/Rock3dGame/source/game/RaceMenu2.cpp | 47 ++--- src/Rock3dGame/source/game/Trace.cpp | 16 +- src/tools/rock3dExprot.ms | 194 +++++++++--------- 27 files changed, 376 insertions(+), 401 deletions(-) diff --git a/src/LexStd/header/lslSerialValue.h b/src/LexStd/header/lslSerialValue.h index 19587d31..ab29e373 100644 --- a/src/LexStd/header/lslSerialValue.h +++ b/src/LexStd/header/lslSerialValue.h @@ -29,11 +29,11 @@ template<> struct SerialValue static void Write(SWriter* writer, const char* name, const _Value& value) { - writer->WriteValue(name, reinterpret_cast(&value.x), 2); + writer->WriteValue(name, reinterpret_cast(&value.x), 2); } static SReader* Read(SReader* reader, const char* name, _Value& value) { - return reader->ReadValue(name, reinterpret_cast(&value.x), 2); + return reader->ReadValue(name, reinterpret_cast(&value.x), 2); } }; diff --git a/src/LexStd/source/EulerAngles.cpp b/src/LexStd/source/EulerAngles.cpp index 7bb0de53..c6bb42fe 100644 --- a/src/LexStd/source/EulerAngles.cpp +++ b/src/LexStd/source/EulerAngles.cpp @@ -8,112 +8,112 @@ EulerAngles Eul_(float ai, float aj, float ah, int order) { - EulerAngles ea; - ea.x = ai; ea.y = aj; ea.z = ah; - ea.w = order; - return (ea); + EulerAngles ea; + ea.x = ai; ea.y = aj; ea.z = ah; + ea.w = order; + return (ea); } /* Construct quaternion from Euler angles (in radians). */ Quat Eul_ToQuat(EulerAngles ea) { - Quat qu; - double a[3], ti, tj, th, ci, cj, ch, si, sj, sh, cc, cs, sc, ss; - int i,j,k,h,n,s,f; - EulGetOrd(ea.w,i,j,k,h,n,s,f); - if (f==EulFrmR) {float t = ea.x; ea.x = ea.z; ea.z = t;} - if (n==EulParOdd) ea.y = -ea.y; - ti = ea.x*0.5; tj = ea.y*0.5; th = ea.z*0.5; - ci = cos(ti); cj = cos(tj); ch = cos(th); - si = sin(ti); sj = sin(tj); sh = sin(th); - cc = ci*ch; cs = ci*sh; sc = si*ch; ss = si*sh; - if (s==EulRepYes) { + Quat qu; + double a[3], ti, tj, th, ci, cj, ch, si, sj, sh, cc, cs, sc, ss; + int i,j,k,h,n,s,f; + EulGetOrd(ea.w,i,j,k,h,n,s,f); + if (f==EulFrmR) {float t = ea.x; ea.x = ea.z; ea.z = t;} + if (n==EulParOdd) ea.y = -ea.y; + ti = ea.x*0.5; tj = ea.y*0.5; th = ea.z*0.5; + ci = cos(ti); cj = cos(tj); ch = cos(th); + si = sin(ti); sj = sin(tj); sh = sin(th); + cc = ci*ch; cs = ci*sh; sc = si*ch; ss = si*sh; + if (s==EulRepYes) { a[i] = cj*(cs + sc); /* Could speed up with */ a[j] = sj*(cc + ss); /* trig identities. */ a[k] = sj*(cs - sc); qu.w = cj*(cc - ss); - } else { + } else { a[i] = cj*sc - sj*cs; a[j] = cj*ss + sj*cc; a[k] = cj*cs - sj*sc; qu.w = cj*cc + sj*ss; - } - if (n==EulParOdd) a[j] = -a[j]; - qu.x = a[X]; qu.y = a[Y]; qu.z = a[Z]; - return (qu); + } + if (n==EulParOdd) a[j] = -a[j]; + qu.x = a[X]; qu.y = a[Y]; qu.z = a[Z]; + return (qu); } /* Construct matrix from Euler angles (in radians). */ void Eul_ToHMatrix(EulerAngles ea, HMatrix M) { - double ti, tj, th, ci, cj, ch, si, sj, sh, cc, cs, sc, ss; - int i,j,k,h,n,s,f; - EulGetOrd(ea.w,i,j,k,h,n,s,f); - if (f==EulFrmR) {float t = ea.x; ea.x = ea.z; ea.z = t;} - if (n==EulParOdd) {ea.x = -ea.x; ea.y = -ea.y; ea.z = -ea.z;} - ti = ea.x; tj = ea.y; th = ea.z; - ci = cos(ti); cj = cos(tj); ch = cos(th); - si = sin(ti); sj = sin(tj); sh = sin(th); - cc = ci*ch; cs = ci*sh; sc = si*ch; ss = si*sh; - if (s==EulRepYes) { - M[i][i] = cj; M[i][j] = sj*si; M[i][k] = sj*ci; + double ti, tj, th, ci, cj, ch, si, sj, sh, cc, cs, sc, ss; + int i,j,k,h,n,s,f; + EulGetOrd(ea.w,i,j,k,h,n,s,f); + if (f==EulFrmR) {float t = ea.x; ea.x = ea.z; ea.z = t;} + if (n==EulParOdd) {ea.x = -ea.x; ea.y = -ea.y; ea.z = -ea.z;} + ti = ea.x; tj = ea.y; th = ea.z; + ci = cos(ti); cj = cos(tj); ch = cos(th); + si = sin(ti); sj = sin(tj); sh = sin(th); + cc = ci*ch; cs = ci*sh; sc = si*ch; ss = si*sh; + if (s==EulRepYes) { + M[i][i] = cj; M[i][j] = sj*si; M[i][k] = sj*ci; M[j][i] = sj*sh; M[j][j] = -cj*ss+cc; M[j][k] = -cj*cs-sc; M[k][i] = -sj*ch; M[k][j] = cj*sc+cs; M[k][k] = cj*cc-ss; - } else { + } else { M[i][i] = cj*ch; M[i][j] = sj*sc-cs; M[i][k] = sj*cc+ss; M[j][i] = cj*sh; M[j][j] = sj*ss+cc; M[j][k] = sj*cs-sc; - M[k][i] = -sj; M[k][j] = cj*si; M[k][k] = cj*ci; - } - M[W][X]=M[W][Y]=M[W][Z]=M[X][W]=M[Y][W]=M[Z][W]=0.0; M[W][W]=1.0; + M[k][i] = -sj; M[k][j] = cj*si; M[k][k] = cj*ci; + } + M[W][X]=M[W][Y]=M[W][Z]=M[X][W]=M[Y][W]=M[Z][W]=0.0; M[W][W]=1.0; } /* Convert matrix to Euler angles (in radians). */ EulerAngles Eul_FromHMatrix(HMatrix M, int order) { - EulerAngles ea; - int i,j,k,h,n,s,f; - EulGetOrd(order,i,j,k,h,n,s,f); - if (s==EulRepYes) { + EulerAngles ea; + int i,j,k,h,n,s,f; + EulGetOrd(order,i,j,k,h,n,s,f); + if (s==EulRepYes) { float sy = sqrt(M[i][j]*M[i][j] + M[i][k]*M[i][k]); if (sy > 16*FLT_EPSILON) { - ea.x = atan2(M[i][j], M[i][k]); - ea.y = atan2(sy, M[i][i]); - ea.z = atan2(M[j][i], -M[k][i]); + ea.x = atan2(M[i][j], M[i][k]); + ea.y = atan2(sy, M[i][i]); + ea.z = atan2(M[j][i], -M[k][i]); } else { - ea.x = atan2(-M[j][k], M[j][j]); - ea.y = atan2(sy, M[i][i]); - ea.z = 0; + ea.x = atan2(-M[j][k], M[j][j]); + ea.y = atan2(sy, M[i][i]); + ea.z = 0; } - } else { + } else { float cy = sqrt(M[i][i]*M[i][i] + M[j][i]*M[j][i]); if (cy > 16*FLT_EPSILON) { - ea.x = atan2(M[k][j], M[k][k]); - ea.y = atan2(-M[k][i], cy); - ea.z = atan2(M[j][i], M[i][i]); + ea.x = atan2(M[k][j], M[k][k]); + ea.y = atan2(-M[k][i], cy); + ea.z = atan2(M[j][i], M[i][i]); } else { - ea.x = atan2(-M[j][k], M[j][j]); - ea.y = atan2(-M[k][i], cy); - ea.z = 0; + ea.x = atan2(-M[j][k], M[j][j]); + ea.y = atan2(-M[k][i], cy); + ea.z = 0; + } } - } - if (n==EulParOdd) {ea.x = -ea.x; ea.y = - ea.y; ea.z = -ea.z;} - if (f==EulFrmR) {float t = ea.x; ea.x = ea.z; ea.z = t;} - ea.w = order; - return (ea); + if (n==EulParOdd) {ea.x = -ea.x; ea.y = - ea.y; ea.z = -ea.z;} + if (f==EulFrmR) {float t = ea.x; ea.x = ea.z; ea.z = t;} + ea.w = order; + return (ea); } /* Convert quaternion to Euler angles (in radians). */ EulerAngles Eul_FromQuat(Quat q, int order) { - HMatrix M; - double Nq = q.x*q.x+q.y*q.y+q.z*q.z+q.w*q.w; - double s = (Nq > 0.0) ? (2.0 / Nq) : 0.0; - double xs = q.x*s, ys = q.y*s, zs = q.z*s; - double wx = q.w*xs, wy = q.w*ys, wz = q.w*zs; - double xx = q.x*xs, xy = q.x*ys, xz = q.x*zs; - double yy = q.y*ys, yz = q.y*zs, zz = q.z*zs; - M[X][X] = 1.0 - (yy + zz); M[X][Y] = xy - wz; M[X][Z] = xz + wy; - M[Y][X] = xy + wz; M[Y][Y] = 1.0 - (xx + zz); M[Y][Z] = yz - wx; - M[Z][X] = xz - wy; M[Z][Y] = yz + wx; M[Z][Z] = 1.0 - (xx + yy); - M[W][X]=M[W][Y]=M[W][Z]=M[X][W]=M[Y][W]=M[Z][W]=0.0; M[W][W]=1.0; - return (Eul_FromHMatrix(M, order)); + HMatrix M; + double Nq = q.x*q.x+q.y*q.y+q.z*q.z+q.w*q.w; + double s = (Nq > 0.0) ? (2.0 / Nq) : 0.0; + double xs = q.x*s, ys = q.y*s, zs = q.z*s; + double wx = q.w*xs, wy = q.w*ys, wz = q.w*zs; + double xx = q.x*xs, xy = q.x*ys, xz = q.x*zs; + double yy = q.y*ys, yz = q.y*zs, zz = q.z*zs; + M[X][X] = 1.0 - (yy + zz); M[X][Y] = xy - wz; M[X][Z] = xz + wy; + M[Y][X] = xy + wz; M[Y][Y] = 1.0 - (xx + zz); M[Y][Z] = yz - wx; + M[Z][X] = xz - wy; M[Z][Y] = yz + wx; M[Z][Z] = 1.0 - (xx + yy); + M[W][X]=M[W][Y]=M[W][Z]=M[X][W]=M[Y][W]=M[Z][W]=0.0; M[W][W]=1.0; + return (Eul_FromHMatrix(M, order)); } diff --git a/src/MapEditor/TraceView.cpp b/src/MapEditor/TraceView.cpp index 526049ba..58219589 100644 --- a/src/MapEditor/TraceView.cpp +++ b/src/MapEditor/TraceView.cpp @@ -78,7 +78,7 @@ class CFlatFrameWnd : public CFrameWnd { DECLARE_DYNAMIC(CFlatFrameWnd); - virtual BOOL PreCreateWindow(CREATESTRUCT& cs) + virtual BOOL PreCreateWindow(CREATESTRUCT &cs) { CFrameWnd::PreCreateWindow(cs); cs.dwExStyle &= ~WS_EX_CLIENTEDGE; diff --git a/src/MathLib/header/MathCommon.h b/src/MathLib/header/MathCommon.h index c4c39584..b1fdf6aa 100644 --- a/src/MathLib/header/MathCommon.h +++ b/src/MathLib/header/MathCommon.h @@ -7,4 +7,4 @@ #include // glm::vec4 #include // glm::mat4 #include // glm::quat -#include // glm::toMat4 +#include // glm::length2 diff --git a/src/MathLib/header/lslMath.inl b/src/MathLib/header/lslMath.inl index 1de45f14..5c3b9297 100644 --- a/src/MathLib/header/lslMath.inl +++ b/src/MathLib/header/lslMath.inl @@ -47,18 +47,18 @@ inline float NumAbsAdd(float absVal, float addVal) inline glm::mat4 Matrix4DxToGlm(const D3DXMATRIX &mat) { glm::mat4 mat4glm(mat._11, mat._21, mat._31, mat._41, - mat._12, mat._22, mat._32, mat._42, - mat._13, mat._23, mat._33, mat._43, - mat._14, mat._24, mat._34, mat._44); + mat._12, mat._22, mat._32, mat._42, + mat._13, mat._23, mat._33, mat._43, + mat._14, mat._24, mat._34, mat._44); return mat4glm; } inline D3DXMATRIX Matrix4GlmToDx(const glm::mat4 &mat) { D3DXMATRIX matrix(mat[0].x, mat[1].x, mat[2].x, mat[3].x, - mat[0].y, mat[1].y, mat[2].y, mat[3].y, - mat[0].z, mat[1].z, mat[2].z, mat[3].z, - mat[0].w, mat[1].w, mat[2].w, mat[3].w); + mat[0].y, mat[1].y, mat[2].y, mat[3].y, + mat[0].z, mat[1].z, mat[2].z, mat[3].z, + mat[0].w, mat[1].w, mat[2].w, mat[3].w); return matrix; } diff --git a/src/MathLib/header/r3dMath.h b/src/MathLib/header/r3dMath.h index b340a8ed..dce7a7a0 100644 --- a/src/MathLib/header/r3dMath.h +++ b/src/MathLib/header/r3dMath.h @@ -17,7 +17,7 @@ struct AABB2 AABB2(const glm::vec2& mMin, const glm::vec2& mMax); //static void Transform(const AABB2 &aabb, const glm::mat4 &m, AABB2 &rOut); - static void Transform(const AABB2 &aabb, const D3DXMATRIX &m, AABB2 &rOut); + static void Transform(const AABB2 &aabb, const D3DXMATRIX &m, AABB2 &rOut); static void Include(const AABB2& aabb, const glm::vec2& vec, AABB2& rOut); static void Add(const AABB2& aabb1, const AABB2& aabb2, AABB2& rOut); static void Offset(const AABB2& aabb, const glm::vec2& vec, AABB2& rOut); @@ -49,17 +49,17 @@ struct AABB static const unsigned cFrontPlane = 5; //Z //Edges are stored in this way: - // Y + // Y // Z /| // /|\ / // | /7---------/6(max) - // |/ | / / | - // | | / / | - // 4---------5 | - // | 3- - -| -2 - // | / | / - // |/ | / - // 0(min)----1/----->X + // |/ | / / | + // | | / / | + // 4---------5 | + // | 3- - -| -2 + // | / | / + // |/ | / + // 0(min)----1/----->X // typedef D3DXVECTOR3 Corners[8]; @@ -136,17 +136,17 @@ typedef int DirPlan[6]; struct BoundBox { //Edges are stored in this way: - // Y + // Y // Z /| // /|\ / // | /7---------/6(max) - // |/ | / / | - // | | / / | - // 4---------5 | - // | 3- - -| -2 - // | / | / - // |/ | / - // 0(min)----1/----->X + // |/ | / / | + // | | / / | + // 4---------5 | + // | 3- - -| -2 + // | / | / + // |/ | / + // 0(min)----1/----->X // static void Transform(const BoundBox& bb, const D3DXMATRIX& m, BoundBox& rOut); diff --git a/src/MathLib/source/r3dMath.cpp b/src/MathLib/source/r3dMath.cpp index 7a1902c8..c5bc21ba 100644 --- a/src/MathLib/source/r3dMath.cpp +++ b/src/MathLib/source/r3dMath.cpp @@ -51,7 +51,7 @@ AABB2::AABB2(const glm::vec2& mMin, const glm::vec2& mMax): min(mMin), max(mMax) //void AABB2::Transform(const AABB2 &aabb, const glm::mat4 &m, AABB2 &rOut) void AABB2::Transform(const AABB2 &aabb, const D3DXMATRIX &mIn, AABB2 &rOut) { - auto m = Matrix4DxToGlm(mIn); // remove after D3DXMATRIX replacement + auto m = Matrix4DxToGlm(mIn); // remove after D3DXMATRIX replacement glm::vec2 oldMin = aabb.min; glm::vec2 oldMax = aabb.max; rOut.min = Vec2TransformCoord(oldMin, m); @@ -66,14 +66,14 @@ void AABB2::Transform(const AABB2 &aabb, const D3DXMATRIX &mIn, AABB2 &rOut) void AABB2::Include(const AABB2& aabb, const glm::vec2& vec, AABB2& rOut) { - rOut.min = Vec2Minimize(aabb.min, vec); - rOut.max = Vec2Maximize(aabb.max, vec); + rOut.min = Vec2Minimize(aabb.min, vec); + rOut.max = Vec2Maximize(aabb.max, vec); } void AABB2::Add(const AABB2& aabb1, const AABB2& aabb2, AABB2& rOut) { - rOut.min = Vec2Minimize(aabb1.min, aabb2.min); - rOut.max = Vec2Maximize(aabb1.max, aabb2.max); + rOut.min = Vec2Minimize(aabb1.min, aabb2.min); + rOut.max = Vec2Maximize(aabb1.max, aabb2.max); } void AABB2::Offset(const AABB2& aabb, const glm::vec2& vec, AABB2& rOut) @@ -748,10 +748,10 @@ void Frustum::Refresh(const D3DXMATRIX& viewProjMat) //extract near plane pNear.a = viewProjMat._13; - pNear.b = viewProjMat._23; - pNear.c = viewProjMat._33; - pNear.d = viewProjMat._43; - D3DXPlaneNormalize(&pNear, &pNear); + pNear.b = viewProjMat._23; + pNear.c = viewProjMat._33; + pNear.d = viewProjMat._43; + D3DXPlaneNormalize(&pNear, &pNear); //extract far plane pFar.a = viewProjMat._14 - viewProjMat._13; @@ -860,34 +860,34 @@ void GetSampleOffsetsDownScale3x3(DWORD dwWidth, DWORD dwHeight, glm::vec2 avSam float tV = 1.0f / dwHeight; // Sample from the 9 surrounding points. - int index = 0; - for (int y = -1; y <= 1; ++y) - for (int x = -1; x <= 1; ++x) - { - avSampleOffsets[index].x = x * tU; - avSampleOffsets[index].y = y * tV; + int index = 0; + for (int y = -1; y <= 1; ++y) + for (int x = -1; x <= 1; ++x) + { + avSampleOffsets[index].x = x * tU; + avSampleOffsets[index].y = y * tV; - index++; - } + index++; + } } void GetSampleOffsetsDownScale4x4(DWORD dwWidth, DWORD dwHeight, glm::vec2 avSampleOffsets[16]) { float tU = 1.0f / dwWidth; - float tV = 1.0f / dwHeight; - - // Sample from 4 surrounding points. - int index = 0; - for( int y = -1; y < 3; y++ ) - { - for( int x = -1; x < 3; x++ ) - { - avSampleOffsets[index].x = (x - 0.5f) * tU; - avSampleOffsets[index].y = (y - 0.5f) * tV; - - index++; - } - } + float tV = 1.0f / dwHeight; + + // Sample from 4 surrounding points. + int index = 0; + for( int y = -1; y < 3; y++ ) + { + for( int x = -1; x < 3; x++ ) + { + avSampleOffsets[index].x = (x - 0.5f) * tU; + avSampleOffsets[index].y = (y - 0.5f) * tV; + + index++; + } + } } //} \ No newline at end of file diff --git a/src/NetLib/source/net/BitStream.cpp b/src/NetLib/source/net/BitStream.cpp index fd8364d8..9e4fa4b3 100644 --- a/src/NetLib/source/net/BitStream.cpp +++ b/src/NetLib/source/net/BitStream.cpp @@ -312,7 +312,7 @@ void BitStream::Serialize(float value[], int count, float err) void BitStream::Serialize(glm::vec2& value, float err) { - Serialize((float *)(&value), 2, err); + Serialize((float *)(&value), 2, err); } void BitStream::Serialize(D3DXVECTOR3& value, float err) diff --git a/src/NetLib/source/net/NetService.cpp b/src/NetLib/source/net/NetService.cpp index 6b706f19..e7806829 100644 --- a/src/NetLib/source/net/NetService.cpp +++ b/src/NetLib/source/net/NetService.cpp @@ -524,33 +524,33 @@ bool NetService::GetAdapterAddresses(lsl::StringVec& addrVec) const const unsigned MAX_TRIES = 3; IP_ADAPTER_ADDRESSES* addresses = NULL; - unsigned long outBufLen = WORKING_BUFFER_SIZE; + unsigned long outBufLen = WORKING_BUFFER_SIZE; unsigned dwRetVal = 0; unsigned Iterations = 0; // Allocate a 15 KB buffer to start with. - do + do { - addresses = (IP_ADAPTER_ADDRESSES *)malloc(outBufLen); + addresses = (IP_ADAPTER_ADDRESSES *)malloc(outBufLen); - if (addresses == NULL) { + if (addresses == NULL) { LSL_LOG("Memory allocation failed for IP_ADAPTER_ADDRESSES struct"); return false; - } + } - dwRetVal = GetAdaptersAddresses(AF_INET, GAA_FLAG_SKIP_ANYCAST | GAA_FLAG_SKIP_MULTICAST, NULL, addresses, &outBufLen); + dwRetVal = GetAdaptersAddresses(AF_INET, GAA_FLAG_SKIP_ANYCAST | GAA_FLAG_SKIP_MULTICAST, NULL, addresses, &outBufLen); - if (dwRetVal == ERROR_BUFFER_OVERFLOW) + if (dwRetVal == ERROR_BUFFER_OVERFLOW) { - free(addresses); - addresses = NULL; - } + free(addresses); + addresses = NULL; + } else - break; + break; - Iterations++; + Iterations++; - } + } while ((dwRetVal == ERROR_BUFFER_OVERFLOW) && (Iterations < MAX_TRIES)); if (addresses == NULL) diff --git a/src/RRR3d/RRR3d.cpp b/src/RRR3d/RRR3d.cpp index 2cc49732..3fb7c6ea 100644 --- a/src/RRR3d/RRR3d.cpp +++ b/src/RRR3d/RRR3d.cpp @@ -214,10 +214,7 @@ void ErrMessage(const std::string& message) -int APIENTRY _tWinMain(HINSTANCE hInstance, - HINSTANCE hPrevInstance, - LPTSTR lpCmdLine, - int nCmdShow) +int APIENTRY _tWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdLine, int nCmdShow) { #ifdef DEBUG_MEMORY _CrtMemState _ms; diff --git a/src/Rock3dEngine/header/graph/ContextInfo.h b/src/Rock3dEngine/header/graph/ContextInfo.h index 7c2c7387..46c4603a 100644 --- a/src/Rock3dEngine/header/graph/ContextInfo.h +++ b/src/Rock3dEngine/header/graph/ContextInfo.h @@ -142,10 +142,10 @@ class RenderBuffer: public virtual lsl::Object struct MaterialDesc { D3DXCOLOR diffuse; - D3DXCOLOR ambient; - D3DXCOLOR specular; - D3DXCOLOR emissive; - float power; + D3DXCOLOR ambient; + D3DXCOLOR specular; + D3DXCOLOR emissive; + float power; }; enum CameraStyle @@ -201,22 +201,22 @@ struct LightDesc D3DLIGHTTYPE type; D3DXCOLOR ambient; - D3DXCOLOR diffuse; - D3DXCOLOR specular; + D3DXCOLOR diffuse; + D3DXCOLOR specular; //Соотношение сторон фрустума отдельного направления точечного, направленного источника света. Для конусного игнорируется. float aspect; float nearDist; float range; - float falloff; - float attenuation0; - float attenuation1; - float attenuation2; - float theta; - float phi; + float falloff; + float attenuation0; + float attenuation1; + float attenuation2; + float theta; + float phi; D3DXVECTOR3 pos; - D3DXVECTOR3 dir; + D3DXVECTOR3 dir; D3DXVECTOR3 up; //Карта теней в пространстве текущей камеры diff --git a/src/Rock3dEngine/header/graph/Driver/DriverTypes.h b/src/Rock3dEngine/header/graph/Driver/DriverTypes.h index de4299cb..ca1621bf 100644 --- a/src/Rock3dEngine/header/graph/Driver/DriverTypes.h +++ b/src/Rock3dEngine/header/graph/Driver/DriverTypes.h @@ -27,23 +27,23 @@ enum TransformStateType {tstWorld, tstView, tstProj, tstTexture0, tstTexture1, t struct PresentParameters { UINT BackBufferWidth; - UINT BackBufferHeight; - D3DFORMAT BackBufferFormat; - UINT BackBufferCount; - - D3DMULTISAMPLE_TYPE MultiSampleType; - DWORD MultiSampleQuality; - - D3DSWAPEFFECT SwapEffect; - HWND hDeviceWindow; - BOOL Windowed; - BOOL EnableAutoDepthStencil; - D3DFORMAT AutoDepthStencilFormat; - DWORD Flags; - - /* FullScreen_RefreshRateInHz must be zero for Windowed mode */ - UINT FullScreen_RefreshRateInHz; - UINT PresentationInterval; + UINT BackBufferHeight; + D3DFORMAT BackBufferFormat; + UINT BackBufferCount; + + D3DMULTISAMPLE_TYPE MultiSampleType; + DWORD MultiSampleQuality; + + D3DSWAPEFFECT SwapEffect; + HWND hDeviceWindow; + BOOL Windowed; + BOOL EnableAutoDepthStencil; + D3DFORMAT AutoDepthStencilFormat; + DWORD Flags; + + /* FullScreen_RefreshRateInHz must be zero for Windowed mode */ + UINT FullScreen_RefreshRateInHz; + UINT PresentationInterval; }; struct DisplayMode diff --git a/src/Rock3dEngine/header/r3dGraphTypes.h b/src/Rock3dEngine/header/r3dGraphTypes.h index df263e88..dfee1eab 100644 --- a/src/Rock3dEngine/header/r3dGraphTypes.h +++ b/src/Rock3dEngine/header/r3dGraphTypes.h @@ -8,9 +8,9 @@ namespace r3d { const VertexPNT PlanePNT[4] = {VertexPNT(D3DXVECTOR3(-0.5f, -0.5f, 0.0f), ZVector, glm::vec2(0.0f, 0.0f)), - VertexPNT(D3DXVECTOR3(0.5f, -0.5f, 0.0f), ZVector, glm::vec2(1.0f, 0.0f)), - VertexPNT(D3DXVECTOR3(0.5f, 0.5f, 0.0f), ZVector, glm::vec2(1.0f, 1.0f)), - VertexPNT(D3DXVECTOR3(-0.5f, 0.5f, 0.0f), ZVector, glm::vec2(0.0f, 1.0f))}; + VertexPNT(D3DXVECTOR3(0.5f, -0.5f, 0.0f), ZVector, glm::vec2(1.0f, 0.0f)), + VertexPNT(D3DXVECTOR3(0.5f, 0.5f, 0.0f), ZVector, glm::vec2(1.0f, 1.0f)), + VertexPNT(D3DXVECTOR3(-0.5f, 0.5f, 0.0f), ZVector, glm::vec2(0.0f, 1.0f))}; } diff --git a/src/Rock3dEngine/source/GraphManager.cpp b/src/Rock3dEngine/source/GraphManager.cpp index de017cfe..7ab09692 100644 --- a/src/Rock3dEngine/source/GraphManager.cpp +++ b/src/Rock3dEngine/source/GraphManager.cpp @@ -522,8 +522,8 @@ void GraphManager::UpdateWaterPlane() _waterPlaneActor->SetPos(_groundAABB.GetCenter()); _waterPlaneActor->SetScale(scale); //_waterNode->SetSize(glm::vec2(_groundAABB.GetSizes()) / scale); - _waterNode->SetSize(glm::vec2(_groundAABB.GetSizes().x, _groundAABB.GetSizes().y) / - scale); // remove after D3DXVECTOR3 replacement + _waterNode->SetSize(glm::vec2(_groundAABB.GetSizes().x, _groundAABB.GetSizes().y) / + scale); // remove after D3DXVECTOR3 replacement } if (_waterPlane) @@ -532,7 +532,7 @@ void GraphManager::UpdateWaterPlane() _waterPlane->SetScale(scale); //_waterPlane->SetSize(glm::vec2(_groundAABB.GetSizes()) / scale); _waterPlane->SetSize(glm::vec2(_groundAABB.GetSizes().x, _groundAABB.GetSizes().y) / - scale); // remove after D3DXVECTOR3 replacement + scale); // remove after D3DXVECTOR3 replacement } } @@ -617,8 +617,8 @@ void GraphManager::UpdateGrassPlane() D3DXVECTOR3 pos = _groundAABB.GetCenter(); pos.x = 0; //glm::vec2 size = glm::vec2(_groundAABB.GetSizes()); - glm::vec2 size = - glm::vec2(_groundAABB.GetSizes().x, _groundAABB.GetSizes().y); // remove after D3DXVECTOR3 replacement + glm::vec2 size = + glm::vec2(_groundAABB.GetSizes().x, _groundAABB.GetSizes().y); // remove after D3DXVECTOR3 replacement if (_grassPlane) { @@ -1279,8 +1279,8 @@ void GraphManager::UpdateFogPlane() _fogPlane->SetPos(pos); _fogPlane->SetScale(D3DXVECTOR3(_tileScale.x, _tileScale.y, 1.0f)); //_fogPlane->SetSize(glm::vec2(_groundAABB.GetSizes()) / _tileScale); - _fogPlane->SetSize(glm::vec2(_groundAABB.GetSizes().x, _groundAABB.GetSizes().y) / - _tileScale); // remove after D3DXVECTOR3 replacement + _fogPlane->SetSize(glm::vec2(_groundAABB.GetSizes().x, _groundAABB.GetSizes().y) / + _tileScale); // remove after D3DXVECTOR3 replacement } if (_fogPlaneActor) @@ -1289,9 +1289,9 @@ void GraphManager::UpdateFogPlane() _fogPlaneActor->SetScale(D3DXVECTOR3(_tileScale.x, _tileScale.y, 1)); //static_cast(_fogPlaneActor->GetNodes().front()).SetSize(glm::vec2(_groundAABB.GetSizes()) / _tileScale); - static_cast(_fogPlaneActor->GetNodes().front()) - .SetSize(glm::vec2(_groundAABB.GetSizes().x, _groundAABB.GetSizes().y) / - _tileScale); // remove after D3DXVECTOR3 replacement + static_cast(_fogPlaneActor->GetNodes().front()) + .SetSize(glm::vec2(_groundAABB.GetSizes().x, _groundAABB.GetSizes().y) / + _tileScale); // remove after D3DXVECTOR3 replacement } } diff --git a/src/Rock3dEngine/source/graph/BloomEffect.cpp b/src/Rock3dEngine/source/graph/BloomEffect.cpp index 7ee16af6..8d750612 100644 --- a/src/Rock3dEngine/source/graph/BloomEffect.cpp +++ b/src/Rock3dEngine/source/graph/BloomEffect.cpp @@ -11,28 +11,28 @@ namespace graph void GetSamplesDownScale4x4(DWORD dwWidth, DWORD dwHeight, glm::vec2 avSampleOffsets[16]) { float tU = 1.0f / dwWidth; - float tV = 1.0f / dwHeight; - - // Sample from 4 surrounding points. - int index = 0; - for( int y = -1; y < 3; y++ ) - { - for( int x = -1; x < 3; x++ ) - { - avSampleOffsets[index].x = (x - 0.5f) * tU; - avSampleOffsets[index].y = (y - 0.5f) * tV; - - index++; - } - } + float tV = 1.0f / dwHeight; + + // Sample from 4 surrounding points. + int index = 0; + for( int y = -1; y < 3; y++ ) + { + for( int x = -1; x < 3; x++ ) + { + avSampleOffsets[index].x = (x - 0.5f) * tU; + avSampleOffsets[index].y = (y - 0.5f) * tV; + + index++; + } + } } inline float GaussianDistribution( float x, float y, float rho ) { - float g = 1.0f / sqrtf( 2.0f * D3DX_PI * rho * rho ); - g *= expf( -( x * x + y * y ) / ( 2 * rho * rho ) ); + float g = 1.0f / sqrtf( 2.0f * D3DX_PI * rho * rho ); + g *= expf( -( x * x + y * y ) / ( 2 * rho * rho ) ); - return g; + return g; } void CompGaussianHorizVertBlur(glm::vec2 texSize, glm::vec2 texOffsets[16], glm::vec2 colorWeights[16], float fDeviation, float fMultiplier) @@ -54,22 +54,13 @@ void CompGaussianHorizVertBlur(glm::vec2 texSize, glm::vec2 texOffsets[16], glm: } //Copy to the left side - for (int i = 8; i < 15; ++i) - { + for (int i = 8; i < 15; ++i) + { texOffsets[i] = -texOffsets[i - 7]; colorWeights[i] = colorWeights[i - 7]; } } - - - - - - - - - BloomRender::BloomRender(): _colorTex(0) { _bloomTex.SetDynamic(true); @@ -106,9 +97,6 @@ void BloomRender::Render(Engine& engine) _bloomTex.SyncFrom(GetRT()); _bloomTex.Init(engine); - - - //Bright pass GetSamplesDownScale4x4(GetRT()->GetData()->GetWidth(), GetRT()->GetData()->GetHeight(), samplerOffsets4x4); @@ -121,9 +109,6 @@ void BloomRender::Render(Engine& engine) shader.UnApply(engine); UnApplyRT(engine); - - - //Blur pass glm::vec2 offsets4x4[16]; glm::vec2 weights4x4[16]; diff --git a/src/Rock3dEngine/source/graph/HDREffect.cpp b/src/Rock3dEngine/source/graph/HDREffect.cpp index 78852231..65c44320 100644 --- a/src/Rock3dEngine/source/graph/HDREffect.cpp +++ b/src/Rock3dEngine/source/graph/HDREffect.cpp @@ -66,7 +66,7 @@ void HDRRender::MeasureLuminance(Engine& engine) pSurfDest->Release(); for( int i = cToneMapTexNum - 1; i > 0; i--) - { + { GetSampleOffsetsDownScale4x4(_toneVec[i - 1]->GetData()->GetWidth(), _toneVec[i - 1]->GetData()->GetHeight(), sampleOffsets4x4); //Если i == 1 окончательный вариант прохода в текстуру 1х1 shader.SetTextureDir("lumTex", _toneVec[i]); @@ -84,7 +84,7 @@ void HDRRender::MeasureLuminance(Engine& engine) shader.UnApply(engine); pSurfDest->Release(); - } + } } void HDRRender::AdaptationLuminance(Engine& engine) diff --git a/src/Rock3dEngine/source/graph/ShadowMapRender.cpp b/src/Rock3dEngine/source/graph/ShadowMapRender.cpp index 1d838915..a5d07a7c 100644 --- a/src/Rock3dEngine/source/graph/ShadowMapRender.cpp +++ b/src/Rock3dEngine/source/graph/ShadowMapRender.cpp @@ -144,10 +144,10 @@ void ShadowMapRender::ComputeCropMatrix(unsigned numSplit, const LightCI& light, float fOffsetY = -0.5f * (fMaxY + fMinY) * fScaleY; float fOffsetZ = -fMinZ * fScaleZ; - D3DXMATRIX mCropView(fScaleX, 0.0f, 0.0f, 0.0f, - 0.0f, fScaleY, 0.0f, 0.0f, - 0.0f, 0.0f, fScaleZ, 0.0f, - fOffsetX, fOffsetY, fOffsetZ, 1.0f); + D3DXMATRIX mCropView(fScaleX, 0.0f, 0.0f, 0.0f, + 0.0f, fScaleY, 0.0f, 0.0f, + 0.0f, 0.0f, fScaleZ, 0.0f, + fOffsetX, fOffsetY, fOffsetZ, 1.0f); // multiply the projection matrix with it //Итоговое значение глубины в z буффере будет линейным, в диапазоне от 0 до 1 (near; far), которое можно вычислить как: diff --git a/src/Rock3dEngine/source/gui/GUI.cpp b/src/Rock3dEngine/source/gui/GUI.cpp index 0f3b6644..da43914a 100644 --- a/src/Rock3dEngine/source/gui/GUI.cpp +++ b/src/Rock3dEngine/source/gui/GUI.cpp @@ -886,8 +886,8 @@ template void Context::DrawBaseText(_Text& text, AABB2* aabb) else { //pos += glm::vec2(MatGetPos(GetCI().GetWorldMat())); - pos += glm::vec2(MatGetPos(GetCI().GetWorldMat()).x, - MatGetPos(GetCI().GetWorldMat()).y); // remove after D3DXVECTOR3 replacement + pos += glm::vec2(MatGetPos(GetCI().GetWorldMat()).x, + MatGetPos(GetCI().GetWorldMat()).y); // remove after D3DXVECTOR3 replacement //Оси y не совпадают if (_invertY) pos.y = GetVPSize().y - (pos.y + text.GetVScroll()); @@ -896,7 +896,7 @@ template void Context::DrawBaseText(_Text& text, AABB2* aabb) } glm::vec2 size = text.GetSize(); - size = size / 2.0f; + size = size / 2.0f; Point left(Floor(pos.x - size.x - 0.5f), Floor(pos.y - size.y - 0.5f)); Point right(Ceil(pos.x + size.x + 0.5f), Ceil(pos.y + size.y + 0.5f)); Rect rect(left.x, left.y, right.x, right.y); @@ -1323,7 +1323,7 @@ void Widget::BuildLocalAABB() const glm::vec2 center = GetAlignPos(); glm::vec2 size = GetSize(); - _localAABB = AABB2(center - size / 2.0f, center + size / 2.0f); + _localAABB = AABB2(center - size / 2.0f, center + size / 2.0f); } } @@ -1718,7 +1718,7 @@ void Widget::DeleteAllGraphics() glm::vec2 Widget::LocalToWorldCoord(const glm::vec2& value) const { - return Vec2TransformCoord(value, Matrix4DxToGlm(GetWorldMat())); + return Vec2TransformCoord(value, Matrix4DxToGlm(GetWorldMat())); } glm::vec2 Widget::WorldToLocalCoord(const glm::vec2& value) const @@ -2095,7 +2095,7 @@ void Widget::SetPos3d(const D3DXVECTOR3& value) glm::vec2 Widget::GetWorldPos() const { //return glm::vec2(GetWorldMat().m[3]); // TTEST: m[3] - matrix replacement - return glm::vec2(GetWorldMat()._41, GetWorldMat()._42); // remove after D3DXMATRIX replacement + return glm::vec2(GetWorldMat()._41, GetWorldMat()._42); // remove after D3DXMATRIX replacement } void Widget::SetWorldPos(const glm::vec2& value) @@ -3873,8 +3873,8 @@ void ScrollBox::SetScroll(const glm::vec2& value) //корректируем чтобы максимальной прокруткой был размер страницы glm::vec2 clampSize(boxSize.x, std::max(boxSize.y - _clip->GetSize().y, 0.0f)); glm::vec2 scroll = value; - scroll = Vec2Maximize(scroll, NullVec2); - scroll = Vec2Minimize(scroll, clampSize); + scroll = Vec2Maximize(scroll, NullVec2); + scroll = Vec2Minimize(scroll, clampSize); glm::vec2 pos = scroll + _box->GetChildAABB().max - _box->GetSize()/2.0f; if (_box->GetSize().x > boxSize.x) diff --git a/src/Rock3dGame/source/dllmain.cpp b/src/Rock3dGame/source/dllmain.cpp index 69b58914..d7c65b43 100644 --- a/src/Rock3dGame/source/dllmain.cpp +++ b/src/Rock3dGame/source/dllmain.cpp @@ -1,10 +1,7 @@ // dllmain.cpp : Defines the entry point for the DLL application. #include "stdafx.h" -BOOL APIENTRY DllMain( HMODULE hModule, - DWORD ul_reason_for_call, - LPVOID lpReserved - ) +BOOL APIENTRY DllMain(HMODULE hModule, DWORD ul_reason_for_call, LPVOID lpReserved) { switch (ul_reason_for_call) { @@ -16,4 +13,3 @@ BOOL APIENTRY DllMain( HMODULE hModule, } return TRUE; } - diff --git a/src/Rock3dGame/source/game/AICar.cpp b/src/Rock3dGame/source/game/AICar.cpp index c5da569c..3962fc74 100644 --- a/src/Rock3dGame/source/game/AICar.cpp +++ b/src/Rock3dGame/source/game/AICar.cpp @@ -204,7 +204,7 @@ void AICar::PathState::ComputeMovDir(AICar* owner, float deltaTime, const Player target += movNode->GetTile().ComputeTrackNormOff(target, newTrack); moveDir = target - car.pos; - moveDir = glm::normalize(moveDir); + moveDir = glm::normalize(moveDir); } } @@ -433,7 +433,7 @@ void AICar::AttackState::PlaceMine(AICar* owner, const CarState& car, const Path if (summPart > 0.0f && summPart < 1.0f) { //Цель сзади, +30% мин - if (backTarget && glm::length(backTarget->GetCar().pos - car.pos) < 30.0f) + if (backTarget && glm::length(backTarget->GetCar().pos - car.pos) < 30.0f) summPart += 0.3f; summPart = ClampValue(summPart + placeMineRandom, 0.0f, 1.0f); } diff --git a/src/Rock3dGame/source/game/AIPlayer.cpp b/src/Rock3dGame/source/game/AIPlayer.cpp index ef6ba595..7b81f214 100644 --- a/src/Rock3dGame/source/game/AIPlayer.cpp +++ b/src/Rock3dGame/source/game/AIPlayer.cpp @@ -373,14 +373,14 @@ AIDebug::~AIDebug() AIDebug::GrActor::GrActor(AIDebug* debug): _debug(debug) { HDC hDC; - //HFONT hFont; - int nHeight; - int nPointSize = 9; - //char strFontName[] = "Arial"; - hDC = GetDC(NULL); - nHeight = -( MulDiv( nPointSize, GetDeviceCaps(hDC, LOGPIXELSY), 72 ) ); - ReleaseDC( NULL, hDC ); - // Create a font for statistics and help output + //HFONT hFont; + int nHeight; + int nPointSize = 9; + //char strFontName[] = "Arial"; + hDC = GetDC(NULL); + nHeight = -( MulDiv( nPointSize, GetDeviceCaps(hDC, LOGPIXELSY), 72 ) ); + ReleaseDC( NULL, hDC ); + // Create a font for statistics and help output HRESULT hr = D3DXCreateFont(_debug->GetWorld()->GetGraph()->GetEngine().GetDriver().GetDevice(), nHeight, 0, FW_BOLD, 0, FALSE, DEFAULT_CHARSET, OUT_DEFAULT_PRECIS, DEFAULT_QUALITY, DEFAULT_PITCH | FF_DONTCARE, TEXT("Arial"), &_font); } diff --git a/src/Rock3dGame/source/game/HudMenu.cpp b/src/Rock3dGame/source/game/HudMenu.cpp index a2c9dca5..e281ddf3 100644 --- a/src/Rock3dGame/source/game/HudMenu.cpp +++ b/src/Rock3dGame/source/game/HudMenu.cpp @@ -439,7 +439,7 @@ void PlayerStateFrame::ProccessCarLifeBar(float deltaTime) D3DXVECTOR4 projVec; D3DXVec3Transform(&projVec, &pos, &menu()->GetGUI()->GetCamera3d()->GetContextInfo().GetViewProj()); //glm::vec2 vec = projVec / projVec.w; - glm::vec2 vec = glm::vec2((projVec / projVec.w).x, (projVec / projVec.w).y); // remove after D3DXVECTOR3 replacement + glm::vec2 vec = glm::vec2((projVec / projVec.w).x, (projVec / projVec.w).y); // remove after D3DXVECTOR3 replacement if (projVec.z < 0) { @@ -689,8 +689,8 @@ void PlayerStateFrame::UpdateState(float deltaTime) D3DXVECTOR4 projVec; D3DXVec3Transform(&projVec, &pos, &menu()->GetGUI()->GetCamera3d()->GetContextInfo().GetViewProj()); //glm::vec2 vec = projVec / projVec.w; - glm::vec2 vec = - glm::vec2((projVec / projVec.w).x, (projVec / projVec.w).y); // remove after D3DXVECTOR3 replacement + glm::vec2 vec = + glm::vec2((projVec / projVec.w).x, (projVec / projVec.w).y); // remove after D3DXVECTOR3 replacement if (projVec.z < 0) { @@ -920,13 +920,13 @@ void MiniMapFrame::ComputeNode(Nodes::iterator sIter, Nodes::iterator eIter, Nod iter->dir = nextIter->pos - iter->pos; else iter->dir = iter->pos - prevIter->pos; - iter->dir = glm::normalize(iter->dir); + iter->dir = glm::normalize(iter->dir); //вычисляем prevDir if (prevIter != eIter) iter->prevDir = iter->pos - prevIter->pos; else iter->prevDir = iter->dir; - iter->prevDir = glm::normalize(iter->prevDir); + iter->prevDir = glm::normalize(iter->prevDir); //вычисляем midDir iter->midDir = glm::normalize(iter->prevDir + iter->dir); //вычисляем midNorm diff --git a/src/Rock3dGame/source/game/Menu.cpp b/src/Rock3dGame/source/game/Menu.cpp index 64823df5..ae140b88 100644 --- a/src/Rock3dGame/source/game/Menu.cpp +++ b/src/Rock3dGame/source/game/Menu.cpp @@ -1040,8 +1040,8 @@ void Menu::ShowMessage(const std::string& title, const std::string& message, con void Menu::ShowMessageLoading() { - ShowMessage(GetString(svWarning), GetString(svHintPleaseWait), GetString(svOk), GetGUI()->GetVPSize() / 2.0f, - gui::Widget::waCenter, 0.0f, NULL, false); + ShowMessage(GetString(svWarning), GetString(svHintPleaseWait), GetString(svOk), GetGUI()->GetVPSize() / 2.0f, + gui::Widget::waCenter, 0.0f, NULL, false); } void Menu::HideMessage() @@ -1074,20 +1074,20 @@ void Menu::HideMusicInfo() void Menu::ShowDiscreteVideoCardMessage() { - ShowAccept(GetString("svDiscreteVideoDetection"), GetString("svActivate"), GetString("svIgnore"), - GetGUI()->GetVPSize() / 2.0f, gui::Widget::waCenter, _syncModeEvent, NULL, true, true); + ShowAccept(GetString("svDiscreteVideoDetection"), GetString("svActivate"), GetString("svIgnore"), + GetGUI()->GetVPSize() / 2.0f, gui::Widget::waCenter, _syncModeEvent, NULL, true, true); } void Menu::ShowSteamErrorMessage() { - ShowMessage(GetString("svWarning"), GetString("svSteamErrorMessage"), GetString("svOk"), - GetGUI()->GetVPSize() / 2.0f, gui::Widget::waCenter, 0.0f, _steamErrorEvent, true); + ShowMessage(GetString("svWarning"), GetString("svSteamErrorMessage"), GetString("svOk"), + GetGUI()->GetVPSize() / 2.0f, gui::Widget::waCenter, 0.0f, _steamErrorEvent, true); } void Menu::ShowSteamSavingMessage() { - ShowAccept(GetString("svSteamSavingMessage"), GetString("svExit"), GetString("svCancel"), - GetGUI()->GetVPSize() / 2.0f, gui::Widget::waCenter, _steamSavingEvent, NULL, true, true); + ShowAccept(GetString("svSteamSavingMessage"), GetString("svExit"), GetString("svCancel"), + GetGUI()->GetVPSize() / 2.0f, gui::Widget::waCenter, _steamSavingEvent, NULL, true, true); } void Menu::ShowChat(bool show) @@ -2069,7 +2069,7 @@ void Menu::OnProgress(float deltaTime) float offset = ClampValue((_musicTime - 0.0f)/cMusicDelay, 0.0f, 1.0f) - ClampValue((_musicTime - cMusicDelay - cMusicLife)/cMusicDelay, 0.0f, 1.0f); glm::vec2 size = _musicDlg->size(); glm::vec2 vpSize = GetGUI()->GetVPSize(); - glm::vec2 pos = glm::vec2(-5.0f + (40.0f + size.x) * offset, vpSize.y - 30.0f) - size / 2.0f; + glm::vec2 pos = glm::vec2(-5.0f + (40.0f + size.x) * offset, vpSize.y - 30.0f) - size / 2.0f; _musicDlg->root()->SetPos(pos); diff --git a/src/Rock3dGame/source/game/OptionsMenu.cpp b/src/Rock3dGame/source/game/OptionsMenu.cpp index 55e14497..36a158d3 100644 --- a/src/Rock3dGame/source/game/OptionsMenu.cpp +++ b/src/Rock3dGame/source/game/OptionsMenu.cpp @@ -1069,8 +1069,8 @@ bool OptionsMenu::OnClick(gui::Widget* sender, const gui::MouseClick& mClick) } else if (needReload) { - _menu->ShowMessage(_menu->GetString(svWarning), _menu->GetString(svHintNeedReload), _menu->GetString(svOk), - _menu->GetGUI()->GetVPSize() / 2.0f, gui::Widget::waCenter, 0.0f, this); + _menu->ShowMessage(_menu->GetString(svWarning), _menu->GetString(svHintNeedReload), _menu->GetString(svOk), + _menu->GetGUI()->GetVPSize() / 2.0f, gui::Widget::waCenter, 0.0f, this); } else _menu->ShowOptions(false); @@ -1589,13 +1589,13 @@ bool StartOptionsMenu::OnClick(gui::Widget* sender, const gui::MouseClick& mClic message = menu()->GetString("svSyncFrameWarningNeedReload"); else message = menu()->GetString("svSyncFrameWarning"); - menu()->ShowMessage(menu()->GetString(svWarning), message, menu()->GetString(svOk), - menu()->GetGUI()->GetVPSize() / 2.0f, gui::Widget::waCenter, 0.0f, this); + menu()->ShowMessage(menu()->GetString(svWarning), message, menu()->GetString(svOk), + menu()->GetGUI()->GetVPSize() / 2.0f, gui::Widget::waCenter, 0.0f, this); } else if (needReload) { - menu()->ShowMessage(menu()->GetString(svWarning), GetString(svHintNeedReload), GetString(svOk), - menu()->GetGUI()->GetVPSize() / 2.0f, gui::Widget::waCenter, 0.0f, this); + menu()->ShowMessage(menu()->GetString(svWarning), GetString(svHintNeedReload), GetString(svOk), + menu()->GetGUI()->GetVPSize() / 2.0f, gui::Widget::waCenter, 0.0f, this); } else { diff --git a/src/Rock3dGame/source/game/RaceMenu2.cpp b/src/Rock3dGame/source/game/RaceMenu2.cpp index 7b334248..5cdda8f8 100644 --- a/src/Rock3dGame/source/game/RaceMenu2.cpp +++ b/src/Rock3dGame/source/game/RaceMenu2.cpp @@ -725,22 +725,22 @@ void GarageFrame::SelectColor(const D3DXCOLOR& value) void GarageFrame::ShowMessage(StringValue message, gui::Widget* sender, const glm::vec2& slotSize) { - glm::vec2 cellOffs = slotSize / 4.0f; + glm::vec2 cellOffs = slotSize / 4.0f; cellOffs.y = -cellOffs.y; //menu()->ShowMessage(GetString(svWarning), GetString(message), GetString(svOk), sender->GetWorldPos() + cellOffs, gui::Widget::waLeftBottom, 0.0f); - menu()->ShowMessage(GetString(svWarning), GetString(message), GetString(svOk), uiRoot()->GetVPSize() / 2.0f, - gui::Widget::waCenter, 0.0f); + menu()->ShowMessage(GetString(svWarning), GetString(message), GetString(svOk), uiRoot()->GetVPSize() / 2.0f, + gui::Widget::waCenter, 0.0f); } void GarageFrame::ShowAccept(const std::string& message, gui::Widget* sender, const glm::vec2& slotSize) { - glm::vec2 cellOffs = slotSize / 4.0f; + glm::vec2 cellOffs = slotSize / 4.0f; cellOffs.y = -cellOffs.y; //menu()->ShowAccept(message, GetString(svYes), GetString(svNo), sender->GetWorldPos() + cellOffs, gui::Widget::waLeftBottom, this); - menu()->ShowAccept(message, GetString(svYes), GetString(svNo), uiRoot()->GetVPSize() / 2.0f, gui::Widget::waCenter, - this); + menu()->ShowAccept(message, GetString(svYes), GetString(svNo), uiRoot()->GetVPSize() / 2.0f, gui::Widget::waCenter, + this); } void GarageFrame::OnShow(bool value) @@ -2323,8 +2323,8 @@ void GamersFrame::OnProcessNetEvent(unsigned id, NetEventData* data) if (data->failed) { - menu()->ShowMessage(GetString(svWarning), GetString(svHintSetGamerFailed), GetString(svOk), - uiRoot()->GetVPSize() / 2.0f, gui::Widget::waCenter, 0.0f); + menu()->ShowMessage(GetString(svWarning), GetString(svHintSetGamerFailed), GetString(svOk), + uiRoot()->GetVPSize() / 2.0f, gui::Widget::waCenter, 0.0f); } else _raceMenu->SetState(RaceMenu::msGarage); @@ -2333,9 +2333,6 @@ void GamersFrame::OnProcessNetEvent(unsigned id, NetEventData* data) } } - - - AngarFrame::AngarFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent): MenuFrame(menu, parent), _raceMenu(raceMenu), _planetIndex(-1), _planetPrevIndex(-1), _doorTime(-1.0f) { const D3DXCOLOR color = D3DXCOLOR(0xff76cef2); @@ -2510,7 +2507,7 @@ void AngarFrame::SetDoorPos(PlanetBox& planet, float alpha) void AngarFrame::ShowMessage(StringValue message, gui::Widget* sender, const glm::vec2& slotSize) { - glm::vec2 cellOffs = slotSize / 2.0f; + glm::vec2 cellOffs = slotSize / 2.0f; cellOffs.y = -cellOffs.y; cellOffs.x = 0; @@ -2519,13 +2516,13 @@ void AngarFrame::ShowMessage(StringValue message, gui::Widget* sender, const glm void AngarFrame::ShowAccept(const std::string& message, gui::Widget* sender, const glm::vec2& slotSize, lsl::Object* data) { - glm::vec2 cellOffs = slotSize / 2.0f; + glm::vec2 cellOffs = slotSize / 2.0f; cellOffs.y = -cellOffs.y; cellOffs.x = 0; menu()->ShowAccept(message, GetString(svYes), GetString(svNo), - (sender ? sender->GetWorldPos() : uiRoot()->GetVPSize() / 2.0f) + cellOffs, - gui::Widget::waBottom, this, data); + (sender ? sender->GetWorldPos() : uiRoot()->GetVPSize() / 2.0f) + cellOffs, + gui::Widget::waBottom, this, data); } void AngarFrame::OnShow(bool value) @@ -3030,14 +3027,14 @@ void AchievmentFrame::UpdateSelection(gui::Widget* sender, bool select) void AchievmentFrame::ShowMessage(StringValue message, gui::Widget* sender) { - menu()->ShowMessage(GetString(svWarning), GetString(message), GetString(svOk), uiRoot()->GetVPSize() / 2.0f, - gui::Widget::waCenter, 0.0f); + menu()->ShowMessage(GetString(svWarning), GetString(message), GetString(svOk), uiRoot()->GetVPSize() / 2.0f, + gui::Widget::waCenter, 0.0f); } void AchievmentFrame::ShowAccept(const std::string& message, gui::Widget* sender, Achievment* achievment) { - menu()->ShowAccept(message, GetString(svYes), GetString(svNo), uiRoot()->GetVPSize() / 2.0f, gui::Widget::waCenter, - this, achievment); + menu()->ShowAccept(message, GetString(svYes), GetString(svNo), uiRoot()->GetVPSize() / 2.0f, gui::Widget::waCenter, + this, achievment); } void AchievmentFrame::OnShow(bool value) @@ -3572,14 +3569,14 @@ bool RaceMainFrame::OnClick(gui::Widget* sender, const gui::MouseClick& mClick) if (net()->AllPlayersReady() && net()->netOpponents().size() > 0) { if (net()->race()->GetLeaverList().size() > 0) - menu()->ShowAccept(GetString(svHintLeaversWillBeRemoved), GetString(svYes), GetString(svNo), - uiRoot()->GetVPSize() / 2.0f, gui::Widget::waCenter, this); + menu()->ShowAccept(GetString(svHintLeaversWillBeRemoved), GetString(svYes), GetString(svNo), + uiRoot()->GetVPSize() / 2.0f, gui::Widget::waCenter, this); else menu()->StartRace(); } else - menu()->ShowMessage(GetString(svWarning), GetString(svHintPlayersIsNotReady), GetString(svOk), - uiRoot()->GetVPSize() / 2.0f, gui::Widget::waCenter, 0.0f); + menu()->ShowMessage(GetString(svWarning), GetString(svHintPlayersIsNotReady), GetString(svOk), + uiRoot()->GetVPSize() / 2.0f, gui::Widget::waCenter, 0.0f); } else RaceRady(!net()->player()->IsRaceReady()); @@ -3781,8 +3778,8 @@ void RaceMenu::OnProcessNetEvent(unsigned id, NetEventData* data) if (id == cNetPlayerSetColor && data->failed) { _carFrame->SetCarColor(_menu->GetPlayer()->GetColor()); - _menu->ShowMessage(_menu->GetString(svWarning), _menu->GetString(svHintSetColorFailed), _menu->GetString(svOk), - _menu->GetGUI()->GetVPSize() / 2.0f, gui::Widget::waCenter, 0.0f); + _menu->ShowMessage(_menu->GetString(svWarning), _menu->GetString(svHintSetColorFailed), _menu->GetString(svOk), + _menu->GetGUI()->GetVPSize() / 2.0f, gui::Widget::waCenter, 0.0f); } } diff --git a/src/Rock3dGame/source/game/Trace.cpp b/src/Rock3dGame/source/game/Trace.cpp index de366453..dabb0958 100644 --- a/src/Rock3dGame/source/game/Trace.cpp +++ b/src/Rock3dGame/source/game/Trace.cpp @@ -161,13 +161,13 @@ void WayNode::Tile::ApplyChanges() const _changed = false; //glm::vec2 sPos = GetPos(); - glm::vec2 sPos = glm::vec2(GetPos().x, GetPos().y); // remove after D3DXVECTOR3 replacement + glm::vec2 sPos = glm::vec2(GetPos().x, GetPos().y); // remove after D3DXVECTOR3 replacement if (_node->GetNext()) { //_dir = glm::vec2(GetNextPos()) - sPos; - _dir = glm::vec2(GetNextPos().x, GetNextPos().y) - sPos; // remove after D3DXVECTOR3 replacement - _dirLength = glm::length(_dir); - _dir = glm::normalize(_dir); + _dir = glm::vec2(GetNextPos().x, GetNextPos().y) - sPos; // remove after D3DXVECTOR3 replacement + _dirLength = glm::length(_dir); + _dir = glm::normalize(_dir); } else { @@ -181,7 +181,7 @@ void WayNode::Tile::ApplyChanges() const //вычисляем и нормализуем поскольку лубая из составляющих _midDir могла оказаться близкой к нулю _midDir = (_dir + GetPrevDir()) / 2.0f; - _midDir = glm::normalize(_midDir); + _midDir = glm::normalize(_midDir); //линии через node Line2FromNorm(_midDir, sPos, _midNormLine); //Вычисляем _midNorm @@ -368,7 +368,7 @@ bool WayNode::Tile::IsContains(const D3DXVECTOR3& point, bool lengthClamp, float //Расстояние в 2д плоскости //glm::vec2 point2 = point; - glm::vec2 point2 = glm::vec2(point.x, point.y); // remove after D3DXVECTOR3 replacement + glm::vec2 point2 = glm::vec2(point.x, point.y); // remove after D3DXVECTOR3 replacement float dist1 = Line2DistToPoint(_midNormLine, point2); float dist2 = Line2DistToPoint(GetNextNormLine(), point2); float dirDist = Line2DistToPoint(_dirLine, point2); @@ -393,7 +393,7 @@ bool WayNode::Tile::IsZLevelContains(const D3DXVECTOR3& point, float* dist) cons ApplyChanges(); //glm::vec2 pos = glm::vec2(point); - glm::vec2 pos = glm::vec2(point.x, point.y); // remove after D3DXVECTOR3 replacement + glm::vec2 pos = glm::vec2(point.x, point.y); // remove after D3DXVECTOR3 replacement float height = GetHeight(pos); float coordZ = GetZCoord(pos); @@ -659,7 +659,7 @@ const D3DXVECTOR3& WayNode::GetPos() const glm::vec2 WayNode::GetPos2() const { //return glm::vec2(GetPos()); - return glm::vec2(GetPos().x, GetPos().y); // remove after D3DXVECTOR3 replacement + return glm::vec2(GetPos().x, GetPos().y); // remove after D3DXVECTOR3 replacement } float WayNode::GetSize() const diff --git a/src/tools/rock3dExprot.ms b/src/tools/rock3dExprot.ms index bce9b2b9..8ba79c9c 100644 --- a/src/tools/rock3dExprot.ms +++ b/src/tools/rock3dExprot.ms @@ -9,7 +9,7 @@ global curExpMap = 1 rollout ExportMesh "Export Mesh" ( - EditText editPath "Path" pos:[10, 10] width:210 + EditText editPath "Path" pos:[10, 10] width:210 Button btnBrowse "Browse" pos:[227, 8] width:50 CheckBox chkTextureCoord "Saving of texture coordinates" checked:true CheckBox chkConvToLCS "Convert from right to left coordinate system" checked:false @@ -18,46 +18,46 @@ rollout ExportMesh "Export Mesh" on ExportMesh open do ( - editPath.Text = "c:\\*.r3d" + editPath.Text = "c:\\*.r3d" ) on btnBrowse pressed do ( - s = GetSaveFileName types:"Rock3d file (*.r3d)|*.r3d" + s = GetSaveFileName types:"Rock3d file (*.r3d)|*.r3d" if s != undefined then - editPath.Text = s + editPath.Text = s ) on btnExport pressed do ( - if editPath.Text == undefined then + if editPath.Text == undefined then ( - MessageBox "Ошибка, введите корректный путь" + MessageBox "Ошибка, введите корректный путь" exit ) for i = 1 to selection.count do ( filePath = editPath.Text; if selection.count > 1 then - filePath = (getFilenamePath filePath) + (getFilenameFile filePath) + (i as string) + ".r3d" + filePath = (getFilenamePath filePath) + (getFilenameFile filePath) + (i as string) + ".r3d" fs = fOpen filePath "wb"; - if fs == undefined then + if fs == undefined then ( - MessageBox "Ошибка записи в файл, процесс будет прекращен..." + MessageBox "Ошибка записи в файл, процесс будет прекращен..." exit ) curMesh = ConvertToMesh selection[i] - saveExpMap = chkTextureCoord.Checked and meshop.getMapSupport curMesh curExpMap + saveExpMap = chkTextureCoord.Checked and meshop.getMapSupport curMesh curExpMap bitSaveExpMap = 0 - if saveExpMap then - bitSaveExpMap = 1 + if saveExpMap then + bitSaveExpMap = 1 convToLCS = chkConvToLCS.Checked bitConvToLCS = 0 if convToLCS then - bitConvToLCS = 1 + bitConvToLCS = 1 meshop.deleteIsoMapVertsAll curMesh meshop.deleteIsoVerts curMesh @@ -66,12 +66,12 @@ rollout ExportMesh "Export Mesh" numFaces = meshop.GetNumFaces curMesh --association container of Materials ID - mathIdKeys = #() --[key]=MathID - mathIdValues = #() --[key][numFace]=Index vertex + mathIdKeys = #() --[key]=MathID + mathIdValues = #() --[key][numFace]=Index vertex --faces using this vertex - facesUsingUVerts = #() --[IndexVert][numRefrence]=[numFace, numVertFace, numIndexedVertex] - facesUsingUVerts.Count = numUniqueVerts + facesUsingUVerts = #() --[IndexVert][numRefrence]=[numFace, numVertFace, numIndexedVertex] + facesUsingUVerts.Count = numUniqueVerts --index buffer indexBuf = #() @@ -79,55 +79,55 @@ rollout ExportMesh "Export Mesh" WriteLong fs curExportVersion WriteByte fs bitConvToLCS - WriteByte fs bitSaveExpMap + WriteByte fs bitSaveExpMap headerSize = ftell fs numVertexs = 0 WriteLong fs numVertexs - --Matherial ID buffer + --Matherial ID buffer for i = 1 to numFaces do ( - curFaceMatID = GetFaceMatID curMesh i + curFaceMatID = GetFaceMatID curMesh i mathIndex = findItem mathIdKeys curFaceMatID - if mathIndex > 0 then - append mathIdValues[mathIndex] i + if mathIndex > 0 then + append mathIdValues[mathIndex] i else ( - append mathIdKeys curFaceMatID + append mathIdKeys curFaceMatID append mathIdValues #(i) - ) + ) ) curIndexedVert = 0; for mathIndex = 1 to mathIdValues.Count do for faceIndex = 1 to mathIdValues[mathIndex].Count do ( - i = mathIdValues[mathIndex][faceIndex] - curFace = GetFace curMesh i + i = mathIdValues[mathIndex][faceIndex] + curFace = GetFace curMesh i curFaceSmoothGr = GetFaceSmoothGroup curMesh i local curMapFace if saveExpMap then curMapFace = meshop.GetMapFace curMesh curExpMap i for j = 1 to 3 do - ( - curIndexedVert = curIndexedVert + 1; - curIndVert = curFace[j] - local curIndMapVert + ( + curIndexedVert = curIndexedVert + 1; + curIndVert = curFace[j] + local curIndMapVert if saveExpMap then curIndMapVert = curMapFace[j] - findEqualVertex = false - if facesUsingUVerts[curIndVert] == undefined then - facesUsingUVerts[curIndVert] = #([i, j, curIndexedVert]) --add first refrence - else - ( - for k = 1 to facesUsingUVerts[curIndVert].Count do - ( - nxI = facesUsingUVerts[curIndVert][k][1] - nxJ = facesUsingUVerts[curIndVert][k][2] - nextIndexedVert = facesUsingUVerts[curIndVert][k][3] - nextFaceSmoothGr = GetFaceSmoothGroup curMesh nxI - local nextMapFace + findEqualVertex = false + if facesUsingUVerts[curIndVert] == undefined then + facesUsingUVerts[curIndVert] = #([i, j, curIndexedVert]) --add first refrence + else + ( + for k = 1 to facesUsingUVerts[curIndVert].Count do + ( + nxI = facesUsingUVerts[curIndVert][k][1] + nxJ = facesUsingUVerts[curIndVert][k][2] + nextIndexedVert = facesUsingUVerts[curIndVert][k][3] + nextFaceSmoothGr = GetFaceSmoothGroup curMesh nxI + local nextMapFace local nextIndMapVert if saveExpMap then ( @@ -135,56 +135,56 @@ rollout ExportMesh "Export Mesh" nextIndMapVert = nextMapFace[nxJ] ) - if curIndexedVert == nextIndexedVert then - MessageBox("Вырожденный фейс! Непредусмотренный случай...") - - --Criteries unique - if nextFaceSmoothGr > 0 and nextFaceSmoothGr == curFaceSmoothGr and - (saveExpMap == false or nextIndMapVert == curIndMapVert) then - ( - indexBuf[curIndexedVert] = indexBuf[nextIndexedVert] - findEqualVertex = true - exit - ) - ) - append facesUsingUVerts[curIndVert] [i, j, curIndexedVert] --add next refrence - ) - if findEqualVertex == false then - ( - indexBuf[curIndexedVert] = numVertexs - - --saving vertex - curVert = meshop.GetVert curMesh curIndVert - if convToLCS then - swap curVert.x curVert.y - WriteFloat fs curVert.x - WriteFloat fs curVert.y - WriteFloat fs curVert.z - - --saving normals - curFaceNormals = meshop.GetFaceRNormals curMesh i - local curNormal - if curFaceSmoothGr == 0 or j > curFaceNormals.Count then - curNormal = GetFaceNormal curMesh i - else - curNormal = curFaceNormals[j] - if convToLCS then - swap curNormal.x curNormal.y - WriteFloat fs curNormal.x - WriteFloat fs curNormal.y - WriteFloat fs curNormal.z - - --saving current map channal - if saveExpMap == true then - ( - curMapVert = meshop.GetMapVert curMesh curExpMap curIndMapVert - WriteFloat fs curMapVert.x - WriteFloat fs (1 - curMapVert.y) - ) - - numVertexs = numVertexs + 1 - ) - ) + if curIndexedVert == nextIndexedVert then + MessageBox("Вырожденный фейс! Непредусмотренный случай...") + + --Criteries unique + if nextFaceSmoothGr > 0 and nextFaceSmoothGr == curFaceSmoothGr and + (saveExpMap == false or nextIndMapVert == curIndMapVert) then + ( + indexBuf[curIndexedVert] = indexBuf[nextIndexedVert] + findEqualVertex = true + exit + ) + ) + append facesUsingUVerts[curIndVert] [i, j, curIndexedVert] --add next refrence + ) + if findEqualVertex == false then + ( + indexBuf[curIndexedVert] = numVertexs + + --saving vertex + curVert = meshop.GetVert curMesh curIndVert + if convToLCS then + swap curVert.x curVert.y + WriteFloat fs curVert.x + WriteFloat fs curVert.y + WriteFloat fs curVert.z + + --saving normals + curFaceNormals = meshop.GetFaceRNormals curMesh i + local curNormal + if curFaceSmoothGr == 0 or j > curFaceNormals.Count then + curNormal = GetFaceNormal curMesh i + else + curNormal = curFaceNormals[j] + if convToLCS then + swap curNormal.x curNormal.y + WriteFloat fs curNormal.x + WriteFloat fs curNormal.y + WriteFloat fs curNormal.z + + --saving current map channal + if saveExpMap == true then + ( + curMapVert = meshop.GetMapVert curMesh curExpMap curIndMapVert + WriteFloat fs curMapVert.x + WriteFloat fs (1 - curMapVert.y) + ) + + numVertexs = numVertexs + 1 + ) + ) ) --rewrite count vertex @@ -195,16 +195,16 @@ rollout ExportMesh "Export Mesh" --saving index buffer WriteLong fs numFaces for i = 1 to numFaces * 3 do - WriteLong fs indexBuf[i] + WriteLong fs indexBuf[i] - --saving MathId + --saving MathId faceStart = 0 WriteLong fs mathIdKeys.Count --Materials count for i = 1 to mathIdKeys.Count do ( - WriteLong fs mathIdKeys[i] --MathID - WriteLong fs faceStart - WriteLong fs mathIdValues[i].Count + WriteLong fs mathIdKeys[i] --MathID + WriteLong fs faceStart + WriteLong fs mathIdValues[i].Count faceStart = faceStart + mathIdValues[i].Count; ) From 4777f62972fe5b9affdcc6b82a3ec155e3b6b989 Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Sat, 26 Jun 2021 17:29:26 +0300 Subject: [PATCH 31/55] remove duplicate empty lines --- src/LexStd/header/lslBaseCollection.h | 12 -- src/LexStd/header/lslClassList.h | 3 - src/LexStd/header/lslCollection.h | 16 -- src/LexStd/header/lslContainer.h | 3 - src/LexStd/header/lslException.h | 6 - src/LexStd/header/lslResource.h | 6 - src/LexStd/header/lslSDK.h | 3 - src/LexStd/header/lslSerialValue.h | 3 - src/LexStd/header/lslUtility.h | 19 -- src/LexStd/source/lslCollectionItem.cpp | 3 - src/LexStd/source/lslComponent.cpp | 6 - src/LexStd/source/lslException.cpp | 9 - src/LexStd/source/lslResource.cpp | 18 -- src/LexStd/source/lslSDK.cpp | 18 -- src/LexStd/source/lslSerialFileXml.cpp | 3 - src/LexStd/source/lslSerializable.cpp | 3 - src/LexStd/source/lslSerialization.cpp | 18 -- src/LexStd/source/lslUpdateAble.cpp | 6 - src/MapEditor/ClassView.cpp | 13 +- src/MapEditor/FileView.cpp | 4 - src/MapEditor/MainFrm.cpp | 8 - src/MapEditor/MainFrm.h | 1 - src/MapEditor/MapEditor.cpp | 8 - src/MapEditor/MapEditor.rc | 11 -- src/MapEditor/MapEditorDoc.cpp | 3 - src/MapEditor/MapEditorDoc.h | 1 - src/MapEditor/MapEditorView.cpp | 3 - src/MapEditor/OutputWnd.cpp | 1 - src/MapEditor/TraceView.cpp | 9 - src/MapEditor/ViewTree.cpp | 7 - src/MapEditor/stdafx.cpp | 1 - src/MapEditor/stdafx.h | 16 -- src/MathLib/header/lslVariant.h | 8 - src/MathLib/source/r3dMath.cpp | 12 -- src/NetLib/include/net/BitStream.h | 6 - src/NetLib/include/net/INetPlayer.h | 3 - src/NetLib/include/net/NetCommon.h | 9 +- src/NetLib/include/net/NetModel.h | 4 - src/NetLib/source/net/BitStream.cpp | 3 - src/NetLib/source/net/NetConnectionTCP.cpp | 6 - src/NetLib/source/net/NetService.cpp | 3 - src/RRR3d/RRR3d.cpp | 6 - src/Rock3dEngine/header/graph/ContextInfo.h | 3 - .../header/graph/MaterialLibrary.h | 3 - src/Rock3dEngine/header/graph/Shader.h | 3 - src/Rock3dEngine/header/px/Physx.h | 3 - src/Rock3dEngine/header/px/Stream.h | 1 - src/Rock3dEngine/header/res/GraphResource.h | 3 - src/Rock3dEngine/source/GraphManager.cpp | 12 -- src/Rock3dEngine/source/ProgressTimer.cpp | 6 - .../source/graph/ActorManager.cpp | 3 - src/Rock3dEngine/source/graph/ContextInfo.cpp | 13 -- src/Rock3dEngine/source/graph/DepthMap.cpp | 6 - .../source/graph/Driver/D3D9RenderDriver.cpp | 3 - .../source/graph/Driver/RenderDriver.cpp | 3 - src/Rock3dEngine/source/graph/Engine.cpp | 13 -- src/Rock3dEngine/source/graph/FxManager.cpp | 24 --- .../source/graph/GaussianBlur.cpp | 3 - src/Rock3dEngine/source/graph/HDREffect.cpp | 1 - .../source/graph/MappingShaders.cpp | 18 -- .../source/graph/MaterialLibrary.cpp | 21 --- .../source/graph/OctreeRender.cpp | 1 - src/Rock3dEngine/source/graph/OctreeSort.cpp | 11 -- .../source/graph/RenderToTexture.cpp | 12 -- .../source/graph/SceneManager.cpp | 178 ++++++++---------- src/Rock3dEngine/source/graph/SceneNode.cpp | 3 - .../source/graph/ShadowMapRender.cpp | 12 -- src/Rock3dEngine/source/graph/SkyBox.cpp | 3 - src/Rock3dEngine/source/graph/StdNode.cpp | 34 ---- .../source/graph/VideoResource.cpp | 30 --- src/Rock3dEngine/source/graph/WaterPlane.cpp | 3 - src/Rock3dEngine/source/gui/GUI.cpp | 92 --------- src/Rock3dEngine/source/px/Physx.cpp | 44 ----- src/Rock3dEngine/source/px/Stream.cpp | 4 - src/Rock3dEngine/source/res/D3DXImageFile.cpp | 6 - src/Rock3dEngine/source/res/GraphResource.cpp | 55 ------ src/Rock3dEngine/source/res/R3DFile.cpp | 3 - src/Rock3dGame/header/game/AICar.h | 1 - src/Rock3dGame/header/game/AchievmentModel.h | 3 - src/Rock3dGame/header/game/GameBase.h | 3 - src/Rock3dGame/header/game/Map.h | 3 - src/Rock3dGame/header/game/MapObj.h | 3 - src/Rock3dGame/header/game/RecordLib.h | 3 - src/Rock3dGame/header/net/SteamCommon.h | 1 - src/Rock3dGame/header/net/p2pauth.h | 1 - src/Rock3dGame/header/video/video.h | 2 - src/Rock3dGame/source/edit/EditDataBase.cpp | 10 - src/Rock3dGame/source/edit/EditMap.cpp | 7 - src/Rock3dGame/source/edit/EditTrace.cpp | 10 - src/Rock3dGame/source/edit/SceneControl.cpp | 4 - src/Rock3dGame/source/game/AICar.cpp | 3 - src/Rock3dGame/source/game/AIPlayer.cpp | 22 --- .../source/game/AchievmentModel.cpp | 42 ----- src/Rock3dGame/source/game/ControlManager.cpp | 3 - src/Rock3dGame/source/game/DataBase.cpp | 91 +++++---- src/Rock3dGame/source/game/DialogMenu2.cpp | 15 -- src/Rock3dGame/source/game/Environment.cpp | 3 - src/Rock3dGame/source/game/FinalMenu.cpp | 3 - src/Rock3dGame/source/game/GameBase.cpp | 55 ------ src/Rock3dGame/source/game/GameCar.cpp | 16 -- src/Rock3dGame/source/game/GameMode.cpp | 3 - src/Rock3dGame/source/game/HudMenu.cpp | 12 -- src/Rock3dGame/source/game/Logic.cpp | 15 -- src/Rock3dGame/source/game/MainMenu2.cpp | 43 ----- src/Rock3dGame/source/game/Map.cpp | 3 - src/Rock3dGame/source/game/MapObj.cpp | 12 -- src/Rock3dGame/source/game/Menu.cpp | 3 - src/Rock3dGame/source/game/OptionsMenu.cpp | 15 -- src/Rock3dGame/source/game/Player.cpp | 45 +---- src/Rock3dGame/source/game/Race.cpp | 16 -- src/Rock3dGame/source/game/RaceMenu2.cpp | 21 --- src/Rock3dGame/source/game/RecordLib.cpp | 9 - .../source/game/ResourceManager.cpp | 63 ------- src/Rock3dGame/source/game/Trace.cpp | 9 - src/Rock3dGame/source/game/Weapon.cpp | 6 - src/Rock3dGame/source/game/World.cpp | 3 - src/Rock3dGame/source/net/NetGame.cpp | 3 - src/Rock3dGame/source/net/NetPlayer.cpp | 3 - src/Rock3dGame/source/net/SteamService.cpp | 29 --- src/Rock3dGame/source/net/p2pauth.cpp | 25 --- src/Rock3dGame/source/snd/Audio.cpp | 27 --- src/Rock3dGame/source/video/playback.cpp | 5 - src/Rock3dGame/source/video/video.cpp | 5 - 123 files changed, 136 insertions(+), 1477 deletions(-) diff --git a/src/LexStd/header/lslBaseCollection.h b/src/LexStd/header/lslBaseCollection.h index aaa658f8..10e3675d 100644 --- a/src/LexStd/header/lslBaseCollection.h +++ b/src/LexStd/header/lslBaseCollection.h @@ -255,9 +255,6 @@ template class ComCollec template const char* const ComCollection<_Item, _IdType, _Arg, _ArgThis>::cDefItemName = "item"; - - - template BaseCollection<_Item, _IdType>::BaseCollection(): _safeCont(0), _lockDestr(0), _lockNotify(0) { } @@ -525,9 +522,6 @@ template _IdType BaseCollection<_Item, _IdType>::Get return FindItem(item).GetType(); } - - - template BaseCollectionCL<_Item, _IdType, _Arg>::BaseCollectionCL(): _classList(0), _createClassList(false) { } @@ -617,9 +611,6 @@ template void BaseCollectionCL<_Item, _I _classNames.push_back(value[i]); } - - - template Collection<_Item, _IdType, _Arg, _ArgThis>::~Collection() { this->Clear(); @@ -654,9 +645,6 @@ template template(Add(classInst->GetKey())); } - - - template CollectionItem* ComCollection<_Item, _IdType, _Arg, _ArgThis>::FindItem(const std::string& name) { return Find(name); diff --git a/src/LexStd/header/lslClassList.h b/src/LexStd/header/lslClassList.h index 99a0b8d3..060091c4 100644 --- a/src/LexStd/header/lslClassList.h +++ b/src/LexStd/header/lslClassList.h @@ -136,9 +136,6 @@ template class ClassList: publi { }; - - - template BaseClassList<_Key, _BaseClass, _Arg>::~BaseClassList() { Clear(); diff --git a/src/LexStd/header/lslCollection.h b/src/LexStd/header/lslCollection.h index 5571a4ee..60339268 100644 --- a/src/LexStd/header/lslCollection.h +++ b/src/LexStd/header/lslCollection.h @@ -93,9 +93,6 @@ template class Collection<_Item, void, void, void>: public BaseColl _Item& Add(); }; - - - template Collection<_Item, _IdType, _Arg, void>::~Collection() { this->Clear(); @@ -130,9 +127,6 @@ template template _Type& Co return lsl::StaticCast<_Type&>(Add(classInst->GetKey(), arg)); } - - - template Collection<_Item, _IdType, void, void>::~Collection() { this->Clear(); @@ -167,10 +161,6 @@ template template _Type& Collection<_It return lsl::StaticCast<_Type&>(Add(classInst->GetKey())); } - - - - template Collection<_Item, void, _Arg, _ArgThis>::~Collection() { this->Clear(); @@ -196,9 +186,6 @@ template _Item& Collection<_Item, void, return _MyBase::Add(CreateItem()); } - - - template Collection<_Item, void, _Arg, void>::~Collection() { this->Clear(); @@ -224,9 +211,6 @@ template _Item& Collection<_Item, void, _Arg, void>::Ad return _MyBase::Add(CreateItem(arg)); } - - - template Collection<_Item, void, void, void>::~Collection() { this->Clear(); diff --git a/src/LexStd/header/lslContainer.h b/src/LexStd/header/lslContainer.h index fef26152..2313bc1f 100644 --- a/src/LexStd/header/lslContainer.h +++ b/src/LexStd/header/lslContainer.h @@ -195,9 +195,6 @@ template class Container: public BaseContainer<_Item> _MyClass& operator=(const _MyClass& value); }; - - - template Container<_Item>::Container(Duplicates duplicates): _safeCont(0), _duplicates(duplicates) { } diff --git a/src/LexStd/header/lslException.h b/src/LexStd/header/lslException.h index 59978928..a43dc6f8 100644 --- a/src/LexStd/header/lslException.h +++ b/src/LexStd/header/lslException.h @@ -63,9 +63,6 @@ void Assert(const char* expression, const char* filePath, int line); extern AppLog appLog; - - - template void AppLog::Write(const _Value& value) { if (_destroy) @@ -105,9 +102,6 @@ template inline AppLog& operator<<(AppLog& log, const _Value& valu return log; } - - - template inline _To StaticCast(_From& x) { dynamic_cast<_To>(x); diff --git a/src/LexStd/header/lslResource.h b/src/LexStd/header/lslResource.h index f47c1bc0..cc5f4b6c 100644 --- a/src/LexStd/header/lslResource.h +++ b/src/LexStd/header/lslResource.h @@ -182,9 +182,6 @@ template class Resou virtual void InsertItem(const typename _MyBase::Value &value); }; - - - template void ResourceCollection<_Resource, _IdType, _Arg, _ArgThis>::InsertItem(const typename _MyBase::Value& value) { _MyBase::InsertItem(value); @@ -192,9 +189,6 @@ template void Resour SetItemResTraits(value, this); } - - - inline std::wstring GetAppPath() { #ifdef _WIN32 // FIX_LINUX GetModuleFileNameW diff --git a/src/LexStd/header/lslSDK.h b/src/LexStd/header/lslSDK.h index dec2382b..5d3757fa 100644 --- a/src/LexStd/header/lslSDK.h +++ b/src/LexStd/header/lslSDK.h @@ -166,9 +166,6 @@ class SDK: public lsl::Object SDK* GetSDK(); void ReleaseSDK(); - - - inline void SpinWait(DWORD time) { #ifdef _WIN32 // FIX_LINUX GetTickCount diff --git a/src/LexStd/header/lslSerialValue.h b/src/LexStd/header/lslSerialValue.h index ab29e373..7f6c32ee 100644 --- a/src/LexStd/header/lslSerialValue.h +++ b/src/LexStd/header/lslSerialValue.h @@ -207,9 +207,6 @@ template<> struct SerialValue> } }; - - - inline lsl::SWriter* SWriteEnum(lsl::SWriter* writer, const char* name, int enumVal, const char* enumStr[], int enumEnd) { LSL_ASSERT(enumVal < enumEnd); diff --git a/src/LexStd/header/lslUtility.h b/src/LexStd/header/lslUtility.h index 5d35c6df..393e88e9 100644 --- a/src/LexStd/header/lslUtility.h +++ b/src/LexStd/header/lslUtility.h @@ -229,7 +229,6 @@ struct Point Point() {} Point(int mX, int mY): x(mX), y(mY) {}; - Point& operator+=(const Point& value) { x += value.x; @@ -279,9 +278,6 @@ template class Bitset: public std::bitset<_Bits> typedef std::vector StringList; - - - template inline void SafeRelease(_Pnt& pnt) { if (pnt) @@ -371,9 +367,6 @@ inline int ConvStrToEnum(const std::string& str, const StringList& strList) return -1; } - - - template ClassMapList<_Key, _BaseClass>::~ClassMapList() { Clear(); @@ -426,9 +419,6 @@ template _BaseClass& ClassMapList<_Key, _BaseClass throw lsl::Error("template _BaseClass& ClassMapList<_Key, _BaseClass>::GetInstance(const _Key& key) const"); } - - - template RegisterMapClass<_Class, _ClassMapList>::RegisterMapClass(_ClassMapList& mapList, typename _ClassMapList::Key key) { mapList.Add(key); @@ -438,9 +428,6 @@ template void RegisterMapClass<_Class, _Class { } - - - static Point& operator+(const Point& value1, const Point& value2) { Point res(value1); @@ -455,9 +442,6 @@ static Point& operator-(const Point& value1, const Point& value2) return res -= value2; } - - - inline double GetTimeDbl() { #ifdef _WIN32 // FIX_LINUX GetTickCount @@ -471,9 +455,6 @@ inline double GetTimeDbl() #endif } - - - #pragma warning(disable:4996) inline string StrFmt(const TCHAR* value, ...) diff --git a/src/LexStd/source/lslCollectionItem.cpp b/src/LexStd/source/lslCollectionItem.cpp index d8e6208c..e922082a 100644 --- a/src/LexStd/source/lslCollectionItem.cpp +++ b/src/LexStd/source/lslCollectionItem.cpp @@ -51,9 +51,6 @@ CollectionItem& CollectionItem::operator=(const CollectionItem& ref) return *this; } - - - void CollectionTraits::SetItemTraits(CollectionItem* item, CollectionTraits* value) { item->_collection = value; diff --git a/src/LexStd/source/lslComponent.cpp b/src/LexStd/source/lslComponent.cpp index 96636463..70e53be9 100644 --- a/src/LexStd/source/lslComponent.cpp +++ b/src/LexStd/source/lslComponent.cpp @@ -9,9 +9,6 @@ namespace lsl const char* Component::cDefItemName = "item"; - - - Component::Component(): _owner(0), storeName(true) { _elements = new Elements(this); @@ -207,9 +204,6 @@ Component::Elements& Component::GetElements() const return *_elements; } - - - bool CheckDisabledChar(const char& item) { return item == '\\' || item == '.'; diff --git a/src/LexStd/source/lslException.cpp b/src/LexStd/source/lslException.cpp index 55805fd6..289d57e4 100644 --- a/src/LexStd/source/lslException.cpp +++ b/src/LexStd/source/lslException.cpp @@ -8,9 +8,6 @@ namespace lsl AppLog appLog("appLog.txt"); - - - AppLog::AppLog(const std::string& mFileName): fileName(mFileName), _destroy(false) { } @@ -36,9 +33,6 @@ void AppLog::Clear() ReleaseStream(stream); } - - - Error::Error(const char* message): _MyBase(message) { PrintToLog(); @@ -58,9 +52,6 @@ void Error::PrintToLog() appLog << "Error: " << this->what() << '\n'; } - - - void Assert(const char* expression, const char* filePath, int line) { static char sText[1024] = ""; diff --git a/src/LexStd/source/lslResource.cpp b/src/LexStd/source/lslResource.cpp index 6a46dcb3..c04a66cd 100644 --- a/src/LexStd/source/lslResource.cpp +++ b/src/LexStd/source/lslResource.cpp @@ -10,9 +10,6 @@ namespace lsl std::unique_ptr FileSystem::_instance; - - - FileSystem::FileSystem(const std::wstring& appPath): _appPath(appPath) { } @@ -147,17 +144,11 @@ const std::wstring& FileSystem::appPath() const return _appPath; } - - - void ResourcesTraits::SetItemResTraits(Resource* item, ResourcesTraits* value) { item->_resTraits = value; } - - - Resource::Resource(): _resTraits(0), _init(false), _dynamic(false) { } @@ -247,9 +238,6 @@ void Resource::SetDynamic(bool value) _dynamic = value; } - - - void FileResource::DoLoadFromStream(std::istream& stream, const std::string& fileExt) { //свидетельствует о том что загрузчик не существует @@ -300,9 +288,6 @@ void FileResource::SetFileName(const std::string& value) _fileName = value; } - - - BufferResource::~BufferResource() { Free(); @@ -350,9 +335,6 @@ const char* BufferResource::GetData() const return _data; } - - - BinaryResource::BinaryResource(): _size(0) { } diff --git a/src/LexStd/source/lslSDK.cpp b/src/LexStd/source/lslSDK.cpp index b54afa41..16045da0 100644 --- a/src/LexStd/source/lslSDK.cpp +++ b/src/LexStd/source/lslSDK.cpp @@ -104,9 +104,6 @@ FreeStaticData freeStaticData; Profiler* Profiler::_i; - - - void Win32ThreadPool::QueueWork(UserWork* value, Object* arg, Flags flags) { DWORD dwFlags = 0; @@ -146,9 +143,6 @@ void Win32ThreadPool::SetMaxThreads(unsigned value) { } - - - void* SDK::GetDataFrom(LockedObj* obj) { return obj->_data; @@ -159,9 +153,6 @@ void SDK::SetDataTo(LockedObj* obj, void* data) obj->_data = data; } - - - Win32ThreadEvent::Win32ThreadEvent(bool manualReset, bool open, const std::string& name) { #ifdef _WIN32 // FIX_LINUX ThreadEvents @@ -199,9 +190,6 @@ void Win32ThreadEvent::Reset() #endif } - - - Win32SDK::Win32SDK(): _threadPool(0) { } @@ -289,9 +277,6 @@ double Win32SDK::GetTimeDbl() #endif } - - - Profiler::Profiler() { #ifdef _WIN32 // FIX_LINUX QueryPerformanceFrequency @@ -380,9 +365,6 @@ Profiler& Profiler::I() return *_i; } - - - SDK* GetSDK() { if (instance == 0) diff --git a/src/LexStd/source/lslSerialFileXml.cpp b/src/LexStd/source/lslSerialFileXml.cpp index a722de1e..ad26c21c 100644 --- a/src/LexStd/source/lslSerialFileXml.cpp +++ b/src/LexStd/source/lslSerialFileXml.cpp @@ -112,9 +112,6 @@ void LoadChunk(SerialNode& chunk, TiXmlNode& node) } - - - void SerialFileXML::SaveNode(SerialNode& root, std::ostream& stream) { TiXmlDocument doc("SerialFileXML"); diff --git a/src/LexStd/source/lslSerializable.cpp b/src/LexStd/source/lslSerializable.cpp index 7cb6c706..375c56e8 100644 --- a/src/LexStd/source/lslSerializable.cpp +++ b/src/LexStd/source/lslSerializable.cpp @@ -10,9 +10,6 @@ const char* Serializable::cInclude = "include"; const char* Serializable::cMaster = "master"; const char* Serializable::cItem = "item"; - - - Serializable::Serializable(): _masterSer(0), _lockCnt(0) { } diff --git a/src/LexStd/source/lslSerialization.cpp b/src/LexStd/source/lslSerialization.cpp index b608c2a3..917293f3 100644 --- a/src/LexStd/source/lslSerialization.cpp +++ b/src/LexStd/source/lslSerialization.cpp @@ -9,9 +9,6 @@ namespace lsl const std::string SerialFile::cParse = "parse"; const std::string SerialFile::cFolder = "folder"; - - - int SIOTraits::GetValTypeSize(ValType type) { switch (type) @@ -49,9 +46,6 @@ int SIOTraits::GetValTypeSize(ValType type) } } - - - SWriter::SWriter() { } @@ -103,9 +97,6 @@ SWriter* SWriter::WriteRef(const char* name, const CollectionItem* item) return 0; } - - - SReader::SReader() { } @@ -301,9 +292,6 @@ SReader* SReader::ReadRef(const char* name, bool collItem, Serializable* target, return 0; } - - - SerialNode::SerialNode(): _value(ValueDesc()), _linkSer(0), _masterSer(0), _masterNode(0), _linkSerRefCnt(0), _proxyLoad(0), _beginSave(0), _beginLoad(0) { _elements = new Elements(this); @@ -773,9 +761,6 @@ const SerialNode::Attributes& SerialNode::GetAttributes() const return _attributes; } - - - SerialNodes::SerialNodes(SerialNode* owner): _owner(owner) { } @@ -857,9 +842,6 @@ SerialNode* SerialNodes::GetOwner() return _owner; } - - - RootNode::RootNode(const std::string& name, Component* owner) { SetName(name); diff --git a/src/LexStd/source/lslUpdateAble.cpp b/src/LexStd/source/lslUpdateAble.cpp index 1ab383be..970a8eaf 100644 --- a/src/LexStd/source/lslUpdateAble.cpp +++ b/src/LexStd/source/lslUpdateAble.cpp @@ -24,9 +24,6 @@ UpdateAble::UpdateData::~UpdateData() { } - - - UpdateAble::UpdateAble(): _updateCount(0) { } @@ -85,9 +82,6 @@ bool UpdateAble::IsUpdating() const return _updateCount > 0; } - - - UpdateAbleOwned::UpdateAbleOwned(UpdateAble* owner): _owner(owner) { } diff --git a/src/MapEditor/ClassView.cpp b/src/MapEditor/ClassView.cpp index 0506b7b8..67237ef0 100644 --- a/src/MapEditor/ClassView.cpp +++ b/src/MapEditor/ClassView.cpp @@ -46,14 +46,11 @@ BEGIN_MESSAGE_MAP(CClassView, CViewPane) ON_WM_PAINT() ON_WM_SETFOCUS() ON_COMMAND_RANGE(ID_SORTING_GROUPBYTYPE, ID_SORTING_SORTBYACCESS, OnSort) - ON_UPDATE_COMMAND_UI_RANGE(ID_SORTING_GROUPBYTYPE, ID_SORTING_SORTBYACCESS, OnUpdateSort) + ON_UPDATE_COMMAND_UI_RANGE(ID_SORTING_GROUPBYTYPE, ID_SORTING_SORTBYACCESS, OnUpdateSort) ON_NOTIFY(TVN_SELCHANGED, CLASS_TREE_VIEW, OnViewSelChanged) END_MESSAGE_MAP() - - - CClassView::CClassView(): _mapDoc(0), _autoRot(false), _autoScale(false) { m_nCurrSort = ID_SORTING_GROUPBYTYPE; @@ -69,7 +66,7 @@ CClassView::~CClassView() CClassView::MapDocEvent::MapDocEvent(CClassView* view): _view(view) { } - + void CClassView::MapDocEvent::ReleaseDoc() { _view->DeselectItem(); @@ -88,7 +85,7 @@ void CClassView::ReleaseItems() void CClassView::InsertItem(const r3d::IRecordNodeRef& node, HTREEITEM parent) { HTREEITEM itemNode = m_wndClassView.InsertItem(StdStrToCString(node->GetName()), 2, 2, parent); - SetItemData(itemNode, new ItemData(node, 0)); + SetItemData(itemNode, new ItemData(node, 0)); r3d::IMapObjRecRef record = node->FirstRecord(); while (record) @@ -133,9 +130,9 @@ void CClassView::UpdateList() r3d::IMapObjLibRef lib = GetDB()->GetMapObjLib(i); r3d::IRecordNodeRef node; node.Assign(lib); - + InsertItem(node, 0); - } + } } void CClassView::SelectItem(const D3DXVECTOR3& mapObjPos) diff --git a/src/MapEditor/FileView.cpp b/src/MapEditor/FileView.cpp index 18b1c46c..c0ccf954 100644 --- a/src/MapEditor/FileView.cpp +++ b/src/MapEditor/FileView.cpp @@ -29,9 +29,6 @@ BEGIN_MESSAGE_MAP(CFileView, CViewPane) ON_NOTIFY(NM_KEYDOWN, FILE_TREE_VIEW, OnViewKeyDown) END_MESSAGE_MAP() - - - CFileView::CFileView(): _mapDoc(0) { _mapDocEvent = new MapDocEvent(this); @@ -256,7 +253,6 @@ void CFileView::FillFileView() m_wndFileView.Expand(hInc, TVE_EXPAND); } - int CFileView::OnCreate(LPCREATESTRUCT lpCreateStruct) { if (_MyBase::OnCreate(lpCreateStruct) == -1) diff --git a/src/MapEditor/MainFrm.cpp b/src/MapEditor/MainFrm.cpp index d558d31f..64e8b1d9 100644 --- a/src/MapEditor/MainFrm.cpp +++ b/src/MapEditor/MainFrm.cpp @@ -26,9 +26,6 @@ static UINT indicators[] = ID_INDICATOR_SCRL, }; - - - CMainFrame::CMainFrame(): _activeMapView(0), _activeViewPane(0) { _viewPaneList.push_back(&m_wndClassView); @@ -202,7 +199,6 @@ int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct) DockPane(&m_wndMenuBar); DockPane(&m_wndToolBar); - // enable Visual Studio 2005 style docking window behavior CDockingManager::SetDockingMode(DT_SMART); // enable Visual Studio 2005 style docking window auto-hide behavior @@ -230,16 +226,12 @@ int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct) m_wndProperties.EnableDocking(CBRS_ALIGN_ANY); DockPane(&m_wndProperties); - // Enable toolbar and docking window menu replacement EnablePaneMenu(TRUE, ID_VIEW_CUSTOMIZE, strCustomize, ID_VIEW_TOOLBAR); // enable quick (Alt+drag) toolbar customization CMFCToolBar::EnableQuickCustomization(); - - - { if (!_editMapToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_TOP | CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC, CRect(1, 1, 1, 1), IDR_EDITMAP) || !_editMapToolBar.LoadToolBar(IDR_EDITMAP)) { diff --git a/src/MapEditor/MainFrm.h b/src/MapEditor/MainFrm.h index a36503af..be76b680 100644 --- a/src/MapEditor/MainFrm.h +++ b/src/MapEditor/MainFrm.h @@ -70,4 +70,3 @@ class CMainFrame : public CFrameWndEx #endif }; - diff --git a/src/MapEditor/MapEditor.cpp b/src/MapEditor/MapEditor.cpp index 7951d061..10e6a509 100644 --- a/src/MapEditor/MapEditor.cpp +++ b/src/MapEditor/MapEditor.cpp @@ -42,9 +42,6 @@ END_MESSAGE_MAP() CMapEditorApp theApp; - - - CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD) { } @@ -54,9 +51,6 @@ void CAboutDlg::DoDataExchange(CDataExchange* pDX) CDialog::DoDataExchange(pDX); } - - - CMapEditorApp::CMapEditorApp(): _activeView(0), _world(0), _enableRender(true) { m_bHiColorIcons = TRUE; @@ -132,7 +126,6 @@ int CMapEditorApp::InitApp() return FALSE; AddDocTemplate(pDocTemplate); - // Enable DDE Execute open EnableShellOpen(); RegisterShellFileTypes(TRUE); @@ -141,7 +134,6 @@ int CMapEditorApp::InitApp() CCommandLineInfo cmdInfo; ParseCommandLine(cmdInfo); - // Dispatch commands specified on the command line. Will return FALSE if // app was launched with /RegServer, /Register, /Unregserver or /Unregister. if (!ProcessShellCommand(cmdInfo)) diff --git a/src/MapEditor/MapEditor.rc b/src/MapEditor/MapEditor.rc index 59d8d0d0..5a8ef1d2 100644 --- a/src/MapEditor/MapEditor.rc +++ b/src/MapEditor/MapEditor.rc @@ -64,7 +64,6 @@ END #endif // APSTUDIO_INVOKED - ///////////////////////////////////////////////////////////////////////////// // // Bitmap @@ -104,7 +103,6 @@ END #endif // Russian resources ///////////////////////////////////////////////////////////////////////////// - ///////////////////////////////////////////////////////////////////////////// // English (U.S.) resources @@ -199,7 +197,6 @@ BEGIN BUTTON ID_PROPERTIES2 END - ///////////////////////////////////////////////////////////////////////////// // // Icon @@ -307,7 +304,6 @@ BEGIN END END - ///////////////////////////////////////////////////////////////////////////// // // Accelerator @@ -330,7 +326,6 @@ BEGIN VK_F6, ID_PREV_PANE, VIRTKEY, SHIFT END - ///////////////////////////////////////////////////////////////////////////// // // Dialog @@ -347,7 +342,6 @@ BEGIN DEFPUSHBUTTON "OK",IDOK,113,41,50,14,WS_GROUP END - ///////////////////////////////////////////////////////////////////////////// // // Version @@ -386,7 +380,6 @@ BEGIN END END - ///////////////////////////////////////////////////////////////////////////// // // DESIGNINFO @@ -405,7 +398,6 @@ BEGIN END #endif // APSTUDIO_INVOKED - ///////////////////////////////////////////////////////////////////////////// // // String Table @@ -549,8 +541,6 @@ END #endif // English (U.S.) resources ///////////////////////////////////////////////////////////////////////////// - - #ifndef APSTUDIO_INVOKED ///////////////////////////////////////////////////////////////////////////// // @@ -572,4 +562,3 @@ LANGUAGE 9, 1 ///////////////////////////////////////////////////////////////////////////// #endif // not APSTUDIO_INVOKED - diff --git a/src/MapEditor/MapEditorDoc.cpp b/src/MapEditor/MapEditorDoc.cpp index 8bb56a76..5319200d 100644 --- a/src/MapEditor/MapEditorDoc.cpp +++ b/src/MapEditor/MapEditorDoc.cpp @@ -12,9 +12,6 @@ IMPLEMENT_DYNCREATE(CMapEditorDoc, CDocument) BEGIN_MESSAGE_MAP(CMapEditorDoc, CDocument) END_MESSAGE_MAP() - - - CMapEditorDoc::CMapEditorDoc() { } diff --git a/src/MapEditor/MapEditorDoc.h b/src/MapEditor/MapEditorDoc.h index 0e367333..dfcd5d9d 100644 --- a/src/MapEditor/MapEditorDoc.h +++ b/src/MapEditor/MapEditorDoc.h @@ -93,4 +93,3 @@ class CMapEditorDoc : public CDocument #endif }; - diff --git a/src/MapEditor/MapEditorView.cpp b/src/MapEditor/MapEditorView.cpp index 54bb1884..b2b2e210 100644 --- a/src/MapEditor/MapEditorView.cpp +++ b/src/MapEditor/MapEditorView.cpp @@ -24,9 +24,6 @@ BEGIN_MESSAGE_MAP(CMapEditorView, CView) ON_WM_SIZE() END_MESSAGE_MAP() - - - CMapEditorView::CMapEditorView() { } diff --git a/src/MapEditor/OutputWnd.cpp b/src/MapEditor/OutputWnd.cpp index 6d1333da..d1ec79a9 100644 --- a/src/MapEditor/OutputWnd.cpp +++ b/src/MapEditor/OutputWnd.cpp @@ -195,4 +195,3 @@ void COutputList::OnViewOutput() } } - diff --git a/src/MapEditor/TraceView.cpp b/src/MapEditor/TraceView.cpp index 58219589..47da1c76 100644 --- a/src/MapEditor/TraceView.cpp +++ b/src/MapEditor/TraceView.cpp @@ -102,9 +102,6 @@ BEGIN_MESSAGE_MAP(CTraceView, CViewPane) ON_NOTIFY(TVN_SELCHANGED, TRACE_TREEPATH_VIEW, OnPathViewSelChanged) END_MESSAGE_MAP() - - - CTraceView::CTraceView(): _mapDoc(0), _flatFrame(0) { _mapDocEvent = new MapDocEvent(this); @@ -148,9 +145,6 @@ int CTraceView::OnCreate(LPCREATESTRUCT lpCreateStruct) // _flatFrame->SetActiveView(pView1); - - - const DWORD dwViewStyle = WS_CHILD | WS_VISIBLE | TVS_HASLINES | TVS_LINESATROOT | TVS_HASBUTTONS | WS_CLIPSIBLINGS | WS_CLIPCHILDREN; if (!_pointView.Create(dwViewStyle | TVS_SHOWSELALWAYS, rectDummy, pView1, TRACE_TREEWP_VIEW)) { @@ -174,9 +168,6 @@ int CTraceView::OnCreate(LPCREATESTRUCT lpCreateStruct) // All commands will be routed via this control , not via the parent frame: _toolBar.SetRouteCommandsViaFrame(FALSE); - - - CBitmap bmp; bmp.LoadBitmap(IDB_CLASS_VIEW_24); BITMAP bmpObj; diff --git a/src/MapEditor/ViewTree.cpp b/src/MapEditor/ViewTree.cpp index 0b543a1a..a75a1def 100644 --- a/src/MapEditor/ViewTree.cpp +++ b/src/MapEditor/ViewTree.cpp @@ -17,9 +17,6 @@ BEGIN_MESSAGE_MAP(CViewPane, CDockablePane) ON_WM_SETFOCUS() END_MESSAGE_MAP() - - - CViewTree::CViewTree() { } @@ -61,9 +58,6 @@ void CViewTree::OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags) } } - - - CViewPane::CViewPane(): _activeTab(false) { } @@ -131,7 +125,6 @@ LRESULT CViewPane::WindowProc(UINT message, WPARAM wParam, LPARAM lParam) } - /*char strBuf[256]; CFile file(_T("C:\\1.txt"), CFile::modeReadWrite); file.SeekToEnd(); diff --git a/src/MapEditor/stdafx.cpp b/src/MapEditor/stdafx.cpp index 754e16e2..d2e062ab 100644 --- a/src/MapEditor/stdafx.cpp +++ b/src/MapEditor/stdafx.cpp @@ -5,4 +5,3 @@ #include "stdafx.h" - diff --git a/src/MapEditor/stdafx.h b/src/MapEditor/stdafx.h index d6a2a14a..36ec29a1 100644 --- a/src/MapEditor/stdafx.h +++ b/src/MapEditor/stdafx.h @@ -23,10 +23,6 @@ #include // MFC core and standard components #include // MFC extensions - - - - #ifndef _AFX_NO_OLE_SUPPORT #include // MFC support for Internet Explorer 4 Common Controls #endif @@ -36,9 +32,6 @@ #include // MFC support for ribbons and control bars - - - #undef min #undef max @@ -58,9 +51,6 @@ #define max(a, b) ((a > b) ? a : b) #endif - - - #ifdef _UNICODE #if defined _M_IX86 #pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='x86' publicKeyToken='6595b64144ccf1df' language='*'\"") @@ -73,9 +63,6 @@ #endif #endif - - - inline CString CharToCString(const char* value) { return CString(value); @@ -97,9 +84,6 @@ inline bool StrEq(const TCHAR* str1, const TCHAR* str2) return StrCmp(str1, str2) == 0; } - - - //func - функтор типа bool()(HTREEITEM), res == true - закончить обход template HTREEITEM ForEachTreeCtrlItem(CTreeCtrl& tree, HTREEITEM item, _Func func) { diff --git a/src/MathLib/header/lslVariant.h b/src/MathLib/header/lslVariant.h index 4a49e412..021103d7 100644 --- a/src/MathLib/header/lslVariant.h +++ b/src/MathLib/header/lslVariant.h @@ -162,9 +162,6 @@ class VariantVec: private Variant bool operator!=(const VariantVec& value) const; }; - - - inline Variant::Variant(): _data(0) { } @@ -464,9 +461,6 @@ inline bool Variant::operator!=(const Variant& value) const return !operator==(value); } - - - inline VariantVec::VariantVec() { } @@ -516,7 +510,6 @@ inline VariantVec::VariantVec(const glm::vec2* value, unsigned count) AssignData(value, count); } - inline VariantVec::VariantVec(const D3DXVECTOR3* value, unsigned count) { AssignData(value, count); @@ -572,7 +565,6 @@ inline VariantVec::VariantVec(const glm::vec2& value) AssignData(&value, 1); } - inline VariantVec::VariantVec(const D3DXVECTOR3& value) { AssignData(&value, 1); diff --git a/src/MathLib/source/r3dMath.cpp b/src/MathLib/source/r3dMath.cpp index c5bc21ba..f081076f 100644 --- a/src/MathLib/source/r3dMath.cpp +++ b/src/MathLib/source/r3dMath.cpp @@ -24,9 +24,6 @@ template _Value AbsMax(const _Value& val1, const _Value& val2) return abs(val1) < abs(val2) ? val2 : val1; } - - - AABB2::AABB2() { } @@ -139,9 +136,6 @@ glm::vec2 AABB2::GetSize() const return max - min; } - - - AABB::AABB() { } @@ -657,9 +651,6 @@ D3DXVECTOR3 AABB::GetPlaneVert(unsigned index, unsigned vertex) const return GetVertex(bufInd[vertex]); } - - - BoundBox::BoundBox() { } @@ -801,9 +792,6 @@ Frustum::SpaceContains Frustum::ContainsAABB(const AABB& aabb) const return scContainsPartially; } - - - bool RayCastIntersectPlane(const D3DXVECTOR3& rayStart, const D3DXVECTOR3& rayVec, const D3DXPLANE& plane, float& outT) { const float EPSILON = 1.0e-10f; diff --git a/src/NetLib/include/net/BitStream.h b/src/NetLib/include/net/BitStream.h index fe5a2e2d..345237c8 100644 --- a/src/NetLib/include/net/BitStream.h +++ b/src/NetLib/include/net/BitStream.h @@ -204,9 +204,6 @@ class BitStream NETLIB_API void Serialize(void*& data, unsigned size, bool cmp); }; - - - template inline void BitValue::Make(BitValue& bitVal, const _Type& val, BitType type) { _Type* p = reinterpret_cast<_Type*>(&bitVal); @@ -242,9 +239,6 @@ inline void BitValue::Get(BitValue& bitVal, void*& data, unsigned& size) bitVal.GetData(data, size); } - - - template void BitStream::Serialize(_Type& value, BitType type, bool equal) { BitValue bitVal; diff --git a/src/NetLib/include/net/INetPlayer.h b/src/NetLib/include/net/INetPlayer.h index b5b9d000..966aaf05 100644 --- a/src/NetLib/include/net/INetPlayer.h +++ b/src/NetLib/include/net/INetPlayer.h @@ -38,9 +38,6 @@ class INetPlayer virtual unsigned netIndex() const = 0; }; - - - template std::ostream& INetPlayer::NewModel() { return NewModel(net()->modelClasses().GetByClass<_Type>().GetKey()); diff --git a/src/NetLib/include/net/NetCommon.h b/src/NetLib/include/net/NetCommon.h index ab4e8426..12817150 100644 --- a/src/NetLib/include/net/NetCommon.h +++ b/src/NetLib/include/net/NetCommon.h @@ -48,7 +48,7 @@ struct NetMessage mutable bool _discard; public: unsigned sender; - unsigned time; + unsigned time; NetMessage(): _discard(false), sender(cUndefPlayer), time(0) {} NetMessage(unsigned mSender, unsigned mTime): _discard(false), sender(mSender), time(mTime) {} @@ -97,7 +97,7 @@ struct Endpoint { std::string address; unsigned addressLong; - unsigned port; + unsigned port; Endpoint() {} Endpoint(const std::string& mAddress, unsigned mPort): addressLong(0), address(mAddress), port(mPort) {} @@ -178,9 +178,6 @@ template unsigned Read(std::istream& stream, std::basic_string<_T>& va template unsigned Write(std::ostream& stream, const std::basic_string<_T>& value); template unsigned Read(std::istream& stream, std::basic_string<_T>& value); - - - inline unsigned Write(std::ostream& stream, const void* data, unsigned size) { stream.write((const char*)data, size); @@ -357,7 +354,7 @@ template inline unsigned Write(std::ostream& stream, const std::basic_ template inline unsigned Read(std::istream& stream, std::basic_string<_T>& value, unsigned size) { - value.resize(size); + value.resize(size); Read(stream, const_cast::pointer>(value.data()), sizeof(std::basic_string<_T>::value_type) * size); return size; } diff --git a/src/NetLib/include/net/NetModel.h b/src/NetLib/include/net/NetModel.h index 12a9dbe1..91989de4 100644 --- a/src/NetLib/include/net/NetModel.h +++ b/src/NetLib/include/net/NetModel.h @@ -97,9 +97,6 @@ template class NetModelRPC: public NetModel virtual void CallRPC(const NetMessage& msg, const NetCmdHeader& header, std::istream& stream); }; - - - template NetModelRPC<_Class>::NetModelRPC(const Desc& desc): NetModel(desc), _rpcCount(0) { } @@ -139,5 +136,4 @@ template void NetModelRPC<_Class>::CallRPC(const NetMessage& msg, ((_Class*)this->*method)(msg, header, stream); } - } \ No newline at end of file diff --git a/src/NetLib/source/net/BitStream.cpp b/src/NetLib/source/net/BitStream.cpp index 9e4fa4b3..9f14c104 100644 --- a/src/NetLib/source/net/BitStream.cpp +++ b/src/NetLib/source/net/BitStream.cpp @@ -7,9 +7,6 @@ namespace net const float BitStream::cFloatErr = 0.001f; - - - BitStream::BitStream(): _pos(0), _time(0), _deltaTime(0), _isWriting(false), _isReading(false), _changedCount(0), _updatedCount(0), _isSleeping(true) { } diff --git a/src/NetLib/source/net/NetConnectionTCP.cpp b/src/NetLib/source/net/NetConnectionTCP.cpp index c155027c..8fda1596 100644 --- a/src/NetLib/source/net/NetConnectionTCP.cpp +++ b/src/NetLib/source/net/NetConnectionTCP.cpp @@ -59,9 +59,6 @@ tcp::acceptor& NetAcceptorTCP::acceptor() return _acceptor; } - - - NetConnectionTCP::NetConnectionTCP(NetAcceptorTCP* owner): _owner(owner), _socket(owner->acceptor().get_io_service()), _isOpen(false), _beep(false), _beepCount(0), _isConnected(false) { } @@ -246,9 +243,6 @@ lsl::string NetConnectionTCP::userName() const return ""; } - - - NetChannelTCP::NetChannelTCP(NetAcceptorTCP* owner): _owner(owner), _socketReader(owner->acceptor().get_io_service()), _socketWriter(owner->acceptor().get_io_service()), _isOpen(false), _isBind(false), _broadcast(false) { } diff --git a/src/NetLib/source/net/NetService.cpp b/src/NetLib/source/net/NetService.cpp index e7806829..b0405f82 100644 --- a/src/NetLib/source/net/NetService.cpp +++ b/src/NetLib/source/net/NetService.cpp @@ -25,9 +25,6 @@ class StreamBuf: public IStreamBuf unsigned maxSize() const { return _inst.max_size(); } }; - - - NetService::NetService(): _init(false), _ioService(0), _netChannel(NULL), _netServer(NULL), _netClient(NULL), _time(0), _syncRate(70), _lastSyncTime(0), _pingPort(0), _pingTime(0), _pingSendPeriod(0), _bufConnectionTick(0), _bufChannelTick(0), _user(NULL), _netAcceptorImpl(NULL), _netAcceptorImplCreated(false) { } diff --git a/src/RRR3d/RRR3d.cpp b/src/RRR3d/RRR3d.cpp index 3fb7c6ea..63b1e977 100644 --- a/src/RRR3d/RRR3d.cpp +++ b/src/RRR3d/RRR3d.cpp @@ -16,9 +16,6 @@ const lsl::Point cResolution(1280, 720); HWND mainWindow; r3d::IWorld* rock3dWorld; - - - void OnKeyEvent(unsigned key, lsl::KeyState state, bool repeat) { if (rock3dWorld) @@ -211,9 +208,6 @@ void ErrMessage(const std::string& message) } - - - int APIENTRY _tWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdLine, int nCmdShow) { #ifdef DEBUG_MEMORY diff --git a/src/Rock3dEngine/header/graph/ContextInfo.h b/src/Rock3dEngine/header/graph/ContextInfo.h index 46c4603a..3a1f85a7 100644 --- a/src/Rock3dEngine/header/graph/ContextInfo.h +++ b/src/Rock3dEngine/header/graph/ContextInfo.h @@ -463,9 +463,6 @@ class ContextInfo bool IsNight() const; }; - - - template _Value StateManager<_State, _Value, _defValue>::Get(_State state) const { _States::const_iterator iter = _states.find(state); diff --git a/src/Rock3dEngine/header/graph/MaterialLibrary.h b/src/Rock3dEngine/header/graph/MaterialLibrary.h index b2d094dd..d52b5a14 100644 --- a/src/Rock3dEngine/header/graph/MaterialLibrary.h +++ b/src/Rock3dEngine/header/graph/MaterialLibrary.h @@ -295,9 +295,6 @@ class MaterialLibrary: public lsl::ComCollection void DrawScreenQuad(Engine& engine, const D3DXVECTOR4& quadVert = D3DXVECTOR4(0.0f, 0.0f, 1.0f, 1.0f), float fLeftU = 0.0f, float fTopV = 0.0f, float fRightU = 1.0f, float fBottomV = 1.0f, bool disableZBuf = false); - - - template Sampler<_Tex>::Sampler(Type type): _MyBase(type), _createTex(false) { } diff --git a/src/Rock3dEngine/header/graph/Shader.h b/src/Rock3dEngine/header/graph/Shader.h index 7314b865..393115e6 100644 --- a/src/Rock3dEngine/header/graph/Shader.h +++ b/src/Rock3dEngine/header/graph/Shader.h @@ -331,9 +331,6 @@ class Shader: public VideoResource, public BaseShader void SetMacro(MacroBlock* value); }; - - - template bool Shader::GetValue(const std::string& name, _Type& outVal) const { Value tmp; diff --git a/src/Rock3dEngine/header/px/Physx.h b/src/Rock3dEngine/header/px/Physx.h index 07de6276..ad4561e5 100644 --- a/src/Rock3dEngine/header/px/Physx.h +++ b/src/Rock3dEngine/header/px/Physx.h @@ -714,9 +714,6 @@ class Actor: public lsl::Object, public lsl::Serializable static inline NxPhysicsSDK& GetSDK(); static inline NxCookingInterface& GetCooking(); - - - NxPhysicsSDK& GetSDK() { LSL_ASSERT(Manager::_nxSDK); diff --git a/src/Rock3dEngine/header/px/Stream.h b/src/Rock3dEngine/header/px/Stream.h index 5a619d05..08e4b7fd 100644 --- a/src/Rock3dEngine/header/px/Stream.h +++ b/src/Rock3dEngine/header/px/Stream.h @@ -3,7 +3,6 @@ #include "NxStream.h" - class UserStream : public NxStream { public: diff --git a/src/Rock3dEngine/header/res/GraphResource.h b/src/Rock3dEngine/header/res/GraphResource.h index 620070d2..14f3a197 100644 --- a/src/Rock3dEngine/header/res/GraphResource.h +++ b/src/Rock3dEngine/header/res/GraphResource.h @@ -312,9 +312,6 @@ unsigned GetPrimitivesCount(D3DPRIMITIVETYPE primitiveType, UINT numControlPoint void CopyPitchData(char* dest, unsigned destPitch, const char* src, unsigned srcPitch, unsigned srcRowSize, unsigned height); void operator++(D3DCUBEMAP_FACES& lvalue); - - - template TriFace<_IndexType>::TriFace() { } diff --git a/src/Rock3dEngine/source/GraphManager.cpp b/src/Rock3dEngine/source/GraphManager.cpp index 7ab09692..b1a656fa 100644 --- a/src/Rock3dEngine/source/GraphManager.cpp +++ b/src/Rock3dEngine/source/GraphManager.cpp @@ -7,9 +7,6 @@ #include - - - #ifdef _DEBUG #define PLANAR_REFL_DEBUG #endif @@ -21,9 +18,6 @@ const std::string GraphManager::cGraphOptionStr[GraphManager::cGraphOptionEnd] = const std::string GraphManager::cGraphQualityStr[GraphManager::cGraphQualityEnd] = {"gqLow", "gqMiddle", "gqHigh"}; - - - GraphManager::LightSrc::LightSrc(const LightDesc& desc): _enable(true), _shadowMap(0) { _source = new graph::LightSource(); @@ -84,9 +78,6 @@ void GraphManager::LightSrc::SetEnable(bool value) _enable = value; } - - - GraphManager::GraphManager(HWND window, lsl::Point resolution, bool fullScreen): _camera(0), _clearSurfRef(0), _skyBoxRef(0), _depthSurfaceRef(0), _scRenderTexRef(0), _cleanScTexRef(0), _scRenderCubeTexRef(0), _scDepthMapRef(0), _refrEffRef(0), _sunShaft(0), _toneMapRef(0), _bloomEff(0), _hdrEff(0), _shadowMaxFar(0.0f), _shadowRef(0), _fogRef(0), _fogPlane(NULL), _fogPlaneActor(NULL), _cloudsTex(NULL), _sceneAmbient(clrWhite), _fogColor(clrWhite), _cloudColor(clrWhite), _cloudIntensivity(0.1f), _cloudHeight(0.0f), _guiMode(false), _groundAABB(1000.0f), _multisampling(0), _msRT(NULL), _msDS(NULL), _discreteVideoCard(false) { _grassField = 0; @@ -2521,9 +2512,6 @@ D3DXVECTOR3 GraphManager::ScreenToWorld(const lsl::Point& coord, const float z) return screenVec; - - - /*//Алгоритм с импользованием D3DXVec3Unproject D3DVIEWPORT9 viewPort; _engine->GetDriver().GetDevice()->GetViewport(&viewPort); diff --git a/src/Rock3dEngine/source/ProgressTimer.cpp b/src/Rock3dEngine/source/ProgressTimer.cpp index 035df5cf..87a6c867 100644 --- a/src/Rock3dEngine/source/ProgressTimer.cpp +++ b/src/Rock3dEngine/source/ProgressTimer.cpp @@ -12,9 +12,6 @@ namespace ProgressTimer progressTimer; } - - - void IProgressUser::RegProgress() { if (++_progressCount == 1) @@ -29,9 +26,6 @@ void IProgressUser::UnregProgress() progressTimer.UnregUser(this); } - - - ProgressTimer::~ProgressTimer() { LSL_ASSERT(_users.empty()); diff --git a/src/Rock3dEngine/source/graph/ActorManager.cpp b/src/Rock3dEngine/source/graph/ActorManager.cpp index 98488543..851c26a0 100644 --- a/src/Rock3dEngine/source/graph/ActorManager.cpp +++ b/src/Rock3dEngine/source/graph/ActorManager.cpp @@ -80,9 +80,6 @@ const ActorManager::UserDesc& ActorManager::User::GetDesc() const return _desc; } - - - ActorManager::ActorManager(unsigned sceneCnt): cNumScenes(sceneCnt), _octree(sceneCnt) { _dynUserList = new UserList[cNumScenes]; diff --git a/src/Rock3dEngine/source/graph/ContextInfo.cpp b/src/Rock3dEngine/source/graph/ContextInfo.cpp index d0cd535c..8a0746ef 100644 --- a/src/Rock3dEngine/source/graph/ContextInfo.cpp +++ b/src/Rock3dEngine/source/graph/ContextInfo.cpp @@ -50,9 +50,6 @@ DWORD ContextInfo::GetDefTextureStageState(int stage, TextureStageState state) return ContextInfo::defaultTextureStageStates[state]; } - - - CameraDesc::CameraDesc() { aspect = 1.0f; @@ -67,9 +64,6 @@ CameraDesc::CameraDesc() up = ZVector; } - - - CameraCI::CameraCI(): _idState(0), _frustChanged(true) { _matChanged.set(); @@ -335,7 +329,6 @@ bool CameraCI::ComputeZBounds(const AABB& aabb, float& minZ, float& maxZ) const return res;*/ - const Frustum& frustum = GetFrustum(); for (int i = 0; i < 4; ++i) { @@ -598,9 +591,6 @@ const D3DXMATRIX& CameraCI::GetInvWVP() const return GetInvTransform(ctWVP); } - - - LightCI::LightCI(): _changed(true), _owner(0) { } @@ -686,9 +676,6 @@ const CameraCI& LightCI::GetCamera() const return _camera; } - - - ContextInfo::ContextInfo(RenderDriver* driver): _driver(driver), _enableShadow(false), _texDiffK(1.0f), _invertingCullFace(false), _ignoreMaterial(false), _cullOpacity(1.0f), _color(clrWhite), _meshId(-1), _maxTextureStage(-1) { ZeroMemory(_textures, sizeof(_textures)); diff --git a/src/Rock3dEngine/source/graph/DepthMap.cpp b/src/Rock3dEngine/source/graph/DepthMap.cpp index 26ed858b..d1fecb02 100644 --- a/src/Rock3dEngine/source/graph/DepthMap.cpp +++ b/src/Rock3dEngine/source/graph/DepthMap.cpp @@ -10,9 +10,6 @@ namespace graph const char* DepthMapShader::cTechniqueNames[cTechniqueTypeEnd] = {"techDepthMap", "techDepthMapAlphaTest"}; - - - void DepthMapShader::DoBeginDraw(Engine& engine) { TechniqueType tech = engine.GetContext().GetRenderState(rsAlphaTestEnable) ? ttDepthMapAlphaTest : ttDepthMap; @@ -49,9 +46,6 @@ void DepthMapShader::SetTech(TechniqueType value) _MyBase::SetTech(cTechniqueNames[value]); } - - - Tex2DResource* DepthMapRender::CreateRT() { Tex2DResource* tex = _MyBase::CreateRT(); diff --git a/src/Rock3dEngine/source/graph/Driver/D3D9RenderDriver.cpp b/src/Rock3dEngine/source/graph/Driver/D3D9RenderDriver.cpp index fa40c807..a102a0b4 100644 --- a/src/Rock3dEngine/source/graph/Driver/D3D9RenderDriver.cpp +++ b/src/Rock3dEngine/source/graph/Driver/D3D9RenderDriver.cpp @@ -23,9 +23,6 @@ D3DTEXTURESTAGESTATETYPE TextureStageStateToD3D9[TEXTURE_STAGE_STATE_END] = {D3D D3DTRANSFORMSTATETYPE TransformStateTypeToD3D9[TRANSFORM_STATE_TYPE_END] = {D3DTS_WORLD, D3DTS_VIEW, D3DTS_PROJECTION, D3DTS_TEXTURE0, D3DTS_TEXTURE1, D3DTS_TEXTURE2, D3DTS_TEXTURE3, D3DTS_TEXTURE4, D3DTS_TEXTURE5, D3DTS_TEXTURE6, D3DTS_TEXTURE7}; - - - D3D9RenderDriver::D3D9RenderDriver(D3DPRESENT_PARAMETERS& d3dpp): _d3d9(0), _d3dDevice9(0), _d3d9Ex(NULL), _d3dDevice9Ex(NULL), _frameLatencyOk(false) { Init(d3dpp, false); diff --git a/src/Rock3dEngine/source/graph/Driver/RenderDriver.cpp b/src/Rock3dEngine/source/graph/Driver/RenderDriver.cpp index ab393517..4a12c712 100644 --- a/src/Rock3dEngine/source/graph/Driver/RenderDriver.cpp +++ b/src/Rock3dEngine/source/graph/Driver/RenderDriver.cpp @@ -20,9 +20,6 @@ const unsigned RenderDriver::cMaxResHeight = 1080; const unsigned RenderDriver::cOptimalResWidth = 1366; //1280; //1600; const unsigned RenderDriver::cOptimalResHeight = 768; //720; //900; - - - float RenderDriver::CalcAspect() { IDirect3DSurface9* pBackBuffer; diff --git a/src/Rock3dEngine/source/graph/Engine.cpp b/src/Rock3dEngine/source/graph/Engine.cpp index c3263dcb..57dbf43b 100644 --- a/src/Rock3dEngine/source/graph/Engine.cpp +++ b/src/Rock3dEngine/source/graph/Engine.cpp @@ -15,9 +15,6 @@ namespace graph bool Engine::_d3dxUse = true; - - - Engine::Engine(HWND window, lsl::Point resolution, bool fullScreen, unsigned multisampling): _reset(true), _lost(false), _restart(true), _beginScene(false), _beginDraw(false), _dt(0), _pause(false), _filtering(0), _multisampling(0), _d3dQueryEvent(NULL) { ZeroMemory(&_d3dpp, sizeof(_d3dpp)); @@ -104,7 +101,6 @@ void Engine::DrawFPS() static __int64 gTime, gLastTime; float deltaTime = CalcDeltaTime(gTime, gLastTime); - static double nTimeOfLastFPSUpdate = 0.0; static int nFrameCount = 0; static char fpsString[255] = "Frames Per Second = "; @@ -701,9 +697,6 @@ void Engine::ToMultisampling(unsigned level, D3DMULTISAMPLE_TYPE& type, unsigned } } - - - void RenderStateManager::Apply(Engine& engine) { for (iterator iter = begin(); iter != end(); ++iter) @@ -716,9 +709,6 @@ void RenderStateManager::UnApply(Engine& engine) engine.GetContext().RestoreRenderState(iter->first); } - - - void SamplerStateManager::Apply(Engine& engine, DWORD stage) { for (iterator iter = begin(); iter != end(); ++iter) @@ -731,9 +721,6 @@ void SamplerStateManager::UnApply(Engine& engine, DWORD stage) engine.GetContext().RestoreSamplerState(stage, iter->first); } - - - DWORD TextureStageStateManager::Get(TextureStageState state) const { _States::const_iterator iter = _states.find(state); diff --git a/src/Rock3dEngine/source/graph/FxManager.cpp b/src/Rock3dEngine/source/graph/FxManager.cpp index 5f838b2f..ca0bbf52 100644 --- a/src/Rock3dEngine/source/graph/FxManager.cpp +++ b/src/Rock3dEngine/source/graph/FxManager.cpp @@ -17,9 +17,6 @@ const char* FxEmitter::cStartTypeStr[FxEmitter::cStartTypeEnd] = {"sotTime", "so FxParticleSystem::ClassList FxParticleSystem::classList; const char* FxParticleSystem::cChildStyleStr[cChildStyleEnd] = {"csProxy", "csUnique"}; - - - FxParticle::FxParticle(): _worldMatChanged(true), _aabbChanged(true), _child(0) { } @@ -120,9 +117,6 @@ void FxParticle::SetChild(BaseSceneNode* value) _child = value; } - - - FxEmitter::FxEmitter(FxParticleSystem* owner): _owner(owner), _curTime(0), _lastTimeQGroup(0), _nextTimeCreate(0), _curDensParticle(0), _cntParticles(0), _numParticle(0), _worldCoordSys(true), _modeFading(false) { } @@ -602,9 +596,6 @@ const D3DXMATRIX& FxEmitter::GetMatrix() const return _worldCoordSys ? IdentityMatrix : _owner->GetWorldMat(); } - - - FxParticleSystem::FxParticleSystem(): _fxManager(0), _childStyle(csProxy), _aabb(1.0f), _srcSpeed(NullVector) { InitClassList(); @@ -886,9 +877,6 @@ void FxParticleSystem::SetSrcSpeed(const D3DXVECTOR3& value) _srcSpeed = value; } - - - FxManager::FxManager() { _groupList = new _GroupList(this); @@ -954,9 +942,6 @@ const FxManager::EmitterGroups& FxManager::GetEmitterGroups(const FxEmitter* emi return emitter->_groupList; } - - - inline DWORD FtoDw(float value) { return *((DWORD*)&value); @@ -1119,9 +1104,6 @@ SceneNode& FxNodeManager::GetNode() return *_node; } - - - FxTrailManager::FxTrailManager(): _trailWidth(1.0f), fixedUpVec(ZVector), fixedUp(false), typeDraw(tdPerGroup) { } @@ -1283,9 +1265,6 @@ void FxTrailManager::SetTrailWidth(float value) _trailWidth = value; } - - - FxFlowEmitter::FxFlowEmitter(FxParticleSystem* owner): _MyBase(owner) { } @@ -1400,9 +1379,6 @@ void FxFlowEmitter::SetFlowDesc(const FlowDesc& value) _flowDesc = value; } - - - FxPhysicsEmitter::FxPhysicsEmitter(FxParticleSystem* owner): _MyBase(owner), _pxScene(0) { } diff --git a/src/Rock3dEngine/source/graph/GaussianBlur.cpp b/src/Rock3dEngine/source/graph/GaussianBlur.cpp index 3cd30300..5ae79b4a 100644 --- a/src/Rock3dEngine/source/graph/GaussianBlur.cpp +++ b/src/Rock3dEngine/source/graph/GaussianBlur.cpp @@ -53,9 +53,6 @@ void GaussianBlurShader::DoApplyTech(Engine& engine) GetEffect()->Begin(&_cntPass, 0); } - - - GaussianBlurRender::GaussianBlurRender(): _shader(0), _colorTex(0) { } diff --git a/src/Rock3dEngine/source/graph/HDREffect.cpp b/src/Rock3dEngine/source/graph/HDREffect.cpp index 65c44320..1e0984d8 100644 --- a/src/Rock3dEngine/source/graph/HDREffect.cpp +++ b/src/Rock3dEngine/source/graph/HDREffect.cpp @@ -12,7 +12,6 @@ HDRRender::HDRRender(): _restart(true), _colorTex(0) { const unsigned toneMapSz[cToneMapTexNum] = {1, 4, 16, 64}; - for (int i = 0; i < cToneMapTexNum; ++i) { Tex2DResource& tex = _toneMapTex.Add(); diff --git a/src/Rock3dEngine/source/graph/MappingShaders.cpp b/src/Rock3dEngine/source/graph/MappingShaders.cpp index 1525093b..9072ced0 100644 --- a/src/Rock3dEngine/source/graph/MappingShaders.cpp +++ b/src/Rock3dEngine/source/graph/MappingShaders.cpp @@ -12,9 +12,6 @@ const lsl::string LightShader::cLightTypeStr[LightShader::cLightTypeEnd] = {"LIG const lsl::string LightShader::cLightPropStr[LightShader::cLightPropEnd] = {"", "SHADOW"}; const lsl::string LightShader::cMyParamStr[cMyParamEnd] = {"numLights", "glAmbient", "ambLight", "diffLight", "specLight", "colorMat", "specMat", "specPower", "texDiffK", "worldMat", "worldViewMat", "wvpMat", "viewPos", "diffTex", "shadowTex", "lightPos", "lightDir", "spotParams", "fogParams", "fogColor", "reflectivity", "envTex", "alphaBlendColor", "normTex", "mWorldViewProj", "refrTex", "vScene", "reflTex"}; - - - LightShader::LightShader(): _curLight(0), _fogColor(clrWhite), _viewPos(NullVector), _texDiffK(1.0f), _paramsLight(D3DLIGHT_FORCE_DWORD), _paramsShadow(false) { for (int i = 0; i < cLightTypeEnd; ++i) @@ -221,9 +218,6 @@ void LightShader::SetTexDiffK(float value) _texDiffK = value; } - - - ReflMappShader::ReflMappShader(): _reflectivity(0.4f) { SetTech("techReflMapp"); @@ -260,9 +254,6 @@ void ReflMappShader::SetReflectivity(float value) _reflectivity = value; } - - - ReflBumbMappShader::ReflBumbMappShader() { SetTech("techReflMapp"); @@ -291,9 +282,6 @@ void ReflBumbMappShader::SetReflTex(graph::TexCubeResource* value) SetTexture("envTex", value); } - - - BumpMapShader::BumpMapShader() { SetTech("techBumpMap"); @@ -306,9 +294,6 @@ void BumpMapShader::DoBeginDraw(Engine& engine) SetTexParam(_params[normTex], engine.GetContext().GetTexture(1)); } - - - RefrShader::RefrShader() { SetTech("techRefract"); @@ -321,9 +306,6 @@ void RefrShader::DoBeginDraw(Engine& engine) SetValueDir("vScene", (1.0f - engine.GetContext().GetFrame()) * 1.0f);// (1.0f - engine.GetContext().frame) * 0.1f); } - - - PlanarReflMappShader::PlanarReflMappShader() { SetTech("techReflMapp"); diff --git a/src/Rock3dEngine/source/graph/MaterialLibrary.cpp b/src/Rock3dEngine/source/graph/MaterialLibrary.cpp index 6fd8c46b..9f7eaa5a 100644 --- a/src/Rock3dEngine/source/graph/MaterialLibrary.cpp +++ b/src/Rock3dEngine/source/graph/MaterialLibrary.cpp @@ -10,9 +10,6 @@ namespace graph Samplers::ClassList Samplers::classList; - - - BaseSampler::BaseSampler(Type type): _type(type), _tex(0), _disabled(false), _offset(NullVector), _scale(IdentityVector), _rotate(NullQuaternion), _matChanged(true), _matFrame(0), _defMat(true), _filtering(sfDefault), _filteringLevel(0) { } @@ -283,9 +280,6 @@ void BaseSampler::SetFiltering(Filtering value) ApplyFiltering(); } - - - Sampler2d::Sampler2d(): _MyBase(st2d) { } @@ -342,9 +336,6 @@ glm::vec2 Sampler2d::GetSize() return GetTex() ? GetTex()->GetSize() : NullVec2; } - - - SamplerCube::SamplerCube(): _MyBase(stCube) { } @@ -369,9 +360,6 @@ unsigned SamplerCube::GetFormat() const return GetTex()->GetData()->GetFormat(); } - - - Samplers::Samplers() { InitClassList(); @@ -530,9 +518,6 @@ Samplers& Samplers::operator=(const Samplers& ref) return *this; } - - - Material::Material(): _ambient(clrWhite), _diffuse(clrWhite), _emissive(clrBlack), _specular(clrBlack), _specPower(128), _blending(bmOpaque), _alpha(1.0f), _ignoreFog(false), _lastIgnFog(true), _alphaTest(asNone), _alphaRef(1.0f), _faceCulling(fcCullCW), _polygonMode(pmFill) { SetOption(moLighting, true); @@ -835,9 +820,6 @@ void Material::SetPolygonMode(PolygonMode value) } } - - - LibMaterial::LibMaterial(): _shader(0) { } @@ -898,9 +880,6 @@ graph::LibMaterial& LibMaterial::SetAnisoFlt() return *this; } - - - void DrawScreenQuad(Engine& engine, const D3DXVECTOR4& quadVert, float fLeftU, float fTopV, float fRightU, float fBottomV, bool disableZBuf) { D3DSURFACE_DESC surfDesc; diff --git a/src/Rock3dEngine/source/graph/OctreeRender.cpp b/src/Rock3dEngine/source/graph/OctreeRender.cpp index aa91d999..de88b819 100644 --- a/src/Rock3dEngine/source/graph/OctreeRender.cpp +++ b/src/Rock3dEngine/source/graph/OctreeRender.cpp @@ -25,7 +25,6 @@ void OctreeRender::Render(graph::Engine& engine, unsigned index) (*iter)->Render(engine); } - OctreeRender::Group& OctreeRender::AddGroup() { Group* group = new Group(); diff --git a/src/Rock3dEngine/source/graph/OctreeSort.cpp b/src/Rock3dEngine/source/graph/OctreeSort.cpp index 60115cdc..3f0a6368 100644 --- a/src/Rock3dEngine/source/graph/OctreeSort.cpp +++ b/src/Rock3dEngine/source/graph/OctreeSort.cpp @@ -11,9 +11,6 @@ namespace graph const unsigned OctreeSort::cMinNodeUserCnt = 1; const unsigned OctreeSort::cMinLeafSize = 100; - - - OctreeSort::Node::Node(unsigned numGroups, const AABB& aabb, Node* parent): cNumGroups(numGroups), _aabb(aabb), _parent(parent), _leaf(0), _userCnt(0), _refCnt(0), _lockCnt(0) { _leaf = new Leaf[cNumGroups]; @@ -194,9 +191,6 @@ unsigned OctreeSort::Node::GetUserCnt() const return _userCnt; } - - - OctreeSort::UserNode::UserNode(OctreeSort* owner, const AABB& aabb, const lsl::BoolVec& groups): _owner(owner), _aabb(aabb), _groups(groups), _idPass(0), _data(0) { } @@ -321,7 +315,6 @@ void OctreeSort::UserNode::Move(const AABB& aabb) for (NodeList::iterator iter = node->GetNodeList().begin(); iter != node->GetNodeList().end(); ++iter) if (node->GetAABB().ContainsAABB(aabb) == AABB::spNoOverloap) - Node* node = _nodeMap.begin()->first; RemoveFromAllNodes(); @@ -357,7 +350,6 @@ bool OctreeSort::UserNode::GetGroup(unsigned group) const if (_groups[group] != value) SetGroup(iter, group, value); - _groups[group] = value; }*/ @@ -389,9 +381,6 @@ void OctreeSort::UserNode::SetData(lsl::Object* value) _data = value; } - - - OctreeSort::OctreeSort(unsigned numGroups): cNumGroups(numGroups), _root(0), _idPass(0) { _users = new Users(this); diff --git a/src/Rock3dEngine/source/graph/RenderToTexture.cpp b/src/Rock3dEngine/source/graph/RenderToTexture.cpp index 8d874968..bcee8e45 100644 --- a/src/Rock3dEngine/source/graph/RenderToTexture.cpp +++ b/src/Rock3dEngine/source/graph/RenderToTexture.cpp @@ -18,9 +18,6 @@ D3DCUBEMAP_FACES operator++(D3DCUBEMAP_FACES& value) } - - - RenderTarget::RenderTarget(): _texture(0), _createTexture(false) { } @@ -89,9 +86,6 @@ void RenderTarget::SetRT(Tex2DResource* value) } } - - - RenderTarget::RenderTarget(): _texture(0), _createTexture(false) { } @@ -160,9 +154,6 @@ void RenderTarget::SetRT(TexCubeResource* value) } } - - - void RenderToTexture::BeginRT(Engine& engine, const RtFlags& flags) { ApplyRT(engine, flags); @@ -177,9 +168,6 @@ void RenderToTexture::EndRT(Engine& engine) _MyBase::EndRT(engine); } - - - RenderToCubeTex::RenderToCubeTex(): _flags(static_cast(0), 0, 0), _viewPos(NullVector) { } diff --git a/src/Rock3dEngine/source/graph/SceneManager.cpp b/src/Rock3dEngine/source/graph/SceneManager.cpp index a73e3747..91df1f8f 100644 --- a/src/Rock3dEngine/source/graph/SceneManager.cpp +++ b/src/Rock3dEngine/source/graph/SceneManager.cpp @@ -45,8 +45,8 @@ BaseSceneNode::~BaseSceneNode() if (_parent) _parent->GetChildren().Remove(this); ClearSceneList(); - - delete _proxyList; + + delete _proxyList; delete _children; #ifdef _DEBUG @@ -69,7 +69,7 @@ void BaseSceneNode::RenderBB(graph::Engine& engine, const AABB& aabb, const D3DX lines[1] = VertexPD(box.v[1], linesColor); lines[2] = VertexPD(box.v[1], linesColor); lines[3] = VertexPD(box.v[2], linesColor); - + lines[4] = VertexPD(box.v[2], linesColor); lines[5] = VertexPD(box.v[3], linesColor); lines[6] = VertexPD(box.v[3], linesColor); @@ -100,9 +100,7 @@ void BaseSceneNode::RenderBB(graph::Engine& engine, const AABB& aabb, const D3DX lines[24 + i * 2] = VertexPD(aabb.GetPlaneVert(i, 0), linesColor); lines[24 + i * 2 + 1] = VertexPD(aabb.GetPlaneVert(i, 1), linesColor); } - - - + engine.GetDriver().GetDevice()->SetFVF(VertexPD::fvf); @@ -121,16 +119,16 @@ void BaseSceneNode::ExtractRotation(_RotationStyle style) const if (_rotInvalidate.test(style)) { ApplyTransformationChanged(); - EulerAngles eulAng; - switch (style) - { - case rsEulerAngles: + EulerAngles eulAng; + switch (style) + { + case rsEulerAngles: eulAng = Eul_FromHMatrix(_rotMat.m, EulOrdXYZs); _rollAngle = -eulAng.x; _pitchAngle = -eulAng.y; _turnAngle = -eulAng.z; break; - + case rsQuaternion: _rot = glm::quat_cast(Matrix4DxToGlm(_rotMat)); _rot = glm::quat(-_rot.w, _rot.x, _rot.y, _rot.z); @@ -237,7 +235,7 @@ void BaseSceneNode::SetDynBB(bool value) } void BaseSceneNode::BuildMatrix() const -{ +{ //Поворот не влияет на локальное направление перемещения //Растяжение не влияет на локальное перемещение, т.е. единица длины одна и таже _localMat = GetScaleMat() * GetRotMat() * GetTransMat(); @@ -274,7 +272,7 @@ void BaseSceneNode::ApplyTransformationChanged() const } void BaseSceneNode::WorldTransformationChanged() -{ +{ if (!_changes.test(ocWorldTransformation)) { _changes.set(ocWorldTransformation); @@ -287,7 +285,7 @@ void BaseSceneNode::WorldTransformationChanged() void BaseSceneNode::TransformationChanged() { - if (!_changes.test(ocTransformation)) + if (!_changes.test(ocTransformation)) { _changes.set(ocTransformation); WorldTransformationChanged(); @@ -344,7 +342,7 @@ void BaseSceneNode::Save(lsl::SWriter* writer) writer->WriteValue("animMode", _animMode); writer->WriteValue("animDuration", animDuration); - writer->WriteValue("frame", frame); + writer->WriteValue("frame", frame); writer->WriteValue("speedPos", speedPos, 3); writer->WriteValue("speedScale", speedScale, 3); @@ -388,7 +386,7 @@ void BaseSceneNode::Load(lsl::SReader* reader) animMode(AnimMode(val)); reader->ReadValue("animDuration", animDuration); - reader->ReadValue("frame", frame); + reader->ReadValue("frame", frame); reader->ReadValue("speedPos", speedPos, 3); reader->ReadValue("speedScale", speedScale, 3); @@ -447,7 +445,7 @@ void BaseSceneNode::Render(graph::Engine& engine, const D3DXMATRIX& worldMat) } void BaseSceneNode::Render(graph::Engine& engine) -{ +{ Render(engine, GetWorldMat()); } @@ -477,7 +475,7 @@ void BaseSceneNode::OnProgress(float deltaTime) } SetScale(GetScale() + speedScale * deltaTime); - } + } } void BaseSceneNode::StructureChanged() @@ -499,9 +497,9 @@ void BaseSceneNode::MoveAroundTarget(const D3DXVECTOR3& worldTarget, float pitch { // normalT2C points away from the direction the camera is looking D3DXVECTOR3 originalT2C = GetWorldPos() - worldTarget; - D3DXVECTOR3 normalT2C = originalT2C; + D3DXVECTOR3 normalT2C = originalT2C; float dist = D3DXVec3Length(&normalT2C); - D3DXVec3Normalize(&normalT2C, &normalT2C); + D3DXVec3Normalize(&normalT2C, &normalT2C); // normalRight points to the camera's right // the camera is pitching around this axis. D3DXVECTOR3 normalCameraRight; @@ -512,8 +510,8 @@ void BaseSceneNode::MoveAroundTarget(const D3DXVECTOR3& worldTarget, float pitch else D3DXVec3Normalize(&normalCameraRight, &normalCameraRight); // calculate the current pitch. - // 0 is looking down and PI is looking up - float pitchNow = acos(D3DXVec3Dot(&worldUp, &normalT2C)); + // 0 is looking down and PI is looking up + float pitchNow = acos(D3DXVec3Dot(&worldUp, &normalT2C)); pitchNow = lsl::ClampValue(pitchNow + pitchDelta, 0 + 0.025f, D3DX_PI - 0.025f); // create a new vector pointing up and then rotate it down // into the new position @@ -522,14 +520,14 @@ void BaseSceneNode::MoveAroundTarget(const D3DXVECTOR3& worldTarget, float pitch normalT2C = GetWorldUp(); D3DXMatrixRotationAxis(&pitchMat, &normalCameraRight, pitchNow); - D3DXMatrixRotationAxis(&turnMat, &worldUp, -turnDelta); + D3DXMatrixRotationAxis(&turnMat, &worldUp, -turnDelta); D3DXVec3TransformNormal(&normalT2C, &normalT2C, &pitchMat); D3DXVec3TransformNormal(&normalT2C, &normalT2C, &turnMat); normalT2C *= dist; D3DXVECTOR3 newPos = GetWorldPos() + (normalT2C - originalT2C); if (_parent) - _parent->WorldToLocalCoord(newPos, newPos); - SetPos(newPos); + _parent->WorldToLocalCoord(newPos, newPos); + SetPos(newPos); } void BaseSceneNode::AdjustDistToTarget(const D3DXVECTOR3& worldTarget, float distance) @@ -590,7 +588,7 @@ unsigned BaseSceneNode::RayCastIntersBB(const D3DXVECTOR3& wRayPos, const D3DXVE float tNear, tFar; AABB aabb = GetLocalAABB(includeChild); - return aabb.RayCastIntersect(rayPos, rayVec, tNear, tFar); + return aabb.RayCastIntersect(rayPos, rayVec, tNear, tFar); } unsigned BaseSceneNode::RayCastIntersBB(const D3DXVECTOR3& wRayPos, const D3DXVECTOR3& wRayVec, D3DXVECTOR3& wNearVec, D3DXVECTOR3& wFarVec, bool includeChild) const @@ -656,7 +654,7 @@ void BaseSceneNode::SetScene(SceneManager* scene, bool set) LSL_ASSERT(scene); bool find = std::find(_sceneList.begin(), _sceneList.end(), scene) != _sceneList.end(); - if (set && !find) + if (set && !find) InsertToScene(scene); else if (!set && find) @@ -679,7 +677,7 @@ void BaseSceneNode::SetParent(BaseSceneNode* value) { if (_parent) _parent->_children->Remove(this); - if (value) + if (value) value->_children->Insert(this); //Если задается нулевой родитель то авт. к корн. узлу //else @@ -760,7 +758,7 @@ void BaseSceneNode::SetDir(const D3DXVECTOR3& value) D3DXVec3Normalize(&_direction, &value); D3DXVECTOR3 right = GetRight(); - if (D3DXVec3Length(&right) < floatErrComp) + if (D3DXVec3Length(&right) < floatErrComp) { D3DXVec3Cross(&right, &ZVector, &_up); if (D3DXVec3Length(&right) < floatErrComp) @@ -775,7 +773,7 @@ void BaseSceneNode::SetDir(const D3DXVECTOR3& value) D3DXVECTOR3 BaseSceneNode::GetRight() const { ExtractRotation(rsVectors); - D3DXVECTOR3 tmp; + D3DXVECTOR3 tmp; D3DXVec3Cross(&tmp, &_up, &_direction); return tmp; } @@ -804,7 +802,7 @@ void BaseSceneNode::SetRight(const D3DXVECTOR3& value) } const D3DXVECTOR3& BaseSceneNode::GetUp() const -{ +{ ExtractRotation(rsVectors); return _up; } @@ -814,10 +812,10 @@ void BaseSceneNode::SetUp(const D3DXVECTOR3& value) ExtractRotation(rsVectors); if (D3DXVec3Length(&value) == 0) - _up = ZVector; + _up = ZVector; D3DXVec3Normalize(&_up, &value); D3DXVECTOR3 right = GetRight(); - if (D3DXVec3Length(&right) < floatErrComp) + if (D3DXVec3Length(&right) < floatErrComp) { D3DXVec3Cross(&right, &ZVector, &_up); if (D3DXVec3Length(&right) < floatErrComp) @@ -830,13 +828,13 @@ void BaseSceneNode::SetUp(const D3DXVECTOR3& value) } float BaseSceneNode::GetRollAngle() const -{ +{ ExtractRotation(rsEulerAngles); return _rollAngle; } void BaseSceneNode::SetRollAngle(float value) -{ +{ ExtractRotation(rsEulerAngles); _rollAngle = value; ChangedRotation(rsEulerAngles); @@ -844,12 +842,12 @@ void BaseSceneNode::SetRollAngle(float value) float BaseSceneNode::GetPitchAngle() const { - ExtractRotation(rsEulerAngles); + ExtractRotation(rsEulerAngles); return _pitchAngle; } void BaseSceneNode::SetPitchAngle(float value) -{ +{ ExtractRotation(rsEulerAngles); _pitchAngle = value; ChangedRotation(rsEulerAngles); @@ -857,7 +855,7 @@ void BaseSceneNode::SetPitchAngle(float value) float BaseSceneNode::GetTurnAngle() const { - ExtractRotation(rsEulerAngles); + ExtractRotation(rsEulerAngles); return _turnAngle; } @@ -887,7 +885,6 @@ D3DXMATRIX BaseSceneNode::GetScaleMat() const //if (D3DXVec3Length(&vec) < 0.0001f) // vec = IdentityVector * 0.0005f; - D3DXMATRIX scaleMat; D3DXMatrixScaling(&scaleMat, vec.x, vec.y, vec.z); return scaleMat; @@ -927,7 +924,7 @@ D3DXMATRIX BaseSceneNode::GetRotMat() const else { if (!_rotInvalidate.test(rsEulerAngles)) - { + { EulerAngles eulAng = Eul_(-_rollAngle, -_pitchAngle, -_turnAngle, EulOrdXYZs); Eul_ToHMatrix(eulAng, _rotMat.m); //D3DXMatrixRotationYawPitchRoll(&_rotMat, _pitchAngle, _rollAngle, _turnAngle); @@ -938,7 +935,7 @@ D3DXMATRIX BaseSceneNode::GetRotMat() const } } } - + _rotChanged = false; return _rotMat; } @@ -947,7 +944,7 @@ D3DXMATRIX BaseSceneNode::GetTransMat() const { D3DXMATRIX transMat; D3DXMatrixTranslation(&transMat, _position.x, _position.y, _position.z); - return transMat; + return transMat; } const D3DXMATRIX& BaseSceneNode::GetMat() const @@ -960,7 +957,7 @@ void BaseSceneNode::SetLocalMat(const D3DXMATRIX& value) { _direction = value.m[0]; D3DXVECTOR3 right = value.m[1]; - _up = value.m[2]; + _up = value.m[2]; _position = value.m[3]; D3DXVec3Normalize(&_direction, &_direction); @@ -972,7 +969,7 @@ void BaseSceneNode::SetLocalMat(const D3DXMATRIX& value) const D3DXMATRIX& BaseSceneNode::GetInvMat() const { - ApplyTransformationChanged(); + ApplyTransformationChanged(); return _invLocalMat; } @@ -984,7 +981,7 @@ const D3DXMATRIX& BaseSceneNode::GetWorldMat() const const D3DXMATRIX& BaseSceneNode::GetInvWorldMat() const { - ApplyTransformationChanged(); + ApplyTransformationChanged(); return _invWorldMat; } @@ -994,10 +991,10 @@ D3DXMATRIX BaseSceneNode::GetCombMat(CombMatType type) const { case cmtScaleTrans: return GetScaleMat() * GetTransMat(); - + case cmtScaleRot: return GetScaleMat() * GetTransMat(); - + case cmtRotTrans: return GetRotMat() * GetTransMat(); @@ -1016,14 +1013,14 @@ D3DXMATRIX BaseSceneNode::GetWorldCombMat(CombMatType type) const D3DXVECTOR3 vec; D3DXMATRIX scaleMat = GetWorldScale(); - + D3DXMATRIX transMat; vec = GetWorldPos(); D3DXMatrixTranslation(&transMat, vec.x, vec.y, vec.z); return scaleMat * transMat; } - + case cmtScaleRot: { D3DXMATRIX scaleMat = GetWorldScale(); @@ -1087,7 +1084,7 @@ void BaseSceneNode::SetWorldRot(const glm::quat& value) D3DXMATRIX BaseSceneNode::GetWorldScale() const { D3DXMATRIX res = IdentityMatrix; - D3DXMatrixMultiply(&res, &res, &GetInvWorldMat()); + D3DXMatrixMultiply(&res, &res, &GetInvWorldMat()); const BaseSceneNode* node = this; do @@ -1095,10 +1092,10 @@ D3DXMATRIX BaseSceneNode::GetWorldScale() const //Применяем опреацию масштабирования D3DXMatrixMultiply(&res, &res, &node->GetScaleMat()); //Переводим на уровень трансформации пониже - D3DXMatrixMultiply(&res, &res, &node->GetMat()); + D3DXMatrixMultiply(&res, &res, &node->GetMat()); node = node->GetParent(); - + } while (node); @@ -1146,11 +1143,11 @@ bool AABBAreEqual(const AABB& bb1, const AABB& bb2) const AABB& BaseSceneNode::GetLocalAABB(bool includeChild) const { if (_bbChanges.test(bbcStructure) || IsBBDyn()) - { + { _aabbLocal = LocalDimensions(); - _bbChanges.reset(bbcStructure); + _bbChanges.reset(bbcStructure); } - + if (includeChild) { if (_bbChanges.test(bbcIncludeChild) || IsNodeBBDyn()) @@ -1207,7 +1204,7 @@ const AABB& BaseSceneNode::GetAABBOfChildren() const childBB.Transform(child->GetMat()); _aabbOfChildren.Add(childBB); } - } + } } _bbChanges.reset(bbcChild); } @@ -1264,7 +1261,7 @@ float BaseSceneNode::GetFrame(float time) const return std::min(frame, 1.0f); case amRepeat: - return frame - static_cast(frame); + return frame - static_cast(frame); case amTile: return frame; @@ -1314,19 +1311,13 @@ void BaseSceneNode::animMode(BaseSceneNode::AnimMode value) } } - - - void SceneDummy::DoRender(graph::Engine& engine) { //Nothing } - - - Camera::Camera(): _changedCI(true) -{ +{ } void Camera::RenderFrustum(graph::Engine& engine, const D3DXMATRIX& invViewProj, const D3DXCOLOR& colorBB) @@ -1338,34 +1329,34 @@ void Camera::RenderFrustum(graph::Engine& engine, const D3DXMATRIX& invViewProj, D3DCOLOR linesColor = colorBB; VertexPD lines[24]; - lines[0] = VertexPD(frustumV[0], linesColor); - lines[1] = VertexPD(frustumV[1], linesColor); - lines[2] = VertexPD(frustumV[2], linesColor); + lines[0] = VertexPD(frustumV[0], linesColor); + lines[1] = VertexPD(frustumV[1], linesColor); + lines[2] = VertexPD(frustumV[2], linesColor); lines[3] = VertexPD(frustumV[3], linesColor); - - lines[4] = VertexPD(frustumV[4], linesColor); - lines[5] = VertexPD(frustumV[5], linesColor); - lines[6] = VertexPD(frustumV[6], linesColor); + + lines[4] = VertexPD(frustumV[4], linesColor); + lines[5] = VertexPD(frustumV[5], linesColor); + lines[6] = VertexPD(frustumV[6], linesColor); lines[7] = VertexPD(frustumV[7], linesColor); //near plane lines[8] = VertexPD(frustumV[1], linesColor); - lines[9] = VertexPD(frustumV[3], linesColor); - lines[10] = VertexPD(frustumV[3], linesColor); + lines[9] = VertexPD(frustumV[3], linesColor); + lines[10] = VertexPD(frustumV[3], linesColor); lines[11] = VertexPD(frustumV[7], linesColor); - lines[12] = VertexPD(frustumV[7], linesColor); - lines[13] = VertexPD(frustumV[5], linesColor); - lines[14] = VertexPD(frustumV[5], linesColor); + lines[12] = VertexPD(frustumV[7], linesColor); + lines[13] = VertexPD(frustumV[5], linesColor); + lines[14] = VertexPD(frustumV[5], linesColor); lines[15] = VertexPD(frustumV[1], linesColor); //far plane lines[16] = VertexPD(frustumV[0], linesColor); - lines[17] = VertexPD(frustumV[2], linesColor); - lines[18] = VertexPD(frustumV[2], linesColor); + lines[17] = VertexPD(frustumV[2], linesColor); + lines[18] = VertexPD(frustumV[2], linesColor); lines[19] = VertexPD(frustumV[6], linesColor); - lines[20] = VertexPD(frustumV[6], linesColor); - lines[21] = VertexPD(frustumV[4], linesColor); - lines[22] = VertexPD(frustumV[4], linesColor); + lines[20] = VertexPD(frustumV[6], linesColor); + lines[21] = VertexPD(frustumV[4], linesColor); + lines[22] = VertexPD(frustumV[4], linesColor); lines[23] = VertexPD(frustumV[0], linesColor); engine.GetContext().SetWorldMat(IdentityMatrix); @@ -1373,9 +1364,9 @@ void Camera::RenderFrustum(graph::Engine& engine, const D3DXMATRIX& invViewProj, engine.GetContext().SetRenderState(graph::rsLighting, false); engine.GetDriver().GetDevice()->SetFVF(VertexPD::fvf); - engine.GetDriver().GetDevice()->DrawPrimitiveUP(D3DPT_LINELIST, 12, lines, sizeof(VertexPD)); - - engine.GetContext().RestoreRenderState(graph::rsDiffuseMaterialSource); + engine.GetDriver().GetDevice()->DrawPrimitiveUP(D3DPT_LINELIST, 12, lines, sizeof(VertexPD)); + + engine.GetContext().RestoreRenderState(graph::rsDiffuseMaterialSource); engine.GetContext().RestoreRenderState(graph::rsLighting); } @@ -1426,7 +1417,7 @@ void Camera::AdjustNearFarPlane(const AABB& aabb, float nearDist, float farDist) { BuildContextInfo(); - _contextInfo.AdjustNearFarPlane(aabb, nearDist, farDist); + _contextInfo.AdjustNearFarPlane(aabb, nearDist, farDist); _desc.nearDist = _contextInfo.GetDesc().nearDist; _desc.farDist = _contextInfo.GetDesc().farDist; @@ -1524,11 +1515,8 @@ void Camera::SetStyle(CameraStyle value) } } - - - LightSource::LightSource(): _changedCI(true) -{ +{ } LightSource::~LightSource() @@ -1706,11 +1694,8 @@ void LightSource::SetShadowMap(graph::Tex2DResource* value) } } - - - SceneManager::SceneManager(): _sceneRender(0) -{ +{ } SceneManager::~SceneManager() @@ -1726,7 +1711,7 @@ void SceneManager::Render(graph::Engine& engine) if (_sceneRender) _sceneRender->Render(engine, this); //Рендерим сами, по Forward алгоритму - else + else for (Objects::iterator iter = _objects.begin(); iter != _objects.end(); ++iter) (*iter)->Render(engine); } @@ -1759,16 +1744,13 @@ void SceneManager::SetSceneRender(SceneRender* value) { if (_sceneRender != value) { - if (_sceneRender) + if (_sceneRender) _sceneRender->RemoveScene(this); if (value) value->InsertScene(this); } } - - - SceneRender::~SceneRender() { LSL_ASSERT(_sceneList.empty()); diff --git a/src/Rock3dEngine/source/graph/SceneNode.cpp b/src/Rock3dEngine/source/graph/SceneNode.cpp index 3ad55f45..0f3b68c2 100644 --- a/src/Rock3dEngine/source/graph/SceneNode.cpp +++ b/src/Rock3dEngine/source/graph/SceneNode.cpp @@ -12,9 +12,6 @@ const char* SceneNode::cNodeTypeStr[cNodeTypeEnd] = {"ntNode", "ntIVBMesh", "ntP SceneNode::ClassList SceneNode::classList; - - - SceneNode::SceneNode() { InitClassList(); diff --git a/src/Rock3dEngine/source/graph/ShadowMapRender.cpp b/src/Rock3dEngine/source/graph/ShadowMapRender.cpp index a5d07a7c..91331345 100644 --- a/src/Rock3dEngine/source/graph/ShadowMapRender.cpp +++ b/src/Rock3dEngine/source/graph/ShadowMapRender.cpp @@ -11,9 +11,6 @@ namespace graph const unsigned ShadowMapRender::cShadowMapSize = 2048; - - - void ShadowMapShader::DoBeginDraw(Engine& engine) { D3DXMATRIX shadowWVP = shadowViewProj; @@ -24,9 +21,6 @@ void ShadowMapShader::DoBeginDraw(Engine& engine) SetValue("matShadow", shadowWVP); } - - - ShadowMapRender::ShadowMapRender(): _numSplits(0), _splitSchemeLambda(0.7f), _disableCropLight(false), _maxFar(0), _curNumSplit(0), _beginShadowCaster(false), _beginShadowMapp(false), _beginFlags(0, 0), iLight(0), _lastDepthSurface(NULL) { _depthSurface = new graph::DepthStencilSurfaceResource(); @@ -416,9 +410,6 @@ void ShadowMapRender::SetMaxFar(float value) _maxFar = value; } - - - CombineLightMap::~CombineLightMap() { ClearLightMapList(); @@ -481,9 +472,6 @@ const CombineLightMap::LightMapList& CombineLightMap::GetLightMapList() const return _lightMapList; } - - - void MappingLightMap::Render(Engine& engine) { shader.Apply(engine, "techMappingLightMap", 0); diff --git a/src/Rock3dEngine/source/graph/SkyBox.cpp b/src/Rock3dEngine/source/graph/SkyBox.cpp index 47ed4cc4..05db6a17 100644 --- a/src/Rock3dEngine/source/graph/SkyBox.cpp +++ b/src/Rock3dEngine/source/graph/SkyBox.cpp @@ -15,9 +15,6 @@ const D3DXMATRIX skyFromLeftToRightCS(1.0f, 0.0f, 0.0f, 0.0f, 0.0f, -1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f); - - - SkyBox::SkyBox(): _coordSystem(csLeft) { _mesh.GetOrCreateData()->SetVertexCount(6); diff --git a/src/Rock3dEngine/source/graph/StdNode.cpp b/src/Rock3dEngine/source/graph/StdNode.cpp index 6b657d8d..9d2e9316 100644 --- a/src/Rock3dEngine/source/graph/StdNode.cpp +++ b/src/Rock3dEngine/source/graph/StdNode.cpp @@ -21,9 +21,6 @@ const float ScaleCoordSys::plSize = 1.5f; const D3DXCOLOR ScaleCoordSys::arCol[3] = {clrRed, clrGreen, clrBlue}; const D3DXCOLOR ScaleCoordSys::colSel = clrYellow; - - - MaterialNode::MaterialNode(): _libMat(0), _color(clrWhite), _offset(NullVector), _scale(IdentityVector), _rotate(NullQuaternion), _matChanged(true), _defMat(true), _cullMode((D3DCULL)0) { } @@ -327,9 +324,6 @@ void MaterialNode::SetCullMode(D3DCULL value) _cullMode = value; } - - - IVBMeshNode::IVBMeshNode(): _mesh(0), _meshId(-1) { } @@ -548,9 +542,6 @@ MaterialNode* IVBMeshNode::GetMaterial() return &material; } - - - MeshXNode::MeshXNode(): _mesh(0), _meshId(-1) { } @@ -754,9 +745,6 @@ MaterialNode* MeshXNode::GetMaterial() return &material; } - - - PlaneNode::PlaneNode(): _size(1.0f, 1.0f) { UpdateMesh(); @@ -833,9 +821,6 @@ void PlaneNode::SetSize(const glm::vec2& value) } } - - - Box::Box() { } @@ -936,9 +921,6 @@ void Box::Load(lsl::SReader* reader) material.Load(reader, this); } - - - Cylinder::Cylinder(): _color(clrWhite) { _mesh = new graph::IndexedVBMesh(); @@ -1074,9 +1056,6 @@ void ScreenSprite::OnFixUp(const FixUpNames& fixUpNames) material.OnFixUp(fixUpNames, this); } - - - MovCoordSys::MovCoordSys(): _curMove(dmNone) { for (int i = 0; i < 3; ++i) @@ -1164,9 +1143,6 @@ void MovCoordSys::DoRender(Engine& engine) //Выеделенные оси const bool isAxe[3] = {_curMove == dmXY || _curMove == dmXZ || _curMove == dmX, _curMove == dmXY || _curMove == dmYZ || _curMove == dmY, _curMove == dmXZ || _curMove == dmYZ || _curMove == dmZ}; - - - //Скалим перед рендером чтобы не было дерганий float dist = D3DXVec3Length(&(engine.GetContext().GetCamera().GetDesc().pos - GetWorldPos())); float scaleF = dist / 15.0f; @@ -1198,9 +1174,6 @@ void MovCoordSys::DoRender(Engine& engine) planeVert = cPlanes[i].plane; } - - - engine.GetContext().SetRenderState(graph::rsZWriteEnable, false); engine.GetContext().SetRenderState(graph::rsZEnable, false); engine.GetContext().SetRenderState(graph::rsLighting, false); @@ -1248,9 +1221,6 @@ MovCoordSys::DirMove MovCoordSys::OnMouseClick(const D3DXVECTOR3& rayStart, cons return CompDirMove(rayStart, rayVec); } - - - ScaleCoordSys::ScaleCoordSys(): _curMove(dmNone) { for (int i = 0; i < 3; ++i) @@ -1405,9 +1375,6 @@ ScaleCoordSys::DirMove ScaleCoordSys::OnMouseClick(const D3DXVECTOR3& rayStart, return CompDirMove(rayStart, rayVec, camPos - GetWorldPos()); } - - - void FillDataPlane(res::VertexData& vb, float width, float height, float u, float v) { vb.SetVertexCount(6); @@ -1529,7 +1496,6 @@ void FillDataCylinder(res::MeshData& mesh, float botRadius, float topRadius, flo mesh.Init(); } - } } \ No newline at end of file diff --git a/src/Rock3dEngine/source/graph/VideoResource.cpp b/src/Rock3dEngine/source/graph/VideoResource.cpp index 3c5c0ea4..b37d0931 100644 --- a/src/Rock3dEngine/source/graph/VideoResource.cpp +++ b/src/Rock3dEngine/source/graph/VideoResource.cpp @@ -91,9 +91,6 @@ Engine* VideoResource::GetEngine() return _engine; } - - - MemPoolResource::MemPoolResource(DWORD usage): _memoryPool(D3DPOOL_DEFAULT), _usage(usage) { } @@ -138,9 +135,6 @@ void MemPoolResource::SetUsage(DWORD value) } } - - - VBMesh::VBMesh(): MemPoolResource(D3DUSAGE_WRITEONLY), _data(0), _createData(false), _vb(0), primitiveType(D3DPT_TRIANGLELIST), _beginStream(0) { } @@ -261,9 +255,6 @@ IDirect3DVertexBuffer9* VBMesh::GetVB() const return _vb; } - - - IndexedVBMesh::IndexedVBMesh(): MemPoolResource(D3DUSAGE_WRITEONLY), _data(0), _createData(false), _beginStreamCnt(0), _vb(0), _ib(0) { } @@ -418,9 +409,6 @@ IDirect3DIndexBuffer9* IndexedVBMesh::GetIB() return _ib; } - - - MeshX::MeshX(): MemPoolResource(D3DUSAGE_WRITEONLY), _data(0), _createData(false), _d3dxMesh(0), _beginStreamCnt(0) { } @@ -575,9 +563,6 @@ const D3DXVECTOR3& MeshX::GetMaxPos() const return _data->vb.GetMaxPos(); } - - - TexResource::TexResource(DWORD usage): MemPoolResource(usage), _screenScale(0, 0), _levelCnt(1) //один основной уровень { } @@ -615,9 +600,6 @@ void TexResource::SetScreenScale(glm::vec2 value) } } - - - Tex2DResource::Tex2DResource(): TexResource(0), _texture(0), _data(0), _createData(false), _d3dxLoadUsed(false), _gui(false) { } @@ -846,9 +828,6 @@ glm::vec2 Tex2DResource::GetSize() return glm::vec2(static_cast(_data->GetWidth()), static_cast(_data->GetHeight())); } - - - TexCubeResource::TexCubeResource(): TexResource(0), _texture(0), _data(0), _createData(false), _d3dxLoadUsed(false) { } @@ -1041,9 +1020,6 @@ IDirect3DCubeTexture9* TexCubeResource::GetTex() return _texture; } - - - RenderTargetResource::RenderTargetResource(): _surface(0), _width(0), _height(0), _screenScale(0, 0), _format(D3DFMT_UNKNOWN), _lockable(false), _multisampleType(D3DMULTISAMPLE_NONE), _multisampleQuality(0) { SetDynamic(true); @@ -1160,9 +1136,6 @@ void RenderTargetResource::SetScreenScale(glm::vec2 value) } } - - - DepthStencilSurfaceResource::DepthStencilSurfaceResource(): _surface(0), _width(0), _height(0), _screenScale(0, 0), _format(D3DFMT_UNKNOWN), _discard(true), _multisampleType(D3DMULTISAMPLE_NONE), _multisampleQuality(0) { SetDynamic(true); @@ -1279,9 +1252,6 @@ void DepthStencilSurfaceResource::SetScreenScale(glm::vec2 value) } } - - - TextFont::TextFont(): _font(0) { } diff --git a/src/Rock3dEngine/source/graph/WaterPlane.cpp b/src/Rock3dEngine/source/graph/WaterPlane.cpp index 6c1fb663..993aee9d 100644 --- a/src/Rock3dEngine/source/graph/WaterPlane.cpp +++ b/src/Rock3dEngine/source/graph/WaterPlane.cpp @@ -76,9 +76,6 @@ void ReflRender::SetClipPlanes(const ClipPlanes& value) _clipPlanes = value; } - - - WaterPlane::WaterPlane(): _viewPos(NullVector), _cloudIntens(0.1f) { shader.SetValue("normalScale", 1.0f); diff --git a/src/Rock3dEngine/source/gui/GUI.cpp b/src/Rock3dEngine/source/gui/GUI.cpp index da43914a..4944e1f8 100644 --- a/src/Rock3dEngine/source/gui/GUI.cpp +++ b/src/Rock3dEngine/source/gui/GUI.cpp @@ -71,9 +71,6 @@ graph::Sampler2d& Material::GetSampler() return _sampler; } - - - Graphic::Graphic(Context* context): _context(context), _material(0), _pos(NullVec2), _size(100.0f, 100.0f), _active(true), _alpha(1.0f) { GetOrCreateMaterial(); @@ -160,9 +157,6 @@ void Graphic::SetAlpha(float value) _alpha = value; } - - - Plane::Plane(Context* context): _MyBase(context) { } @@ -172,9 +166,6 @@ void Plane::Draw() GetContext().DrawPlane(*this); } - - - BaseText::BaseText(Context* context): _MyBase(context), _font(0), _horAlign(haCenter), _vertAlign(vaCenter), _textAABB(0.0f), _textAABBChanged(false), _wordWrap(false), _clipEnable(false), _vScroll(0) { } @@ -283,9 +274,6 @@ void BaseText::SetVScroll(float value) _vScroll = value; } - - - Text::Text(Context* context): _MyBase(context) { } @@ -306,9 +294,6 @@ void Text::SetText(const std::string& value) TextAABBChanged(); } - - - TextW::TextW(Context* context): _MyBase(context) { } @@ -329,9 +314,6 @@ void TextW::SetText(const std::wstring& value) TextAABBChanged(); } - - - Graphic3d::Graphic3d(Context* context): _context(context), _parent(0), _pos(NullVector), _rot(NullQuaternion), _scale(IdentityVector), _material(0), _createMat(false), invertCullFace(false), _active(true) { GetOrCreateMaterial(); @@ -531,9 +513,6 @@ void Graphic3d::SetActive(bool value) _active = value; } - - - Dummy3d::Dummy3d(Context* context): _MyBase(context) { } @@ -552,9 +531,6 @@ void Dummy3d::Draw() //Nothing } - - - VBuf3d::VBuf3d(Context* context): _MyBase(context), _mesh(0), _createMesh(false) { } @@ -652,9 +628,6 @@ void Mesh3d::SetMeshId(int value) _meshId = value; } - - - Plane3d::Plane3d(Context *context) : _MyBase(context), _size(IdentityVector.x, IdentityVector.y) { } @@ -680,9 +653,6 @@ void Plane3d::SetSize(const glm::vec2 value) StructureChanged(); } - - - View3d::View3d(Context* context): _MyBase(context), _align(false) { _box = GetContext().CreateDummy3d(); @@ -715,9 +685,6 @@ void View3d::SetAlign(bool value) _align = value; } - - - Context::Context(graph::Engine* engine): _engine(engine), _invertY(false), _vpSize(0, 0) { } @@ -1181,9 +1148,6 @@ void Context::SetVPSize(const glm::vec2& value) _vpSize = value; } - - - Widget::Widget(Manager* manager): _manager(manager), _topmostLevel(0), _visible(true), _data(0), _parent(0), _anchor(waNone), _align(waNone), _enabled(true), _pos(NullVec2), _scale(IdentityVec2), _rot(0), _coord3d(false), _pos3d(NullVector), _size(NullVec2), _alignChanged(false), _isMouseDown(false), _isMouseOver(false), _isMouseEnter(false), _focused(false), _disposed(false), _modal(false), _tag(0) { ignorePause(true); @@ -2236,17 +2200,11 @@ glm::vec2 Widget::GetAlignPos(const glm::vec2& size, Anchor align) } } - - - Dummy::Dummy(Manager* manager): _MyBase(manager) { SetSize(IdentityVec2); } - - - WidgetCont::WidgetCont(Manager* manager): _MyBase(manager) { _cont = GetManager().CreateDummy(); @@ -2265,9 +2223,6 @@ Dummy* WidgetCont::GetCont() return _cont; } - - - PlaneFon::PlaneFon(Manager* manager): _MyBase(manager) { _plane = GetContext().CreatePlane(); @@ -2301,9 +2256,6 @@ void PlaneFon::SetMaterial(Material* value) _plane->SetMaterial(value); } - - - Label::Label(Manager* manager): _MyBase(manager), _font(0), _horAlign(Text::haCenter), _vertAlign(Text::vaCenter), _wordWrap(false), _text(0), _textW(0), _baseText(0), _vScroll(0) { _material = new Material(); @@ -2538,9 +2490,6 @@ void Label::SetVScroll(float value) _baseText->SetVScroll(_vScroll); } - - - Button::Button(Manager* manager): _MyBase(manager), _style(bsSimple), _selSize(0, 0), _selected(false), _fonMaterial(0), _selMaterial(0), _textMaterial(NULL), _textSelMaterial(NULL), _createFon(false), _createSel(false), _createText(false), _createTextSel(false), _selection(false), _fadeIn(-1), _fadeOut(-1) { _fon = GetContext().CreatePlane(); @@ -2879,9 +2828,6 @@ bool Button::IsSelected() const return _selected; } - - - StepperBox::StepperBox(Manager* manager): Widget(manager), _selIndex(-1), _itemsLoop(false) { _childEvent = new ChildEvent(this); @@ -3134,9 +3080,6 @@ void StepperBox::SetItemsLoop(bool value) ApplySelection(); } - - - DropBox::DropBox(Manager* manager): _MyBase(manager), _showItems(false), _fonMaterial(0), _textMaterial(0), _selMaterial(0), _itemsFon(0), _selInd(-1) { _itemsEvent = new ItemsEvent(this); @@ -3341,7 +3284,6 @@ void DropBox::SetItems(const StringList& value) StructureChanged(); } - int DropBox::GetSelInd() const { return _selInd; @@ -3410,9 +3352,6 @@ Material& DropBox::GetSelMaterial() return *_selMaterial; } - - - TrackBar::TrackBar(Manager* manager): _MyBase(manager), _dragOff(0), _grag(false) { _bar = GetContext().CreatePlane(); @@ -3632,9 +3571,6 @@ void ViewPort3d::SetAlign(bool value) _view3d->SetAlign(value); } - - - ScrollBox::ScrollBox(Manager* manager): _MyBase(manager), _arrowSize(20.0f, 20.0f), _arrowSpace(10.0f, 10.0f), _arrowScrollStep(20.0f, 20.0f) { _myEvent = new MyEvent(this); @@ -3697,7 +3633,6 @@ bool ScrollBox::MyEvent::OnClick(Widget* sender, const MouseClick& mClick) scrollDown.y = Round(scrollDown.y); scrollDown *= _scrollBox->_arrowScrollStep; - for (int i = 0; i < cScrollDirEnd; ++i) if (_scrollBox->_scrollBut[i] == sender) switch (i) { @@ -3900,9 +3835,6 @@ Material& ScrollBox::GetArrowSelMaterial() return *_arrowSelMat; } - - - ListBox::ListBox(Manager* manager): _MyBase(manager), _itemSize(30.0f, 30.0f), _itemSpace(5.0f, 5.0f), _selItem(0), _fon(0), _frameMaterial(0) { _event = new MyEvent(this); @@ -4350,9 +4282,6 @@ glm::vec2 ListBox::GetScrollSpace() const return 2.0f * GetArrowSize() + _itemSpace; } - - - ProgressBar::ProgressBar(Manager* manager): _MyBase(manager), _style(psHorizontal), _progress(1.0f), _backEnabled(false) { _back = GetContext().CreatePlane(); @@ -4466,9 +4395,6 @@ void ProgressBar::SetBackEnabled(bool value) } } - - - StreakBar::StreakBar(Manager* manager): _MyBase(manager), _streak(0), _createStreak(false), _streakMax(1), _streakCount(0) { GetOrCreateStreak(); @@ -4578,9 +4504,6 @@ void StreakBar::SetStreakCount(unsigned value) UpdateStreaks(); } - - - ChargeBar::ChargeBar(Manager* manager): _MyBase(manager), _space(10.0f, 10.0f) { _myEvent = new MyEvent(this); @@ -4699,9 +4622,6 @@ void ChargeBar::SetCharge(unsigned value) _bar->SetStreakCount(value); } - - - VolumeBar::VolumeBar(Manager* manager): Widget(manager), _volume(0.0f), _stepCount(10) { _childEvent = new ChildEvent(this); @@ -4918,9 +4838,6 @@ void VolumeBar::SetStepCount(int value) ApplyVolume(); } - - - ColorBox::ColorBox(Manager* manager): _MyBase(manager), _color(clrWhite), _select(false) { _frame = GetContext().CreatePlane(); @@ -5080,9 +4997,6 @@ AABB2 ColorBox::GetCheckAABB() const return aabb; } - - - ColorList::ColorList(Manager* manager): _MyBase(manager), _space(NullVec2) { _myEvent = new MyEvent(this); @@ -5279,9 +5193,6 @@ void ColorList::SetSpace(const glm::vec2& value) ApplyChanges(); } - - - Grid::Grid(Manager* manager): Widget(manager), _style(gsHorizontal), _cellSize(IdentityVec2), _maxCellsOnLine(0), _hideInvisible(true) { } @@ -5386,9 +5297,6 @@ void Grid::hideInvisible(bool value) _hideInvisible = value; } - - - Manager::Manager(graph::Engine* engine): _engine(engine), _camera3d(0), _root(0), _clipWidget(0), _safeMode(false), _invertY(true) { LSL_ASSERT(_engine); diff --git a/src/Rock3dEngine/source/px/Physx.cpp b/src/Rock3dEngine/source/px/Physx.cpp index 85e7cf36..48edd632 100644 --- a/src/Rock3dEngine/source/px/Physx.cpp +++ b/src/Rock3dEngine/source/px/Physx.cpp @@ -32,9 +32,6 @@ unsigned Manager::_sdkRefCnt = 0; Shapes::ClassList Shapes::classList; - - - Scene::Scene(Manager* manager): _manager(manager), _lastDeltaTime(0) { _contactModify = new ContactModify(this); @@ -254,9 +251,6 @@ NxScene* Scene::GetNxScene() return _nxScene; } - - - Manager::Manager() { InitSDK(); @@ -308,7 +302,6 @@ void Manager::InitSDK() Manager::_nxCooking->NxInitCooking(); } - } void Manager::ReleaseSDK() @@ -368,9 +361,6 @@ NxCookingInterface& Manager::GetCooking() return *_nxCooking; } - - - TriangleMesh::TriangleMesh(): _meshData(0) { } @@ -519,7 +509,6 @@ NxConvexMesh* TriangleMesh::GetOrCreateConvex(const D3DXVECTOR3& scale, int id) convexDesc.triangles = desc.triangles; convexDesc.flags |= NX_CF_COMPUTE_CONVEX; - MemoryWriteBuffer buf; if (!px::GetCooking().NxCookConvexMesh(convexDesc, buf)) throw lsl::Error("Error cooking TriangleMesh"); @@ -580,9 +569,6 @@ bool TriangleMesh::IsEmpty() const return _meshList.empty(); } - - - Shape::Shape(Shapes* owner): _owner(owner), _type(stUnknown), _nxShape(0), _pos(NullVector), _rot(NullQuaternion), _scale(IdentityVector), _materialIndex(0), _density(1.0f), _skinWidth(-1), _group(0) { SetType(Type); @@ -800,9 +786,6 @@ void Shape::SetGroup(unsigned value) } } - - - PlaneShape::PlaneShape(Shapes* owner): _MyBase(owner), _normal(ZVector), _dist(0.0f) { SetType(Type); @@ -878,9 +861,6 @@ void PlaneShape::SetDist(float value) GetNxShape()->setPlane(NxVec3(value), _dist); } - - - BoxShape::BoxShape(Shapes* owner): _MyBase(owner), _dimensions(NullVector) { SetType(Type); @@ -947,9 +927,6 @@ void BoxShape::SetDimensions(const D3DXVECTOR3& value) } } - - - SphereShape::SphereShape(Shapes* owner): _MyBase(owner), _radius(1.0f) { SetType(Type); @@ -1009,9 +986,6 @@ void SphereShape::SetRadius(float value) GetNxShape()->setRadius(value); } - - - CapsuleShape::CapsuleShape(Shapes* owner): _MyBase(owner), _radius(1.0f), _height(1.0f), _capsuleFlags(0) { SetType(Type); @@ -1105,9 +1079,6 @@ void CapsuleShape::SetCapsuleFlags(unsigned value) ReloadNxShape(); } - - - TriangleMeshShape::TriangleMeshShape(Shapes* owner): _MyBase(owner), _mesh(0), _meshId(-1), _nxMesh(0) { SetType(Type); @@ -1213,9 +1184,6 @@ int TriangleMeshShape::GetMeshId() return _meshId; } - - - ConvexShape::ConvexShape(Shapes* owner): _MyBase(owner), _mesh(0), _meshId(-1), _nxMesh(0) { SetType(Type); @@ -1315,9 +1283,6 @@ int ConvexShape::GetMeshId() return _meshId; } - - - WheelShape::WheelShape(Shapes* owner): _MyBase(owner), _contactModify(0) { SetType(Type); @@ -1580,9 +1545,6 @@ void WheelShape::SetContactModify(ContactModify* value) } } - - - Body::Body(Actor* actor): _actor(actor) { } @@ -1643,9 +1605,6 @@ void Body::SetDesc(const NxBodyDesc& value) } } - - - Shapes::Shapes(Actor* owner): _owner(owner) { SetClassList(&classList); @@ -1684,9 +1643,6 @@ Actor* Shapes::GetActor() return _owner; } - - - Actor::Actor(ActorUser* owner): _owner(owner), _nxActor(0), _scene(0), _parent(0), _body(0), _pos(NullVector), _rot(NullQuaternion), _scale(IdentityVector), storeCoords(true) { _shapes = new Shapes(this); diff --git a/src/Rock3dEngine/source/px/Stream.cpp b/src/Rock3dEngine/source/px/Stream.cpp index ffb88fec..35ca31d1 100644 --- a/src/Rock3dEngine/source/px/Stream.cpp +++ b/src/Rock3dEngine/source/px/Stream.cpp @@ -105,9 +105,6 @@ NxStream& UserStream::storeBuffer(const void* buffer, NxU32 size) return *this; } - - - MemoryWriteBuffer::MemoryWriteBuffer() : currentSize(0), maxSize(0), data(NULL) { } @@ -169,7 +166,6 @@ NxStream& MemoryWriteBuffer::storeBuffer(const void* buffer, NxU32 size) return *this; } - MemoryReadBuffer::MemoryReadBuffer(const NxU8* data) : buffer(data) { } diff --git a/src/Rock3dEngine/source/res/D3DXImageFile.cpp b/src/Rock3dEngine/source/res/D3DXImageFile.cpp index da369fcf..775e3d14 100644 --- a/src/Rock3dEngine/source/res/D3DXImageFile.cpp +++ b/src/Rock3dEngine/source/res/D3DXImageFile.cpp @@ -12,9 +12,6 @@ namespace res graph::RenderDriver* D3DXImageFile::driver; graph::RenderDriver* D3DXCubeImageFile::driver; - - - void D3DXImageFile::RegistredFile() { ImageResource::GetResFormats().Add(".jpg"); @@ -79,9 +76,6 @@ void D3DXImageFile::SaveToStream(const Resource& inData, std::ostream& stream) { } - - - void D3DXCubeImageFile::RegistredFile() { CubeImageResource::GetResFormats().Add(".dds"); diff --git a/src/Rock3dEngine/source/res/GraphResource.cpp b/src/Rock3dEngine/source/res/GraphResource.cpp index 77580866..eeefa51f 100644 --- a/src/Rock3dEngine/source/res/GraphResource.cpp +++ b/src/Rock3dEngine/source/res/GraphResource.cpp @@ -24,9 +24,6 @@ MeshData::ResFormats meshResFormats; ImageResource::ResFormats imageResFormats; CubeImageResource::ResFormats cubeImageResFormats; - - - VertexP::VertexP() { } @@ -35,9 +32,6 @@ VertexP::VertexP(const D3DXVECTOR3& mPos): pos(mPos) { } - - - VertexPD::VertexPD() { } @@ -46,9 +40,6 @@ VertexPD::VertexPD(D3DXVECTOR3 position, D3DCOLOR diffuseColor): pos(position), { } - - - VertexPN::VertexPN() { } @@ -57,9 +48,6 @@ VertexPN::VertexPN(D3DXVECTOR3 position, D3DXVECTOR3 normal): pos(position), nor { } - - - VertexPT::VertexPT() { } @@ -68,9 +56,6 @@ VertexPT::VertexPT(D3DXVECTOR3 position, glm::vec2 texCoord): pos(position), tex { } - - - VertexPNT::VertexPNT() { } @@ -79,9 +64,6 @@ VertexPNT::VertexPNT(const D3DXVECTOR3& position, const D3DXVECTOR3& normal, con { } - - - ScreenVertex::ScreenVertex() { } @@ -90,9 +72,6 @@ ScreenVertex::ScreenVertex(const D3DXVECTOR4& position, const glm::vec2& texCoor { } - - - VertexData::VertexData(): _vertexCount(0), _vertexSize(0), _screenRHW(false) { } @@ -331,9 +310,6 @@ VertexIter VertexData::operator[](unsigned index) return VertexIter(index, this); } - - - VertexIter::VertexIter(): _index(0), _owner(0) { } @@ -431,9 +407,6 @@ bool VertexIter::operator!=(const VertexIter& value) return _index != value._index; } - - - IndexData::IndexData(): _indexCount(0), _indexFormat(D3DFMT_UNKNOWN) { } @@ -470,9 +443,6 @@ unsigned IndexData::GetSize() const return _indexCount * GetIndexSize(); } - - - TriFaceData::TriFaceData(): _faceCount(0), _indexFormat(D3DFMT_UNKNOWN) { } @@ -525,10 +495,6 @@ unsigned TriFaceData::GetFaceSize() const return GetElementFormatSize(_indexFormat) * 3; } - - - - FaceGroup::FaceGroup(): minPos(NullVector), maxPos(NullVector) { } @@ -537,17 +503,11 @@ FaceGroup::FaceGroup(int startFace, int faceCount, int startVertex, int vertexCo { } - - - MeshData::ResFormats& MeshData::GetResFormats() { return meshResFormats; } - - - MeshData::MeshData() { } @@ -703,17 +663,11 @@ void MeshData::CalcTangentSpace() } } - - - ImageResource::ResFormats& ImageResource::GetResFormats() { return imageResFormats; } - - - ImageResource::ImageResource(): _size(0), _width(0), _height(0), _format(D3DFMT_UNKNOWN) { } @@ -809,17 +763,11 @@ bool ImageResource::IsCompressed() const return false; } - - - CubeImageResource::ResFormats& CubeImageResource::GetResFormats() { return cubeImageResFormats; } - - - CubeImageResource::CubeImageResource() { } @@ -829,9 +777,6 @@ void CubeImageResource::DoLoadFromStream(std::istream& stream, const std::string GetResFormats().GetInstance(fileExt).LoadFromStream(*this, stream); } - - - unsigned GetVertexFVFSize(DWORD fvf) { unsigned sz = 0; diff --git a/src/Rock3dEngine/source/res/R3DFile.cpp b/src/Rock3dEngine/source/res/R3DFile.cpp index 3f912593..12dd10fa 100644 --- a/src/Rock3dEngine/source/res/R3DFile.cpp +++ b/src/Rock3dEngine/source/res/R3DFile.cpp @@ -13,9 +13,6 @@ void R3DMeshFile::RegistredFile() MeshData::GetResFormats().Add(".r3d"); } - - - void R3DMeshFile::LoadFromStream(Resource& outData, std::istream& stream) { int version; diff --git a/src/Rock3dGame/header/game/AICar.h b/src/Rock3dGame/header/game/AICar.h index 2b641d59..5ce541ef 100644 --- a/src/Rock3dGame/header/game/AICar.h +++ b/src/Rock3dGame/header/game/AICar.h @@ -76,7 +76,6 @@ class AICar: IGameUser float placeMineRandom; }; - //Состояние контроля за машиной с учетом пути, обгона, стрельбы struct ControlState { diff --git a/src/Rock3dGame/header/game/AchievmentModel.h b/src/Rock3dGame/header/game/AchievmentModel.h index 6aba5889..1325feca 100644 --- a/src/Rock3dGame/header/game/AchievmentModel.h +++ b/src/Rock3dGame/header/game/AchievmentModel.h @@ -379,9 +379,6 @@ class AchievmentModel: public lsl::Component CondClasses& condClasses(); }; - - - template _Type* AchievmentModel::Add(const std::string& name) { return lsl::StaticCast<_Type*>(Add(_classes.GetByClass<_Type>().GetKey(), name)); diff --git a/src/Rock3dGame/header/game/GameBase.h b/src/Rock3dGame/header/game/GameBase.h index 972302b6..f1b2570f 100644 --- a/src/Rock3dGame/header/game/GameBase.h +++ b/src/Rock3dGame/header/game/GameBase.h @@ -488,9 +488,6 @@ class Behaviors: public lsl::Collection _Type* Behaviors::Find() { return lsl::StaticCast<_Type*>(Find(classList.GetByClass<_Type>().GetKey())); diff --git a/src/Rock3dGame/header/game/Map.h b/src/Rock3dGame/header/game/Map.h index 5e28304b..a11fb905 100644 --- a/src/Rock3dGame/header/game/Map.h +++ b/src/Rock3dGame/header/game/Map.h @@ -66,9 +66,6 @@ class Map: public lsl::Component game::Trace& GetTrace(); }; - - - template MapObj& Map::AddMapObj(MapObjLib::Category category) { return _mapObjList[category]->Add<_Type>(); diff --git a/src/Rock3dGame/header/game/MapObj.h b/src/Rock3dGame/header/game/MapObj.h index 8c8a6c18..2b68a492 100644 --- a/src/Rock3dGame/header/game/MapObj.h +++ b/src/Rock3dGame/header/game/MapObj.h @@ -221,9 +221,6 @@ class MapObjects: public lsl::Collection using _MyBase::UnlockDestr; }; - - - template _Class& MapObj::GetGameObj() { LSL_ASSERT(_classList); diff --git a/src/Rock3dGame/header/game/RecordLib.h b/src/Rock3dGame/header/game/RecordLib.h index e7e00c54..84bc48e2 100644 --- a/src/Rock3dGame/header/game/RecordLib.h +++ b/src/Rock3dGame/header/game/RecordLib.h @@ -147,9 +147,6 @@ template class RecordList: public lsl::Container<_Record*>, publi virtual void Load(lsl::SReader* reader); }; - - - template void RecordList<_Record>::Save(lsl::SWriter* writer) { unsigned i = 0; diff --git a/src/Rock3dGame/header/net/SteamCommon.h b/src/Rock3dGame/header/net/SteamCommon.h index b9187085..78a062ca 100644 --- a/src/Rock3dGame/header/net/SteamCommon.h +++ b/src/Rock3dGame/header/net/SteamCommon.h @@ -142,7 +142,6 @@ struct MsgP2PSendingTicket_t MsgP2PSendingTicket_t() : m_dwMessageType( k_EMsgP2PSendingTicket ) {} DWORD GetMessageType() { return m_dwMessageType; } - void SetToken( const char *pchToken, uint32 unLen ) { m_uTokenLen = unLen; memcpy( m_rgchToken, pchToken, std::min( unLen, sizeof( m_rgchToken ) ) ); } uint32 GetTokenLen() { return m_uTokenLen; } const char *GetTokenPtr() { return m_rgchToken; } diff --git a/src/Rock3dGame/header/net/p2pauth.h b/src/Rock3dGame/header/net/p2pauth.h index 5c523525..3e3d2bd2 100644 --- a/src/Rock3dGame/header/net/p2pauth.h +++ b/src/Rock3dGame/header/net/p2pauth.h @@ -81,7 +81,6 @@ class CP2PAuthedGame CNetworkTransport *m_pNetworkTransport; }; - //----------------------------------------------------------------------------- // Purpose: trivial wrapper on network messaging //----------------------------------------------------------------------------- diff --git a/src/Rock3dGame/header/video/video.h b/src/Rock3dGame/header/video/video.h index ef894db5..a52776fe 100644 --- a/src/Rock3dGame/header/video/video.h +++ b/src/Rock3dGame/header/video/video.h @@ -64,7 +64,6 @@ class CVMR7 : public CVideoRenderer void SetFullScreen(bool value); }; - // Manages the VMR-9 video renderer filter. class CVMR9 : public CVideoRenderer @@ -85,7 +84,6 @@ class CVMR9 : public CVideoRenderer void SetFullScreen(bool value); }; - // Manages the EVR video renderer filter. class CEVR : public CVideoRenderer diff --git a/src/Rock3dGame/source/edit/EditDataBase.cpp b/src/Rock3dGame/source/edit/EditDataBase.cpp index 7f486321..215f59eb 100644 --- a/src/Rock3dGame/source/edit/EditDataBase.cpp +++ b/src/Rock3dGame/source/edit/EditDataBase.cpp @@ -4,7 +4,6 @@ #include "edit\DataBase.h" #include "edit\Edit.h" - namespace r3d { @@ -35,9 +34,6 @@ void MapObjRec::SetName(const std::string& value) GetInst()->SetName(value); } - - - RecordNode::RecordNode(Inst* inst): ExternImpl(inst) { } @@ -101,16 +97,10 @@ const std::string& RecordNode::GetName() const return GetInst()->GetName(); } - - - MapObjLib::MapObjLib(Inst* inst): RecordNode(inst) { } - - - DataBase::DataBase(Edit* edit): _edit(edit) { } diff --git a/src/Rock3dGame/source/edit/EditMap.cpp b/src/Rock3dGame/source/edit/EditMap.cpp index c9ad0a4b..8c7ca75d 100644 --- a/src/Rock3dGame/source/edit/EditMap.cpp +++ b/src/Rock3dGame/source/edit/EditMap.cpp @@ -6,7 +6,6 @@ #include "edit\Trace.h" - namespace r3d { @@ -16,9 +15,6 @@ namespace edit const D3DXCOLOR Map::bbColor(clrRed); const D3DXCOLOR Map::selColor(clrGreen); - - - MapObj::MapObj(Inst* inst): ExternImpl(inst) { } @@ -66,9 +62,6 @@ IMapObjRecRef MapObj::GetRecord() return IMapObjRecRef(ext, ext); } - - - Map::Map(Edit* edit): _edit(edit), _showBB(true) { _trace = new Trace(&GetInst()->GetTrace(), edit); diff --git a/src/Rock3dGame/source/edit/EditTrace.cpp b/src/Rock3dGame/source/edit/EditTrace.cpp index 7d009878..8e880c90 100644 --- a/src/Rock3dGame/source/edit/EditTrace.cpp +++ b/src/Rock3dGame/source/edit/EditTrace.cpp @@ -4,7 +4,6 @@ #include "edit\Trace.h" #include "edit\Edit.h" - namespace r3d { @@ -35,9 +34,6 @@ void WayPoint::SetSize(float value) GetInst()->SetSize(value); } - - - WayNode::WayNode(Inst* inst): ExternImpl(inst) { } @@ -48,9 +44,6 @@ IWayPathRef WayNode::GetPath() return IWayPathRef(path, path); } - - - WayPath::WayPath(Inst* inst): ExternImpl(inst) { } @@ -80,9 +73,6 @@ void WayPath::Next(IWayNodeRef& ref) ref.Reset(node, node); } - - - Trace::Trace(Inst* inst, Edit* edit): ExternImpl(inst), _edit(edit), _enableVisualize(false) { game::Trace& trace = *GetInst(); diff --git a/src/Rock3dGame/source/edit/SceneControl.cpp b/src/Rock3dGame/source/edit/SceneControl.cpp index c00519d6..9aab4b0d 100644 --- a/src/Rock3dGame/source/edit/SceneControl.cpp +++ b/src/Rock3dGame/source/edit/SceneControl.cpp @@ -12,9 +12,6 @@ namespace edit const SceneControl::DirMove DMCoordMoveToSC[graph::MovCoordSys::cDirMoveEnd] = {SceneControl::dmNone, SceneControl::dmX, SceneControl::dmY, SceneControl::dmZ, SceneControl::dmXY, SceneControl::dmXZ, SceneControl::dmYZ}; - - - SceneControl::SceneControl(Edit* edit): _edit(edit), _selMode(smNone), _selNode(0), _linkBB(false), _actor(0), _movCoordSys(0), _scaleCoordSys(0) { _control = new Control(this); @@ -284,7 +281,6 @@ void SceneControl::ComputeLink(INode* node, const D3DXVECTOR3& pos, D3DXVECTOR3& D3DXVECTOR3 oldPos = node->GetPos(); D3DXVECTOR3 offset = pos - oldPos; - D3DXVECTOR3 newOff = offset; bool repeat = false; unsigned repCnt = 0; diff --git a/src/Rock3dGame/source/game/AICar.cpp b/src/Rock3dGame/source/game/AICar.cpp index 3962fc74..d9368f57 100644 --- a/src/Rock3dGame/source/game/AICar.cpp +++ b/src/Rock3dGame/source/game/AICar.cpp @@ -15,9 +15,6 @@ const float AICar::cMaxTimeBlocking = 1.0f; const float AICar::cMaxVisibleDistShot = 100.0f; - - - AICar::AICar(Player* player): _path(_player->GetMap()->GetTrace().cTrackCnt), _player(player), _enbAI(true) { _player->GetRace()->GetGame()->RegUser(this); diff --git a/src/Rock3dGame/source/game/AIPlayer.cpp b/src/Rock3dGame/source/game/AIPlayer.cpp index 7b81f214..f079996e 100644 --- a/src/Rock3dGame/source/game/AIPlayer.cpp +++ b/src/Rock3dGame/source/game/AIPlayer.cpp @@ -64,9 +64,6 @@ AICar* AIPlayer::GetCar() return _car; } - - - AISystem::AISystem(Race* race): _race(race), _aiDebug(0) { } @@ -224,7 +221,6 @@ void AISystem::ComputeTracks(float deltaTime) //LSL_ASSERT(!tChain->empty() && tChain->size() <= cTrackCnt); LSL_ASSERT(!tChain->empty()); - struct Pred: public std::binary_function { bool operator()(Link* link1, Link* link2) @@ -335,9 +331,6 @@ void AISystem::FreeDebug() lsl::SafeDelete(_aiDebug); } - - - AIDebug::AIDebug(AISystem* ai, AIPlayer* aiPlayer): _ai(ai), _aiPlayer(aiPlayer) { _aiPlayer->AddRef(); @@ -394,9 +387,6 @@ void AIDebug::GrActor::DoRender(graph::Engine& engine) if (!_debug->_aiPlayer->_car) return; - - - AISystem* ai = _debug->_ai; engine.GetContext().SetRenderState(graph::rsZWriteEnable, false); @@ -518,9 +508,6 @@ void AIDebug::GrActor::DoRender(graph::Engine& engine) engine.GetContext().RestoreRenderState(graph::rsZEnable); engine.GetContext().RestoreRenderState(graph::rsLighting); - - - std::stringstream sstream; std::stringstream sstream2; @@ -538,12 +525,6 @@ void AIDebug::GrActor::DoRender(graph::Engine& engine) sstream << '\n'; } - - - - - - static bool speed100 = false; static bool speed150 = false; static bool speed200 = false; @@ -687,7 +668,6 @@ void AIDebug::GrActor::DoRender(graph::Engine& engine) sstream2 << "9. kSteer = " << kSteer << '\n'; sstream2 << '\n'; - // sstream2 << "slip wheels" << '\n'; int ind = 0; @@ -718,8 +698,6 @@ void AIDebug::GrActor::DoRender(graph::Engine& engine) if (GetAsyncKeyState(VK_NEXT)) numPage = std::max(numPage - 1, 0); - - int addVal = 0; if (GetAsyncKeyState(VK_ADD)) addVal = 1; diff --git a/src/Rock3dGame/source/game/AchievmentModel.cpp b/src/Rock3dGame/source/game/AchievmentModel.cpp index 54e06ea1..c039a89e 100644 --- a/src/Rock3dGame/source/game/AchievmentModel.cpp +++ b/src/Rock3dGame/source/game/AchievmentModel.cpp @@ -35,9 +35,6 @@ const std::string AchievmentModel::cSurvival = "survival"; const std::string AchievmentModel::cFirstBlood = "firstBlood"; const std::string AchievmentModel::cArmored = "armored"; - - - Achievment::Achievment(const Desc& desc): _state(asLocked), _price(0) { _owner = desc.owner; @@ -138,9 +135,6 @@ Race* Achievment::race() const return _owner->race(); } - - - AchievmentMapObj::AchievmentMapObj(const Desc& desc): Achievment(desc) { } @@ -195,9 +189,6 @@ const AchievmentMapObj::Records& AchievmentMapObj::GetRecords() const return _records; } - - - AchievmentGamer::AchievmentGamer(const Desc& desc): Achievment(desc), _gamerId(0) { } @@ -226,9 +217,6 @@ void AchievmentGamer::SetGamerId(int value) _gamerId = value; } - - - AchievmentCondition::AchievmentCondition(const Desc& desc): _reward(0), _iterNum(0), _iterCount(1) { _owner = desc.owner; @@ -336,9 +324,6 @@ void AchievmentCondition::reward(int value) _reward = value; } - - - AchievmentConditionBonus::AchievmentConditionBonus(const Desc& desc): AchievmentCondition(desc), _bonusCount(0), _bonusTotalCount(0) { } @@ -403,9 +388,6 @@ void AchievmentConditionBonus::bonusType(GameObject::BonusType value) _bonusType = value; } - - - AchievmentConditionSpeedKill::AchievmentConditionSpeedKill(const Desc& desc): AchievmentCondition(desc), _time(0), _curKills(0), _killsNum(0), _killsTime(0) { RegProgressEvent(); @@ -489,9 +471,6 @@ void AchievmentConditionSpeedKill::killsTime(float value) _killsTime = value; } - - - AchievmentConditionRaceKill::AchievmentConditionRaceKill(const Desc& desc): AchievmentCondition(desc), _curKills(0), _killsNum(0) { } @@ -544,9 +523,6 @@ void AchievmentConditionRaceKill::killsNum(int value) _killsNum = value; } - - - AchievmentConditionLapPass::AchievmentConditionLapPass(const Desc& desc): AchievmentCondition(desc), _place(1), _lapCount(0) { } @@ -603,9 +579,6 @@ void AchievmentConditionLapPass::place(int value) _place = value; } - - - AchievmentConditionDodge::AchievmentConditionDodge(const Desc& desc): AchievmentCondition(desc), _damage(0) { } @@ -648,9 +621,6 @@ void AchievmentConditionDodge::OnProcessEvent(unsigned id, EventData* data) } } - - - AchievmentConditionLapBreak::AchievmentConditionLapBreak(const Desc& desc): AchievmentCondition(desc), _place(0) { } @@ -681,9 +651,6 @@ void AchievmentConditionLapBreak::OnProcessEvent(unsigned id, EventData* data) } } - - - AchievmentConditionSurvival::AchievmentConditionSurvival(const Desc& desc): AchievmentCondition(desc), _curDeaths(0) { } @@ -715,9 +682,6 @@ void AchievmentConditionSurvival::OnProcessEvent(unsigned id, EventData* data) } } - - - AchievmentConditionFirstKill::AchievmentConditionFirstKill(const Desc& desc): AchievmentCondition(desc), _curKills(0) { } @@ -741,9 +705,6 @@ void AchievmentConditionFirstKill::OnProcessEvent(unsigned id, EventData* data) } } - - - AchievmentConditionTouchKill::AchievmentConditionTouchKill(const Desc& desc): AchievmentCondition(desc) { } @@ -762,9 +723,6 @@ void AchievmentConditionTouchKill::OnProcessEvent(unsigned id, EventData* data) } } - - - AchievmentModel::AchievmentModel(Race* race, const lsl::string& name): _race(race), _points(0) { _classes.Add(cUndef); diff --git a/src/Rock3dGame/source/game/ControlManager.cpp b/src/Rock3dGame/source/game/ControlManager.cpp index 404b15e0..37f91b91 100644 --- a/src/Rock3dGame/source/game/ControlManager.cpp +++ b/src/Rock3dGame/source/game/ControlManager.cpp @@ -29,9 +29,6 @@ const lsl::string cGameActionStr[cGameActionEnd] = {"gaAccel", "gaBreak", "gaWhe const lsl::string cControllerTypeStr[cControllerTypeEnd] = {"ctKeyboard", "ctGamepad"}; - - - ControlManager::ControlManager(World* world): _world(world) { _controllerStates[ctKeyboard] = new ControllerState(); diff --git a/src/Rock3dGame/source/game/DataBase.cpp b/src/Rock3dGame/source/game/DataBase.cpp index de22b51c..56c6d6ff 100644 --- a/src/Rock3dGame/source/game/DataBase.cpp +++ b/src/Rock3dGame/source/game/DataBase.cpp @@ -241,7 +241,7 @@ void DataBase::AddToGraph(graph::Actor& grActor, GraphType type, bool dynamic, b desc.props.set(IActor::gpColor); break; - case gtRefrEffect: + case gtRefrEffect: LSL_ASSERT(dynamic); desc.lighting = IActor::glRefr; @@ -283,7 +283,7 @@ px::BoxShape* DataBase::AddPxBox(MapObj* mapObj, const AABB& aabb) px::BoxShape* DataBase::AddPxBox(MapObj* mapObj) { AABB aabb = mapObj->GetGameObj().GetGrActor().GetLocalAABB(false); - + return AddPxBox(mapObj, aabb); } @@ -426,7 +426,7 @@ CarWheel* DataBase::AddWheel(unsigned index, GameCar& car, const std::string& me descShapeWheel.localPose.M.fromQuat(q); wheel->GetShape()->AssignFromDesc(descShapeWheel); - + //if (master) //{ // wheel->GetPxActor().SetMasterSer(&master->GetPxActor()); @@ -549,7 +549,7 @@ void DataBase::LoadCar(const std::string& name, const std::string& mesh, const s } AddPxBody(mapObj, carDesc.mass, &carDesc.centerMassPos); - + AABB aabb = carDesc.bodyAABB; if (D3DXVec3Length(&aabb.GetSizes()) < 0.001f) @@ -558,13 +558,13 @@ void DataBase::LoadCar(const std::string& name, const std::string& mesh, const s aabb.Scale(carDesc.bodyScale); aabb.Offset(carDesc.bodyOffset); px::BoxShape* carShape = AddPxBox(mapObj, aabb); - + carShape->SetMaterialIndex(carDesc.wakeFrictionModel ? _nxCarMaterial2->getMaterialIndex() : _nxCarMaterial1->getMaterialIndex()); std::vector posWheels; CarWheels::LoadPosTo("Data\\" + wheelCoords, posWheels); - for (unsigned i = 0; i < posWheels.size(); ++i) + for (unsigned i = 0; i < posWheels.size(); ++i) { bool backWheel = i >= 2; bool lead = (carDesc.frontWheelDrive && i <= 1) || (carDesc.backWheelDrive && backWheel); @@ -576,7 +576,7 @@ void DataBase::LoadCar(const std::string& name, const std::string& mesh, const s PxWheelSlipEffect& slipEffect = wheel->GetBehaviors().Add(); slipEffect.SetEffect(GetRecord(MapObjLib::ctEffects, "trail")); slipEffect.SetPos(ZVector * 0.01f); - + //для одного колеса if (i == 0) slipEffect.SetSound(&GetSound("Sounds\\SkidAsphalt.ogg")); @@ -806,7 +806,7 @@ void DataBase::LoadSndSources() { game::MapObj* mapObj = NewMapObj(); mapObj->GetGameObj().SetMaxTimeLife(2.0f); - + { LifeEffect& effect = mapObj->GetGameObj().GetBehaviors().Add(); effect.SetSound(&GetSound("Sounds\\klicka5.ogg")); @@ -883,12 +883,12 @@ void DataBase::LoadEffects() desc.life = 1.0f; desc.startPos = Vec3Range(D3DXVECTOR3(-0.1f, -0.1f, -0.1f), D3DXVECTOR3(0.1f, 0.1f, 0.1f), Vec3Range::vdVolume); desc.startScale = Vec3Range(D3DXVECTOR3(1.0f, 0.70f, 0.70f), D3DXVECTOR3(1.5f, 1.0f, 1.0f)); - + graph::FxFlowEmitter::FlowDesc descFlow; descFlow.speedPos = Vec3Range(D3DXVECTOR3(-12.0f, -12.0f, 0.0f), D3DXVECTOR3(12.0f, 12.0f, 12.0f), Vec3Range::vdVolume); descFlow.autoRot = true; descFlow.gravitation = D3DXVECTOR3(0, 0, -5.0f); - + LoadFxFlow("spark1", "Effect\\spark1", _fxDirSpriteManager, desc, descFlow, true, 1.0f); } @@ -908,7 +908,7 @@ void DataBase::LoadEffects() desc.life = FloatRange(0.3f, 0.7f); desc.startPos = Vec3Range(D3DXVECTOR3(-0.1f, -0.1f, -0.1f), D3DXVECTOR3(0.1f, 0.1f, 0.1f), Vec3Range::vdVolume); desc.startScale = Vec3Range(D3DXVECTOR3(0.2f, 0.40f, 0.40f), D3DXVECTOR3(0.9f, 0.5f, 0.5f)); - + graph::FxFlowEmitter::FlowDesc descFlow; descFlow.speedPos = Vec3Range(D3DXVECTOR3(-6.0f, -6.0f, -6.0f), D3DXVECTOR3(6.0f, 6.0f, 6.0f), Vec3Range::vdVolume); descFlow.autoRot = true; @@ -1032,11 +1032,11 @@ void DataBase::LoadEffects() desc.density = FloatRange(1.0f, 3.0f); desc.startPos = Vec3Range(D3DXVECTOR3(-0.1f, -0.1f, -0.1f), D3DXVECTOR3(0.1f, 0.1f, 0.1f), Vec3Range::vdVolume); desc.startScale = D3DXVECTOR3(IdentityVector) / 2; - + graph::FxFlowEmitter::FlowDesc descFlow; descFlow.speedScale = D3DXVECTOR3(1.0f, 1.0f, 1.0f); descFlow.speedPos = Vec3Range(D3DXVECTOR3(-0.5f, -0.5f, 2.0f), D3DXVECTOR3(0.5f, 0.5f, 2.0f), Vec3Range::vdVolume, Point3U(100, 100, 100)); - + LoadFxFlow("smoke1", "Effect\\smoke1", _fxSpriteManager, desc, descFlow, true); } @@ -1055,7 +1055,7 @@ void DataBase::LoadEffects() graph::FxFlowEmitter::FlowDesc descFlow; descFlow.speedScale = IdentityVector * 2.0f; descFlow.speedPos = -XVector; - + LoadFxFlow("smoke2", "Effect\\smoke2", _fxSpriteManager, desc, descFlow, true); } @@ -1224,7 +1224,7 @@ void DataBase::LoadEffects() LoadFxSprite("flare3", "Effect\\flare3", NullVector, Vec3Range(IdentityVector, NullVector), NullQuaternion, false, graph::SceneNode::amNone, 0); //flare4 LoadFxSprite("flare4", "Effect\\flare4", NullVector, IdentityVector, NullQuaternion, false, graph::SceneNode::amNone, 0); - //flare5 + //flare5 LoadFxSprite("flare5", "Effect\\flare5", NullVector, IdentityVector, NullQuaternion, false, graph::SceneNode::amNone, 0, 0, 0, false, glm::vec2(0.8f, 0.8f)); //flare6 LoadFxSprite("flare6", "Effect\\flare6", NullVector, IdentityVector, NullQuaternion, false, graph::SceneNode::amNone, 0, 0, 0.15f, false, glm::vec2(2.0f, 2.0f)); @@ -1268,7 +1268,7 @@ void DataBase::LoadEffects() { game::MapObj* mapObj = NewMapObj(); AddToGraph(mapObj, gtEffect, true); - + graph::FxParticleSystem* fxSystem = AddFxSystem(mapObj, _fxSpriteManager); AddLibMat(&fxSystem->material, "Effect\\fire1"); @@ -1325,7 +1325,7 @@ void DataBase::LoadEffects() SaveMapObj(mapObj, MapObjLib::ctEffects, "fire2"); } - + //Death2 { game::MapObj* mapObj = NewMapObj(); @@ -1342,7 +1342,7 @@ void DataBase::LoadEffects() //debris { graph::FxParticleSystem* fxSystem = AddFxSystem(mapObj, _fxPiecesManager, graph::FxParticleSystem::csUnique); - + graph::FxEmitter::ParticleDesc desc; desc.maxNum = 3; desc.maxNumAction = graph::FxEmitter::mnaWaitingFree; @@ -1351,7 +1351,7 @@ void DataBase::LoadEffects() desc.life = 0; desc.startPos = Vec3Range(D3DXVECTOR3(-0.1f, -0.1f, -0.1f), D3DXVECTOR3(0.1f, 0.1f, 0.1f), Vec3Range::vdVolume, Point3U(100, 100, 100)); desc.startScale = Vec3Range(IdentityVector * 0.9f, IdentityVector * 1.1f); - + graph::FxFlowEmitter::FlowDesc descFlow; descFlow.speedPos = Vec3Range(D3DXVECTOR3(-1.5f, -1.5f, 2.0f), D3DXVECTOR3(1.5f, 1.5f, 5.0f), Vec3Range::vdVolume) * 3.0f; // @@ -1362,7 +1362,7 @@ void DataBase::LoadEffects() descFlow.gravitation = D3DXVECTOR3(0, 0, -9.80f); AddFxFlowEmitter(fxSystem, desc, descFlow, true); - + //smoke debr { graph::FxParticleSystem* smokeSys = AddFxSystem(&fxSystem->GetChild(), _fxPSpriteManager); @@ -1380,7 +1380,7 @@ void DataBase::LoadEffects() graph::FxFlowEmitter::FlowDesc descFlow = smoke->GetFlowDesc(); descFlow.speedScale = IdentityVector * 3.0f; descFlow.speedPos = Vec3Range(D3DXVECTOR3(-0.5f, -0.5f, 2.0f), D3DXVECTOR3(0.5f, 0.5f, 2.0f), Vec3Range::vdVolume, Point3U(100, 100, 100)); - + AddFxFlowEmitter(smokeSys, desc, descFlow, true); } } @@ -1729,7 +1729,7 @@ void DataBase::LoadEffects() glm::quat rot = glm::angleAxis(D3DX_PI, Vec3DxToGlm(ZVector)); desc.startRot = QuatRange(NullQuaternion, rot, QuatRange::vdLinear); desc.startScale = D3DXVECTOR3(IdentityVector) * 4.0f; - + graph::FxFlowEmitter::FlowDesc descFlow; descFlow.speedScale = -IdentityVector * 1.0f; descFlow.speedPos = Vec3Range(D3DXVECTOR3(-0.5f, -0.5f, 3.0f), D3DXVECTOR3(0.5f, 0.5f, 3.5f), Vec3Range::vdVolume); @@ -1834,7 +1834,6 @@ void DataBase::LoadEffects() SaveMapObj(mapObj, MapObjLib::ctEffects, "hyperRing"); } - //hyperBlaster { game::MapObj* mapObj = NewMapObj(); @@ -1844,7 +1843,7 @@ void DataBase::LoadEffects() MapObj* ring = NewChildMapObj(mapObj, MapObjLib::ctEffects, "hyperRing"); ring->GetGameObj().SetPos(XVector * 3.0f); - + SaveMapObj(mapObj, MapObjLib::ctEffects, "hyperBlaster"); } @@ -1885,7 +1884,7 @@ void DataBase::LoadEffects() game::AutoProj& gameObj = mapObj->SetGameObj(); game::AutoProj::Desc projDesc; - + projDesc.type = Proj::ptCrater; projDesc.SetModel(GetRecord(MapObjLib::ctEffects, "crater")); projDesc.pos = D3DXVECTOR3(0, 0.0f, 0.1f); @@ -1896,13 +1895,13 @@ void DataBase::LoadEffects() projDesc.mass = 100.0f; projDesc.damage = 10.0f; projDesc.minTimeLife = 3.0f; - + gameObj.SetDesc(projDesc); gameObj.GetPxActor().SetScene(_world->GetPxScene()); MapObj* death = NewChildMapObj(mapObj, MapObjLib::ctEffects, "death3"); death->GetGameObj().SetPos(ZVector * 1.0f); - + SaveMapObj(mapObj, MapObjLib::ctEffects, "mortiraBallDeath"); } @@ -2051,7 +2050,7 @@ void DataBase::LoadWorld2() D3DXVECTOR4 vec1 = plane; D3DXVECTOR4 vec3(0.0f, -0.15f, 0.10f, 0.0f); - + LoadTrack("World2\\jump", "World2\\Track\\jump.r3d", "World2\\Track\\track1", true, true, true); LoadTrack("World2\\most", "World2\\Track\\most.r3d", "World2\\Track\\most", true, true, true, false, "", true); LoadTrack("World2\\track1", "World2\\Track\\track1.r3d", "World2\\Track\\track1", true, true, true, false, "World2\\Track\\pxTrack1.r3d"); @@ -2268,7 +2267,7 @@ void DataBase::LoadMisc() AddToGraph(child, gtEffect, true); child->GetGameObj().SetPos(D3DXVECTOR3(-0.4f, 0.0f, 0.0f)); - + { graph::FxParticleSystem* fxSystem = AddFxSystem(child, _fxSpriteManager); AddLibMat(&fxSystem->material, "Effect\\dust_smoke_06"); @@ -2336,12 +2335,12 @@ void DataBase::LoadMisc() { game::MapObj* mapObj = NewMapObj(); game::GameObject& gameObj = mapObj->GetGameObj(); - + graph::IVBMeshNode* node = AddMeshNode(mapObj, "Weapon\\rocket.r3d"); node->SetScale(0.8f); AddLibMat(node, "Weapon\\rocket"); AddToGraph(mapObj, gtDefFixPipe, true); - + { game::MapObj* eff = NewChildMapObj(mapObj, MapObjLib::ctEffects, "smoke2"); eff->GetGameObj().SetPos(D3DXVECTOR3(-0.5f, 0.0f, 0.0f)); @@ -2594,7 +2593,7 @@ void DataBase::LoadMisc() DeathEffect& deathEffect = gameObj.GetBehaviors().Add(); deathEffect.SetEffect(GetRecord(MapObjLib::ctEffects, "death4")); deathEffect.SetIgnoreRot(true); - + SaveMapObj(mapObj, MapObjLib::ctDecoration, "Misc\\mine3"); } @@ -2784,7 +2783,7 @@ void DataBase::LoadMisc() deathEffect.SetSound(&GetSound("Sounds\\spherePulseDeath.ogg")); deathEffect.SetTargetChild(true); } - + SaveMapObj(mapObj, MapObjLib::ctDecoration, "Misc\\spherePulse"); } @@ -3243,7 +3242,7 @@ void DataBase::LoadWeapons() { game::MapObj* mapObj = NewMapObj(); game::Weapon& gameObj = mapObj->SetGameObj(); - + graph::IVBMeshNode* node = AddMeshNode(mapObj, "Weapon\\rifleWeapon.r3d"); AddLibMat(node, "Weapon\\rifleWeapon"); AddToGraph(mapObj, gtDefFixPipe, true); @@ -3254,7 +3253,7 @@ void DataBase::LoadWeapons() effect.SetEffect(GetRecord(MapObjLib::ctEffects, "shotEff2")); effect.SetSound(&GetSound("Sounds\\cluster_rocket.ogg")); } - + SaveMapObj(mapObj, MapObjLib::ctWeapon, "rifleWeapon"); } @@ -3281,7 +3280,7 @@ void DataBase::LoadWeapons() { game::MapObj* mapObj = NewMapObj(); game::Weapon& gameObj = mapObj->SetGameObj(); - + graph::IVBMeshNode* node = AddMeshNode(mapObj, "Weapon\\blasterGun.r3d"); AddLibMat(node, "Weapon\\blasterGun"); AddToGraph(mapObj, gtDefFixPipe, true); @@ -3292,15 +3291,15 @@ void DataBase::LoadWeapons() effect.SetEffect(GetRecord(MapObjLib::ctEffects, "shotEff2")); effect.SetSound(&GetSound("Sounds\\icon_rail.ogg")); } - + SaveMapObj(mapObj, MapObjLib::ctWeapon, "blasterGun"); } - + //rocketLauncher { game::MapObj* mapObj = NewMapObj(); game::Weapon& gameObj = mapObj->SetGameObj(); - + graph::IVBMeshNode* node = AddMeshNode(mapObj, "Weapon\\rocketLauncher.r3d"); AddLibMat(node, "Weapon\\rocketLauncher"); AddToGraph(mapObj, gtDefFixPipe, true); @@ -3310,7 +3309,7 @@ void DataBase::LoadWeapons() ShotEffect& effect = gameObj.GetBehaviors().Add(); effect.SetSound(&GetSound("Sounds\\missile_launch.ogg")); } - + SaveMapObj(mapObj, MapObjLib::ctWeapon, "rocketLauncher"); } @@ -3328,7 +3327,7 @@ void DataBase::LoadWeapons() ShotEffect& effect = gameObj.GetBehaviors().Add(); effect.SetSound(&GetSound("Sounds\\missile_launch.ogg")); } - + SaveMapObj(mapObj, MapObjLib::ctWeapon, "torpedaWeapon"); } @@ -3365,7 +3364,7 @@ void DataBase::LoadWeapons() effect.SetEffect(GetRecord(MapObjLib::ctEffects, "laserShot")); effect.SetSound(&GetSound("Sounds\\laserGuseniza.ogg")); } - + SaveMapObj(mapObj, MapObjLib::ctWeapon, "tankLaser"); } @@ -3477,7 +3476,7 @@ void DataBase::LoadWeapons() ShotEffect& effect = gameObj.GetBehaviors().Add(); effect.SetSound(&GetSound("Sounds\\exhaust_b_heavy.ogg")); } - + SaveMapObj(mapObj, MapObjLib::ctWeapon, "hyperdrive"); } @@ -3612,7 +3611,7 @@ void DataBase::LoadWeapons() graph::IVBMeshNode* node = AddMeshNode(mapObj, "Weapon\\mortira.r3d"); AddLibMat(node, "Weapon\\mortira"); AddToGraph(mapObj, gtDefFixPipe, true); - + //shotEff { ShotEffect& effect = gameObj.GetBehaviors().Add(); @@ -3773,7 +3772,7 @@ void DataBase::LoadCars() desc.bodyScale = D3DXVECTOR3(0.95f, 1.0f, 1.0f); desc.bodyOffset = D3DXVECTOR3(-0.2f, 0.0f, 0.0f); desc.centerMassPos = D3DXVECTOR3(0.0f, 0, -0.55f); - + desc.wheelRadius = 0.34159720f; desc.wheelOffsetModel.push_back(D3DXVECTOR3(0.22f, 0, -0.01f)); desc.wheelOffsetModel.push_back(D3DXVECTOR3(0.22f, 0, -0.01f)); @@ -4412,7 +4411,7 @@ void DataBase::ResetDB(const std::string& fileName) void DataBase::ClearDB() { - for (int i = 0; i < MapObjLib::cCategoryEnd; ++i) + for (int i = 0; i < MapObjLib::cCategoryEnd; ++i) _mapObjLib[i]->Clear(); } diff --git a/src/Rock3dGame/source/game/DialogMenu2.cpp b/src/Rock3dGame/source/game/DialogMenu2.cpp index 32abc5fd..9f454973 100644 --- a/src/Rock3dGame/source/game/DialogMenu2.cpp +++ b/src/Rock3dGame/source/game/DialogMenu2.cpp @@ -14,9 +14,6 @@ namespace n const int UserChat::cMaxLines = 50; - - - AcceptDialog::AcceptDialog(Menu* menu, gui::Widget* parent): MenuFrame(menu, parent), _resultYes(false), _data(NULL), _guiEvent(NULL) { D3DXCOLOR color1(0xffafafaf); @@ -201,9 +198,6 @@ Object* AcceptDialog::data() const return _data; } - - - WeaponDialog::WeaponDialog(Menu* menu, gui::Widget* parent): MenuFrame(menu, parent) { D3DXCOLOR color1(0xffafafaf); @@ -273,9 +267,6 @@ void WeaponDialog::Hide() ShowModal(false); } - - - InfoDialog::InfoDialog(Menu* menu, gui::Widget* parent): MenuFrame(menu, parent), _data(NULL), _guiEvent(NULL) { D3DXCOLOR color1(0xffafafaf); @@ -389,9 +380,6 @@ Object* InfoDialog::data() const return _data; } - - - MusicDialog::MusicDialog(Menu* menu, gui::Widget* parent): MenuFrame(menu, parent) { D3DXCOLOR color1(0xffafafaf); @@ -464,9 +452,6 @@ const glm::vec2& MusicDialog::size() const return _menuBg->GetSize(); } - - - InfoMenu::InfoMenu(Menu* menu, gui::Widget* parent): _menu(menu), _state(msLoading) { _root = _menu->GetGUI()->CreateDummy(); diff --git a/src/Rock3dGame/source/game/Environment.cpp b/src/Rock3dGame/source/game/Environment.cpp index c59a22e7..5ee0d5f1 100644 --- a/src/Rock3dGame/source/game/Environment.cpp +++ b/src/Rock3dGame/source/game/Environment.cpp @@ -49,9 +49,6 @@ std::pair Environment::cEnvGrap std::make_pair(GraphManager::goMagma, Environment::eqLow) }; - - - Environment::Environment(World* world): _world(world), _wheater(ewClody), _worldType(wtWorld1), _syncFrameRate(sfrFixed), _sun(0), _shadowQuality(eqLow), _lightQuality(eqLow), _postEffQuality(eqLow), _envQuality(eqLow), _filtering(efLinear), _multisampling(emNone), _editMode(false), _startScene(false), _enableRain(false), _rain(0) { _sunPos = D3DXVECTOR3(150, 150, 150.0f); diff --git a/src/Rock3dGame/source/game/FinalMenu.cpp b/src/Rock3dGame/source/game/FinalMenu.cpp index a6c75d5a..b731722b 100644 --- a/src/Rock3dGame/source/game/FinalMenu.cpp +++ b/src/Rock3dGame/source/game/FinalMenu.cpp @@ -185,9 +185,6 @@ void FinalMenu::OnProgress(float deltaTime) } } - - - /*FinalMenu::FinalMenu(Menu* menu, gui::Widget* parent): MenuFrame(menu, parent), _scrollTime(0) { D3DXCOLOR color1(0xffafafaf); diff --git a/src/Rock3dGame/source/game/GameBase.cpp b/src/Rock3dGame/source/game/GameBase.cpp index d739af51..b489a114 100644 --- a/src/Rock3dGame/source/game/GameBase.cpp +++ b/src/Rock3dGame/source/game/GameBase.cpp @@ -19,9 +19,6 @@ const std::string GameObjListener::cBonusTypeStr[cBonusTypeEnd] = {"btMoney", "b Behaviors::ClassList Behaviors::classList; - - - Behavior::Behavior(Behaviors* owner): _owner(owner), _removed(false) { } @@ -89,9 +86,6 @@ Logic* Behavior::GetLogic() return GetGameObj()->GetLogic(); } - - - TouchDeath::TouchDeath(Behaviors* owner): _MyBase(owner) { SetPxNotify(pxContact, true); @@ -105,9 +99,6 @@ void TouchDeath::OnContact(const px::Scene::OnContactEvent& contact) target->Death(dtDeathPlane); } - - - ResurrectObj::ResurrectObj(Behaviors* owner): _MyBase(owner), _resurrect(false) { } @@ -157,9 +148,6 @@ bool ResurrectObj::IsResurrect() const return _resurrect; } - - - FxSystemWaitingEnd::FxSystemWaitingEnd(Behaviors* owner): _MyBase(owner) { } @@ -193,9 +181,6 @@ void FxSystemWaitingEnd::OnProgress(float deltaTime) } } - - - FxSystemSrcSpeed::FxSystemSrcSpeed(Behaviors* owner): _MyBase(owner) { } @@ -219,9 +204,6 @@ void FxSystemSrcSpeed::OnProgress(float deltaTime) } } - - - EventEffect::EventEffect(Behaviors* owner): _MyBase(owner), _effect(0), _pos(NullVector), _impulse(NullVector), _ignoreRot(false), _makeEffect(0) { _gameObjEvent = new GameObjEvent(this); @@ -584,9 +566,6 @@ void EventEffect::SetIgnoreRot(bool value) _ignoreRot = value; } - - - LowLifePoints::LowLifePoints(Behaviors* owner): _MyBase(owner), _lifeLevel(0.35f) { } @@ -632,9 +611,6 @@ void LowLifePoints::SetLifeLevel(float value) _lifeLevel = value; } - - - DamageEffect::DamageEffect(Behaviors* owner): _MyBase(owner), _damageType(dtSimple) { } @@ -687,9 +663,6 @@ void DamageEffect::SetDamageType(DamageType value) _damageType = value; } - - - DeathEffect::DeathEffect(Behaviors* owner): _MyBase(owner), _effectPxIgnoreSenderCar(false), _targetChild(false) { } @@ -764,9 +737,6 @@ void DeathEffect::SetTargetChild(bool value) _targetChild = value; } - - - LifeEffect::LifeEffect(Behaviors* owner): _MyBase(owner), _play(false) { } @@ -789,9 +759,6 @@ void LifeEffect::OnProgress(float deltaTime) } } - - - PxWheelSlipEffect::PxWheelSlipEffect(Behaviors* owner): _MyBase(owner) { } @@ -857,9 +824,6 @@ void PxWheelSlipEffect::OnProgress(float deltaTime) #endif } - - - ShotEffect::ShotEffect(Behaviors* owner): _MyBase(owner) { } @@ -883,9 +847,6 @@ void ShotEffect::OnShot(const D3DXVECTOR3& pos) } } - - - ImmortalEffect::ImmortalEffect(Behaviors* owner): _MyBase(owner), _fadeInTime(-1.0f), _fadeOutTime(-1.0f), _dmgTime(-1.0f), _scale(IdentityVector), _scaleK(IdentityVector) { } @@ -947,7 +908,6 @@ void ImmortalEffect::LoadSource(lsl::SReader* reader) lsl::SReadValue(reader, "scaleK", _scaleK); } - void ImmortalEffect::OnProgress(float deltaTime) { MapObj* mapObj = GetMakeEffect(); @@ -1004,9 +964,6 @@ void ImmortalEffect::SetScaleK(const D3DXVECTOR3& value) _scaleK = value; } - - - SlowEffect::SlowEffect(Behaviors* owner): _MyBase(owner) { } @@ -1035,9 +992,6 @@ void SlowEffect::OnProgress(float deltaTime) } } - - - SoundMotor::SoundMotor(Behaviors* owner): _MyBase(owner), _sndIdle(0), _sndRPM(0), _init(false), _srcIdle(0), _srcRPM(0), _rpmVolumeRange(0.0f, 1.0f), _rpmFreqRange(0.0f, 1.0f) { } @@ -1201,9 +1155,6 @@ void SoundMotor::SetRPMFreqRange(const glm::vec2& value) _rpmFreqRange = value; } - - - GusenizaAnim::GusenizaAnim(Behaviors* owner): _MyBase(owner), _xAnimOff(0) { } @@ -1234,9 +1185,6 @@ void GusenizaAnim::OnProgress(float deltaTime) mat->SetOffset(offset); } - - - PodushkaAnim::PodushkaAnim(Behaviors* owner): _MyBase(owner), _targetTag(0), _target(NULL) { } @@ -1295,9 +1243,6 @@ void PodushkaAnim::targetTag(int value) _target = NULL; } - - - Behaviors::Behaviors(GameObject* gameObj): _gameObj(gameObj), storeProxy(true), storeSource(true) { InitClassList(); diff --git a/src/Rock3dGame/source/game/GameCar.cpp b/src/Rock3dGame/source/game/GameCar.cpp index 7a215feb..bca57ac9 100644 --- a/src/Rock3dGame/source/game/GameCar.cpp +++ b/src/Rock3dGame/source/game/GameCar.cpp @@ -12,9 +12,6 @@ namespace game const float GameCar::cMaxSteerAngle = D3DX_PI / 6; - - - CarMotorDesc::CarMotorDesc(): maxRPM(7000), idlingRPM(1000), maxTorque(2000.0f), SEM(0.7f), gearDiff(3.42f), autoGear(true), brakeTorque(7500), restTorque(400.0f) { //задняя @@ -46,9 +43,6 @@ float CarMotorDesc::CalcTorque(float rpm, unsigned curGear) const return maxTorque * gears[curGear] * gearDiff * SEM * cGameK; } - - - CarWheel::CarWheel(CarWheels* owner): _owner(owner), _wheelShape(0), _summAngle(0), _trailEff(0), _actTrail(0), invertWheel(false), _steerAngle(0), _lead(false), _steer(false), _offset(NullVector), _pxPrevPos(NullVector), _pxPrevRot(NullQuaternion) { _myContactModify = new MyContactModify(this); @@ -326,7 +320,6 @@ void CarWheel::SetLead(bool value) } } - bool CarWheel::GetSteer() const { return _steer; @@ -356,9 +349,6 @@ void CarWheel::SetOffset(const D3DXVECTOR3& value) _offset = value; } - - - CarWheels::CarWheels(GameCar* owner): _owner(owner), _steerContactModify(0) { } @@ -459,9 +449,6 @@ void CarWheels::SetSteerContactModify(ContactModify* value) } } - - - GameCar::GameCar(): _clutchStrength(0), _clutchTime(0.0f), _springTime(0), _mineTime(0), _curGear(-1), _moveCar(mcNone), _steerWheel(swNone), _kSteerControl(1.0f), _steerSpeed(D3DX_PI/2.0f), _steerRot(D3DX_PI), _angDamping(IdentityVector), _flyYTorque(D3DX_PI/1.6f), _clampXTorque(0), _clampYTorque(0), _motorTorqueK(1), _wheelSteerK(1), _gravEngine(false), _clutchImmunity(false), _maxSpeed(0), _tireSpring(0), _disableColor(false), _steerAngle(0), _anyWheelContact(false), _wheelsContact(false), _bodyContact(false) { _wheels = new Wheels(this); @@ -1525,9 +1512,6 @@ float GameCar::GetSpeed(NxActor* nxActor, const D3DXVECTOR3& dir) return 0.0f; } - - - DestrObj::DestrObj(): _checkDestruction(false) { _destrList = new DestrList(this); diff --git a/src/Rock3dGame/source/game/GameMode.cpp b/src/Rock3dGame/source/game/GameMode.cpp index 49fd5991..e242273c 100644 --- a/src/Rock3dGame/source/game/GameMode.cpp +++ b/src/Rock3dGame/source/game/GameMode.cpp @@ -14,9 +14,6 @@ namespace game const char* GameMode::cBusyActionStr[cBusyActionEnd] = {"baSkip", "baQueue", "baReplace"}; const lsl::string GameMode::cPrefCameraStr[GameMode::cPrefCameraEnd] = {"pcThirdPerson", "pcIsometric"}; - - - GameMode::GameMode(World* world): _world(world), _musicReport(0), _fadeMusic(1.0f), _fadeSpeedMusic(0.0f), _startUpTime(-1), _movieTime(-1), _movieFileName(""), _guiLogo(0), _guiLogo2(NULL), _guiStartup(0), _semaphore(NULL), _startRace(-1), _prepareGame(false), _startGame(false), _goRaceTime(-1), _finishTime(-1), _menu(0), _race(0), _netGame(0), _maxPlayers(6), _maxComputers(5), _upgradeMaxLevel(Garage::cUpgMaxLevel), _weaponMaxLevel(Garage::cWeaponMaxLevel), _springBorders(true), _lapsCount(4), _enableHUD(true), _enableMineBug(true), _disableVideo(false), _prefCamera(pcIsometric), _cameraDistance(1.25f), _discreteVideoChanged(false), _prefCameraAutodetect(false) #ifdef STEAM_SERVICE , _steamService(NULL) diff --git a/src/Rock3dGame/source/game/HudMenu.cpp b/src/Rock3dGame/source/game/HudMenu.cpp index e281ddf3..f80307fb 100644 --- a/src/Rock3dGame/source/game/HudMenu.cpp +++ b/src/Rock3dGame/source/game/HudMenu.cpp @@ -873,9 +873,6 @@ void PlayerStateFrame::OnDisconnectedPlayer(NetPlayer* sender) RemoveOpponent(sender->model()); } - - - MiniMapFrame::MiniMapFrame(Menu* menu, HudMenu* hudMenu, gui::Widget* parent): _menu(menu), _hudMenu(hudMenu) { _root = _menu->GetGUI()->CreateDummy(); @@ -1003,9 +1000,6 @@ void MiniMapFrame::BuildPath(WayPath& path, res::VertexData& data) node = node->GetNext(); } - - - for (Nodes::iterator iter = nodes.begin(); iter != nodes.end();) { Node& node = *iter; @@ -1058,9 +1052,6 @@ void MiniMapFrame::BuildPath(WayPath& path, res::VertexData& data) iter = nextIter; } - - - data.SetFormat(res::VertexData::vtPos3, true); data.SetFormat(res::VertexData::vtTex0, true); data.SetVertexCount(nodes.size() * 2); @@ -1243,9 +1234,6 @@ gui::Dummy* MiniMapFrame::GetRoot() return _root; } - - - HudMenu::HudMenu(Menu* menu, gui::Widget* parent, Player* player): _menu(menu), _player(player), _state(msMain) { LSL_ASSERT(menu && _player); diff --git a/src/Rock3dGame/source/game/Logic.cpp b/src/Rock3dGame/source/game/Logic.cpp index 4b0a5167..dea284e4 100644 --- a/src/Rock3dGame/source/game/Logic.cpp +++ b/src/Rock3dGame/source/game/Logic.cpp @@ -11,9 +11,6 @@ namespace game LogicBehaviors::ClassList LogicBehaviors::classList; - - - LogicBehavior::LogicBehavior(LogicBehaviors* owner): _owner(owner) { } @@ -43,9 +40,6 @@ Map* LogicBehavior::GetMap() return GetLogic()->GetMap(); } - - - LogicEventEffect::LogicEventEffect(LogicBehaviors* owner): _MyBase(owner), _effect(0), _pos(NullVector) { _gameObjEvent = new GameObjEvent(this); @@ -158,9 +152,6 @@ void LogicEventEffect::SetPos(const D3DXVECTOR3& value) _pos = value; } - - - PairPxContactEffect::PairPxContactEffect(LogicBehaviors* owner): _MyBase(owner) { RegProgressEvent(); @@ -389,9 +380,6 @@ const PairPxContactEffect::Sounds& PairPxContactEffect::GetSounds() const return _sounds; } - - - LogicBehaviors::LogicBehaviors(Logic* logic): _logic(logic) { InitClassList(); @@ -427,9 +415,6 @@ Logic* LogicBehaviors::GetLogic() return _logic; } - - - Logic::Logic(World* world): _world(world), _initSndCat(false), _touchBorderDamage(0, 0), _touchBorderDamageForce(0, 0), _touchCarDamage(0, 0), _touchCarDamageForce(0, 0) { ZeroMemory(_volume, sizeof(_volume)); diff --git a/src/Rock3dGame/source/game/MainMenu2.cpp b/src/Rock3dGame/source/game/MainMenu2.cpp index ffa7eb66..1dce40c7 100644 --- a/src/Rock3dGame/source/game/MainMenu2.cpp +++ b/src/Rock3dGame/source/game/MainMenu2.cpp @@ -50,9 +50,6 @@ bool GameModeFrame::OnClick(gui::Widget* sender, const gui::MouseClick& mClick) return false; } - - - DifficultyFrame::DifficultyFrame(Menu* menu, MainMenu* mainMenu, gui::Widget* parent): MenuFrame(menu, parent), _mainMenu(mainMenu), _difficulty(gdNormal) { } @@ -136,9 +133,6 @@ void DifficultyFrame::OnProcessEvent(unsigned id, EventData* data) } } - - - NetBrowserFrame::NetBrowserFrame(Menu* menu, MainMenu* mainMenu, gui::Widget* parent): MenuFrame(menu, parent), _mainMenu(mainMenu), _gridScroll(0) { _info = menu->CreateLabel(svNull, root(), "Small"); @@ -392,9 +386,6 @@ void NetBrowserFrame::OnPingComplete() StartWaiting(false, _grid->GetChildren().size() == 0 ? svHintHostListEmpty : svNull); } - - - NetIPAddressFrame::NetIPAddressFrame(Menu* menu, MainMenu* mainMenu, gui::Widget* parent): MenuFrame(menu, parent), _mainMenu(mainMenu) { //D3DXCOLOR color1(0xffafafaf); @@ -541,9 +532,6 @@ bool NetIPAddressFrame::OnHandleInput(const InputMessage& msg) return false; } - - - #ifdef STEAM_SERVICE LobbyFrame::LobbyFrame(Menu* menu, MainMenu* mainMenu, gui::Widget* parent): MenuFrame(menu, parent), _mainMenu(mainMenu), _gridScroll(0) @@ -809,9 +797,6 @@ void LobbyFrame::OnProcessEvent(unsigned id, EventData* data) } } - - - MatchmakingFrame::MatchmakingFrame(Menu* menu, MainMenu* mainMenu, gui::Widget* parent): MenuFrame(menu, parent), _mainMenu(mainMenu), _gridScroll(0) { _info = menu->CreateLabel(svNull, root(), "Small"); @@ -1078,9 +1063,6 @@ void MatchmakingFrame::OnProcessEvent(unsigned id, EventData* data) } } - - - SteamBrowserFrame::SteamBrowserFrame(Menu* menu, MainMenu* mainMenu, gui::Widget* parent): MenuFrame(menu, parent), _mainMenu(mainMenu), _gridScroll(0) { _info = menu->CreateLabel(svNull, root(), "Small"); @@ -1369,9 +1351,6 @@ void SteamBrowserFrame::OnDisconnectedPlayer(NetPlayer* sender) #endif - - - ServerTypeFrame::ServerTypeFrame(Menu* menu, MainMenu* mainMenu, gui::Widget* parent): MenuFrame(menu, parent), _mainMenu(mainMenu) { } @@ -1429,9 +1408,6 @@ bool ServerTypeFrame::OnClick(gui::Widget* sender, const gui::MouseClick& mClick return false; } - - - ClientTypeFrame::ClientTypeFrame(Menu* menu, MainMenu* mainMenu, gui::Widget* parent): MenuFrame(menu, parent), _mainMenu(mainMenu) { } @@ -1494,7 +1470,6 @@ bool ClientTypeFrame::OnClick(gui::Widget* sender, const gui::MouseClick& mClick } #endif - if (sender == _mainMenu->GetItem(miBack)) { _mainMenu->BackState(); @@ -1504,9 +1479,6 @@ bool ClientTypeFrame::OnClick(gui::Widget* sender, const gui::MouseClick& mClick return false; } - - - NetworkFrame::NetworkFrame(Menu* menu, MainMenu* mainMenu, gui::Widget* parent): MenuFrame(menu, parent), _mainMenu(mainMenu) { D3DXCOLOR color1 = Menu::cTextColor; @@ -1584,9 +1556,6 @@ void NetworkFrame::OnAdjustLayout(const glm::vec2& vpSize) _labels[mlIPAdress]->SetPos(glm::vec2(vpSize.x/2, vpSize.y/2 + 75.0f)); } - - - TournamentFrame::TournamentFrame(Menu* menu, MainMenu* mainMenu, gui::Widget* parent): MenuFrame(menu, parent), _mainMenu(mainMenu) { } @@ -1646,9 +1615,6 @@ bool TournamentFrame::OnClick(gui::Widget* sender, const gui::MouseClick& mClick return false; } - - - CreditsFrame::CreditsFrame(Menu* menu, MainMenu* mainMenu, gui::Widget* parent): MenuFrame(menu, parent), _mainMenu(mainMenu), _scrollTime(0) { _label = menu->CreateLabel(svCredits, root(), "Small", NullVec2, gui::Text::haCenter, gui::Text::vaTop, D3DXCOLOR(0xffff8a70)); @@ -1706,9 +1672,6 @@ void CreditsFrame::OnProgress(float deltaTime) } } - - - ProfileFrame::ProfileFrame(Menu* menu, MainMenu* mainMenu, gui::Widget* parent): MenuFrame(menu, parent), _mainMenu(mainMenu), _gridScroll(0) { _grid = menu->CreateGrid(root(), NULL, gui::Grid::gsVertical); @@ -1954,9 +1917,6 @@ bool ProfileFrame::OnClick(gui::Widget* sender, const gui::MouseClick& mClick) return false; } - - - MainFrame::MainFrame(Menu* menu, MainMenu* mainMenu, gui::Widget* parent): MenuFrame(menu, parent), _mainMenu(mainMenu) { } @@ -2012,9 +1972,6 @@ bool MainFrame::OnClick(gui::Widget* sender, const gui::MouseClick& mClick) return false; } - - - MainMenu::MainMenu(Menu* menu, gui::Widget* parent): _menu(menu), _state(msMain), _serverType(cServerTypeEnd), _steamHostMode(Race::rmChampionship), _steamHostDifficulty(gdNormal), _steamHostProfile(NULL), _steamHostStarting(false), _steamConnecting(false) { _root = _menu->GetGUI()->CreateDummy(); diff --git a/src/Rock3dGame/source/game/Map.cpp b/src/Rock3dGame/source/game/Map.cpp index 0cb67cd0..1f8be6bf 100644 --- a/src/Rock3dGame/source/game/Map.cpp +++ b/src/Rock3dGame/source/game/Map.cpp @@ -34,9 +34,6 @@ void Map::MapObjList::RemoveItem(const Value& value) _owner->_objects.erase(value->GetId()); } - - - Map::Map(World* world): _world(world), _lastId(cDefMapObjId) { for (int i = 0; i < MapObjLib::cCategoryEnd; ++i) diff --git a/src/Rock3dGame/source/game/MapObj.cpp b/src/Rock3dGame/source/game/MapObj.cpp index 7c522aaa..64a232e7 100644 --- a/src/Rock3dGame/source/game/MapObj.cpp +++ b/src/Rock3dGame/source/game/MapObj.cpp @@ -17,9 +17,6 @@ namespace game MapObj::ClassList MapObj::classList; - - - MapObjRec::MapObjRec(const Desc& desc): _MyBase(desc) { } @@ -49,9 +46,6 @@ IMapObjLib::Category MapObjRec::GetCategory() return GetLib()->GetCategory(); } - - - MapObjLib::MapObjLib(Category category, lsl::SerialNode* rootSrc): _MyBase(IMapObjLib_cCategoryStr[category], rootSrc), _category(category) { } @@ -116,9 +110,6 @@ MapObjLib::Category MapObjLib::GetCategory() const return _category; } - - - MapObj::MapObj(MapObjects* owner): _owner(owner), _player(NULL), _createClassList(false), _classList(0), _gameObj(0), _type(Type(0)), _record(0), _loadFromRecord(false), _id(0) { InitClassList(); @@ -383,9 +374,6 @@ void MapObj::SetId(unsigned value) _id = value; } - - - MapObjects::MapObjects(lsl::Component* root): _root(root), _owner(0), _lockCont(false) { LSL_ASSERT(_root); diff --git a/src/Rock3dGame/source/game/Menu.cpp b/src/Rock3dGame/source/game/Menu.cpp index ae140b88..d42db69d 100644 --- a/src/Rock3dGame/source/game/Menu.cpp +++ b/src/Rock3dGame/source/game/Menu.cpp @@ -14,9 +14,6 @@ const glm::vec2 Menu::cWinSize(1280.0f, 1024.0f); const glm::vec2 Menu::cMinWinSize(800.0f, 600.0f); const glm::vec2 Menu::cMaxWinSize(3072.0f, 1536.0f); - - - Menu::Menu(GameMode* game): _game(game), _state(msMain2), _loadingVisible(false), _optionsVisible(false), _startOptionsVisible(false), _screenFon(0), _mainMenu2(0), _raceMenu2(0), _hudMenu(0), _finishMenu2(NULL), _finalMenu(NULL), _infoMenu(0), _optionsMenu(NULL), _startOptionsMenu(NULL), _weaponTime(-1), _messageTime(-1), _musicTime(-1) { _controlEvent = new MyControlEvent(this); diff --git a/src/Rock3dGame/source/game/OptionsMenu.cpp b/src/Rock3dGame/source/game/OptionsMenu.cpp index 36a158d3..58038f5f 100644 --- a/src/Rock3dGame/source/game/OptionsMenu.cpp +++ b/src/Rock3dGame/source/game/OptionsMenu.cpp @@ -310,9 +310,6 @@ void GameFrame::CancelChanges() { } - - - MediaFrame::MediaFrame(Menu* menu, OptionsMenu* optionsMenu, gui::Widget* parent): MenuFrame(menu, parent), _optionsMenu(optionsMenu) { StringValue gfxLevel[] = {svLow, svMiddle, svHigh}; @@ -494,9 +491,6 @@ void MediaFrame::CancelChanges() { } - - - NetworkTab::NetworkTab(Menu* menu, OptionsMenu* optionsMenu, gui::Widget* parent): MenuFrame(menu, parent), _optionsMenu(optionsMenu) { D3DXCOLOR color1(0xffafafaf); @@ -668,9 +662,6 @@ void NetworkTab::CancelChanges() ApplyVolume(true); } - - - ControlsFrame::ControlsFrame(Menu* menu, OptionsMenu* optionsMenu, gui::Widget* parent): MenuFrame(menu, parent), _optionsMenu(optionsMenu), _gridScroll(0) { D3DXCOLOR color1(0xffafafaf); @@ -932,9 +923,6 @@ void ControlsFrame::CancelChanges() { } - - - OptionsMenu::OptionsMenu(Menu* menu, gui::Widget* parent): _menu(menu), _state(msGame) { D3DXCOLOR color1(0xffafafaf); @@ -1390,9 +1378,6 @@ void OptionsMenu::SetState(State value) } } - - - StartOptionsMenu::StartOptionsMenu(Menu* menu, gui::Widget* parent): MenuFrame(menu, parent), _lastCameraIndex(-1) { D3DXCOLOR color1(0xffafafaf); diff --git a/src/Rock3dGame/source/game/Player.cpp b/src/Rock3dGame/source/game/Player.cpp index 07a78f09..cd754c42 100644 --- a/src/Rock3dGame/source/game/Player.cpp +++ b/src/Rock3dGame/source/game/Player.cpp @@ -26,9 +26,6 @@ const D3DXCOLOR Player::cRightColors[Player::cColorsCount] = {D3DXCOLOR(0xff06af Slot::ClassList Slot::classList; - - - SlotItem::SlotItem(Slot* slot): _name(_SC(svNull)), _info(_SC(svNull)), _slot(slot), _cost(0), _mesh(0), _texture(0), _pos(NullVector), _rot(NullQuaternion) { } @@ -211,9 +208,6 @@ void SlotItem::SetRot(const glm::quat& value) TransformChanged(); } - - - MobilityItem::MobilityItem(Slot* slot): _MyBase(slot) { } @@ -309,30 +303,18 @@ float MobilityItem::CalcLife(const CarFunc& func) return func.life; } - - - WheelItem::WheelItem(Slot* slot): _MyBase(slot) { } - - - MotorItem::MotorItem(Slot* slot): _MyBase(slot) { } - - - TrubaItem::TrubaItem(Slot* slot): _MyBase(slot) { } - - - ArmorItem::ArmorItem(Slot* slot): _MyBase(slot), _armor4Installed(false) { } @@ -405,9 +387,6 @@ void ArmorItem::InstalArmor4(bool instal) _armor4Installed = instal; } - - - WeaponItem::WeaponItem(Slot* slot): _MyBase(slot), _mapObj(0), _inst(0), _maxCharge(0), _cntCharge(0), _curCharge(0), _chargeStep(1), _damage(0), _chargeCost(0) { } @@ -632,23 +611,14 @@ Weapon::Desc WeaponItem::GetDesc() return GetWeapon() ? GetWeapon()->GetDesc() : _wpnDesc; } - - - HyperItem::HyperItem(Slot* slot): _MyBase(slot) { } - - - MineItem::MineItem(Slot* slot): _MyBase(slot) { } - - - DroidItem::DroidItem(Slot* slot): WeaponItem(slot), _repairValue(5.0f), _repairPeriod(1.0f), _time(0.0f) { } @@ -727,9 +697,6 @@ void DroidItem::SetRepairPeriod(float value) _repairPeriod = value; } - - - ReflectorItem::ReflectorItem(Slot* slot): WeaponItem(slot), _reflectValue(0.25f) { } @@ -767,9 +734,6 @@ float ReflectorItem::Reflect(float damage) return damage * lsl::ClampValue(1.0f - _reflectValue, 0.0f, 1.0f); } - - - Slot::Slot(Player* player): _player(player), _type(cTypeEnd), _item(0), _record(0) { InitClassList(); @@ -879,9 +843,6 @@ void Slot::SetRecord(Record* value) } } - - - Player::Player(Race* race): cTimeRestoreCar(2.0f), _race(race), _carMaxSpeedBase(0), _carTireSpringBase(0), _timeRestoreCar(0), _headLight(hlmNone), _reflScene(true), _money(0), _points(0), _pickMoney(0), _id(cUndefPlayerId), _gamerId(-1), _netSlot(Race::cDefaultNetSlot), _netName(""), _place(0), _finished(false), _cheatEnable(cCheatDisable), _nextBonusProjId(cBonusProjUndef + 1), _nightFlare(NULL), _block(-1.0f) { ZeroMemory(_lights, sizeof(_lights)); @@ -954,11 +915,11 @@ void Player::CarState::Update(float deltaTime) Vec3Rotate(XVector, rot3, dir3); //pos = glm::vec2(pos3); - pos = glm::vec2(pos3.x, pos3.y); // remove after D3DXVECTOR3 replacement + pos = glm::vec2(pos3.x, pos3.y); // remove after D3DXVECTOR3 replacement //dir = glm::vec2(dir3); - dir = glm::vec2(dir3.x, dir3.y); // remove after D3DXVECTOR3 replacement + dir = glm::vec2(dir3.x, dir3.y); // remove after D3DXVECTOR3 replacement speed = GameCar::GetSpeed(nxActor, dir3); - dir = glm::normalize(dir); + dir = glm::normalize(dir); dirLine = Line2FromDir(dir, pos); normLine = Line2FromNorm(dir, pos); diff --git a/src/Rock3dGame/source/game/Race.cpp b/src/Rock3dGame/source/game/Race.cpp index 08ae3f4d..8b38d716 100644 --- a/src/Rock3dGame/source/game/Race.cpp +++ b/src/Rock3dGame/source/game/Race.cpp @@ -17,9 +17,6 @@ namespace game const float Race::cSellDiscount = 0.5f; const std::string Planet::cWorldTypeStr[cWorldTypeEnd] = {"wtWorld1", "wtWorld2", "wtWorld3", "wtWorld4", "wtWorld5", "wtWorld6"}; - - - Workshop::Workshop(Race* race): _race(race), _lib(NULL) { _rootNode = new lsl::RootNode("workshopRoot", race); @@ -1232,7 +1229,6 @@ void Workshop::LoadWeapons() item.SetWpnDesc(desc); } - SaveSlot(slot, "sonar"); } @@ -2086,9 +2082,6 @@ Race* Workshop::GetRace() return _race; } - - - Garage::Garage(Race* race, const std::string& name): _race(race), _upgradeMaxLevel(0), _weaponMaxLevel(0) { SetName(name); @@ -3867,9 +3860,6 @@ void Garage::SetWeaponMaxLevel(int value) } } - - - Planet::Planet(Race* race, int index): _race(race), _index(index), _name(scNull), _info(scNull), _mesh(0), _texture(0), _state(psUnavailable), _worldType(wtWorld1), _pass(-1) { } @@ -4786,9 +4776,6 @@ Planet::PlayerData Planet::GetBoss() const return _players.size() > 0 ? _players.front() : PlayerData(); } - - - Tournament::Tournament(Race* race, const std::string& name): _race(race), _curPlanet(0), _curTrack(0), _wheater(Environment::ewFair), _wheaterNightPass(false), _lapsCount(4) { SetName(name); @@ -6168,9 +6155,6 @@ const Tournament::Planets& Tournament::GetGamers() const return _gamers; } - - - Race::Race(GameMode* game, const std::string& name): _game(game), _profile(0), _lastProfile(NULL), _lastNetProfile(NULL), _startRace(false), _goRace(false), _human(0), _aiSystem(0), _lastLeadPlace(0), _lastThirdPlace(0), _planetChampion(false), _passChampion(false), _carChanged(false), _minDifficulty(cDifficultyEnd), _tutorialStage(0), _springBorders(true), _enableMineBug(true) { SetName(name); diff --git a/src/Rock3dGame/source/game/RaceMenu2.cpp b/src/Rock3dGame/source/game/RaceMenu2.cpp index 5cdda8f8..b5de6360 100644 --- a/src/Rock3dGame/source/game/RaceMenu2.cpp +++ b/src/Rock3dGame/source/game/RaceMenu2.cpp @@ -298,9 +298,6 @@ void CarFrame::SetCamStyle(CamStyle value, bool instant) } } - - - SpaceshipFrame::SpaceshipFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent): MenuFrame(menu, parent), _raceMenu(raceMenu), _redLampTime(0.0f) { { @@ -393,9 +390,6 @@ void SpaceshipFrame::OnShow(bool value) menu()->GetEnv()->ReleaseScene(); } - - - GarageFrame::GarageFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent): MenuFrame(menu, parent), _raceMenu(raceMenu), _lastCarIndex(-1) { const D3DXCOLOR color2 = D3DXCOLOR(214.0f, 214.0f, 214.0f, 255.0f)/255.0f; @@ -996,9 +990,6 @@ void GarageFrame::OnProcessNetEvent(unsigned id, NetEventData* data) RefreshColorList(); } - - - WorkshopFrame::WorkshopFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent): MenuFrame(menu, parent), _raceMenu(raceMenu), _goodScroll(0), _overGood(NULL), _overGood2(NULL), _infoId(-1), _numSelectedSlots(0) { const D3DXCOLOR color2 = D3DXCOLOR(214.0f, 214.0f, 214.0f, 255.0f)/255.0f; @@ -2078,9 +2069,6 @@ void WorkshopFrame::OnProcessEvent(unsigned id, EventData* data) } } - - - GamersFrame::GamersFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent): MenuFrame(menu, parent), _raceMenu(raceMenu), _planetIndex(-1) { const D3DXCOLOR color2 = D3DXCOLOR(214.0f, 214.0f, 214.0f, 255.0f)/255.0f; @@ -2816,9 +2804,6 @@ void AngarFrame::OnProgress(float deltaTime) } } - - - AchievmentFrame::AchievmentFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent): MenuFrame(menu, parent), _raceMenu(raceMenu) { const D3DXCOLOR color = D3DXCOLOR(0xFFFA5800); @@ -3136,9 +3121,6 @@ void AchievmentFrame::OnMouseLeave(gui::Widget* sender, bool wasReset) } } - - - RaceMainFrame::RaceMainFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent): MenuFrame(menu, parent), _raceMenu(raceMenu) { const D3DXCOLOR color1 = D3DXCOLOR(214.0f, 214.0f, 214.0f, 255.0f)/255.0f; @@ -3651,9 +3633,6 @@ void RaceMainFrame::OnDisconnectedPlayer(NetPlayer* sender) Invalidate(); } - - - RaceMenu::RaceMenu(Menu* menu, gui::Widget* parent, Player* player): _menu(menu), _state(msMain), _lastState(cStateEnd), _player(player) { LSL_ASSERT(menu && _player); diff --git a/src/Rock3dGame/source/game/RecordLib.cpp b/src/Rock3dGame/source/game/RecordLib.cpp index 92d7a7c7..155c3554 100644 --- a/src/Rock3dGame/source/game/RecordLib.cpp +++ b/src/Rock3dGame/source/game/RecordLib.cpp @@ -26,9 +26,6 @@ void DevideStr(std::string::const_iterator sIter, std::string::const_iterator eI } } - - - Record::Record(const Desc& desc): _lib(desc.lib), _parent(desc.parent), _name(desc.name), _src(desc.src) { if (_src) @@ -82,9 +79,6 @@ void Record::SetName(const std::string& value) } } - - - RecordNode::RecordNode(const Desc& desc): _lib(desc.lib), _parent(desc.parent), _name(desc.name), _src(desc.src) { if (_src) @@ -294,9 +288,6 @@ void RecordNode::SetName(const std::string& value) } } - - - RecordLib::RecordLib(const std::string& name, lsl::SerialNode* rootSrc): _MyBase(Desc(name, 0, 0, 0)), _rootSrc(rootSrc) { LSL_ASSERT(_rootSrc); diff --git a/src/Rock3dGame/source/game/ResourceManager.cpp b/src/Rock3dGame/source/game/ResourceManager.cpp index c0bbabd0..6e11ba9b 100644 --- a/src/Rock3dGame/source/game/ResourceManager.cpp +++ b/src/Rock3dGame/source/game/ResourceManager.cpp @@ -315,9 +315,6 @@ const std::string cStringValueStr[cStringValueEnd] = { const std::string cLangCharsetStr[cLangCharsetEnd] = {"lcDefault", "lcEastEurope", "lcRussian", "lcBaltic"}; const DWORD cLangCharsetCode[cLangCharsetEnd] = {DEFAULT_CHARSET, EASTEUROPE_CHARSET, RUSSIAN_CHARSET, BALTIC_CHARSET}; - - - ComplexMesh::ComplexMesh(ComplexMeshLib* owner): _owner(owner), _tag(-1), _enableTBN(false), _mesh(0), _ivbMesh(0), _meshX(0), _pxMesh(0) { } @@ -519,9 +516,6 @@ void ComplexMesh::SetEnableTBN(bool value) _enableTBN = value; } - - - ComplexMeshLib::ComplexMeshLib(graph::Engine* engine): _engine(engine) { _meshLib = new _MeshLib(this); @@ -638,9 +632,6 @@ graph::Engine* ComplexMeshLib::GetEngine() return _engine; } - - - ComplexImage::ComplexImage(ComplexImageLib* owner): _owner(owner), _levelCnt(1), _gui(false), _image(0), _tex2d(0), _cubeImage(0), _cubeTex(0), _tag(-1) { } @@ -851,9 +842,6 @@ void ComplexImage::SetGUI(bool value) _gui = value; } - - - ComplexImageLib::ComplexImageLib(graph::Engine* engine): _engine(engine) { _imageLib = new _ImageLib(this); @@ -966,9 +954,6 @@ graph::Engine* ComplexImageLib::GetEngine() return _engine; } - - - ComplexMatLib::ComplexMatLib(ResourceManager* resManager): _resManager(resManager) { LSL_ASSERT(_resManager); @@ -1021,9 +1006,6 @@ graph::Sampler2d& ComplexMatLib::AddSampler2dTo(graph::LibMaterial& libMat, cons return res; } - - - ComplexTextFontLibrary::ComplexTextFontLibrary(ResourceManager* resManager): _resManager(resManager) { } @@ -1053,9 +1035,6 @@ graph::TextFont& ComplexTextFontLibrary::LoadFont(const std::string& name, int h return font; } - - - StringLibrary::StringLibrary(ResourceManager* resManager): _resManager(resManager) { } @@ -1186,9 +1165,6 @@ bool StringLibrary::Has(StringValue value) const return Has(cStringValueStr[value]); } - - - ResourceManager::ResourceManager(World* world): _world(world), _fontCharset(lcDefault), _worldType(Planet::cWorldTypeEnd) { LSL_ASSERT(_world); @@ -1376,9 +1352,6 @@ void ResourceManager::LoadEffects() LoadMesh("Effect\\frost.r3d", false, true, true); LoadMesh("Effect\\sphere.r3d", false, true, true); - - - LoadImage("Effect\\gunEff2.dds", 1, true, false); LoadImage("Effect\\explosion1.dds", 1, true, false); LoadImage("Effect\\explosion2.dds", 1, true, false); @@ -1451,9 +1424,6 @@ void ResourceManager::LoadEffects() LoadImage("Effect\\flare2b.dds", 1, true, false); LoadImage("Effect\\flare2a.dds", 1, true, false); - - - LoadImage2dLibMat("Effect\\wheel", "Effect\\wheel.dds"); LoadImage2dLibMat("Effect\\truba", "Effect\\truba.dds"); LoadImage2dLibMat("Effect\\destrCar", "Effect\\destrCar.dds"); @@ -1587,9 +1557,6 @@ void ResourceManager::LoadWorld1() LoadMesh("World1\\Track\\pxPodjem2.r3d", false, false, false, Planet::wtWorld1 | MeshLib::cTagLoadData); LoadMesh("World1\\Track\\pxMost.r3d", false, false, false, Planet::wtWorld1 | MeshLib::cTagLoadData); - - - LoadImage("World1\\Texture\\berge.dds", cGenMipLevel, false, false, Planet::wtWorld1 | ImageLib::cTagInitTex2d); LoadImage("World1\\Texture\\eldertree.dds", cGenMipLevel, false, false, Planet::wtWorld1 | ImageLib::cTagInitTex2d); LoadImage("World1\\Texture\\lowpalma.dds", cGenMipLevel, false, false, Planet::wtWorld1 | ImageLib::cTagInitTex2d); @@ -1606,9 +1573,6 @@ void ResourceManager::LoadWorld1() LoadImage("World1\\Track\\Texture\\track1.dds", cGenMipLevel, false, false, Planet::wtWorld1 | ImageLib::cTagInitTex2d); LoadImage("World1\\Track\\Texture\\most.dds", cGenMipLevel, false, false, Planet::wtWorld1 | ImageLib::cTagInitTex2d); - - - LoadImage2dLibMat("World1\\stone", "World1\\Texture\\stone.dds"); LoadImage2dLibMat("World1\\wand", "World1\\Texture\\wand.dds"); LoadImage2dLibMat("World1\\Track\\most", "World1\\Track\\Texture\\most.dds"); @@ -1686,9 +1650,6 @@ void ResourceManager::LoadWorld2() LoadMesh("World2\\Track\\pxTramp1.r3d", false, false, false, Planet::wtWorld2 | MeshLib::cTagLoadData); LoadMesh("World2\\Track\\pxTramp2.r3d", false, false, false, Planet::wtWorld2 | MeshLib::cTagLoadData); - - - LoadImage("World2\\Texture\\atom.dds", cGenMipLevel, false, false, Planet::wtWorld2 | ImageLib::cTagInitTex2d); LoadImage("World2\\Texture\\bochki.dds", cGenMipLevel, false, false, Planet::wtWorld2 | ImageLib::cTagInitTex2d); LoadImage("World2\\Texture\\deadtree1.dds", cGenMipLevel, false, false, Planet::wtWorld2 | ImageLib::cTagInitTex2d); @@ -1722,9 +1683,6 @@ void ResourceManager::LoadWorld2() LoadImage("World2\\Track\\Texture\\most.dds", cGenMipLevel, false, false, Planet::wtWorld2 | ImageLib::cTagInitTex2d); LoadImage("World2\\Track\\Texture\\most_norm.dds", 1, false, false, Planet::wtWorld2 | ImageLib::cTagInitTex2d); - - - LoadImage2dLibMat("World2\\atom", "World2\\Texture\\atom.dds"); LoadImage2dLibMat("World2\\bochki", "World2\\Texture\\bochki.dds"); LoadImage2dLibMat("World2\\deadtree3", "World2\\Texture\\deadtree3.dds"); @@ -2104,9 +2062,6 @@ void ResourceManager::LoadCars() LoadMesh("Car\\monstertruckCrush.r3d", false, true, true); LoadMesh("Car\\podushkaCrush.r3d", false, true, true); - - - LoadImage("Car\\marauder.dds", cGenMipLevel); LoadImage("Car\\buggi.dds", cGenMipLevel); LoadImage("Car\\dirtdevil.dds", cGenMipLevel); @@ -2135,9 +2090,6 @@ void ResourceManager::LoadCars() LoadImage("Car\\monstertruckCrush.dds", cGenMipLevel, true); LoadImage("Car\\podushkaCrush.dds", cGenMipLevel, true); - - - LoadCarLibMat("Car\\marauder", "Car\\marauder.dds"); LoadCarLibMat("Car\\buggi", "Car\\buggi.dds"); LoadCarLibMat("Car\\dirtdevil", "Car\\dirtdevil.dds"); @@ -2201,9 +2153,6 @@ void ResourceManager::LoadBonus() LoadMesh("Bonus\\money.r3d", false, true, true); LoadMesh("Bonus\\shield.r3d", false, true, true); - - - LoadImage("Bonus\\ammo.dds", cGenMipLevel, true, false); LoadImage("Bonus\\medpack.dds", cGenMipLevel, true, false); LoadImage("Bonus\\money.dds", cGenMipLevel, true, false); @@ -2216,9 +2165,6 @@ void ResourceManager::LoadBonus() LoadImage("Bonus\\maslo.dds", cGenMipLevel, true, false); LoadImage("Bonus\\maslo_top.dds", cGenMipLevel, true, false); - - - LoadImage2dLibMat("Bonus\\ammo", "Bonus\\ammo.dds"); LoadImage2dLibMat("Bonus\\medpack", "Bonus\\medpack.dds"); LoadImage2dLibMat("Bonus\\money", "Bonus\\money.dds"); @@ -2287,9 +2233,6 @@ void ResourceManager::LoadWeapons() LoadMesh("Weapon\\reflector.r3d"); LoadMesh("Weapon\\rezonator.r3d"); - - - LoadImage("Weapon\\blaster1.dds", cGenMipLevel); LoadImage("Weapon\\pulsator.dds", cGenMipLevel); LoadImage("Weapon\\gun.dds", cGenMipLevel); @@ -2316,9 +2259,6 @@ void ResourceManager::LoadWeapons() LoadImage("Weapon\\rezonator.dds", cGenMipLevel); LoadImage("Weapon\\tankLaser.dds", cGenMipLevel); - - - LoadImage2dLibMat("Weapon\\blaster1", "Weapon\\blaster1.dds"); LoadImage2dLibMat("Weapon\\pulsator", "Weapon\\pulsator.dds"); LoadImage2dLibMat("Weapon\\gun", "Weapon\\gun.dds"); @@ -2691,9 +2631,6 @@ void ResourceManager::LoadGUI() libMat.material.SetOption(graph::Material::moIgnoreFog, true); } - - - LoadFont("Header", 44, 0, false, "Verdana"); // LoadFont("Item", 32, 0, false, "Verdana"); diff --git a/src/Rock3dGame/source/game/Trace.cpp b/src/Rock3dGame/source/game/Trace.cpp index dabb0958..9025bdeb 100644 --- a/src/Rock3dGame/source/game/Trace.cpp +++ b/src/Rock3dGame/source/game/Trace.cpp @@ -129,9 +129,6 @@ const WayPoint::Nodes& WayPoint::GetNodes() const return _nodes; } - - - WayNode::WayNode(WayPath* path, WayPoint* point): _path(path), _point(point), _prev(0), _next(0) { LSL_ASSERT(_point); @@ -672,9 +669,6 @@ float WayNode::GetRadius() const return _point->GetSize()/2.0f; } - - - WayPath::WayPath(Trace* trace): _trace(trace), _first(0), _last(0), _count(0) { } @@ -904,9 +898,6 @@ float WayPath::GetLength() const return _first ? _first->GetTile().GetFinishDist() : 0.0f; } - - - Trace::Trace(unsigned tracksCnt): cTrackCnt(tracksCnt), _pointId(0) { } diff --git a/src/Rock3dGame/source/game/Weapon.cpp b/src/Rock3dGame/source/game/Weapon.cpp index 6aaf2bdd..f5e91879 100644 --- a/src/Rock3dGame/source/game/Weapon.cpp +++ b/src/Rock3dGame/source/game/Weapon.cpp @@ -1618,9 +1618,6 @@ GameObject* Proj::GetWeapon() return _weapon; } - - - AutoProj::AutoProj(): _prepare(false) { } @@ -1681,9 +1678,6 @@ void AutoProj::LogicInited() InitProj(); } - - - Weapon::Weapon(): _shotTime(0) { } diff --git a/src/Rock3dGame/source/game/World.cpp b/src/Rock3dGame/source/game/World.cpp index 7c9d5a25..7f8ec5f0 100644 --- a/src/Rock3dGame/source/game/World.cpp +++ b/src/Rock3dGame/source/game/World.cpp @@ -37,9 +37,6 @@ void AdjustDbgInfo(const glm::vec2& size) #endif - - - World::World(): _terminateResult(EXIT_SUCCESS), _terminate(false), _pause(false), _firstTick(0), _lastTick(0), _lastTick2(0), _lastSyncTick(0), _timeAccum(0), _lastDrawTime(0), _curTimeIter(1), _control(0), _view(0), _graph(0), _audio(0), _videoPlayer(NULL), _pxManager(0), _pxScene(0), _resManager(0), _camera(0), _db(0), _map(0), _logic(0), _env(0), _edit(0), _game(0), _syncFreq(60), _time(0), _dTimeReal(0), _inputWasReset(false), _videoMode(false), _warmIterations(0), _timeResolution(0) { ZeroMemory(_iterBuf, sizeof(_iterBuf)); diff --git a/src/Rock3dGame/source/net/NetGame.cpp b/src/Rock3dGame/source/net/NetGame.cpp index cb6ccf86..0971f373 100644 --- a/src/Rock3dGame/source/net/NetGame.cpp +++ b/src/Rock3dGame/source/net/NetGame.cpp @@ -11,9 +11,6 @@ namespace game NetGame* NetGame::_i; - - - NetGame::NetGame(GameMode* game): _game(game), _race(NULL), _port(58213), _started(false), _isHost(false), _isClient(false), _player(NULL) { _i = this; diff --git a/src/Rock3dGame/source/net/NetPlayer.cpp b/src/Rock3dGame/source/net/NetPlayer.cpp index fd22004e..70fa3dee 100644 --- a/src/Rock3dGame/source/net/NetPlayer.cpp +++ b/src/Rock3dGame/source/net/NetPlayer.cpp @@ -31,9 +31,6 @@ void NetPlayerResponse::OnSerialize(const net::NetMessage& msg, net::BitStream& _player->ResponseStream(msg, stream); }*/ - - - NetPlayer::NetPlayer(const Desc& desc): NetModelRPC(desc), _net(NetGame::I()), _player(NULL), _human(NULL), _aiPlayer(NULL), _modelOwner(false), _dAlpha(0), _raceReady(false), _raceGoWait(false), _raceFinish(false) //, _response(NULL) { RegRPC(&NetPlayer::OnSetGamerId); diff --git a/src/Rock3dGame/source/net/SteamService.cpp b/src/Rock3dGame/source/net/SteamService.cpp index 8c3954b1..fd55d890 100644 --- a/src/Rock3dGame/source/net/SteamService.cpp +++ b/src/Rock3dGame/source/net/SteamService.cpp @@ -29,9 +29,6 @@ const lsl::string SteamServer::cGameDir = "motor rock"; bool SteamService::_init = false; const float SteamService::cSyncWaitTime = 60.0f; - - - //----------------------------------------------------------------------------- // Purpose: callback hook for debug text emitted from the Steam API //----------------------------------------------------------------------------- @@ -49,9 +46,6 @@ extern "C" void __cdecl SteamAPIDebugTextHook( int nSeverity, const char *pchDeb } } - - - NetConnectionSteam::NetConnectionSteam(NetAcceptorSteam* owner): _owner(owner), _isOpen(false) { } @@ -203,9 +197,6 @@ SteamService* NetConnectionSteam::service() return _owner->service(); } - - - NetChannelSteam::NetChannelSteam(NetAcceptorSteam* owner): _owner(owner), _isOpen(false), _isBind(false) { } @@ -349,9 +340,6 @@ SteamService* NetChannelSteam::service() return _owner->service(); } - - - NetAcceptorSteam::NetAcceptorSteam(SteamService* service): _service(service), _isOpen(false) { _steam = net::GetNetService().CreateStreamBuf(); @@ -512,9 +500,6 @@ SteamService* NetAcceptorSteam::service() return _service; } - - - SteamStats::SteamStats(SteamService* service): _service(service), _userStatsLoading(false), _userStatsSaving(false), _raceNumShots(0), _callbackUserStatsReceived( this, &SteamStats::OnUserStatsReceived ), _callbackUserStatsStored( this, &SteamStats::OnUserStatsStored ) @@ -782,9 +767,6 @@ GameMode* SteamStats::game() return _service->game(); } - - - SteamLeaderboard::SteamLeaderboard(SteamService* service): _service(service), _leadersLoading(false), _userStatsUploading(0) { } @@ -881,9 +863,6 @@ GameMode* SteamLeaderboard::game() return _service->game(); } - - - SteamLobby::SteamLobby(SteamService* service): _service(service), _lobbyListLoading(false), _lobbyLoading(false), _matchStarting(false), _lobbyCreated(false), _callbackLobbyDataUpdated(this, &SteamLobby::OnLobbyDataUpdatedCallback), _callbackPersonaStateChange(this, &SteamLobby::OnPersonaStateChange), @@ -1248,9 +1227,6 @@ GameMode* SteamLobby::game() return _service->game(); } - - - SteamServer::SteamServer(SteamService* service): _service(service), _serverListRequest(NULL), _serverConnecting(false), _hostInit(false), _internetListLoading(false), _callbackSteamServersConnected( this, &SteamServer::OnSteamServersConnected ), _callbackSteamServersDisconnected( this, &SteamServer::OnSteamServersDisconnected ), @@ -1542,7 +1518,6 @@ void SteamServer::OnAuthCompleted( bool bAuthSuccessful, uint32 iPendingAuthInde return; } - bool bAddedOk = false; for( uint32 i = 0; i < cMaxPlayers; ++i ) @@ -1626,7 +1601,6 @@ void SteamServer::OnP2PSessionRequest( P2PSessionRequest_t *pCallback ) SteamGameServerNetworking()->AcceptP2PSessionWithUser( pCallback->m_steamIDRemote ); } - //----------------------------------------------------------------------------- // Purpose: Handle clients disconnecting //----------------------------------------------------------------------------- @@ -1924,9 +1898,6 @@ CSteamID SteamServer::steamId() return _hostInit ? SteamGameServer()->GetSteamID() : CSteamID(); } - - - SteamService::SteamService(GameMode* game): _game(game), _syncStage(cSyncStageEnd), _syncWaitTime(-1.0f), _initiatingConnection(false), _connected(false) { if (_init) diff --git a/src/Rock3dGame/source/net/p2pauth.cpp b/src/Rock3dGame/source/net/p2pauth.cpp index d892706a..9db72a14 100644 --- a/src/Rock3dGame/source/net/p2pauth.cpp +++ b/src/Rock3dGame/source/net/p2pauth.cpp @@ -5,7 +5,6 @@ // $NoKeywords: $ //============================================================================= - #include "stdafx.h" #include "net\p2pauth.h" @@ -13,10 +12,6 @@ #include "net\SteamService.h" - - - - namespace r3d { @@ -33,7 +28,6 @@ CNetworkTransport::CNetworkTransport() { } - //----------------------------------------------------------------------------- // Purpose: send ticket message to steamIDTo //----------------------------------------------------------------------------- @@ -45,7 +39,6 @@ bool CNetworkTransport::SendTicket( CSteamID steamIDFrom, CSteamID steamIDTo, ui return SendNetMessage( steamIDTo, (void*)&msg, sizeof( msg ) ); } - //----------------------------------------------------------------------------- // Purpose: actual implementation //----------------------------------------------------------------------------- @@ -54,7 +47,6 @@ bool CNetworkTransport::SendNetMessage( CSteamID steamIDTo, void *pMessage, int return SteamNetworking()->SendP2PPacket( steamIDTo, pMessage, cubMessage, k_EP2PSendReliable ); } - //----------------------------------------------------------------------------- // Purpose: close connection to steamID //----------------------------------------------------------------------------- @@ -63,7 +55,6 @@ void CNetworkTransport::CloseConnection( CSteamID steamID ) SteamNetworking()->CloseP2PSessionWithUser( steamID ); } - //----------------------------------------------------------------------------- // Purpose: another user has sent us a packet - do we accept? //----------------------------------------------------------------------------- @@ -74,7 +65,6 @@ void CNetworkTransport::OnP2PSessionRequest( P2PSessionRequest_t *pP2PSessionReq SteamNetworking()->AcceptP2PSessionWithUser( pP2PSessionRequest->m_steamIDRemote ); } - //----------------------------------------------------------------------------- // Purpose: we send a packet to another user but it failed //----------------------------------------------------------------------------- @@ -84,7 +74,6 @@ void CNetworkTransport::OnP2PSessionConnectFail( P2PSessionConnectFail_t *pP2PSe // we can just use the normal timeout } - //----------------------------------------------------------------------------- // Purpose: constructor //----------------------------------------------------------------------------- @@ -101,7 +90,6 @@ CP2PAuthPlayer::CP2PAuthPlayer( SteamService *pGameEngine, CNetworkTransport *pN m_cubTicketHeGaveMe = 0; } - //----------------------------------------------------------------------------- // Purpose: destructor //----------------------------------------------------------------------------- @@ -112,7 +100,6 @@ CP2PAuthPlayer::~CP2PAuthPlayer() m_pNetworkTransport = NULL; } - //----------------------------------------------------------------------------- // Purpose: the steam backend has responded //----------------------------------------------------------------------------- @@ -129,7 +116,6 @@ void CP2PAuthPlayer::OnBeginAuthResponse( ValidateAuthTicketResponse_t *pCallbac } } - //----------------------------------------------------------------------------- // Purpose: internal implementation //----------------------------------------------------------------------------- @@ -157,7 +143,6 @@ void CP2PAuthPlayer::StartAuthPlayer() m_ulTicketTime = GetGameTimeInSeconds(); } - //----------------------------------------------------------------------------- // Purpose: is this auth ok? //----------------------------------------------------------------------------- @@ -207,7 +192,6 @@ bool CP2PAuthPlayer::BIsAuthOk() return true; } - //----------------------------------------------------------------------------- // Purpose: the game engine is telling us about someone who left the game //----------------------------------------------------------------------------- @@ -267,7 +251,6 @@ bool CP2PAuthPlayer::HandleMessage( EMessage eMsg, void *pMessage ) return false; } - //----------------------------------------------------------------------------- // Purpose: utility wrapper //----------------------------------------------------------------------------- @@ -276,7 +259,6 @@ CSteamID CP2PAuthPlayer::GetSteamID() return SteamUser()->GetSteamID(); } - //----------------------------------------------------------------------------- // Purpose: constructor //----------------------------------------------------------------------------- @@ -296,7 +278,6 @@ CP2PAuthedGame::CP2PAuthedGame( SteamService *pGameEngine ) } } - //----------------------------------------------------------------------------- // Purpose: game with this player is over //----------------------------------------------------------------------------- @@ -310,7 +291,6 @@ void CP2PAuthedGame::PlayerDisconnect( int iSlot ) } } - //----------------------------------------------------------------------------- // Purpose: game is over, disconnect everyone //----------------------------------------------------------------------------- @@ -327,7 +307,6 @@ void CP2PAuthedGame::EndGame() } } - //----------------------------------------------------------------------------- // Purpose: initialize player //----------------------------------------------------------------------------- @@ -356,7 +335,6 @@ void CP2PAuthedGame::InternalInitPlayer( int iSlot, CSteamID steamID, bool bStar } } - //----------------------------------------------------------------------------- // Purpose: game host register this player, we wait for this player // to start the auth process by sending us his ticket, then we will @@ -368,7 +346,6 @@ void CP2PAuthedGame::RegisterPlayer( int iSlot, CSteamID steamID ) InternalInitPlayer( iSlot, steamID, false ); } - //----------------------------------------------------------------------------- // Purpose: start the auth process by sending ticket to this player // he will reciprocate @@ -379,7 +356,6 @@ void CP2PAuthedGame::StartAuthPlayer( int iSlot, CSteamID steamID ) InternalInitPlayer( iSlot, steamID, true ); } - //----------------------------------------------------------------------------- // Purpose: message handler //----------------------------------------------------------------------------- @@ -422,7 +398,6 @@ bool CP2PAuthedGame::HandleMessage( EMessage eMsg, void *pMessage ) return false; } - //----------------------------------------------------------------------------- // Purpose: utility wrapper //----------------------------------------------------------------------------- diff --git a/src/Rock3dGame/source/snd/Audio.cpp b/src/Rock3dGame/source/snd/Audio.cpp index 06e848e2..35bcd5ff 100644 --- a/src/Rock3dGame/source/snd/Audio.cpp +++ b/src/Rock3dGame/source/snd/Audio.cpp @@ -10,9 +10,6 @@ namespace snd const unsigned Sound::cBufferSize = SAFE_MIN(65536 * 20, XAUDIO2_MAX_BUFFER_BYTES); - - - Sound::Sound(SoundLib* lib): _lib(lib), _cacheSize(cBufferSize * 10), _isLoad(false), _unusedBufSize(0), _volume(1.0f) { } @@ -433,9 +430,6 @@ void Sound::SetVolume(float value) _volume = value; } - - - SoundLib::SoundLib(Engine* engine): _engine(engine) { } @@ -457,9 +451,6 @@ Engine* SoundLib::GetEngine() return _engine; } - - - Voice::Voice(Engine* engine): _engine(engine), _outMatrix(0), _srcChannels(0), _destChannels(0) { } @@ -666,9 +657,6 @@ void Voice::SetVolume(float value) GetXVoice()->SetVolume(value); } - - - SubmixVoice::SubmixVoice(Engine* engine): _MyBase(engine), _xVoice(0) { HRESULT hr; @@ -702,9 +690,6 @@ IXAudio2Voice* SubmixVoice::GetXVoice() return _xVoice; } - - - MasteringVoice::MasteringVoice(Engine* engine): _MyBase(engine), _xVoice(0) { if (engine->GetXAudio() && FAILED(engine->GetXAudio()->CreateMasteringVoice(&_xVoice, XAUDIO2_DEFAULT_CHANNELS, XAUDIO2_DEFAULT_SAMPLERATE, 0, 0, 0))) @@ -736,9 +721,6 @@ IXAudio2Voice* MasteringVoice::GetXVoice() return _xVoice; } - - - Proxy::Proxy(Engine* engine): _MyBase(engine), _init(false), _sound(0), _pos(0), _playMode(pmOnce), _volume(1.0f), _frequencyRatio(1.0f), _onStreamEnd(false), _onTerminate(false), _xVoice(0), _run(false), _streaming(NULL) { } @@ -1407,9 +1389,6 @@ void Proxy::SetFrequencyRatio(float value) _xVoice->SetFrequencyRatio(value); } - - - Source::Source(Engine* engine): _MyBase(engine), _sound(0), _pos(0), _playMode(pmOnce), _volume(1.0f), _frequencyRatio(1.0f), _proxy(0) { } @@ -1620,9 +1599,6 @@ void Source::SetFrequencyRatio(float value) _proxy->SetFrequencyRatio(value); } - - - Source3d::Source3d(Engine* engine): _MyBase(engine), _pos3d(NullVector), _distScaler(0), _changed3d(false), _play(false), _playTime(0) { _myReport = new MyReport(this); @@ -1823,9 +1799,6 @@ void Source3d::SetDistScaler(float value) Changed3d(); } - - - Engine::Engine(): _mainVoice(0), _xAudio(0), _initX3dAudio(false), _listener(0), _distScaler(30.0f), _mode3d(m3dFlat), _changed3d(false), _poolMaxSize(20), _isComputing(false) { ZeroMemory(&_xDevCaps, sizeof(_xDevCaps)); diff --git a/src/Rock3dGame/source/video/playback.cpp b/src/Rock3dGame/source/video/playback.cpp index 2b0a2d7e..88080ca3 100644 --- a/src/Rock3dGame/source/video/playback.cpp +++ b/src/Rock3dGame/source/video/playback.cpp @@ -61,7 +61,6 @@ HRESULT DShowPlayer::OpenFile(PCWSTR pszFileName) return hr; } - // Respond to a graph event. // // The owning window should call this method when it receives the window @@ -142,7 +141,6 @@ HRESULT DShowPlayer::Stop() return hr; } - // EVR/VMR functionality BOOL DShowPlayer::HasVideo() const @@ -178,7 +176,6 @@ HRESULT DShowPlayer::Repaint(HDC hdc) } } - // Notifies the video renderer that the display mode changed. // // Call this method when the application receives WM_DISPLAYCHANGE. @@ -264,7 +261,6 @@ void DShowPlayer::TearDownGraph() m_state = STATE_NO_GRAPH; } - HRESULT DShowPlayer::CreateVideoRenderer() { HRESULT hr = E_FAIL; @@ -304,7 +300,6 @@ HRESULT DShowPlayer::CreateVideoRenderer() return hr; } - // Render the streams from a source filter. HRESULT DShowPlayer::RenderStreams(IBaseFilter *pSource) diff --git a/src/Rock3dGame/source/video/video.cpp b/src/Rock3dGame/source/video/video.cpp index 9ff8ebf0..84a88c87 100644 --- a/src/Rock3dGame/source/video/video.cpp +++ b/src/Rock3dGame/source/video/video.cpp @@ -131,7 +131,6 @@ void CVMR7::SetFullScreen(bool value) { } - // Initialize the VMR-7 for windowless mode. HRESULT InitWindowlessVMR( @@ -188,7 +187,6 @@ HRESULT InitWindowlessVMR( return hr; } - /// VMR-9 Wrapper CVMR9::CVMR9() : m_pWindowless(NULL), _videoWindow(NULL) @@ -262,7 +260,6 @@ HRESULT CVMR9::FinalizeGraph(IGraphBuilder *pGraph) return hr; } - HRESULT CVMR9::UpdateVideoWindow(HWND hwnd, const LPRECT prc) { if (m_pWindowless == NULL) @@ -321,7 +318,6 @@ void CVMR9::SetFullScreen(bool value) _videoWindow->put_FullScreenMode(value); } - // Initialize the VMR-9 for windowless mode. HRESULT InitWindowlessVMR9( @@ -378,7 +374,6 @@ HRESULT InitWindowlessVMR9( return hr; } - /// EVR Wrapper CEVR::CEVR() : m_pEVR(NULL), m_pVideoDisplay(NULL) From 2f830e66c5044730faaec77b6b85691e3dc47821 Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Mon, 24 Oct 2022 22:28:43 +0300 Subject: [PATCH 32/55] use DXVK_NATIVE_INCLUDE_DIRS in Linux and clean d3dx9math.h --- src/MathLib/CMakeLists.txt | 13 ++++++++++++- src/XPlatform/header/d3dx9math.h | 25 +------------------------ 2 files changed, 13 insertions(+), 25 deletions(-) diff --git a/src/MathLib/CMakeLists.txt b/src/MathLib/CMakeLists.txt index e0980061..b7f7310b 100644 --- a/src/MathLib/CMakeLists.txt +++ b/src/MathLib/CMakeLists.txt @@ -1,5 +1,16 @@ project(MathLib) +if (WIN32) +set(DX9MATH_PATH + ${CMAKE_SOURCE_DIR}/extern/directx/include +) +else() +set(DX9MATH_PATH + ${CMAKE_SOURCE_DIR}/src/XPlatform/header + ${DXVK_NATIVE_INCLUDE_DIRS} +) +endif() + add_definitions(-DNOMINMAX) # Use std::max()/std::min() list(APPEND PROJECT_DIRS @@ -19,7 +30,7 @@ target_include_directories(${PROJECT_NAME} PRIVATE header ${CMAKE_SOURCE_DIR}/src/LexStd/header ${CMAKE_SOURCE_DIR}/extern/glm/include - ${CMAKE_SOURCE_DIR}/extern/directx/include + ${DX9MATH_PATH} ) target_link_libraries(${PROJECT_NAME}) diff --git a/src/XPlatform/header/d3dx9math.h b/src/XPlatform/header/d3dx9math.h index fca2674b..9fcb4034 100644 --- a/src/XPlatform/header/d3dx9math.h +++ b/src/XPlatform/header/d3dx9math.h @@ -1,27 +1,4 @@ #pragma once -//Attempt to wrap legacy D3DX9 stuff with what we got - +#include #include -#include "xmath.h" -#include "../Render/inc/Umath.h" - -//Type mapping - -typedef Vect3f D3DXVECTOR3; -typedef Vect4f D3DXVECTOR4; -typedef CMatrix D3DXMATRIX; - -D3DXVECTOR3* D3DXVec3Normalize(D3DXVECTOR3* out, const D3DXVECTOR3* pv); -D3DXVECTOR4* D3DXVec3Transform(D3DXVECTOR4* out, const D3DXVECTOR3* pv, const D3DXMATRIX* pm); -D3DXVECTOR3* D3DXVec3TransformNormal(D3DXVECTOR3* out, const D3DXVECTOR3* pv, const D3DXMATRIX* pm); -D3DXVECTOR4* D3DXVec4Transform(D3DXVECTOR4 *pout, const D3DXVECTOR4 *pv, const D3DXMATRIX *pm); -float D3DXVec4Length(D3DXVECTOR4* v); - -void D3DXMatrixIdentity(D3DXMATRIX* mat); -float D3DXMatrixDeterminant(const D3DXMATRIX *m); -D3DXMATRIX* D3DXMatrixMultiply(D3DXMATRIX* out, const D3DXMATRIX* m1, const D3DXMATRIX* m2); -D3DXMATRIX* D3DXMatrixInverse(D3DXMATRIX* out, float* determinant, const D3DXMATRIX* mp); -D3DXMATRIX* D3DXMatrixTranspose(D3DXMATRIX* out, const D3DXMATRIX *pm); -D3DXMATRIX* D3DXMatrixLookAtLH(D3DXMATRIX *out, const D3DXVECTOR3 *eye, const D3DXVECTOR3 *at, const D3DXVECTOR3 *up); -D3DXMATRIX* D3DXMatrixPerspectiveFovLH(D3DXMATRIX *pout, float fovy, float aspect, float zn, float zf); From 2b4e160cd8dd12d346833005141838cc9ae38f0f Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Wed, 26 Oct 2022 10:38:58 +0300 Subject: [PATCH 33/55] math: auto replace D3DXVECTOR3 with glm::vec3 in src/*.h,*.cpp,*.inl --- src/LexStd/header/lslSerialValue.h | 8 +- src/MapEditor/ClassView.cpp | 6 +- src/MapEditor/ClassView.h | 2 +- src/MathLib/header/lslMath.h | 120 ++--- src/MathLib/header/lslMath.inl | 124 ++--- src/MathLib/header/lslVariant.h | 12 +- src/MathLib/header/r3dMath.h | 62 +-- src/MathLib/source/lslMath.cpp | 2 +- src/MathLib/source/lslVariant.cpp | 2 +- src/MathLib/source/r3dMath.cpp | 148 +++--- src/NetLib/include/net/BitStream.h | 2 +- src/NetLib/include/net/NetCommon.h | 14 +- src/NetLib/source/net/BitStream.cpp | 4 +- src/Rock3dEngine/header/GraphManager.h | 20 +- src/Rock3dEngine/header/graph/ActorManager.h | 4 +- src/Rock3dEngine/header/graph/ContextInfo.h | 16 +- src/Rock3dEngine/header/graph/Engine.h | 2 +- src/Rock3dEngine/header/graph/FxManager.h | 44 +- src/Rock3dEngine/header/graph/GrassField.h | 2 +- .../header/graph/MappingShaders.h | 6 +- src/Rock3dEngine/header/graph/OctreeSort.h | 2 +- .../header/graph/RenderToTexture.h | 6 +- src/Rock3dEngine/header/graph/SceneManager.h | 62 +-- src/Rock3dEngine/header/graph/StdNode.h | 32 +- src/Rock3dEngine/header/graph/SunShaft.h | 6 +- src/Rock3dEngine/header/graph/VideoResource.h | 12 +- src/Rock3dEngine/header/graph/WaterPlane.h | 6 +- src/Rock3dEngine/header/gui/GUI.h | 20 +- src/Rock3dEngine/header/px/Physx.h | 60 +-- src/Rock3dEngine/header/r3dGraphTypes.h | 8 +- src/Rock3dEngine/header/res/GraphResource.h | 42 +- src/Rock3dEngine/source/GraphManager.cpp | 104 ++-- .../source/graph/ActorManager.cpp | 10 +- src/Rock3dEngine/source/graph/ContextInfo.cpp | 36 +- src/Rock3dEngine/source/graph/Engine.cpp | 18 +- src/Rock3dEngine/source/graph/FogPlane.cpp | 2 +- src/Rock3dEngine/source/graph/FxManager.cpp | 80 +-- src/Rock3dEngine/source/graph/GrassField.cpp | 16 +- .../source/graph/MappingShaders.cpp | 6 +- .../source/graph/MaterialLibrary.cpp | 8 +- src/Rock3dEngine/source/graph/OctreeSort.cpp | 4 +- .../source/graph/RenderToTexture.cpp | 30 +- .../source/graph/SceneManager.cpp | 180 +++---- src/Rock3dEngine/source/graph/SkyBox.cpp | 14 +- src/Rock3dEngine/source/graph/StdNode.cpp | 164 +++---- src/Rock3dEngine/source/graph/SunShaft.cpp | 10 +- .../source/graph/VideoResource.cpp | 12 +- src/Rock3dEngine/source/graph/WaterPlane.cpp | 6 +- src/Rock3dEngine/source/gui/GUI.cpp | 58 +-- src/Rock3dEngine/source/px/Physx.cpp | 72 +-- src/Rock3dEngine/source/res/GraphResource.cpp | 64 +-- src/Rock3dGame/header/edit/Map.h | 12 +- src/Rock3dGame/header/edit/SceneControl.h | 14 +- src/Rock3dGame/header/edit/Trace.h | 32 +- src/Rock3dGame/header/edit/Utils.h | 16 +- src/Rock3dGame/header/game/CameraManager.h | 42 +- src/Rock3dGame/header/game/ControlManager.h | 8 +- src/Rock3dGame/header/game/DataBase.h | 22 +- src/Rock3dGame/header/game/Environment.h | 12 +- src/Rock3dGame/header/game/GameBase.h | 28 +- src/Rock3dGame/header/game/GameCar.h | 18 +- src/Rock3dGame/header/game/GameObject.h | 56 +-- src/Rock3dGame/header/game/HudMenu.h | 4 +- src/Rock3dGame/header/game/Logic.h | 14 +- src/Rock3dGame/header/game/Player.h | 26 +- src/Rock3dGame/header/game/Race.h | 10 +- src/Rock3dGame/header/game/RaceMenu2.h | 2 +- src/Rock3dGame/header/game/Trace.h | 66 +-- src/Rock3dGame/header/game/TraceGfx.h | 8 +- src/Rock3dGame/header/game/Weapon.h | 26 +- src/Rock3dGame/header/net/NetPlayer.h | 4 +- src/Rock3dGame/header/snd/Audio.h | 8 +- src/Rock3dGame/include/IMapObj.h | 8 +- src/Rock3dGame/include/ISceneControl.h | 28 +- src/Rock3dGame/include/ITrace.h | 8 +- src/Rock3dGame/source/edit/EditMap.cpp | 20 +- src/Rock3dGame/source/edit/EditTrace.cpp | 34 +- src/Rock3dGame/source/edit/EditUtils.cpp | 16 +- src/Rock3dGame/source/edit/SceneControl.cpp | 40 +- src/Rock3dGame/source/game/AIPlayer.cpp | 38 +- src/Rock3dGame/source/game/CameraManager.cpp | 122 ++--- src/Rock3dGame/source/game/DataBase.cpp | 458 +++++++++--------- src/Rock3dGame/source/game/Environment.cpp | 12 +- src/Rock3dGame/source/game/GameBase.cpp | 26 +- src/Rock3dGame/source/game/GameCar.cpp | 22 +- src/Rock3dGame/source/game/GameObject.cpp | 50 +- src/Rock3dGame/source/game/HudMenu.cpp | 16 +- src/Rock3dGame/source/game/Logic.cpp | 8 +- src/Rock3dGame/source/game/Map.cpp | 2 +- src/Rock3dGame/source/game/Player.cpp | 48 +- src/Rock3dGame/source/game/Race.cpp | 196 ++++---- src/Rock3dGame/source/game/RaceMenu2.cpp | 60 +-- .../source/game/ResourceManager.cpp | 6 +- src/Rock3dGame/source/game/Trace.cpp | 86 ++-- src/Rock3dGame/source/game/TraceGfx.cpp | 16 +- src/Rock3dGame/source/game/Weapon.cpp | 70 +-- src/Rock3dGame/source/net/NetPlayer.cpp | 28 +- src/Rock3dGame/source/snd/Audio.cpp | 10 +- src/XPlatform/source/d3dx9math.cpp | 12 +- 99 files changed, 1809 insertions(+), 1809 deletions(-) diff --git a/src/LexStd/header/lslSerialValue.h b/src/LexStd/header/lslSerialValue.h index 7f6c32ee..c62bda00 100644 --- a/src/LexStd/header/lslSerialValue.h +++ b/src/LexStd/header/lslSerialValue.h @@ -37,9 +37,9 @@ template<> struct SerialValue } }; -template<> struct SerialValue +template<> struct SerialValue { - typedef D3DXVECTOR3 _Value; + typedef glm::vec3 _Value; static void Write(SWriter* writer, const char* name, const _Value& value) { @@ -151,9 +151,9 @@ template struct SerialValue> } }; -template<> struct SerialValue> +template<> struct SerialValue> { - typedef D3DXVECTOR3 _Value; + typedef glm::vec3 _Value; typedef ValueRange<_Value> MyRange; typedef SerialValue MyPoint3U; diff --git a/src/MapEditor/ClassView.cpp b/src/MapEditor/ClassView.cpp index 67237ef0..671f6e06 100644 --- a/src/MapEditor/ClassView.cpp +++ b/src/MapEditor/ClassView.cpp @@ -85,7 +85,7 @@ void CClassView::ReleaseItems() void CClassView::InsertItem(const r3d::IRecordNodeRef& node, HTREEITEM parent) { HTREEITEM itemNode = m_wndClassView.InsertItem(StdStrToCString(node->GetName()), 2, 2, parent); - SetItemData(itemNode, new ItemData(node, 0)); + SetItemData(itemNode, new ItemData(node, 0)); r3d::IMapObjRecRef record = node->FirstRecord(); while (record) @@ -135,7 +135,7 @@ void CClassView::UpdateList() } } -void CClassView::SelectItem(const D3DXVECTOR3& mapObjPos) +void CClassView::SelectItem(const glm::vec3& mapObjPos) { r3d::IMapObjRecRef oldRec = _newMapObj ? _newMapObj->GetRecord() : 0; r3d::IMapObjRecRef curRec = GetSelItemData() ? GetSelItemData()->record : 0; @@ -459,7 +459,7 @@ bool CClassView::OnMapViewMouseClickEvent(lsl::MouseKey key, lsl::KeyState state { if (_newMapObj && key == lsl::mkLeft && state == lsl::ksDown) { - D3DXVECTOR3 pos(0, 0, 0); + glm::vec3 pos(0, 0, 0); if (_newMapObj) pos = _newMapObj->GetPos(); _newMapObj = 0; diff --git a/src/MapEditor/ClassView.h b/src/MapEditor/ClassView.h index 68336e18..dff5977e 100644 --- a/src/MapEditor/ClassView.h +++ b/src/MapEditor/ClassView.h @@ -63,7 +63,7 @@ class CClassView : public CViewPane void UpdateList(); //Функции работы с моделью + обновление вида - void SelectItem(const D3DXVECTOR3& mapObjPos = D3DXVECTOR3(0, 0, 0)); + void SelectItem(const glm::vec3& mapObjPos = glm::vec3(0, 0, 0)); void DeselectItem(); r3d::IDataBase* GetDB(); diff --git a/src/MathLib/header/lslMath.h b/src/MathLib/header/lslMath.h index ced4394d..025b491f 100644 --- a/src/MathLib/header/lslMath.h +++ b/src/MathLib/header/lslMath.h @@ -18,20 +18,20 @@ float Random(); float RandomRange(float from, float to); int RandomRange(int from, int to); float NumAbsAdd(float absVal, float addVal); -float ScalarTransform(float scalar, const D3DXVECTOR3& vec, const D3DXMATRIX& mat); +float ScalarTransform(float scalar, const glm::vec3& vec, const D3DXMATRIX& mat); -void BuildWorldMatrix(const D3DXVECTOR3& pos, const D3DXVECTOR3& scale, const glm::quat& rot, D3DXMATRIX& outMat); -D3DXMATRIX BuildWorldMatrix(const D3DXVECTOR3& pos, const D3DXVECTOR3& scale, const glm::quat& rot); -void MatrixRotationFromAxis(const D3DXVECTOR3& xVec, const D3DXVECTOR3& yVec, const D3DXVECTOR3& zVec, D3DXMATRIX& matOut); -void MatrixSetTranslation(const D3DXVECTOR3& vec, D3DXMATRIX& outMat); -void MatrixTranslate(const D3DXVECTOR3& vec, D3DXMATRIX& outMat); -void MatrixSetScale(const D3DXVECTOR3& vec, D3DXMATRIX& outMat); -void MatrixScale(const D3DXVECTOR3& vec, D3DXMATRIX& outMat); -void MatGetPos(const D3DXMATRIX& mat, D3DXVECTOR3& outPos); -D3DXVECTOR3 MatGetPos(const D3DXMATRIX& mat); +void BuildWorldMatrix(const glm::vec3& pos, const glm::vec3& scale, const glm::quat& rot, D3DXMATRIX& outMat); +D3DXMATRIX BuildWorldMatrix(const glm::vec3& pos, const glm::vec3& scale, const glm::quat& rot); +void MatrixRotationFromAxis(const glm::vec3& xVec, const glm::vec3& yVec, const glm::vec3& zVec, D3DXMATRIX& matOut); +void MatrixSetTranslation(const glm::vec3& vec, D3DXMATRIX& outMat); +void MatrixTranslate(const glm::vec3& vec, D3DXMATRIX& outMat); +void MatrixSetScale(const glm::vec3& vec, D3DXMATRIX& outMat); +void MatrixScale(const glm::vec3& vec, D3DXMATRIX& outMat); +void MatGetPos(const D3DXMATRIX& mat, glm::vec3& outPos); +glm::vec3 MatGetPos(const D3DXMATRIX& mat); -glm::vec3 Vec3DxToGlm(D3DXVECTOR3 v3); -D3DXVECTOR3 Vec3GlmToDx(glm::vec3 v3); +glm::vec3 Vec3DxToGlm(glm::vec3 v3); +glm::vec3 Vec3GlmToDx(glm::vec3 v3); // glm::vec2 Vec2TransformCoord(const glm::vec2 &vec, const glm::mat4 &mat); @@ -45,60 +45,60 @@ glm::vec2 operator*(const glm::vec2& vec1, const glm::vec2& vec2); void operator/=(glm::vec2& vec1, const glm::vec2& vec2); glm::vec2 operator/(const glm::vec2& vec1, const glm::vec2& vec2); -D3DXVECTOR3 Vec3FromVec2(const glm::vec2& vec); -void Vec3Invert(const D3DXVECTOR3& vec, D3DXVECTOR3& rOut); -D3DXVECTOR3 Vec3Invert(const D3DXVECTOR3& vec); -D3DXVECTOR3 Vec3TransformCoord(const D3DXVECTOR3& vec, const D3DXMATRIX& mat); -void Vec3Abs(const D3DXVECTOR3& vec, D3DXVECTOR3& rOut); -D3DXVECTOR3 Vec3Abs(const D3DXVECTOR3& vec); -void Vec3Rotate(const D3DXVECTOR3& v, const glm::quat& quat, D3DXVECTOR3& outVec); -void operator*=(D3DXVECTOR3& vec1, const D3DXVECTOR3& vec2); -D3DXVECTOR3 operator*(const D3DXVECTOR3& vec1, const D3DXVECTOR3& vec2); -void operator/=(D3DXVECTOR3& vec1, const D3DXVECTOR3& vec2); -D3DXVECTOR3 operator/(const D3DXVECTOR3& vec1, const D3DXVECTOR3& vec2); -bool operator>=(const D3DXVECTOR3& vec1, float scalar); -bool operator<(const D3DXVECTOR3& vec1, float scalar); -bool operator>(const D3DXVECTOR3& vec1, const D3DXVECTOR3& vec2); -bool operator<(const D3DXVECTOR3& vec1, const D3DXVECTOR3& vec2); +glm::vec3 Vec3FromVec2(const glm::vec2& vec); +void Vec3Invert(const glm::vec3& vec, glm::vec3& rOut); +glm::vec3 Vec3Invert(const glm::vec3& vec); +glm::vec3 Vec3TransformCoord(const glm::vec3& vec, const D3DXMATRIX& mat); +void Vec3Abs(const glm::vec3& vec, glm::vec3& rOut); +glm::vec3 Vec3Abs(const glm::vec3& vec); +void Vec3Rotate(const glm::vec3& v, const glm::quat& quat, glm::vec3& outVec); +void operator*=(glm::vec3& vec1, const glm::vec3& vec2); +glm::vec3 operator*(const glm::vec3& vec1, const glm::vec3& vec2); +void operator/=(glm::vec3& vec1, const glm::vec3& vec2); +glm::vec3 operator/(const glm::vec3& vec1, const glm::vec3& vec2); +bool operator>=(const glm::vec3& vec1, float scalar); +bool operator<(const glm::vec3& vec1, float scalar); +bool operator>(const glm::vec3& vec1, const glm::vec3& vec2); +bool operator<(const glm::vec3& vec1, const glm::vec3& vec2); D3DXVECTOR4 Vec4FromVec2(const glm::vec2& vec); -D3DXVECTOR4 Vec4FromVec3(const D3DXVECTOR3& vec); +D3DXVECTOR4 Vec4FromVec3(const glm::vec3& vec); //Линия из нормали и точки -void Line2FromNorm(const glm::vec2& norm, const glm::vec2& point, D3DXVECTOR3& outLine); -D3DXVECTOR3 Line2FromNorm(const glm::vec2& norm, const glm::vec2& point); +void Line2FromNorm(const glm::vec2& norm, const glm::vec2& point, glm::vec3& outLine); +glm::vec3 Line2FromNorm(const glm::vec2& norm, const glm::vec2& point); //Линия из направляющей и точки -void Line2FromDir(const glm::vec2& dir, const glm::vec2& point, D3DXVECTOR3& outLine); -D3DXVECTOR3 Line2FromDir(const glm::vec2& dir, const glm::vec2& point); -void Line2GetNorm(const D3DXVECTOR3& line, glm::vec2& norm); -void Line2GetDir(const D3DXVECTOR3& line, glm::vec2& dir); -void Line2GetRadiusVec(const D3DXVECTOR3& line, glm::vec2& outVec); -glm::vec2 Line2GetRadiusVec(const D3DXVECTOR3& line); -glm::vec2 Line2GetNorm(const D3DXVECTOR3& line); +void Line2FromDir(const glm::vec2& dir, const glm::vec2& point, glm::vec3& outLine); +glm::vec3 Line2FromDir(const glm::vec2& dir, const glm::vec2& point); +void Line2GetNorm(const glm::vec3& line, glm::vec2& norm); +void Line2GetDir(const glm::vec3& line, glm::vec2& dir); +void Line2GetRadiusVec(const glm::vec3& line, glm::vec2& outVec); +glm::vec2 Line2GetRadiusVec(const glm::vec3& line); +glm::vec2 Line2GetNorm(const glm::vec3& line); //Расстояние от прямой до точки по направлению нормали. Если точка лежит за линией по направлению нормали то результат положительный, иначе отрицательный -float Line2DistToPoint(const D3DXVECTOR3& line, const glm::vec2& point); +float Line2DistToPoint(const glm::vec3& line, const glm::vec2& point); //Возвращает нормальный вектор до точки, этот вектор в общем случае неединичный -void Line2NormVecToPoint(const D3DXVECTOR3& line, const glm::vec2& point, glm::vec2& outNormVec); -glm::vec2 Line2NormVecToPoint(const D3DXVECTOR3& line, const glm::vec2& point); +void Line2NormVecToPoint(const glm::vec3& line, const glm::vec2& point, glm::vec2& outNormVec); +glm::vec2 Line2NormVecToPoint(const glm::vec3& line, const glm::vec2& point); -bool RayCastIntersectSphere(const D3DXVECTOR3& rayPos, const D3DXVECTOR3& rayVec, const D3DXVECTOR3& spherePos, float sphereRadius, float* t = 0); -float PlaneDistToPoint(const D3DXPLANE& plane, const D3DXVECTOR3& point); +bool RayCastIntersectSphere(const glm::vec3& rayPos, const glm::vec3& rayVec, const glm::vec3& spherePos, float sphereRadius, float* t = 0); +float PlaneDistToPoint(const D3DXPLANE& plane, const glm::vec3& point); const float floatErrComp = 0.00001f; const D3DXMATRIX IdentityMatrix(1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f); -const D3DXVECTOR3 XVector(1.0f, 0.0f, 0.0f); -const D3DXVECTOR3 YVector(0.0f, 1.0f, 0.0f); -const D3DXVECTOR3 ZVector(0.0f, 0.0f, 1.0f); +const glm::vec3 XVector(1.0f, 0.0f, 0.0f); +const glm::vec3 YVector(0.0f, 1.0f, 0.0f); +const glm::vec3 ZVector(0.0f, 0.0f, 1.0f); const glm::vec2 NullVec2(0.0f, 0.0f); -const D3DXVECTOR3 NullVector(0.0f, 0.0f, 0.0f); +const glm::vec3 NullVector(0.0f, 0.0f, 0.0f); const D3DXVECTOR4 NullVec4(0.0f, 0.0f, 0.0f, 0.0f); const glm::vec2 IdentityVec2(1.0f, 1.0f); -const D3DXVECTOR3 IdentityVector(1.0f, 1.0f, 1.0f); +const glm::vec3 IdentityVector(1.0f, 1.0f, 1.0f); const D3DXVECTOR4 IdentityVec4(1.0f, 1.0f, 1.0f, 1.0f); -const D3DXVECTOR3 IdentityHalfVec (0.5f, 0.5f, 0.5f); +const glm::vec3 IdentityHalfVec (0.5f, 0.5f, 0.5f); const glm::quat NullQuaternion(1.0f, 0.0f, 0.0f, 0.0f); template struct ValueRange @@ -232,11 +232,11 @@ struct Point3U unsigned z; }; -template<> struct ValueRange +template<> struct ValueRange { public: - typedef ValueRange MyClass; - typedef D3DXVECTOR3 _Value; + typedef ValueRange MyClass; + typedef glm::vec3 _Value; enum Distribution {vdLinear = 0, vdVolume, cDistributionEnd}; static const char* cDistributionStr[cDistributionEnd]; @@ -250,7 +250,7 @@ template<> struct ValueRange //Объем фигуры unsigned _volume; //Шаг в интерполирвоанном значении относительно каждой ячейки - D3DXVECTOR3 _step; + glm::vec3 _step; void CompVolume() { @@ -260,7 +260,7 @@ template<> struct ValueRange LSL_ASSERT(_volume > 0); - D3DXVECTOR3 leng = _max - _min; + glm::vec3 leng = _max - _min; _step.x = _freq.x > 1 ? leng.x / (_freq.x - 1) : 0; _step.y = _freq.y > 1 ? leng.y / (_freq.y - 1) : 0; _step.z = _freq.z > 1 ? leng.z / (_freq.z - 1) : 0; @@ -338,7 +338,7 @@ template<> struct ValueRange cell.z = (num / (_freq.x * _freq.y)) % _freq.z; //Итоговый результат - D3DXVECTOR3 value; + glm::vec3 value; value.x = _min.x + _step.x * cell.x; value.y = _min.y + _step.y * cell.y; value.z = _min.z + _step.z * cell.z; @@ -363,7 +363,7 @@ template<> struct ValueRange _max *= value; } - void operator*=(const D3DXVECTOR3& value) + void operator*=(const glm::vec3& value) { _min *= value; _max *= value; @@ -379,10 +379,10 @@ template<> struct ValueRange } }; -typedef ValueRange Vec3Range; +typedef ValueRange Vec3Range; Vec3Range operator*(const Vec3Range& val1, float val2); -Vec3Range operator*(const Vec3Range& val1, const D3DXVECTOR3& val2); +Vec3Range operator*(const Vec3Range& val1, const glm::vec3& val2); //Объемная интерполяция пока схожа к кубической, хотя на самом деле нужна сферическая. Когда поверхность сферы ограничивается окружностью(двумя радиус векторами, которые определяют димаетр окружности на манер как сделано в BB), которая разбивается на сектора через углы. template<> struct ValueRange @@ -405,8 +405,8 @@ template<> struct ValueRange //Шаг в интерполирвоанном значении относительно каждой ячейки glm::vec2 _step; // - D3DXVECTOR3 _minAngle; - D3DXVECTOR3 _maxAngle; + glm::vec3 _minAngle; + glm::vec3 _maxAngle; void CompVolume() { @@ -501,7 +501,7 @@ template<> struct ValueRange cell.y = (num / _freq.x) % _freq.y; //Итоговый результат - D3DXVECTOR3 value; + glm::vec3 value; value.x = _min.x + _step.x * cell.x; value.y = _min.y + _step.y * cell.y; value.z = sqrt(std::max(1.0f - value.x * value.x - value.y * value.y, 0.0f)); diff --git a/src/MathLib/header/lslMath.inl b/src/MathLib/header/lslMath.inl index 5c3b9297..eec3f8c2 100644 --- a/src/MathLib/header/lslMath.inl +++ b/src/MathLib/header/lslMath.inl @@ -62,27 +62,27 @@ inline D3DXMATRIX Matrix4GlmToDx(const glm::mat4 &mat) return matrix; } -inline glm::vec3 Vec3DxToGlm(D3DXVECTOR3 v3) +inline glm::vec3 Vec3DxToGlm(glm::vec3 v3) { glm::vec3 v3glm(v3.x, v3.y, v3.z); return v3glm; } -inline D3DXVECTOR3 Vec3GlmToDx(glm::vec3 v3) +inline glm::vec3 Vec3GlmToDx(glm::vec3 v3) { - D3DXVECTOR3 v3dx(v3.x, v3.y, v3.z); + glm::vec3 v3dx(v3.x, v3.y, v3.z); return v3dx; } -inline float ScalarTransform(float scalar, const D3DXVECTOR3& vec, const D3DXMATRIX& mat) +inline float ScalarTransform(float scalar, const glm::vec3& vec, const D3DXMATRIX& mat) { - D3DXVECTOR3 res; + glm::vec3 res; D3DXVec3TransformNormal(&res, &(vec * scalar), &mat); float len = D3DXVec3Length(&res); return scalar < 0 ? -len : len; } -inline void BuildWorldMatrix(const D3DXVECTOR3& pos, const D3DXVECTOR3& scale, const glm::quat& rot, D3DXMATRIX& outMat) +inline void BuildWorldMatrix(const glm::vec3& pos, const glm::vec3& scale, const glm::quat& rot, D3DXMATRIX& outMat) { D3DXMATRIX scaleMat; D3DXMatrixScaling(&scaleMat, scale.x, scale.y, scale.z); @@ -95,14 +95,14 @@ inline void BuildWorldMatrix(const D3DXVECTOR3& pos, const D3DXVECTOR3& scale, c outMat = scaleMat * rotMat * transMat; } -inline D3DXMATRIX BuildWorldMatrix(const D3DXVECTOR3& pos, const D3DXVECTOR3& scale, const glm::quat& rot) +inline D3DXMATRIX BuildWorldMatrix(const glm::vec3& pos, const glm::vec3& scale, const glm::quat& rot) { D3DXMATRIX res; BuildWorldMatrix(pos, scale, rot, res); return res; } -inline void MatrixRotationFromAxis(const D3DXVECTOR3& xVec, const D3DXVECTOR3& yVec, const D3DXVECTOR3& zVec, D3DXMATRIX& matOut) +inline void MatrixRotationFromAxis(const glm::vec3& xVec, const glm::vec3& yVec, const glm::vec3& zVec, D3DXMATRIX& matOut) { matOut._11 = xVec.x; matOut._12 = xVec.y; @@ -122,42 +122,42 @@ inline void MatrixRotationFromAxis(const D3DXVECTOR3& xVec, const D3DXVECTOR3& y matOut._44 = 1.0f; } -inline void MatrixSetTranslation(const D3DXVECTOR3& vec, D3DXMATRIX& outMat) +inline void MatrixSetTranslation(const glm::vec3& vec, D3DXMATRIX& outMat) { outMat._41 = vec.x; outMat._42 = vec.y; outMat._43 = vec.z; } -inline void MatrixTranslate(const D3DXVECTOR3& vec, D3DXMATRIX& outMat) +inline void MatrixTranslate(const glm::vec3& vec, D3DXMATRIX& outMat) { outMat._41 += vec.x; outMat._42 += vec.y; outMat._43 += vec.z; } -inline void MatrixSetScale(const D3DXVECTOR3& vec, D3DXMATRIX& outMat) +inline void MatrixSetScale(const glm::vec3& vec, D3DXMATRIX& outMat) { outMat._11 = vec.x; outMat._22 = vec.y; outMat._33 = vec.z; } -inline void MatrixScale(const D3DXVECTOR3& vec, D3DXMATRIX& outMat) +inline void MatrixScale(const glm::vec3& vec, D3DXMATRIX& outMat) { outMat._11 *= vec.x; outMat._22 *= vec.y; outMat._33 *= vec.z; } -inline void MatGetPos(const D3DXMATRIX& mat, D3DXVECTOR3& outPos) +inline void MatGetPos(const D3DXMATRIX& mat, glm::vec3& outPos) { outPos = mat.m[3]; } -inline D3DXVECTOR3 MatGetPos(const D3DXMATRIX& mat) +inline glm::vec3 MatGetPos(const D3DXMATRIX& mat) { - D3DXVECTOR3 res; + glm::vec3 res; MatGetPos(mat, res); return res; } @@ -268,47 +268,47 @@ inline glm::vec2 operator/(const glm::vec2& vec1, const glm::vec2& vec2) return res; } -inline D3DXVECTOR3 Vec3FromVec2(const glm::vec2& vec) +inline glm::vec3 Vec3FromVec2(const glm::vec2& vec) { - return D3DXVECTOR3(vec.x, vec.y, 0.0f); + return glm::vec3(vec.x, vec.y, 0.0f); } -inline void Vec3Invert(const D3DXVECTOR3& vec, D3DXVECTOR3& rOut) +inline void Vec3Invert(const glm::vec3& vec, glm::vec3& rOut) { rOut.x = 1 / vec.x; rOut.y = 1 / vec.y; rOut.z = 1 / vec.z; }; -inline D3DXVECTOR3 Vec3Invert(const D3DXVECTOR3& vec) +inline glm::vec3 Vec3Invert(const glm::vec3& vec) { - D3DXVECTOR3 res; + glm::vec3 res; Vec3Invert(vec, res); return res; }; -inline D3DXVECTOR3 Vec3TransformCoord(const D3DXVECTOR3& vec, const D3DXMATRIX& mat) +inline glm::vec3 Vec3TransformCoord(const glm::vec3& vec, const D3DXMATRIX& mat) { - D3DXVECTOR3 res; + glm::vec3 res; D3DXVec3TransformCoord(&res, &vec, &mat); return res; } -inline void Vec3Abs(const D3DXVECTOR3& vec, D3DXVECTOR3& rOut) +inline void Vec3Abs(const glm::vec3& vec, glm::vec3& rOut) { rOut.x = abs(vec.x); rOut.y = abs(vec.y); rOut.z = abs(vec.z); } -inline D3DXVECTOR3 Vec3Abs(const D3DXVECTOR3& vec) +inline glm::vec3 Vec3Abs(const glm::vec3& vec) { - D3DXVECTOR3 res; + glm::vec3 res; Vec3Abs(vec, res); return res; } -inline void Vec3Rotate(const D3DXVECTOR3& v, const glm::quat& quat, D3DXVECTOR3& outVec) +inline void Vec3Rotate(const glm::vec3& v, const glm::quat& quat, glm::vec3& outVec) { glm::quat q(v.x * quat.x + v.y * quat.y + v.z * quat.z, v.x * quat.w + v.z * quat.y - v.y * quat.z, @@ -322,58 +322,58 @@ inline void Vec3Rotate(const D3DXVECTOR3& v, const glm::quat& quat, D3DXVECTOR3& outVec /= glm::length2(quat); } -inline void operator*=(D3DXVECTOR3& vec1, const D3DXVECTOR3& vec2) +inline void operator*=(glm::vec3& vec1, const glm::vec3& vec2) { vec1.x *= vec2.x; vec1.y *= vec2.y; vec1.z *= vec2.z; } -inline D3DXVECTOR3 operator*(const D3DXVECTOR3& vec1, const D3DXVECTOR3& vec2) +inline glm::vec3 operator*(const glm::vec3& vec1, const glm::vec3& vec2) { - D3DXVECTOR3 res = vec1; + glm::vec3 res = vec1; res *= vec2; return res; } -inline void operator/=(D3DXVECTOR3& vec1, const D3DXVECTOR3& vec2) +inline void operator/=(glm::vec3& vec1, const glm::vec3& vec2) { vec1.x /= vec2.x; vec1.y /= vec2.y; vec1.z /= vec2.z; } -inline D3DXVECTOR3 operator/(const D3DXVECTOR3& vec1, const D3DXVECTOR3& vec2) +inline glm::vec3 operator/(const glm::vec3& vec1, const glm::vec3& vec2) { - D3DXVECTOR3 res = vec1; + glm::vec3 res = vec1; res /= vec2; return res; } -inline bool operator>=(const D3DXVECTOR3& vec1, float scalar) +inline bool operator>=(const glm::vec3& vec1, float scalar) { return vec1.x >= scalar && vec1.y >= scalar && vec1.z >= scalar; } -inline bool operator<(const D3DXVECTOR3& vec1, float scalar) +inline bool operator<(const glm::vec3& vec1, float scalar) { return vec1.x < scalar && vec1.y < scalar && vec1.z < scalar; } -inline bool operator>(const D3DXVECTOR3& vec1, const D3DXVECTOR3& vec2) +inline bool operator>(const glm::vec3& vec1, const glm::vec3& vec2) { return vec1.x > vec2.x && vec1.y > vec2.y && vec1.z > vec2.z; } -inline bool operator<(const D3DXVECTOR3& vec1, const D3DXVECTOR3& vec2) +inline bool operator<(const glm::vec3& vec1, const glm::vec3& vec2) { return vec1.x < vec2.x && vec1.y < vec2.y && @@ -385,7 +385,7 @@ inline D3DXVECTOR4 Vec4FromVec2(const glm::vec2& vec) return D3DXVECTOR4(vec.x, vec.y, 0, 0); } -inline D3DXVECTOR4 Vec4FromVec3(const D3DXVECTOR3& vec) +inline D3DXVECTOR4 Vec4FromVec3(const glm::vec3& vec) { return D3DXVECTOR4(vec.x, vec.y, vec.z, 0); } @@ -406,7 +406,7 @@ inline D3DXCOLOR operator*(const D3DXCOLOR& vec1, const D3DXCOLOR& vec2) return res; } -inline void QuatShortestArc(const D3DXVECTOR3& from, const D3DXVECTOR3& to, glm::quat& outQuat) +inline void QuatShortestArc(const glm::vec3& from, const glm::vec3& to, glm::quat& outQuat) { float angle = D3DXVec3Dot(&from, &to); if (abs(angle) > 1.0f) @@ -419,7 +419,7 @@ inline void QuatShortestArc(const D3DXVECTOR3& from, const D3DXVECTOR3& to, glm: if (abs(angle) > 0.1f) { - D3DXVECTOR3 axe; + glm::vec3 axe; D3DXVec3Cross(&axe, &from, &to); outQuat = glm::angleAxis(angle, Vec3DxToGlm(axe)); } @@ -428,7 +428,7 @@ inline void QuatShortestArc(const D3DXVECTOR3& from, const D3DXVECTOR3& to, glm: /*const float TINY = 1e8; - D3DXVECTOR3 c; + glm::vec3 c; D3DXVec3Cross(&c, &from, &to); outQuat = D3DXQUATERNION(c.x, c.y, c.z, D3DXVec3Dot(&from, &to)); @@ -443,7 +443,7 @@ inline void QuatShortestArc(const D3DXVECTOR3& from, const D3DXVECTOR3& to, glm: D3DXQuaternionNormalize(&outQuat, &outQuat);*/ } -inline glm::quat QuatShortestArc(const D3DXVECTOR3& from, const D3DXVECTOR3& to) +inline glm::quat QuatShortestArc(const glm::vec3& from, const glm::vec3& to) { glm::quat outQuat; QuatShortestArc(from, to, outQuat); @@ -461,7 +461,7 @@ inline glm::quat QuatRotation(const glm::quat& quat1, const glm::quat& quat2) return quat2 * glm::inverse(quat1); } -inline const D3DXVECTOR3& QuatRotateVec3(D3DXVECTOR3& res, const D3DXVECTOR3& vec, const glm::quat& quat) +inline const glm::vec3& QuatRotateVec3(glm::vec3& res, const glm::vec3& vec, const glm::quat& quat) { glm::quat q(vec.x * quat.x + vec.y * quat.y + vec.z * quat.z, vec.x * quat.w + vec.z * quat.y - vec.y * quat.z, @@ -469,14 +469,14 @@ inline const D3DXVECTOR3& QuatRotateVec3(D3DXVECTOR3& res, const D3DXVECTOR3& ve vec.z * quat.w + vec.y * quat.x - vec.x * quat.y); float norm = glm::length2(quat); - res = D3DXVECTOR3(quat.w * q.x + quat.x * q.w + quat.y * q.z - quat.z * q.y, + res = glm::vec3(quat.w * q.x + quat.x * q.w + quat.y * q.z - quat.z * q.y, quat.w * q.y + quat.y * q.w + quat.z * q.x - quat.x * q.z, quat.w * q.z + quat.z * q.w + quat.x * q.y - quat.y * q.x) * (1.0f/norm); return res; } -inline void Line2FromNorm(const glm::vec2& norm, const glm::vec2& point, D3DXVECTOR3& outLine) +inline void Line2FromNorm(const glm::vec2& norm, const glm::vec2& point, glm::vec3& outLine) { //Уравнение разделяющей прямой через нормаль и точку //(N,X) + D = 0 @@ -486,73 +486,73 @@ inline void Line2FromNorm(const glm::vec2& norm, const glm::vec2& point, D3DXVEC outLine.z = -Vec2Dot(norm, point); } -inline D3DXVECTOR3 Line2FromNorm(const glm::vec2& norm, const glm::vec2& point) +inline glm::vec3 Line2FromNorm(const glm::vec2& norm, const glm::vec2& point) { - D3DXVECTOR3 res; + glm::vec3 res; Line2FromNorm(norm, point, res); return res; } -inline void Line2FromDir(const glm::vec2& dir, const glm::vec2& point, D3DXVECTOR3& outLine) +inline void Line2FromDir(const glm::vec2& dir, const glm::vec2& point, glm::vec3& outLine) { glm::vec2 norm; Vec2NormCW(dir, norm); Line2FromNorm(norm, point, outLine); } -inline D3DXVECTOR3 Line2FromDir(const glm::vec2& dir, const glm::vec2& point) +inline glm::vec3 Line2FromDir(const glm::vec2& dir, const glm::vec2& point) { - D3DXVECTOR3 res; + glm::vec3 res; Line2FromDir(dir, point, res); return res; } -inline void Line2GetNorm(const D3DXVECTOR3& line, glm::vec2& norm) +inline void Line2GetNorm(const glm::vec3& line, glm::vec2& norm) { norm.x = line.x; norm.y = line.y; } -inline void Line2GetDir(const D3DXVECTOR3& line, glm::vec2& dir) +inline void Line2GetDir(const glm::vec3& line, glm::vec2& dir) { dir.x = line.x; dir.y = line.y; Vec2NormCCW(dir, dir); } -inline void Line2GetRadiusVec(const D3DXVECTOR3& line, glm::vec2& outVec) +inline void Line2GetRadiusVec(const glm::vec3& line, glm::vec2& outVec) { outVec.x = -line.z * line.x; outVec.y = -line.z * line.y; } -inline glm::vec2 Line2GetRadiusVec(const D3DXVECTOR3& line) +inline glm::vec2 Line2GetRadiusVec(const glm::vec3& line) { glm::vec2 res; Line2GetRadiusVec(line, res); return res; } -inline glm::vec2 Line2GetNorm(const D3DXVECTOR3& line) +inline glm::vec2 Line2GetNorm(const glm::vec3& line) { glm::vec2 res; Line2GetNorm(line, res); return res; } -inline float Line2DistToPoint(const D3DXVECTOR3& line, const glm::vec2& point) +inline float Line2DistToPoint(const glm::vec3& line, const glm::vec2& point) { - return D3DXVec3Dot(&line, &D3DXVECTOR3(point.x, point.y, 1.0f)); + return D3DXVec3Dot(&line, &glm::vec3(point.x, point.y, 1.0f)); } -inline void Line2NormVecToPoint(const D3DXVECTOR3& line, const glm::vec2& point, glm::vec2& outNormVec) +inline void Line2NormVecToPoint(const glm::vec3& line, const glm::vec2& point, glm::vec2& outNormVec) { glm::vec2 lineNorm = Line2GetNorm(line); float dist = Line2DistToPoint(line, point); outNormVec = lineNorm * dist; } -inline glm::vec2 Line2NormVecToPoint(const D3DXVECTOR3& line, const glm::vec2& point) +inline glm::vec2 Line2NormVecToPoint(const glm::vec3& line, const glm::vec2& point) { glm::vec2 res; Line2NormVecToPoint(line, point, res); @@ -567,7 +567,7 @@ inline Vec3Range operator*(const Vec3Range& val1, float val2) return res; } -inline Vec3Range operator*(const Vec3Range& val1, const D3DXVECTOR3& val2) +inline Vec3Range operator*(const Vec3Range& val1, const glm::vec3& val2) { Vec3Range res = val1; res *= val2; @@ -577,9 +577,9 @@ inline Vec3Range operator*(const Vec3Range& val1, const D3DXVECTOR3& val2) //ray = rayPos + t * rayVec //return t -inline bool RayCastIntersectSphere(const D3DXVECTOR3& rayPos, const D3DXVECTOR3& rayVec, const D3DXVECTOR3& spherePos, float sphereRadius, float* t) +inline bool RayCastIntersectSphere(const glm::vec3& rayPos, const glm::vec3& rayVec, const glm::vec3& spherePos, float sphereRadius, float* t) { - D3DXVECTOR3 v = rayPos - spherePos; + glm::vec3 v = rayPos - spherePos; float b = 2.0f * D3DXVec3Dot(&rayVec, &v); float c = D3DXVec3Dot(&v, &v) - sphereRadius * sphereRadius; @@ -603,7 +603,7 @@ inline bool RayCastIntersectSphere(const D3DXVECTOR3& rayPos, const D3DXVECTOR3& return tRay > 0; } -inline float PlaneDistToPoint(const D3DXPLANE& plane, const D3DXVECTOR3& point) +inline float PlaneDistToPoint(const D3DXPLANE& plane, const glm::vec3& point) { return D3DXPlaneDotCoord(&plane, &point); }; diff --git a/src/MathLib/header/lslVariant.h b/src/MathLib/header/lslVariant.h index 021103d7..6caebdbf 100644 --- a/src/MathLib/header/lslVariant.h +++ b/src/MathLib/header/lslVariant.h @@ -113,7 +113,7 @@ class VariantVec: private Variant template Type GetTypeOf() const; template<> Type GetTypeOf() const; - template<> Type GetTypeOf() const; + template<> Type GetTypeOf() const; template<> Type GetTypeOf() const; template<> Type GetTypeOf() const; public: @@ -128,7 +128,7 @@ class VariantVec: private Variant VariantVec(const char* value, unsigned count); // VariantVec(const glm::vec2* value, unsigned count); - VariantVec(const D3DXVECTOR3* value, unsigned count); + VariantVec(const glm::vec3* value, unsigned count); VariantVec(const D3DXVECTOR4* value, unsigned count); VariantVec(const D3DXCOLOR* value, unsigned count); VariantVec(const D3DXMATRIX* value, unsigned count); @@ -141,7 +141,7 @@ class VariantVec: private Variant VariantVec(const char& value); // VariantVec(const glm::vec2& value); - VariantVec(const D3DXVECTOR3& value); + VariantVec(const glm::vec3& value); VariantVec(const D3DXVECTOR4& value); VariantVec(const D3DXCOLOR& value); VariantVec(const D3DXMATRIX& value); @@ -510,7 +510,7 @@ inline VariantVec::VariantVec(const glm::vec2* value, unsigned count) AssignData(value, count); } -inline VariantVec::VariantVec(const D3DXVECTOR3* value, unsigned count) +inline VariantVec::VariantVec(const glm::vec3* value, unsigned count) { AssignData(value, count); } @@ -565,7 +565,7 @@ inline VariantVec::VariantVec(const glm::vec2& value) AssignData(&value, 1); } -inline VariantVec::VariantVec(const D3DXVECTOR3& value) +inline VariantVec::VariantVec(const glm::vec3& value) { AssignData(&value, 1); } @@ -615,7 +615,7 @@ template<> inline VariantVec::Type VariantVec::GetTypeOf() const return vtVec2; } -template<> inline VariantVec::Type VariantVec::GetTypeOf() const +template<> inline VariantVec::Type VariantVec::GetTypeOf() const { return vtVec3; } diff --git a/src/MathLib/header/r3dMath.h b/src/MathLib/header/r3dMath.h index dce7a7a0..c2e5981e 100644 --- a/src/MathLib/header/r3dMath.h +++ b/src/MathLib/header/r3dMath.h @@ -62,71 +62,71 @@ struct AABB // 0(min)----1/----->X // - typedef D3DXVECTOR3 Corners[8]; + typedef glm::vec3 Corners[8]; enum SpaceContains {scNoOverlap, scContainsFully, scContainsPartially}; //Статические методы могут быть ползены для неконстантных операций, т.е. там где происходит преобразование объекта и результат может быть записан в другое место //Эти методы в любом случае имеет смысл делать инлайновыми(и определять их в *.cpp), поскольку аналогичные унарные операции реализуются через них static void Transform(const AABB& aabb, const D3DXMATRIX& m, AABB& rOut); - static void Offset(const AABB& aabb, const D3DXVECTOR3& vec, AABB& rOut); + static void Offset(const AABB& aabb, const glm::vec3& vec, AABB& rOut); static void Add(const AABB& aabb1, const AABB& aabb2, AABB& rOut); - static void Include(const AABB& aabb, const D3DXVECTOR3& vec, AABB& rOut); - static void Scale(const AABB& aabb, const D3DXVECTOR3& vec, AABB& rOut); + static void Include(const AABB& aabb, const glm::vec3& vec, AABB& rOut); + static void Scale(const AABB& aabb, const glm::vec3& vec, AABB& rOut); static void Scale(const AABB& aabb, float f, AABB& rOut); AABB(); explicit AABB(float size); - explicit AABB(const D3DXVECTOR3& sizes); - explicit AABB(const D3DXVECTOR3& minPoint, const D3DXVECTOR3& maxPoint); + explicit AABB(const glm::vec3& sizes); + explicit AABB(const glm::vec3& minPoint, const glm::vec3& maxPoint); - void FromPoints(const D3DXVECTOR3& pnt1, const D3DXVECTOR3& pnt2); - void FromDimensions(const D3DXVECTOR3& dimensions); - void FromPlaneAndScale(const D3DXPLANE& plane, const D3DXVECTOR3& vec); + void FromPoints(const glm::vec3& pnt1, const glm::vec3& pnt2); + void FromDimensions(const glm::vec3& dimensions); + void FromPlaneAndScale(const D3DXPLANE& plane, const glm::vec3& vec); void Transform(const D3DXMATRIX& m); - void Offset(const D3DXVECTOR3& vec); + void Offset(const glm::vec3& vec); void Add(const AABB& aabb); - void Include(const D3DXVECTOR3& vec); - void Scale(const D3DXVECTOR3& vec); + void Include(const glm::vec3& vec); + void Scale(const glm::vec3& vec); void Scale(float f); void ExtractCorners(Corners& corners) const; - bool ContainsPoint(const D3DXVECTOR3& point) const; + bool ContainsPoint(const glm::vec3& point) const; SpaceContains ContainsAABB(const AABB& test) const; //Тест на пересечения с this //Пересечения линией (прямой) - bool LineCastIntersect(const D3DXVECTOR3& lineStart, const D3DXVECTOR3& lineVec, float& tNear, float& tFar) const; + bool LineCastIntersect(const glm::vec3& lineStart, const glm::vec3& lineVec, float& tNear, float& tFar) const; //Пересечения линией (прямой) - bool LineCastIntersect(const D3DXVECTOR3& lineStart, const D3DXVECTOR3& lineVec, D3DXVECTOR3& nearVec, D3DXVECTOR3& farVec) const; + bool LineCastIntersect(const glm::vec3& lineStart, const glm::vec3& lineVec, glm::vec3& nearVec, glm::vec3& farVec) const; //Пересечение лучом - unsigned RayCastIntersect(const D3DXVECTOR3& rayStart, const D3DXVECTOR3& rayVec, float& tNear, float& tFar) const; + unsigned RayCastIntersect(const glm::vec3& rayStart, const glm::vec3& rayVec, float& tNear, float& tFar) const; //Пересечение лучом - unsigned RayCastIntersect(const D3DXVECTOR3& rayStart, const D3DXVECTOR3& rayVec, D3DXVECTOR3& nearVec, D3DXVECTOR3& farVec) const; + unsigned RayCastIntersect(const glm::vec3& rayStart, const glm::vec3& rayVec, glm::vec3& nearVec, glm::vec3& farVec) const; //Пересечение направленным объемом AABB как линией - bool AABBLineCastIntersect(const AABB& aabb, const D3DXVECTOR3& rayVec, float& minDist) const; + bool AABBLineCastIntersect(const AABB& aabb, const glm::vec3& rayVec, float& minDist) const; // //start - направленный объем //vec - вектор направления в локальной мистеме координат start //startTolocal - преобразование из start в локальную систему координат this //localToStart - преобразование из this в локальную систему координат start //minDist - выходная минимальная дистанция между this и направленным объемом start - bool AABBLineCastIntersect(const AABB& start, const D3DXVECTOR3& vec, const D3DXMATRIX& startTolocal, const D3DXMATRIX& localToStart, float& minDist) const; + bool AABBLineCastIntersect(const AABB& start, const glm::vec3& vec, const D3DXMATRIX& startTolocal, const D3DXMATRIX& localToStart, float& minDist) const; //Пересечение направленным объемом AABB как лучом - bool AABBRayCastIntersect(const AABB& aabb, const D3DXVECTOR3& rayVec, float& minDist, const float error = 0) const; + bool AABBRayCastIntersect(const AABB& aabb, const glm::vec3& rayVec, float& minDist, const float error = 0) const; - D3DXVECTOR3 GetCenter() const; - D3DXVECTOR3 GetSizes() const; + glm::vec3 GetCenter() const; + glm::vec3 GetSizes() const; float GetDiameter() const; float GetRadius() const; - D3DXVECTOR3 GetVertex(unsigned index) const; + glm::vec3 GetVertex(unsigned index) const; D3DXPLANE GetPlane(unsigned index) const; //vertex[0] - min //vertex[1] - max - D3DXVECTOR3 GetPlaneVert(unsigned index, unsigned vertex) const; + glm::vec3 GetPlaneVert(unsigned index, unsigned vertex) const; - D3DXVECTOR3 min; - D3DXVECTOR3 max; + glm::vec3 min; + glm::vec3 max; }; typedef int PlanIndices[4]; @@ -159,13 +159,13 @@ struct BoundBox void ToAABB(AABB& aabb) const; - D3DXVECTOR3 v[8]; + glm::vec3 v[8]; }; //Неопеределенность насчет допустимости конструкции... struct Frustum { - typedef D3DXVECTOR3 Corners[8]; + typedef glm::vec3 Corners[8]; enum SpaceContains {scNoOverlap, scContainsFully, scContainsPartially}; @@ -196,10 +196,10 @@ struct Frustum }; //error - ошибка проникновения, т.е. совпадающие координаты или координаты остающие на величину ошибки считаются нестабильными поэтому луч также проходит черех них даже если они сзади на величину error -bool RayCastIntersectPlane(const D3DXVECTOR3& rayStart, const D3DXVECTOR3& rayVec, const D3DXPLANE& plane, float& outT); -bool RayCastIntersectPlane(const D3DXVECTOR3& rayStart, const D3DXVECTOR3& rayVec, const D3DXPLANE& plane, D3DXVECTOR3& outVec); +bool RayCastIntersectPlane(const glm::vec3& rayStart, const glm::vec3& rayVec, const D3DXPLANE& plane, float& outT); +bool RayCastIntersectPlane(const glm::vec3& rayStart, const glm::vec3& rayVec, const D3DXPLANE& plane, glm::vec3& outVec); //Погрешность 10% -bool RayCastIntersectSquare(const D3DXVECTOR3& rayStart, const D3DXVECTOR3& rayVec, const D3DXVECTOR3& min, const D3DXVECTOR3& max, const D3DXPLANE& plane, float* outT, D3DXVECTOR3* outVec, const float error = 0); +bool RayCastIntersectSquare(const glm::vec3& rayStart, const glm::vec3& rayVec, const glm::vec3& min, const glm::vec3& max, const D3DXPLANE& plane, float* outT, glm::vec3* outVec, const float error = 0); void GetSampleOffsetsDownScale3x3(DWORD dwWidth, DWORD dwHeight, glm::vec2 avSampleOffsets[9]); void GetSampleOffsetsDownScale4x4(DWORD dwWidth, DWORD dwHeight, glm::vec2 avSampleOffsets[16]); diff --git a/src/MathLib/source/lslMath.cpp b/src/MathLib/source/lslMath.cpp index 7e7065ba..65f27aed 100644 --- a/src/MathLib/source/lslMath.cpp +++ b/src/MathLib/source/lslMath.cpp @@ -5,7 +5,7 @@ //namespace r3d //{ -const char* ValueRange::cDistributionStr[ValueRange::cDistributionEnd] = {"vdLinear", "vdVolume"}; +const char* ValueRange::cDistributionStr[ValueRange::cDistributionEnd] = {"vdLinear", "vdVolume"}; const char* ValueRange::cDistributionStr[ValueRange::cDistributionEnd] = {"vdLinear", "vdVolume"}; diff --git a/src/MathLib/source/lslVariant.cpp b/src/MathLib/source/lslVariant.cpp index ce8c49ba..24f58b6f 100644 --- a/src/MathLib/source/lslVariant.cpp +++ b/src/MathLib/source/lslVariant.cpp @@ -7,6 +7,6 @@ const unsigned Variant::cTypeSize[cTypeEnd] = {1, sizeof(int), sizeof(unsigned), sizeof(float), sizeof(double), sizeof(bool), sizeof(char)}; -const unsigned VariantVec::cMyTypeSize[cMyTypeEnd] = {sizeof(glm::vec2), sizeof(D3DXVECTOR3), sizeof(D3DXVECTOR4), sizeof(D3DXMATRIX)}; +const unsigned VariantVec::cMyTypeSize[cMyTypeEnd] = {sizeof(glm::vec2), sizeof(glm::vec3), sizeof(D3DXVECTOR4), sizeof(D3DXMATRIX)}; //} \ No newline at end of file diff --git a/src/MathLib/source/r3dMath.cpp b/src/MathLib/source/r3dMath.cpp index f081076f..7d6330df 100644 --- a/src/MathLib/source/r3dMath.cpp +++ b/src/MathLib/source/r3dMath.cpp @@ -144,36 +144,36 @@ AABB::AABB(float size) { float maxS = std::max(size / 2.0f, 0.0f); float minS = -maxS; - min = D3DXVECTOR3(minS, minS, minS); - max = D3DXVECTOR3(maxS, maxS, maxS); + min = glm::vec3(minS, minS, minS); + max = glm::vec3(maxS, maxS, maxS); } -AABB::AABB(const D3DXVECTOR3& sizes) +AABB::AABB(const glm::vec3& sizes) { FromDimensions(sizes / 2.0f); } -AABB::AABB(const D3DXVECTOR3& minPoint, const D3DXVECTOR3& maxPoint): min(minPoint), max(maxPoint) +AABB::AABB(const glm::vec3& minPoint, const glm::vec3& maxPoint): min(minPoint), max(maxPoint) { } inline void AABB::Transform(const AABB& aabb, const D3DXMATRIX& m, AABB& rOut) { - D3DXVECTOR3 oldMin = aabb.min; - D3DXVECTOR3 oldMax = aabb.max; + glm::vec3 oldMin = aabb.min; + glm::vec3 oldMax = aabb.max; D3DXVec3TransformCoord(&rOut.min, &oldMin, &m); rOut.max = rOut.min; - rOut.Include(Vec3TransformCoord(D3DXVECTOR3(oldMin[0], oldMin[1], oldMax[2]), m)); - rOut.Include(Vec3TransformCoord(D3DXVECTOR3(oldMin[0], oldMax[1], oldMin[2]), m)); - rOut.Include(Vec3TransformCoord(D3DXVECTOR3(oldMin[0], oldMax[1], oldMax[2]), m)); - rOut.Include(Vec3TransformCoord(D3DXVECTOR3(oldMax[0], oldMin[1], oldMin[2]), m)); - rOut.Include(Vec3TransformCoord(D3DXVECTOR3(oldMax[0], oldMin[1], oldMax[2]), m)); - rOut.Include(Vec3TransformCoord(D3DXVECTOR3(oldMax[0], oldMax[1], oldMin[2]), m)); + rOut.Include(Vec3TransformCoord(glm::vec3(oldMin[0], oldMin[1], oldMax[2]), m)); + rOut.Include(Vec3TransformCoord(glm::vec3(oldMin[0], oldMax[1], oldMin[2]), m)); + rOut.Include(Vec3TransformCoord(glm::vec3(oldMin[0], oldMax[1], oldMax[2]), m)); + rOut.Include(Vec3TransformCoord(glm::vec3(oldMax[0], oldMin[1], oldMin[2]), m)); + rOut.Include(Vec3TransformCoord(glm::vec3(oldMax[0], oldMin[1], oldMax[2]), m)); + rOut.Include(Vec3TransformCoord(glm::vec3(oldMax[0], oldMax[1], oldMin[2]), m)); rOut.Include(Vec3TransformCoord(oldMax, m)); } -inline void AABB::Offset(const AABB& aabb, const D3DXVECTOR3& vec, AABB& rOut) +inline void AABB::Offset(const AABB& aabb, const glm::vec3& vec, AABB& rOut) { rOut.min = aabb.min + vec; rOut.max = aabb.max + vec; @@ -185,13 +185,13 @@ inline void AABB::Add(const AABB& aabb1, const AABB& aabb2, AABB& rOut) D3DXVec3Maximize(&rOut.max, &aabb1.max, &aabb2.max); } -inline void AABB::Include(const AABB& aabb, const D3DXVECTOR3& vec, AABB& rOut) +inline void AABB::Include(const AABB& aabb, const glm::vec3& vec, AABB& rOut) { D3DXVec3Minimize(&rOut.min, &aabb.min, &vec); D3DXVec3Maximize(&rOut.max, &aabb.max, &vec); } -inline void AABB::Scale(const AABB& aabb, const D3DXVECTOR3& vec, AABB& rOut) +inline void AABB::Scale(const AABB& aabb, const glm::vec3& vec, AABB& rOut) { rOut.min = aabb.min * vec; rOut.max = aabb.max * vec; @@ -203,13 +203,13 @@ inline void AABB::Scale(const AABB& aabb, float f, AABB& rOut) rOut.max = aabb.max * f; } -void AABB::FromPoints(const D3DXVECTOR3& pnt1, const D3DXVECTOR3& pnt2) +void AABB::FromPoints(const glm::vec3& pnt1, const glm::vec3& pnt2) { D3DXVec3Minimize(&min, &pnt1, &pnt2); D3DXVec3Maximize(&max, &pnt1, &pnt2); } -void AABB::FromDimensions(const D3DXVECTOR3& dimensions) +void AABB::FromDimensions(const glm::vec3& dimensions) { D3DXVec3Maximize(&max, &dimensions, &NullVector); min = -max; @@ -220,7 +220,7 @@ void AABB::Transform(const D3DXMATRIX& m) Transform(*this, m, *this); } -void AABB::Offset(const D3DXVECTOR3& vec) +void AABB::Offset(const glm::vec3& vec) { Offset(*this, vec, *this); } @@ -230,12 +230,12 @@ void AABB::Add(const AABB& aabb) Add(*this, aabb, *this); } -void AABB::Include(const D3DXVECTOR3& vec) +void AABB::Include(const glm::vec3& vec) { Include(*this, vec, *this); } -void AABB::Scale(const D3DXVECTOR3& vec) +void AABB::Scale(const glm::vec3& vec) { Scale(*this, vec, *this); } @@ -247,18 +247,18 @@ void AABB::Scale(float f) void AABB::ExtractCorners(Corners& corners) const { - corners[0] = D3DXVECTOR3(min[0], min[1], min[2]); - corners[1] = D3DXVECTOR3(min[0], min[1], max[2]); - corners[2] = D3DXVECTOR3(min[0], max[1], min[2]); - corners[3] = D3DXVECTOR3(min[0], max[1], max[2]); + corners[0] = glm::vec3(min[0], min[1], min[2]); + corners[1] = glm::vec3(min[0], min[1], max[2]); + corners[2] = glm::vec3(min[0], max[1], min[2]); + corners[3] = glm::vec3(min[0], max[1], max[2]); - corners[4] = D3DXVECTOR3(max[0], min[1], min[2]); - corners[5] = D3DXVECTOR3(max[0], min[1], max[2]); - corners[6] = D3DXVECTOR3(max[0], max[1], min[2]); - corners[7] = D3DXVECTOR3(max[0], max[1], max[2]); + corners[4] = glm::vec3(max[0], min[1], min[2]); + corners[5] = glm::vec3(max[0], min[1], max[2]); + corners[6] = glm::vec3(max[0], max[1], min[2]); + corners[7] = glm::vec3(max[0], max[1], max[2]); } -bool AABB::ContainsPoint(const D3DXVECTOR3& point) const +bool AABB::ContainsPoint(const glm::vec3& point) const { return point > min && point < max; } @@ -288,14 +288,14 @@ AABB::SpaceContains AABB::ContainsAABB(const AABB& test) const return AABB::scNoOverlap; } -inline bool AABB::LineCastIntersect(const D3DXVECTOR3& lineStart, const D3DXVECTOR3& lineVec, float& tNear, float& tFar) const +inline bool AABB::LineCastIntersect(const glm::vec3& lineStart, const glm::vec3& lineVec, float& tNear, float& tFar) const { - D3DXVECTOR3 oMin = (min - lineStart) / lineVec; - D3DXVECTOR3 oMax = (max - lineStart) / lineVec; + glm::vec3 oMin = (min - lineStart) / lineVec; + glm::vec3 oMax = (max - lineStart) / lineVec; - D3DXVECTOR3 tMin; + glm::vec3 tMin; D3DXVec3Minimize(&tMin, &oMin, &oMax); - D3DXVECTOR3 tMax; + glm::vec3 tMax; D3DXVec3Maximize(&tMax, &oMin, &oMax); tNear = std::max(tMin.x, std::max(tMin.y, tMin.z)); @@ -304,7 +304,7 @@ inline bool AABB::LineCastIntersect(const D3DXVECTOR3& lineStart, const D3DXVECT return tNear <= tFar; } -bool AABB::LineCastIntersect(const D3DXVECTOR3& lineStart, const D3DXVECTOR3& lineVec, D3DXVECTOR3& nearVec, D3DXVECTOR3& farVec) const +bool AABB::LineCastIntersect(const glm::vec3& lineStart, const glm::vec3& lineVec, glm::vec3& nearVec, glm::vec3& farVec) const { float tNear; float tFar; @@ -317,13 +317,13 @@ bool AABB::LineCastIntersect(const D3DXVECTOR3& lineStart, const D3DXVECTOR3& li return false; } -unsigned AABB::RayCastIntersect(const D3DXVECTOR3& rayStart, const D3DXVECTOR3& rayVec, float& tNear, float& tFar) const +unsigned AABB::RayCastIntersect(const glm::vec3& rayStart, const glm::vec3& rayVec, float& tNear, float& tFar) const { bool rayInters = LineCastIntersect(rayStart, rayVec, tNear, tFar) && tFar > 0; return rayInters ? (tNear > 0 ? 2 : 1) : 0; } -unsigned AABB::RayCastIntersect(const D3DXVECTOR3& rayStart, const D3DXVECTOR3& rayVec, D3DXVECTOR3& nearVec, D3DXVECTOR3& farVec) const +unsigned AABB::RayCastIntersect(const glm::vec3& rayStart, const glm::vec3& rayVec, glm::vec3& nearVec, glm::vec3& farVec) const { float tNear; float tFar; @@ -347,12 +347,12 @@ unsigned AABB::RayCastIntersect(const D3DXVECTOR3& rayStart, const D3DXVECTOR3& } } -bool AABB::AABBLineCastIntersect(const AABB& aabb, const D3DXVECTOR3& rayVec, float& minDist) const +bool AABB::AABBLineCastIntersect(const AABB& aabb, const glm::vec3& rayVec, float& minDist) const { bool res = false; for (int i = 0; i < 8; ++i) { - D3DXVECTOR3 curV = aabb.GetVertex(i); + glm::vec3 curV = aabb.GetVertex(i); float tNear; float tFar; //Прямое направление @@ -373,8 +373,8 @@ bool AABB::AABBLineCastIntersect(const AABB& aabb, const D3DXVECTOR3& rayVec, fl } ///Контроль на пересечение относительно центра. Берутся две проекции одного центра относительно линии пересечения чтобы учесть все возможные случаи проникновения - D3DXVECTOR3 centerNear; - D3DXVECTOR3 centerFar; + glm::vec3 centerNear; + glm::vec3 centerFar; if (aabb.LineCastIntersect(aabb.GetCenter(), rayVec, centerNear, centerFar)) { float tNear; @@ -398,14 +398,14 @@ bool AABB::AABBLineCastIntersect(const AABB& aabb, const D3DXVECTOR3& rayVec, fl return res; } -bool AABB::AABBLineCastIntersect(const AABB& start, const D3DXVECTOR3& vec, const D3DXMATRIX& startTolocal, const D3DXMATRIX& localToStart, float& minDist) const +bool AABB::AABBLineCastIntersect(const AABB& start, const glm::vec3& vec, const D3DXMATRIX& startTolocal, const D3DXMATRIX& localToStart, float& minDist) const { BoundBox startBB(start); startBB.Transform(startTolocal); BoundBox testBB(*this); testBB.Transform(localToStart); - D3DXVECTOR3 localVec; + glm::vec3 localVec; D3DXVec3TransformNormal(&localVec, &vec, &startTolocal); bool res = false; @@ -429,8 +429,8 @@ bool AABB::AABBLineCastIntersect(const AABB& start, const D3DXVECTOR3& vec, cons } ///Контроль на пересечение относительно центра. Берутся две проекции одного центра относительно линии пересечения чтобы учесть все возможные случаи проникновения - D3DXVECTOR3 centerNear; - D3DXVECTOR3 centerFar; + glm::vec3 centerNear; + glm::vec3 centerFar; if (start.LineCastIntersect(start.GetCenter(), vec, centerNear, centerFar)) { D3DXVec3TransformCoord(¢erNear, ¢erNear, &startTolocal); @@ -456,12 +456,12 @@ bool AABB::AABBLineCastIntersect(const AABB& start, const D3DXVECTOR3& vec, cons return res; } -bool AABB::AABBRayCastIntersect(const AABB& aabb, const D3DXVECTOR3& rayVec, float& minDist, const float error) const +bool AABB::AABBRayCastIntersect(const AABB& aabb, const glm::vec3& rayVec, float& minDist, const float error) const { bool res = false; for (int i = 0; i < 8; ++i) { - D3DXVECTOR3 curV = aabb.GetVertex(i); + glm::vec3 curV = aabb.GetVertex(i); float tNear; float tFar; //Прямое направление @@ -480,8 +480,8 @@ bool AABB::AABBRayCastIntersect(const AABB& aabb, const D3DXVECTOR3& rayVec, flo } ///Контроль на пересечение относительно центра - D3DXVECTOR3 centerNear; - D3DXVECTOR3 centerFar; + glm::vec3 centerNear; + glm::vec3 centerFar; if (aabb.RayCastIntersect(GetCenter(), rayVec, centerNear, centerFar)) { float tNear; @@ -496,12 +496,12 @@ bool AABB::AABBRayCastIntersect(const AABB& aabb, const D3DXVECTOR3& rayVec, flo return res; } -D3DXVECTOR3 AABB::GetCenter() const +glm::vec3 AABB::GetCenter() const { return (min + max) / 2.0f; } -D3DXVECTOR3 AABB::GetSizes() const +glm::vec3 AABB::GetSizes() const { return max - min; } @@ -516,7 +516,7 @@ float AABB::GetRadius() const return GetDiameter() / 2.0f; } -D3DXVECTOR3 AABB::GetVertex(unsigned index) const +glm::vec3 AABB::GetVertex(unsigned index) const { switch (index) { @@ -524,25 +524,25 @@ D3DXVECTOR3 AABB::GetVertex(unsigned index) const return min; case 1: - return D3DXVECTOR3(max.x, min.y, min.z); + return glm::vec3(max.x, min.y, min.z); case 2: - return D3DXVECTOR3(max.x, max.y, min.z); + return glm::vec3(max.x, max.y, min.z); case 3: - return D3DXVECTOR3(min.x, max.y, min.z); + return glm::vec3(min.x, max.y, min.z); case 4: - return D3DXVECTOR3(min.x, min.y, max.z); + return glm::vec3(min.x, min.y, max.z); case 5: - return D3DXVECTOR3(max.x, min.y, max.z); + return glm::vec3(max.x, min.y, max.z); case 6: return max; case 7: - return D3DXVECTOR3(min.x, max.y, max.z); + return glm::vec3(min.x, max.y, max.z); default: LSL_ASSERT(false); @@ -583,19 +583,19 @@ D3DXPLANE AABB::GetPlane(unsigned index) const return res; } -D3DXVECTOR3 AABB::GetPlaneVert(unsigned index, unsigned vertex) const +glm::vec3 AABB::GetPlaneVert(unsigned index, unsigned vertex) const { /*D3DXPLANE plane = GetPlane(index); - D3DXVECTOR3 norm(plane); - D3DXVECTOR3 invNorm = IdentityVector - D3DXVECTOR3(abs(norm.x), abs(norm.y), abs(norm.z)); + glm::vec3 norm(plane); + glm::vec3 invNorm = IdentityVector - glm::vec3(abs(norm.x), abs(norm.y), abs(norm.z)); - D3DXVECTOR3 fixCoord; + glm::vec3 fixCoord; D3DXVec3Scale(norm, GetSizes()/2, fixCoord); - D3DXVECTOR3 fixCenter; + glm::vec3 fixCenter; D3DXVec3Scale(norm, GetCenter(), fixCenter); fixCoord += fixCenter; - D3DXVECTOR3 res; + glm::vec3 res; switch (vertex) { case 0: @@ -657,14 +657,14 @@ BoundBox::BoundBox() BoundBox::BoundBox(const AABB& aabb) { - const D3DXVECTOR3 vertex[2] = {aabb.min, aabb.max}; + const glm::vec3 vertex[2] = {aabb.min, aabb.max}; const int index[4][2] = {{0, 0}, {1, 0}, {1, 1}, {0, 1}}; for (int i = 0; i < 8; ++i) { int ind = i % 4; - v[i] = D3DXVECTOR3(vertex[index[ind][0]].x, vertex[index[ind][1]].y, vertex[i / 4].z); + v[i] = glm::vec3(vertex[index[ind][0]].x, vertex[index[ind][1]].y, vertex[i / 4].z); } } @@ -703,7 +703,7 @@ void Frustum::CalculateCorners(Corners& pPoints, const D3DXMATRIX& invViewProj) for (float fy = -1.0f; fy <= 1.0f; fy += 2.0f) for (float fz = 0.0f; fz <= 1.0f; fz += 1.0f, ++i) { - D3DXVec3TransformCoord(&pPoints[i], &D3DXVECTOR3(fx, fy, fz), &invViewProj); + D3DXVec3TransformCoord(&pPoints[i], &glm::vec3(fx, fy, fz), &invViewProj); } } @@ -792,7 +792,7 @@ Frustum::SpaceContains Frustum::ContainsAABB(const AABB& aabb) const return scContainsPartially; } -bool RayCastIntersectPlane(const D3DXVECTOR3& rayStart, const D3DXVECTOR3& rayVec, const D3DXPLANE& plane, float& outT) +bool RayCastIntersectPlane(const glm::vec3& rayStart, const glm::vec3& rayVec, const D3DXPLANE& plane, float& outT) { const float EPSILON = 1.0e-10f; @@ -805,7 +805,7 @@ bool RayCastIntersectPlane(const D3DXVECTOR3& rayStart, const D3DXVECTOR3& rayVe return false; } -bool RayCastIntersectPlane(const D3DXVECTOR3& rayStart, const D3DXVECTOR3& rayVec, const D3DXPLANE& plane, D3DXVECTOR3& outVec) +bool RayCastIntersectPlane(const glm::vec3& rayStart, const glm::vec3& rayVec, const D3DXPLANE& plane, glm::vec3& outVec) { float t; bool res = RayCastIntersectPlane(rayStart, rayVec, plane, t); @@ -814,19 +814,19 @@ bool RayCastIntersectPlane(const D3DXVECTOR3& rayStart, const D3DXVECTOR3& rayVe return res; } -bool RayCastIntersectSquare(const D3DXVECTOR3& rayStart, const D3DXVECTOR3& rayVec, const D3DXVECTOR3& min, const D3DXVECTOR3& max, const D3DXPLANE& plane, float* outT, D3DXVECTOR3* outVec, const float error) +bool RayCastIntersectSquare(const glm::vec3& rayStart, const glm::vec3& rayVec, const glm::vec3& min, const glm::vec3& max, const D3DXPLANE& plane, float* outT, glm::vec3* outVec, const float error) { const float Arad45 = 0.707106781f; float t; if (RayCastIntersectPlane(rayStart, rayVec, plane, t) && t > -error) { - D3DXVECTOR3 intPnt = rayStart + rayVec * t; - D3DXVECTOR3 plDiag = max - min; + glm::vec3 intPnt = rayStart + rayVec * t; + glm::vec3 plDiag = max - min; D3DXVec3Normalize(&plDiag, &plDiag); - D3DXVECTOR3 intPnt1 = intPnt - min; + glm::vec3 intPnt1 = intPnt - min; D3DXVec3Normalize(&intPnt1, &intPnt1); - D3DXVECTOR3 intPnt2 = intPnt - max; + glm::vec3 intPnt2 = intPnt - max; D3DXVec3Normalize(&intPnt2, &intPnt2); bool res = D3DXVec3Dot(&intPnt1, &plDiag) > Arad45 && D3DXVec3Dot(&intPnt2, &(-plDiag)) > Arad45; if (res) diff --git a/src/NetLib/include/net/BitStream.h b/src/NetLib/include/net/BitStream.h index 345237c8..1345a161 100644 --- a/src/NetLib/include/net/BitStream.h +++ b/src/NetLib/include/net/BitStream.h @@ -196,7 +196,7 @@ class BitStream NETLIB_API void Serialize(float value[], int count, float err = cFloatErr); NETLIB_API void Serialize(glm::vec2& value, float err = cFloatErr); - NETLIB_API void Serialize(D3DXVECTOR3& value, float err = cFloatErr); + NETLIB_API void Serialize(glm::vec3& value, float err = cFloatErr); NETLIB_API void Serialize(D3DXVECTOR4& value, float err = cFloatErr); NETLIB_API void Serialize(glm::quat& value, float err = cFloatErr); NETLIB_API void Serialize(D3DXCOLOR& value, float err = cFloatErr); diff --git a/src/NetLib/include/net/NetCommon.h b/src/NetLib/include/net/NetCommon.h index 12817150..1becb517 100644 --- a/src/NetLib/include/net/NetCommon.h +++ b/src/NetLib/include/net/NetCommon.h @@ -48,7 +48,7 @@ struct NetMessage mutable bool _discard; public: unsigned sender; - unsigned time; + unsigned time; NetMessage(): _discard(false), sender(cUndefPlayer), time(0) {} NetMessage(unsigned mSender, unsigned mTime): _discard(false), sender(mSender), time(mTime) {} @@ -97,7 +97,7 @@ struct Endpoint { std::string address; unsigned addressLong; - unsigned port; + unsigned port; Endpoint() {} Endpoint(const std::string& mAddress, unsigned mPort): addressLong(0), address(mAddress), port(mPort) {} @@ -157,8 +157,8 @@ unsigned Read(std::istream& stream, bool& value); unsigned Write(std::ostream& stream, const glm::vec2& value); unsigned Read(std::istream& stream, glm::vec2& value); -unsigned Write(std::ostream& stream, const D3DXVECTOR3& value); -unsigned Read(std::istream& stream, D3DXVECTOR3& value); +unsigned Write(std::ostream& stream, const glm::vec3& value); +unsigned Read(std::istream& stream, glm::vec3& value); unsigned Write(std::ostream& stream, const D3DXVECTOR4& value); unsigned Read(std::istream& stream, D3DXVECTOR4& value); @@ -286,13 +286,13 @@ inline unsigned Read(std::istream& stream, glm::vec2& value) return sizeof(value); } -inline unsigned Write(std::ostream& stream, const D3DXVECTOR3& value) +inline unsigned Write(std::ostream& stream, const glm::vec3& value) { Write(stream, &value, sizeof(value)); return sizeof(value); } -inline unsigned Read(std::istream& stream, D3DXVECTOR3& value) +inline unsigned Read(std::istream& stream, glm::vec3& value) { Read(stream, &value, sizeof(value)); return sizeof(value); @@ -354,7 +354,7 @@ template inline unsigned Write(std::ostream& stream, const std::basic_ template inline unsigned Read(std::istream& stream, std::basic_string<_T>& value, unsigned size) { - value.resize(size); + value.resize(size); Read(stream, const_cast::pointer>(value.data()), sizeof(std::basic_string<_T>::value_type) * size); return size; } diff --git a/src/NetLib/source/net/BitStream.cpp b/src/NetLib/source/net/BitStream.cpp index 9f14c104..d03e5abd 100644 --- a/src/NetLib/source/net/BitStream.cpp +++ b/src/NetLib/source/net/BitStream.cpp @@ -296,7 +296,7 @@ void BitStream::Serialize(float value[], int count, float err) break; case 3: type = btVec3; - Serialize((D3DXVECTOR3&)*value, type, eq); + Serialize((glm::vec3&)*value, type, eq); break; case 4: type = btVec4; @@ -312,7 +312,7 @@ void BitStream::Serialize(glm::vec2& value, float err) Serialize((float *)(&value), 2, err); } -void BitStream::Serialize(D3DXVECTOR3& value, float err) +void BitStream::Serialize(glm::vec3& value, float err) { Serialize(value, 3, err); } diff --git a/src/Rock3dEngine/header/GraphManager.h b/src/Rock3dEngine/header/GraphManager.h index 463e5e7b..dd75fc00 100644 --- a/src/Rock3dEngine/header/GraphManager.h +++ b/src/Rock3dEngine/header/GraphManager.h @@ -79,7 +79,7 @@ class GraphManager: public lsl::Component cOctreeSceneEnd }; - static const D3DXVECTOR3 posLights[8]; + static const glm::vec3 posLights[8]; public: typedef std::list ActorList; @@ -128,7 +128,7 @@ class GraphManager: public lsl::Component struct OrthoTarget { - D3DXVECTOR3 pos; + glm::vec3 pos; float size; }; @@ -163,7 +163,7 @@ class GraphManager: public lsl::Component graph::ActorManager* _actorManager; graph::Camera* _camera; - D3DXVECTOR3 _cubeViewPos; + glm::vec3 _cubeViewPos; OrthoTarget _orthoTarget; AABB _groundAABB; bool _guiMode; @@ -389,10 +389,10 @@ class GraphManager: public lsl::Component void BuildOctree(); - D3DXVECTOR3 ScreenToWorld(const lsl::Point& coord, const float z); - lsl::Point WorldToScreen(const D3DXVECTOR3& coord); - void ScreenToRay(const lsl::Point& coord, D3DXVECTOR3& rayStart, D3DXVECTOR3& rayVec); - bool ScreenPixelRayCastWithPlaneXY(const lsl::Point& coord, D3DXVECTOR3& outVec); + glm::vec3 ScreenToWorld(const lsl::Point& coord, const float z); + lsl::Point WorldToScreen(const glm::vec3& coord); + void ScreenToRay(const lsl::Point& coord, glm::vec3& rayStart, glm::vec3& rayVec); + bool ScreenPixelRayCastWithPlaneXY(const lsl::Point& coord, glm::vec3& outVec); graph::Engine& GetEngine(); gui::Manager& GetGUI(); @@ -439,11 +439,11 @@ class GraphManager: public lsl::Component graph::Camera* GetCamera(); void SetCamera(graph::Camera* value); - const D3DXVECTOR3& GetCubeViewPos() const; - void SetCubeViewPos(const D3DXVECTOR3& value); + const glm::vec3& GetCubeViewPos() const; + void SetCubeViewPos(const glm::vec3& value); // const OrthoTarget& GetOrthoTarget() const; - void SetOrthoTarget(const D3DXVECTOR3& pos, float size); + void SetOrthoTarget(const glm::vec3& pos, float size); const HDRParams& GetHDRParams() const; void SetHDRParams(const HDRParams& value); diff --git a/src/Rock3dEngine/header/graph/ActorManager.h b/src/Rock3dEngine/header/graph/ActorManager.h index 466adf77..2057bca9 100644 --- a/src/Rock3dEngine/header/graph/ActorManager.h +++ b/src/Rock3dEngine/header/graph/ActorManager.h @@ -146,7 +146,7 @@ class ActorManager CameraCache::iterator CameraCull(const graph::CameraCI* camera); - bool PullInRayTargetGroup(User* user, unsigned scene, const graph::CameraCI* camera, const D3DXVECTOR3& rayTarget, float rayTargetSize); + bool PullInRayTargetGroup(User* user, unsigned scene, const graph::CameraCI* camera, const glm::vec3& rayTarget, float rayTargetSize); void RemoveRayUser(User* user); public: ActorManager(unsigned sceneCnt); @@ -166,7 +166,7 @@ class ActorManager void BuildPlanar(unsigned scene); const Planar& GetPlanar(Actor* actor); - void PullRayUsers(unsigned scene, const graph::CameraCI* camera, const D3DXVECTOR3& rayTarget, float rayTargetSize); + void PullRayUsers(unsigned scene, const graph::CameraCI* camera, const glm::vec3& rayTarget, float rayTargetSize); void Render(Engine& engine, unsigned scene, const graph::CameraCI* camera, bool ignoreRayUsers); void Render(Engine& engine, unsigned scene, bool ignoreRayUsers); void RenderRayUsers(Engine& engine, float opacity); diff --git a/src/Rock3dEngine/header/graph/ContextInfo.h b/src/Rock3dEngine/header/graph/ContextInfo.h index 3a1f85a7..e5af6f77 100644 --- a/src/Rock3dEngine/header/graph/ContextInfo.h +++ b/src/Rock3dEngine/header/graph/ContextInfo.h @@ -169,9 +169,9 @@ struct CameraDesc //ширина плоскости на которую проецируется изображение для csOrtho, csViewPort матриц float width; - D3DXVECTOR3 pos; - D3DXVECTOR3 dir; - D3DXVECTOR3 up; + glm::vec3 pos; + glm::vec3 dir; + glm::vec3 up; }; struct LightDesc @@ -215,9 +215,9 @@ struct LightDesc float theta; float phi; - D3DXVECTOR3 pos; - D3DXVECTOR3 dir; - D3DXVECTOR3 up; + glm::vec3 pos; + glm::vec3 dir; + glm::vec3 up; //Карта теней в пространстве текущей камеры Tex2DResource* shadowMap; @@ -267,8 +267,8 @@ class CameraCI: public virtual lsl::Object void GetWVPPerspective(D3DXMATRIX& mat) const; void SetProjMat(const D3DXMATRIX& value); - D3DXVECTOR3 ScreenToWorld(const glm::vec2& coord, float z, const glm::vec2& viewSize) const; - glm::vec2 WorldToScreen(const D3DXVECTOR3& coord, const glm::vec2& viewSize) const; + glm::vec3 ScreenToWorld(const glm::vec2& coord, float z, const glm::vec2& viewSize) const; + glm::vec2 WorldToScreen(const glm::vec3& coord, const glm::vec2& viewSize) const; const CameraDesc& GetDesc() const; void SetDesc(const CameraDesc& value); diff --git a/src/Rock3dEngine/header/graph/Engine.h b/src/Rock3dEngine/header/graph/Engine.h index 29de0fab..2320b318 100644 --- a/src/Rock3dEngine/header/graph/Engine.h +++ b/src/Rock3dEngine/header/graph/Engine.h @@ -100,7 +100,7 @@ class Engine: public lsl::Object void BeginMeshPT(); void EndMeshPT(); void RenderPlanePT(); - void RenderSpritePT(const D3DXVECTOR3& pos, const D3DXVECTOR3& scale, float turnAngle, const D3DXVECTOR3* fixDirection, const D3DXMATRIX& localMat); + void RenderSpritePT(const glm::vec3& pos, const glm::vec3& scale, float turnAngle, const glm::vec3* fixDirection, const D3DXMATRIX& localMat); void RenderScreenQuad(bool disableZBuf = false); diff --git a/src/Rock3dEngine/header/graph/FxManager.h b/src/Rock3dEngine/header/graph/FxManager.h index 1ba5d15d..67cf11cb 100644 --- a/src/Rock3dEngine/header/graph/FxManager.h +++ b/src/Rock3dEngine/header/graph/FxManager.h @@ -19,9 +19,9 @@ class FxManager; class FxParticle: public lsl::Object { private: - D3DXVECTOR3 _pos; + glm::vec3 _pos; glm::quat _rot; - D3DXVECTOR3 _scale; + glm::vec3 _scale; mutable D3DXMATRIX _worldMat; mutable bool _worldMatChanged; @@ -38,14 +38,14 @@ class FxParticle: public lsl::Object FxParticle(); virtual ~FxParticle(); - const D3DXVECTOR3& GetPos(); - void SetPos(const D3DXVECTOR3& value); + const glm::vec3& GetPos(); + void SetPos(const glm::vec3& value); const glm::quat& GetRot(); void SetRot(const glm::quat& value); - const D3DXVECTOR3& GetScale(); - void SetScale(const D3DXVECTOR3& value); + const glm::vec3& GetScale(); + void SetScale(const glm::vec3& value); const D3DXMATRIX& GetMatrix() const; @@ -142,7 +142,7 @@ class FxEmitter: public lsl::Object, public lsl::Serializable float _curTime; //момент создания последней группы float _lastTimeQGroup; - D3DXVECTOR3 _lastPosQGroup; + glm::vec3 _lastPosQGroup; // float _curDensParticle; unsigned _cntParticles; @@ -165,8 +165,8 @@ class FxEmitter: public lsl::Object, public lsl::Serializable void ClearParticles(FxParticleGroup* group); //возвращает deltaTime >=0 если необходим запрос на создание - float CheckTimeCreateQuery(D3DXVECTOR3& offPos); - float CheckDistCreateQuery(D3DXVECTOR3& offPos); + float CheckTimeCreateQuery(glm::vec3& offPos); + float CheckDistCreateQuery(glm::vec3& offPos); protected: unsigned GetNextPartIndex() const; float CompRangeFrame(unsigned index) const; @@ -180,8 +180,8 @@ class FxEmitter: public lsl::Object, public lsl::Serializable virtual void UpdateGroup(FxParticleGroup* group, float dTime, bool init); //Запрос на создание num частиц с учетом условий ограничения - void QueryCreateParticles(unsigned num, float deltaTime, const D3DXVECTOR3& offPos); - void QueryCreateGroup(float deltaTime, const D3DXVECTOR3& offPos); + void QueryCreateParticles(unsigned num, float deltaTime, const glm::vec3& offPos); + void QueryCreateGroup(float deltaTime, const glm::vec3& offPos); virtual AABB LocalDimensions() const; virtual void OnProgress(float deltaTime); @@ -211,8 +211,8 @@ class FxEmitter: public lsl::Object, public lsl::Serializable bool GetModeFading() const; void SetModeFading(bool value); - D3DXVECTOR3 GetLocalPos(FxParticle* particle) const; - D3DXVECTOR3 GetWorldPos(FxParticle* particle) const; + glm::vec3 GetLocalPos(FxParticle* particle) const; + glm::vec3 GetWorldPos(FxParticle* particle) const; const D3DXMATRIX& GetMatrix() const; }; @@ -273,7 +273,7 @@ class FxParticleSystem: public BaseSceneNode ChildStyle _childStyle; AABB _aabb; - D3DXVECTOR3 _srcSpeed; + glm::vec3 _srcSpeed; protected: void OnCreateParticle(FxParticle* value); void OnDestroyParticle(FxParticle* value); @@ -311,8 +311,8 @@ class FxParticleSystem: public BaseSceneNode //режим затухания void SetModeFading(bool value); - const D3DXVECTOR3& GetSrcSpeed() const; - void SetSrcSpeed(const D3DXVECTOR3& value); + const glm::vec3& GetSrcSpeed() const; + void SetSrcSpeed(const glm::vec3& value); MaterialNode material; }; @@ -417,7 +417,7 @@ class FxTrailManager: public FxManager private: float _trailWidth; - void BuildVertexLine(res::VertexPT* vertex, const D3DXVECTOR3& pos, const D3DXVECTOR3& dir, const D3DXVECTOR3& camPos, float xTex); + void BuildVertexLine(res::VertexPT* vertex, const glm::vec3& pos, const glm::vec3& dir, const glm::vec3& camPos, float xTex); void DrawPath(graph::Engine& engine, FxParticleSystem* system, FxParticleGroup* group, res::VertexPT* vBuf, unsigned primCnt, unsigned sPrim); protected: virtual void RenderGroup(graph::Engine& engine, FxEmitter* emitter, FxParticleGroup* group); @@ -431,7 +431,7 @@ class FxTrailManager: public FxManager void SetTrailWidth(float value); //Фиксированная нормаль у следов - D3DXVECTOR3 fixedUpVec; + glm::vec3 fixedUpVec; bool fixedUp; //Тип отрисовки TypeDraw typeDraw; @@ -440,10 +440,10 @@ class FxTrailManager: public FxManager class FxFlowParticle: public FxParticle { public: - D3DXVECTOR3 speedPos; + glm::vec3 speedPos; glm::quat speedRot; - D3DXVECTOR3 speedScale; - D3DXVECTOR3 acceleration; + glm::vec3 speedScale; + glm::vec3 acceleration; }; class FxFlowEmitter: public FxEmitter @@ -460,7 +460,7 @@ class FxFlowEmitter: public FxEmitter Vec3Range speedScale; Vec3Range acceleration; - D3DXVECTOR3 gravitation; + glm::vec3 gravitation; //Автоповорот по направлению скорости перемещения //true - включено bool autoRot; diff --git a/src/Rock3dEngine/header/graph/GrassField.h b/src/Rock3dEngine/header/graph/GrassField.h index cc24eaa1..28dbb3e1 100644 --- a/src/Rock3dEngine/header/graph/GrassField.h +++ b/src/Rock3dEngine/header/graph/GrassField.h @@ -40,7 +40,7 @@ class GrassField: public BaseSceneNode struct Field { - D3DXVECTOR3 pos; + glm::vec3 pos; }; typedef lsl::Vector FieldList; diff --git a/src/Rock3dEngine/header/graph/MappingShaders.h b/src/Rock3dEngine/header/graph/MappingShaders.h index 7efd9d8d..488d518b 100644 --- a/src/Rock3dEngine/header/graph/MappingShaders.h +++ b/src/Rock3dEngine/header/graph/MappingShaders.h @@ -20,7 +20,7 @@ class LightShader: public Shader static const lsl::string cLightPropStr[cLightPropEnd]; static const lsl::string cMyParamStr[cMyParamEnd]; private: - D3DXVECTOR3 _viewPos; + glm::vec3 _viewPos; float _texDiffK; MacroBlock* _lightMacro[cLightTypeEnd][cLightPropEnd]; @@ -41,8 +41,8 @@ class LightShader: public Shader LightShader(); virtual ~LightShader(); - const D3DXVECTOR3& GetViewPos() const; - void SetViewPos(const D3DXVECTOR3& value); + const glm::vec3& GetViewPos() const; + void SetViewPos(const glm::vec3& value); float GetTexDiffK() const; void SetTexDiffK(float value); diff --git a/src/Rock3dEngine/header/graph/OctreeSort.h b/src/Rock3dEngine/header/graph/OctreeSort.h index 4a071b92..3ee39a82 100644 --- a/src/Rock3dEngine/header/graph/OctreeSort.h +++ b/src/Rock3dEngine/header/graph/OctreeSort.h @@ -375,7 +375,7 @@ class OctreeSort: public lsl::Object Users* _users; Node* _root; - D3DXVECTOR3 _nodeOff[cOctNum]; + glm::vec3 _nodeOff[cOctNum]; //Уникальный идентификатор прохода unsigned long _idPass; diff --git a/src/Rock3dEngine/header/graph/RenderToTexture.h b/src/Rock3dEngine/header/graph/RenderToTexture.h index 02371e16..a6937fb6 100644 --- a/src/Rock3dEngine/header/graph/RenderToTexture.h +++ b/src/Rock3dEngine/header/graph/RenderToTexture.h @@ -132,7 +132,7 @@ class RenderToCubeTex: public GraphObjRender CameraCI _myCamera; private: RtFlags _flags; - D3DXVECTOR3 _viewPos; + glm::vec3 _viewPos; public: RenderToCubeTex(); @@ -142,8 +142,8 @@ class RenderToCubeTex: public GraphObjRender virtual void BeginRT(Engine& engine, const RtFlags& flags); virtual void EndRT(Engine& engine); - const D3DXVECTOR3& GetViewPos() const; - void SetViewPos(const D3DXVECTOR3& value); + const glm::vec3& GetViewPos() const; + void SetViewPos(const glm::vec3& value); }; } diff --git a/src/Rock3dEngine/header/graph/SceneManager.h b/src/Rock3dEngine/header/graph/SceneManager.h index 8da8c972..24ea6001 100644 --- a/src/Rock3dEngine/header/graph/SceneManager.h +++ b/src/Rock3dEngine/header/graph/SceneManager.h @@ -100,8 +100,8 @@ class BaseSceneNode: public lsl::Component, protected IProgressUser BaseSceneNode* _proxyMaster; ProxyList* _proxyList; - D3DXVECTOR3 _position; - D3DXVECTOR3 _scale; + glm::vec3 _position; + glm::vec3 _scale; bool _visible; NodeOpts _options; int _tag; @@ -117,8 +117,8 @@ class BaseSceneNode: public lsl::Component, protected IProgressUser mutable lsl::Bitset _bbChanges; //Различное представление поворота, эти переменные кэшируются и в случае необходимости вычисляются из локальной матрицы(поскольку существует два слабо связных способа представления) поэтому имеют mutable для const - mutable D3DXVECTOR3 _direction; - mutable D3DXVECTOR3 _up; + mutable glm::vec3 _direction; + mutable glm::vec3 _up; mutable float _rollAngle; mutable float _pitchAngle; mutable float _turnAngle; @@ -190,20 +190,20 @@ class BaseSceneNode: public lsl::Component, protected IProgressUser //Изменение содержимого(полигональной сетки, вершин, т.е. его AABB) в локальной системе координат virtual void StructureChanged(); // - void MoveAroundTarget(const D3DXVECTOR3& worldTarget, float pitchDelta, float turnDelta); - void AdjustDistToTarget(const D3DXVECTOR3& worldTarget, float distance); + void MoveAroundTarget(const glm::vec3& worldTarget, float pitchDelta, float turnDelta); + void AdjustDistToTarget(const glm::vec3& worldTarget, float distance); void WorldToLocal(const D3DXVECTOR4& vec, D3DXVECTOR4& out) const; - void WorldToLocalCoord(const D3DXVECTOR3& vec, D3DXVECTOR3& out) const; - void WorldToLocalNorm(const D3DXVECTOR3& vec, D3DXVECTOR3& out) const; + void WorldToLocalCoord(const glm::vec3& vec, glm::vec3& out) const; + void WorldToLocalNorm(const glm::vec3& vec, glm::vec3& out) const; void LocalToWorld(const D3DXVECTOR4& vec, D3DXVECTOR4& out) const; - void LocalToWorldCoord(const D3DXVECTOR3& vec, D3DXVECTOR3& out) const; - void LocalToWorldNorm(const D3DXVECTOR3& vec, D3DXVECTOR3& out) const; + void LocalToWorldCoord(const glm::vec3& vec, glm::vec3& out) const; + void LocalToWorldNorm(const glm::vec3& vec, glm::vec3& out) const; void ParentToLocal(const D3DXVECTOR4& vec, D3DXVECTOR4& out) const; void LocalToParent(const D3DXVECTOR4& vec, D3DXVECTOR4& out) const; - unsigned RayCastIntersBB(const D3DXVECTOR3& wRayPos, const D3DXVECTOR3& wRayVec, bool includeChild = false) const; - unsigned RayCastIntersBB(const D3DXVECTOR3& wRayPos, const D3DXVECTOR3& wRayVec, D3DXVECTOR3& wNearVec, D3DXVECTOR3& wFarVec, bool includeChild = false) const; + unsigned RayCastIntersBB(const glm::vec3& wRayPos, const glm::vec3& wRayVec, bool includeChild = false) const; + unsigned RayCastIntersBB(const glm::vec3& wRayPos, const glm::vec3& wRayVec, glm::vec3& wNearVec, glm::vec3& wFarVec, bool includeChild = false) const; void InsertToScene(SceneManager* scene); void RemoveFromScene(SceneManager* scene); @@ -231,20 +231,20 @@ class BaseSceneNode: public lsl::Component, protected IProgressUser //Локальные координаты //Позиция - const D3DXVECTOR3& GetPos() const; - void SetPos(const D3DXVECTOR3& value); + const glm::vec3& GetPos() const; + void SetPos(const glm::vec3& value); //Масштаб - const D3DXVECTOR3& GetScale() const; - void SetScale(const D3DXVECTOR3& value); + const glm::vec3& GetScale() const; + void SetScale(const glm::vec3& value); void SetScale(float value); //Поворот //Поворот по координатным осям - const D3DXVECTOR3& GetDir() const; - void SetDir(const D3DXVECTOR3& value); - D3DXVECTOR3 GetRight() const; - void SetRight(const D3DXVECTOR3& value); - const D3DXVECTOR3& GetUp() const; - void SetUp(const D3DXVECTOR3& value); + const glm::vec3& GetDir() const; + void SetDir(const glm::vec3& value); + glm::vec3 GetRight() const; + void SetRight(const glm::vec3& value); + const glm::vec3& GetUp() const; + void SetUp(const glm::vec3& value); //Поворот по углам эйлера float GetRollAngle() const; void SetRollAngle(float value); @@ -273,22 +273,22 @@ class BaseSceneNode: public lsl::Component, protected IProgressUser D3DXMATRIX GetWorldCombMat(CombMatType type) const; //Мировые координаты - D3DXVECTOR3 GetWorldPos() const; - void SetWorldPos(const D3DXVECTOR3& value); + glm::vec3 GetWorldPos() const; + void SetWorldPos(const glm::vec3& value); glm::quat GetWorldRot() const; void SetWorldRot(const glm::quat& value); //Невозможно представить мировое масштабирование с помощью одного вектора поскольку направление масштабирования зависит от поворота. Поэтому представляется в виде матрицы D3DXMATRIX GetWorldScale() const; // - D3DXVECTOR3 GetWorldDir() const; - D3DXVECTOR3 GetWorldRight() const; - D3DXVECTOR3 GetWorldUp() const; + glm::vec3 GetWorldDir() const; + glm::vec3 GetWorldRight() const; + glm::vec3 GetWorldUp() const; //Ограничительный объем // - D3DXVECTOR3 GetWorldSizes(bool includeChild) const; + glm::vec3 GetWorldSizes(bool includeChild) const; // - D3DXVECTOR3 GetWorldCenterPos(bool includeChild) const; + glm::vec3 GetWorldCenterPos(bool includeChild) const; //AABB в локальной системе координат const AABB& GetLocalAABB(bool includeChild) const; //AABB в абсолютной системе координат @@ -321,8 +321,8 @@ class BaseSceneNode: public lsl::Component, protected IProgressUser bool storeCoords; bool invertCullFace; - D3DXVECTOR3 speedPos; - D3DXVECTOR3 speedScale; + glm::vec3 speedPos; + glm::vec3 speedScale; glm::quat speedRot; bool autoRot; diff --git a/src/Rock3dEngine/header/graph/StdNode.h b/src/Rock3dEngine/header/graph/StdNode.h index f00848e9..98d648be 100644 --- a/src/Rock3dEngine/header/graph/StdNode.h +++ b/src/Rock3dEngine/header/graph/StdNode.h @@ -19,8 +19,8 @@ class MaterialNode LibMaterial* _libMat; D3DXCOLOR _color; - D3DXVECTOR3 _offset; - D3DXVECTOR3 _scale; + glm::vec3 _offset; + glm::vec3 _scale; glm::quat _rotate; D3DCULL _cullMode; @@ -69,11 +69,11 @@ class MaterialNode const D3DXCOLOR& GetColor() const; void SetColor(const D3DXCOLOR& value); - const D3DXVECTOR3& GetOffset() const; - void SetOffset(const D3DXVECTOR3& value); + const glm::vec3& GetOffset() const; + void SetOffset(const glm::vec3& value); - const D3DXVECTOR3& GetScale() const; - void SetScale(const D3DXVECTOR3& value); + const glm::vec3& GetScale() const; + void SetScale(const glm::vec3& value); const glm::quat& GetRotate() const; void SetRotate(const glm::quat& value); @@ -256,9 +256,9 @@ class ScreenSprite: public BaseSceneNode class MovCoordSys: public BaseSceneNode { private: - static const D3DXVECTOR3 arUp[3]; + static const glm::vec3 arUp[3]; static const float arSize; - static const D3DXVECTOR3 arPos[3]; + static const glm::vec3 arPos[3]; static const D3DXCOLOR arCol[3]; static const D3DXCOLOR colSel; public: @@ -267,7 +267,7 @@ class MovCoordSys: public BaseSceneNode Cylinder* _arrows[3]; DirMove _curMove; protected: - DirMove CompDirMove(const D3DXVECTOR3& rayStart, const D3DXVECTOR3& rayVec); + DirMove CompDirMove(const glm::vec3& rayStart, const glm::vec3& rayVec); virtual void DoRender(Engine& engine); virtual AABB LocalDimensions() const; @@ -275,14 +275,14 @@ class MovCoordSys: public BaseSceneNode MovCoordSys(); virtual ~MovCoordSys(); - DirMove OnMouseMove(const D3DXVECTOR3& rayStart, const D3DXVECTOR3& rayVec); - DirMove OnMouseClick(const D3DXVECTOR3& rayStart, const D3DXVECTOR3& rayVec, lsl::KeyState state); + DirMove OnMouseMove(const glm::vec3& rayStart, const glm::vec3& rayVec); + DirMove OnMouseClick(const glm::vec3& rayStart, const glm::vec3& rayVec, lsl::KeyState state); }; class ScaleCoordSys: public BaseSceneNode { private: - static const D3DXVECTOR3 arUp[3]; + static const glm::vec3 arUp[3]; static const float arSize; static const float plSize; static const D3DXCOLOR arCol[3]; @@ -293,8 +293,8 @@ class ScaleCoordSys: public BaseSceneNode Sprite* _arrows[3]; DirMove _curMove; protected: - void CompBBPlanes(const D3DXVECTOR3& camPos, D3DXVECTOR3* bbPlanes); - DirMove CompDirMove(const D3DXVECTOR3& rayStart, const D3DXVECTOR3& rayVec, const D3DXVECTOR3& camPos); + void CompBBPlanes(const glm::vec3& camPos, glm::vec3* bbPlanes); + DirMove CompDirMove(const glm::vec3& rayStart, const glm::vec3& rayVec, const glm::vec3& camPos); virtual void DoRender(Engine& engine); virtual AABB LocalDimensions() const; @@ -302,8 +302,8 @@ class ScaleCoordSys: public BaseSceneNode ScaleCoordSys(); virtual ~ScaleCoordSys(); - DirMove OnMouseMove(const D3DXVECTOR3& rayStart, const D3DXVECTOR3& rayVec, const D3DXVECTOR3& camPos); - DirMove OnMouseClick(const D3DXVECTOR3& rayStart, const D3DXVECTOR3& rayVec, lsl::KeyState state, const D3DXVECTOR3& camPos); + DirMove OnMouseMove(const glm::vec3& rayStart, const glm::vec3& rayVec, const glm::vec3& camPos); + DirMove OnMouseClick(const glm::vec3& rayStart, const glm::vec3& rayVec, lsl::KeyState state, const glm::vec3& camPos); }; void FillDataPlane(res::VertexData& vb, float width, float height, float u, float v); diff --git a/src/Rock3dEngine/header/graph/SunShaft.h b/src/Rock3dEngine/header/graph/SunShaft.h index b6386723..f4c887a8 100644 --- a/src/Rock3dEngine/header/graph/SunShaft.h +++ b/src/Rock3dEngine/header/graph/SunShaft.h @@ -19,7 +19,7 @@ class SunShaftRender: public PostEffRender static const int cShaftsTexSizeY = 1024; static const int cShaftsTexNum = 2; private: - D3DXVECTOR3 _sunPos; + glm::vec3 _sunPos; public: SunShaftRender(); virtual ~SunShaftRender(); @@ -32,8 +32,8 @@ class SunShaftRender: public PostEffRender Tex2DResource* GetDepthTex(); void SetDepthTex(Tex2DResource* value); - const D3DXVECTOR3& GetSunPos() const; - void SetSunPos(const D3DXVECTOR3& value); + const glm::vec3& GetSunPos() const; + void SetSunPos(const glm::vec3& value); Shader shader; diff --git a/src/Rock3dEngine/header/graph/VideoResource.h b/src/Rock3dEngine/header/graph/VideoResource.h index c5460001..6c13767e 100644 --- a/src/Rock3dEngine/header/graph/VideoResource.h +++ b/src/Rock3dEngine/header/graph/VideoResource.h @@ -89,8 +89,8 @@ class VBMesh: public MemPoolResource res::VertexData* GetOrCreateData(); void SetData(res::VertexData* value); - const D3DXVECTOR3& GetMinPos() const; - const D3DXVECTOR3& GetMaxPos() const; + const glm::vec3& GetMinPos() const; + const glm::vec3& GetMaxPos() const; IDirect3DVertexBuffer9* GetVB() const; D3DPRIMITIVETYPE primitiveType; @@ -127,8 +127,8 @@ class IndexedVBMesh: public MemPoolResource void SetData(res::MeshData* value); unsigned GetSubsetCount() const; - const D3DXVECTOR3& GetMinPos() const; - const D3DXVECTOR3& GetMaxPos() const; + const glm::vec3& GetMinPos() const; + const glm::vec3& GetMaxPos() const; IDirect3DVertexBuffer9* GetVB(); IDirect3DIndexBuffer9* GetIB(); @@ -180,8 +180,8 @@ class MeshX: public MemPoolResource void SetPrefab(Prefab value); unsigned GetSubsetCount() const; - const D3DXVECTOR3& GetMinPos() const; - const D3DXVECTOR3& GetMaxPos() const; + const glm::vec3& GetMinPos() const; + const glm::vec3& GetMaxPos() const; }; class TexResource: public MemPoolResource diff --git a/src/Rock3dEngine/header/graph/WaterPlane.h b/src/Rock3dEngine/header/graph/WaterPlane.h index 89b6d995..60bc56ff 100644 --- a/src/Rock3dEngine/header/graph/WaterPlane.h +++ b/src/Rock3dEngine/header/graph/WaterPlane.h @@ -40,7 +40,7 @@ class WaterPlane: public PlaneNode private: typedef PlaneNode _MyBase; private: - D3DXVECTOR3 _viewPos; + glm::vec3 _viewPos; float _cloudIntens; protected: virtual void DoRender(graph::Engine& engine); @@ -59,8 +59,8 @@ class WaterPlane: public PlaneNode D3DXCOLOR GetColor(); void SetColor(const D3DXCOLOR& value); - const D3DXVECTOR3& GetViewPos() const; - void SetViewPos(const D3DXVECTOR3& value); + const glm::vec3& GetViewPos() const; + void SetViewPos(const glm::vec3& value); float GetCloudIntens() const; void SetCloudIntens(float value); diff --git a/src/Rock3dEngine/header/gui/GUI.h b/src/Rock3dEngine/header/gui/GUI.h index 44b6a689..5d229406 100644 --- a/src/Rock3dEngine/header/gui/GUI.h +++ b/src/Rock3dEngine/header/gui/GUI.h @@ -229,9 +229,9 @@ class Graphic3d: public Object Children _children; bool _active; - D3DXVECTOR3 _pos; + glm::vec3 _pos; glm::quat _rot; - D3DXVECTOR3 _scale; + glm::vec3 _scale; Material* _material; bool _createMat; @@ -254,14 +254,14 @@ class Graphic3d: public Object Context& GetContext(); - const D3DXVECTOR3& GetPos() const; - void SetPos(const D3DXVECTOR3& value); + const glm::vec3& GetPos() const; + void SetPos(const glm::vec3& value); glm::quat GetRot() const; void SetRot(const glm::quat& value); - const D3DXVECTOR3& GetScale() const; - void SetScale(const D3DXVECTOR3& value); + const glm::vec3& GetScale() const; + void SetScale(const glm::vec3& value); D3DXMATRIX GetMat(); D3DXMATRIX GetWorldMat(); @@ -536,7 +536,7 @@ class Widget: public Object, protected graph::IProgressUser float _rot; bool _coord3d; - D3DXVECTOR3 _pos3d; + glm::vec3 _pos3d; mutable D3DXMATRIX _matrix[cMatrixChangeEnd]; mutable MatrixChanges _matrixChanges; @@ -698,8 +698,8 @@ class Widget: public Object, protected graph::IProgressUser bool GetCoord3d() const; void SetCoord3d(bool value); - const D3DXVECTOR3& GetPos3d() const; - void SetPos3d(const D3DXVECTOR3& value); + const glm::vec3& GetPos3d() const; + void SetPos3d(const glm::vec3& value); glm::vec2 GetWorldPos() const; void SetWorldPos(const glm::vec2& value); @@ -1629,7 +1629,7 @@ class Manager void SetCamera3d(graph::Camera* value); glm::vec2 ScreenToView(const Point& point); - glm::vec2 WorldToView( const D3DXVECTOR3& coord); + glm::vec2 WorldToView( const glm::vec3& coord); MouseClick GetMouseClick(Widget* widget) const; MouseMove GetMouseMove(Widget* widget) const; diff --git a/src/Rock3dEngine/header/px/Physx.h b/src/Rock3dEngine/header/px/Physx.h index ad4561e5..b7042b76 100644 --- a/src/Rock3dEngine/header/px/Physx.h +++ b/src/Rock3dEngine/header/px/Physx.h @@ -87,8 +87,8 @@ class Scene: public lsl::Component unsigned events; float deltaTime; - D3DXVECTOR3 sumNormalForce; - D3DXVECTOR3 sumFrictionForce; + glm::vec3 sumNormalForce; + glm::vec3 sumFrictionForce; NxConstContactStream stream; }; struct OnContactModifyEvent @@ -190,14 +190,14 @@ class TriangleMesh: public lsl::CollectionItem bool operator==(const MeshVal& value) const { - D3DXVECTOR3 err = scale - value.scale; + glm::vec3 err = scale - value.scale; float maxErr = std::max(abs(err.x), std::max(abs(err.y), abs(err.z))); //ошибка считается исходя что 1 - один метр, следовательно 1мм допустимая ошибка return id == value.id && maxErr < 0.001f; } //Растяжение меша - D3DXVECTOR3 scale; + glm::vec3 scale; //ид отдельной фигуры из меша. Если < 0 то используются все фигуры меша int id; @@ -214,19 +214,19 @@ class TriangleMesh: public lsl::CollectionItem res::MeshData* _meshData; MeshList _meshList; - void LoadMesh(const D3DXVECTOR3& scale, int id, NxTriangleMeshDesc& desc); + void LoadMesh(const glm::vec3& scale, int id, NxTriangleMeshDesc& desc); void FreeMesh(NxTriangleMeshDesc& desc); - MeshList::iterator GetOrCreateMesh(const D3DXVECTOR3& scale, int id); + MeshList::iterator GetOrCreateMesh(const glm::vec3& scale, int id); void ReleaseMesh(MeshList::iterator iter); public: TriangleMesh(); virtual ~TriangleMesh(); - NxTriangleMesh* GetOrCreateTri(const D3DXVECTOR3& scale, int id); + NxTriangleMesh* GetOrCreateTri(const glm::vec3& scale, int id); void ReleaseTri(NxTriangleMesh* mesh); - NxConvexMesh* GetOrCreateConvex(const D3DXVECTOR3& scale, int id); + NxConvexMesh* GetOrCreateConvex(const glm::vec3& scale, int id); void ReleaseConvex(NxConvexMesh* mesh); res::MeshData* GetMeshData(); @@ -251,9 +251,9 @@ class Shape: public lsl::CollectionItem, public lsl::Serializable Shapes* _owner; NxShape* _nxShape; - D3DXVECTOR3 _pos; + glm::vec3 _pos; glm::quat _rot; - D3DXVECTOR3 _scale; + glm::vec3 _scale; unsigned _materialIndex; float _density; float _skinWidth; @@ -267,7 +267,7 @@ class Shape: public lsl::CollectionItem, public lsl::Serializable virtual NxShapeDesc* CreateDesc() = 0; void ReloadNxShape(bool allowInitialization = false); - D3DXVECTOR3 TransformLocalPos(const D3DXVECTOR3& inValue); + glm::vec3 TransformLocalPos(const glm::vec3& inValue); void SyncPos(); void SyncRot(); virtual void SyncScale(); @@ -287,14 +287,14 @@ class Shape: public lsl::CollectionItem, public lsl::Serializable NxShape* GetNxShape(); - const D3DXVECTOR3& GetPos() const; - void SetPos(const D3DXVECTOR3& value); + const glm::vec3& GetPos() const; + void SetPos(const glm::vec3& value); const glm::quat& GetRot() const; void SetRot(const glm::quat& value); - const D3DXVECTOR3& GetScale() const; - void SetScale(D3DXVECTOR3& value); + const glm::vec3& GetScale() const; + void SetScale(glm::vec3& value); NxU16 GetMaterialIndex(); void SetMaterialIndex(NxU16 value); @@ -315,7 +315,7 @@ class PlaneShape: public Shape public: static const ShapeType Type = stPlane; private: - D3DXVECTOR3 _normal; + glm::vec3 _normal; float _dist; protected: virtual NxShapeDesc* CreateDesc(); @@ -330,8 +330,8 @@ class PlaneShape: public Shape NxPlaneShape* GetNxShape(); - const D3DXVECTOR3& GetNormal() const; - void SetNormal(const D3DXVECTOR3& value); + const glm::vec3& GetNormal() const; + void SetNormal(const glm::vec3& value); float GetDist() const; void SetDist(float value); @@ -344,7 +344,7 @@ class BoxShape: public Shape public: static const ShapeType Type = stBox; private: - D3DXVECTOR3 _dimensions; + glm::vec3 _dimensions; protected: virtual NxShapeDesc* CreateDesc(); @@ -358,8 +358,8 @@ class BoxShape: public Shape NxBoxShape* GetNxShape(); - const D3DXVECTOR3& GetDimensions() const; - void SetDimensions(const D3DXVECTOR3& value); + const glm::vec3& GetDimensions() const; + void SetDimensions(const glm::vec3& value); }; class SphereShape: public Shape @@ -627,9 +627,9 @@ class Actor: public lsl::Object, public lsl::Serializable NxActor* _nxActor; //координаты кэшируется, отностиельно _nxActor - mutable D3DXVECTOR3 _pos; + mutable glm::vec3 _pos; mutable glm::quat _rot; - mutable D3DXVECTOR3 _scale; + mutable glm::vec3 _scale; protected: //Динамическая инициализация shape void CreateNxShape(Shape* shape); @@ -668,8 +668,8 @@ class Actor: public lsl::Object, public lsl::Serializable void InsertChild(Actor* child); void RemoveChild(Actor* child); - void LocalToWorldPos(const D3DXVECTOR3& inValue, D3DXVECTOR3& outValue, bool nxActorSpace = false); - void WorldToLocalPos(const D3DXVECTOR3& inValue, D3DXVECTOR3& outValue, bool nxActorSpace = false); + void LocalToWorldPos(const glm::vec3& inValue, glm::vec3& outValue, bool nxActorSpace = false); + void WorldToLocalPos(const glm::vec3& inValue, glm::vec3& outValue, bool nxActorSpace = false); BoxShape& AddBBShape(const AABB& aabb, const NxBoxShapeDesc& desc = NxBoxShapeDesc()); @@ -698,14 +698,14 @@ class Actor: public lsl::Object, public lsl::Serializable void SetContactReportFlag(unsigned value, bool set); //Локальные координаты в пространстве родителя. По концепции методы возращают текущие кординаты nxActor-a, если его не существуюет то кэшированные координаты Actor-a. Упрощенная реализация, пока пододит только для двухуровненной иерархии - const D3DXVECTOR3& GetPos() const; - void SetPos(const D3DXVECTOR3& value); + const glm::vec3& GetPos() const; + void SetPos(const glm::vec3& value); const glm::quat& GetRot() const; void SetRot(const glm::quat& value); - const D3DXVECTOR3& GetScale() const; - void SetScale(const D3DXVECTOR3& value); + const glm::vec3& GetScale() const; + void SetScale(const glm::vec3& value); - D3DXVECTOR3 GetWorldScale() const; + glm::vec3 GetWorldScale() const; bool storeCoords; }; diff --git a/src/Rock3dEngine/header/r3dGraphTypes.h b/src/Rock3dEngine/header/r3dGraphTypes.h index dfee1eab..699e5e7a 100644 --- a/src/Rock3dEngine/header/r3dGraphTypes.h +++ b/src/Rock3dEngine/header/r3dGraphTypes.h @@ -7,10 +7,10 @@ namespace r3d { -const VertexPNT PlanePNT[4] = {VertexPNT(D3DXVECTOR3(-0.5f, -0.5f, 0.0f), ZVector, glm::vec2(0.0f, 0.0f)), - VertexPNT(D3DXVECTOR3(0.5f, -0.5f, 0.0f), ZVector, glm::vec2(1.0f, 0.0f)), - VertexPNT(D3DXVECTOR3(0.5f, 0.5f, 0.0f), ZVector, glm::vec2(1.0f, 1.0f)), - VertexPNT(D3DXVECTOR3(-0.5f, 0.5f, 0.0f), ZVector, glm::vec2(0.0f, 1.0f))}; +const VertexPNT PlanePNT[4] = {VertexPNT(glm::vec3(-0.5f, -0.5f, 0.0f), ZVector, glm::vec2(0.0f, 0.0f)), + VertexPNT(glm::vec3(0.5f, -0.5f, 0.0f), ZVector, glm::vec2(1.0f, 0.0f)), + VertexPNT(glm::vec3(0.5f, 0.5f, 0.0f), ZVector, glm::vec2(1.0f, 1.0f)), + VertexPNT(glm::vec3(-0.5f, 0.5f, 0.0f), ZVector, glm::vec2(0.0f, 1.0f))}; } diff --git a/src/Rock3dEngine/header/res/GraphResource.h b/src/Rock3dEngine/header/res/GraphResource.h index 14f3a197..29a49b07 100644 --- a/src/Rock3dEngine/header/res/GraphResource.h +++ b/src/Rock3dEngine/header/res/GraphResource.h @@ -32,42 +32,42 @@ struct VertexP static const DWORD fvf = D3DFVF_XYZ; VertexP(); - VertexP(const D3DXVECTOR3& mPos); + VertexP(const glm::vec3& mPos); - D3DXVECTOR3 pos; + glm::vec3 pos; }; struct VertexPD { static const DWORD fvf = D3DFVF_XYZ | D3DFVF_DIFFUSE; - D3DXVECTOR3 pos; + glm::vec3 pos; D3DCOLOR diffuse; VertexPD(); - VertexPD(D3DXVECTOR3 position, D3DCOLOR diffuseColor); + VertexPD(glm::vec3 position, D3DCOLOR diffuseColor); }; struct VertexPN { static const DWORD fvf = D3DFVF_XYZ | D3DFVF_NORMAL; - D3DXVECTOR3 pos; - D3DXVECTOR3 norm; + glm::vec3 pos; + glm::vec3 norm; VertexPN(); - VertexPN(D3DXVECTOR3 position, D3DXVECTOR3 normal); + VertexPN(glm::vec3 position, glm::vec3 normal); }; struct VertexPT { static const DWORD fvf = D3DFVF_XYZ | D3DFVF_TEX1; - D3DXVECTOR3 pos; + glm::vec3 pos; glm::vec2 tex; VertexPT(); - VertexPT(D3DXVECTOR3 position, glm::vec2 texCoord); + VertexPT(glm::vec3 position, glm::vec2 texCoord); }; struct VertexPNT @@ -79,7 +79,7 @@ struct VertexPNT glm::vec2 tex; VertexPNT(); - VertexPNT(const D3DXVECTOR3& position, const D3DXVECTOR3& normal, const glm::vec2& texCoord); + VertexPNT(const glm::vec3& position, const glm::vec3& normal, const glm::vec2& texCoord); }; struct ScreenVertex @@ -113,8 +113,8 @@ class VertexData: public lsl::BufferResource unsigned _vertexSize; unsigned _elemOff[cElementEnd]; - D3DXVECTOR3 _minPos; - D3DXVECTOR3 _maxPos; + glm::vec3 _minPos; + glm::vec3 _maxPos; void CalcDimensions(); protected: @@ -145,8 +145,8 @@ class VertexData: public lsl::BufferResource DWORD GetFVF() const; // - const D3DXVECTOR3& GetMinPos() const; - const D3DXVECTOR3& GetMaxPos() const; + const glm::vec3& GetMinPos() const; + const glm::vec3& GetMaxPos() const; bool GetScreenRHW() const; void SetScreenRHW(bool value); @@ -165,15 +165,15 @@ struct VertexIter VertexIter(); VertexIter(unsigned index, VertexData* owner); - const D3DXVECTOR3* Pos3() const; - D3DXVECTOR3* Pos3(); + const glm::vec3* Pos3() const; + glm::vec3* Pos3(); D3DXVECTOR4* Pos4(); D3DCOLOR* Color(); glm::vec2* Tex0(); glm::vec2* Tex1(); - D3DXVECTOR3* Normal(); - D3DXVECTOR3* Tangent(); - D3DXVECTOR3* Binormal(); + glm::vec3* Normal(); + glm::vec3* Tangent(); + glm::vec3* Binormal(); const char* GetElem(VertexData::Element element) const; void SetElem(VertexData::Element element, const char* value); @@ -232,8 +232,8 @@ struct FaceGroup int vertexCnt; int mathId; - D3DXVECTOR3 minPos; - D3DXVECTOR3 maxPos; + glm::vec3 minPos; + glm::vec3 maxPos; FaceGroup(); FaceGroup(int startFace, int faceCount, int startVertex, int vertexCount); diff --git a/src/Rock3dEngine/source/GraphManager.cpp b/src/Rock3dEngine/source/GraphManager.cpp index b1a656fa..8bc175a0 100644 --- a/src/Rock3dEngine/source/GraphManager.cpp +++ b/src/Rock3dEngine/source/GraphManager.cpp @@ -514,7 +514,7 @@ void GraphManager::UpdateWaterPlane() _waterPlaneActor->SetScale(scale); //_waterNode->SetSize(glm::vec2(_groundAABB.GetSizes()) / scale); _waterNode->SetSize(glm::vec2(_groundAABB.GetSizes().x, _groundAABB.GetSizes().y) / - scale); // remove after D3DXVECTOR3 replacement + scale); // remove after glm::vec3 replacement } if (_waterPlane) @@ -523,7 +523,7 @@ void GraphManager::UpdateWaterPlane() _waterPlane->SetScale(scale); //_waterPlane->SetSize(glm::vec2(_groundAABB.GetSizes()) / scale); _waterPlane->SetSize(glm::vec2(_groundAABB.GetSizes().x, _groundAABB.GetSizes().y) / - scale); // remove after D3DXVECTOR3 replacement + scale); // remove after glm::vec3 replacement } } @@ -605,11 +605,11 @@ void GraphManager::FreeGrassField() void GraphManager::UpdateGrassPlane() { - D3DXVECTOR3 pos = _groundAABB.GetCenter(); + glm::vec3 pos = _groundAABB.GetCenter(); pos.x = 0; //glm::vec2 size = glm::vec2(_groundAABB.GetSizes()); glm::vec2 size = - glm::vec2(_groundAABB.GetSizes().x, _groundAABB.GetSizes().y); // remove after D3DXVECTOR3 replacement + glm::vec2(_groundAABB.GetSizes().x, _groundAABB.GetSizes().y); // remove after glm::vec3 replacement if (_grassPlane) { @@ -618,7 +618,7 @@ void GraphManager::UpdateGrassPlane() } if (_grassField) { - _grassField->SetPos(D3DXVECTOR3(pos.x, pos.y, 0.9f)); + _grassField->SetPos(glm::vec3(pos.x, pos.y, 0.9f)); _grassField->SetWidth(size.x); _grassField->SetHeight(size.y); } @@ -1262,27 +1262,27 @@ void GraphManager::FreePlaneFog() void GraphManager::UpdateFogPlane() { - D3DXVECTOR3 pos = _groundAABB.GetCenter(); + glm::vec3 pos = _groundAABB.GetCenter(); pos.z = _cloudHeight; if (_fogPlane) { _fogPlane->SetPos(pos); - _fogPlane->SetScale(D3DXVECTOR3(_tileScale.x, _tileScale.y, 1.0f)); + _fogPlane->SetScale(glm::vec3(_tileScale.x, _tileScale.y, 1.0f)); //_fogPlane->SetSize(glm::vec2(_groundAABB.GetSizes()) / _tileScale); _fogPlane->SetSize(glm::vec2(_groundAABB.GetSizes().x, _groundAABB.GetSizes().y) / - _tileScale); // remove after D3DXVECTOR3 replacement + _tileScale); // remove after glm::vec3 replacement } if (_fogPlaneActor) { _fogPlaneActor->SetPos(_groundAABB.GetCenter()); - _fogPlaneActor->SetScale(D3DXVECTOR3(_tileScale.x, _tileScale.y, 1)); + _fogPlaneActor->SetScale(glm::vec3(_tileScale.x, _tileScale.y, 1)); //static_cast(_fogPlaneActor->GetNodes().front()).SetSize(glm::vec2(_groundAABB.GetSizes()) / _tileScale); static_cast(_fogPlaneActor->GetNodes().front()) .SetSize(glm::vec2(_groundAABB.GetSizes().x, _groundAABB.GetSizes().y) / - _tileScale); // remove after D3DXVECTOR3 replacement + _tileScale); // remove after glm::vec3 replacement } } @@ -1494,7 +1494,7 @@ void GraphManager::RemoveActor(graph::Actor* value) _actorManager->RemoveActor(value); } -bool LineCastIntersPlane(const D3DXVECTOR3& rayStart, const D3DXVECTOR3& rayVec, const D3DXPLANE& plane, float& outT) +bool LineCastIntersPlane(const glm::vec3& rayStart, const glm::vec3& rayVec, const D3DXPLANE& plane, float& outT) { const float EPSILON = 1.0e-10f; @@ -1507,7 +1507,7 @@ bool LineCastIntersPlane(const D3DXVECTOR3& rayStart, const D3DXVECTOR3& rayVec, return false; } -unsigned PlaneBBIntersect(const BoundBox& bb, const D3DXPLANE& plane, D3DXVECTOR3 points[]) +unsigned PlaneBBIntersect(const BoundBox& bb, const D3DXPLANE& plane, glm::vec3 points[]) { //конечные вершины ребер для каждого вертекса const int lines[12][2] = {{0, 1}, {1, 2}, {2, 3}, {3, 0}, {4, 5}, {5, 6}, {6, 7}, {7, 4}, {0, 4}, {1, 5}, {2, 6}, {3, 7}}; @@ -1516,10 +1516,10 @@ unsigned PlaneBBIntersect(const BoundBox& bb, const D3DXPLANE& plane, D3DXVECTOR for (int i = 0; i < 12; ++i) { - D3DXVECTOR3 v1 = bb.v[lines[i][0]]; - D3DXVECTOR3 v2 = bb.v[lines[i][1]]; + glm::vec3 v1 = bb.v[lines[i][0]]; + glm::vec3 v2 = bb.v[lines[i][1]]; - D3DXVECTOR3 vec = v2 - v1; + glm::vec3 vec = v2 - v1; float vec3Len = D3DXVec3Length(&vec); D3DXVec3Normalize(&vec, &vec); float dist; @@ -1536,7 +1536,7 @@ unsigned PlaneBBIntersect(const BoundBox& bb, const D3DXPLANE& plane, D3DXVECTOR return res; } -unsigned PlaneAABBIntersect(const AABB& aabb, const D3DXPLANE& plane, D3DXVECTOR3 points[]) +unsigned PlaneAABBIntersect(const AABB& aabb, const D3DXPLANE& plane, glm::vec3 points[]) { BoundBox bb(aabb); @@ -1550,8 +1550,8 @@ bool ComputeZBounds(graph::Engine& engine, const graph::CameraCI& camera, const D3DXPLANE posNearPlane; D3DXPlaneFromPointNormal(&posNearPlane, &camera.GetDesc().pos, &camera.GetDesc().dir); - D3DXVECTOR3 rayVec[4] = {D3DXVECTOR3(-1.0f, -1.0f, 1.0f), D3DXVECTOR3(1.0f, -1.0f, 1.0f), D3DXVECTOR3(-1.0f, 1.0f, 1.0f), D3DXVECTOR3(1.0f, 1.0f, 1.0f)}; - D3DXVECTOR3 rayPos[4] = {D3DXVECTOR3(-1.0f, -1.0f, 0.0f), D3DXVECTOR3(1.0f, -1.0f, 0.0f), D3DXVECTOR3(-1.0f, 1.0f, 0.0f), D3DXVECTOR3(1.0f, 1.0f, 0.0f)}; + glm::vec3 rayVec[4] = {glm::vec3(-1.0f, -1.0f, 1.0f), glm::vec3(1.0f, -1.0f, 1.0f), glm::vec3(-1.0f, 1.0f, 1.0f), glm::vec3(1.0f, 1.0f, 1.0f)}; + glm::vec3 rayPos[4] = {glm::vec3(-1.0f, -1.0f, 0.0f), glm::vec3(1.0f, -1.0f, 0.0f), glm::vec3(-1.0f, 1.0f, 0.0f), glm::vec3(1.0f, 1.0f, 0.0f)}; for (int i = 0; i < 4; ++i) { @@ -1752,13 +1752,13 @@ void GraphManager::RenderPlanarReflScene(graph::CameraCI& camera) { /*if (!_engine->GetContext().IsNight()) { - D3DXVECTOR3 norm = (*iter2)->vec1(); - D3DXVECTOR3 lightDir = _engine->GetContext().GetLights().front()->GetDesc().dir; + glm::vec3 norm = (*iter2)->vec1(); + glm::vec3 lightDir = _engine->GetContext().GetLights().front()->GetDesc().dir; float dot = D3DXVec3Dot(&norm, &ZVector); if (dot < 0.99f) { - D3DXVECTOR3 right1, right2; + glm::vec3 right1, right2; D3DXVec3Cross(&right1, &norm, &ZVector); D3DXVec3Cross(&right2, &(-lightDir), &ZVector); @@ -1810,12 +1810,12 @@ void GraphManager::RenderPlanarReflScene(graph::CameraCI& camera) { graph::Actor* actor = *iter; - D3DXVECTOR3 norm = actor->vec1(); + glm::vec3 norm = actor->vec1(); float cosb = D3DXVec3Dot(&norm, &ZVector); float sinb = sqrt(1.0f - cosb * cosb); float height = -actor->vec1().w; actor->LocalToWorldNorm(norm, norm); - D3DXVECTOR3 pos = actor->GetWorldPos(); + glm::vec3 pos = actor->GetWorldPos(); D3DXPLANE plane; D3DXPlaneFromPointNormal(&plane, &(pos + norm * height), &norm); @@ -1833,8 +1833,8 @@ void GraphManager::RenderPlanarReflScene(graph::CameraCI& camera) AABB localAABB = aabb; actor->LocalToWorldCoord(aabb.min, aabb.min); actor->LocalToWorldCoord(aabb.max, aabb.max); - D3DXVECTOR3 right = actor->GetWorldRight(); - D3DXVECTOR3 dir = *D3DXVec3Cross(&dir, &right, &norm); + glm::vec3 right = actor->GetWorldRight(); + glm::vec3 dir = *D3DXVec3Cross(&dir, &right, &norm); graph::ReflRender::ClipPlanes clipPlanes; D3DXPlaneFromPointNormal(&plane, &aabb.min, &dir); @@ -1860,7 +1860,7 @@ void GraphManager::RenderPlanarReflScene(graph::CameraCI& camera) _planarReflRender->EndRT(*_engine); #ifdef PLANAR_REFL_DEBUG - _planarActor->SetPos(D3DXVECTOR3(0, 0, pos.z)); + _planarActor->SetPos(glm::vec3(0, 0, pos.z)); if (actor->renderBB == NULL) actor->renderBB = new AABB(0.0f); *actor->renderBB = localAABB; @@ -2047,7 +2047,7 @@ void GraphManager::RenderShadow(graph::CameraCI& camera) float maxFar = _shadowMaxFar; if (camDesc.style == graph::csOrtho) { - D3DXVECTOR3 pos = _camera->GetPos() + _camera->GetDir() * _shadowMaxFar; + glm::vec3 pos = _camera->GetPos() + _camera->GetDir() * _shadowMaxFar; maxFar = std::min(D3DXVec3Length(&(pos - camDesc.pos)), camDesc.farDist); } @@ -2172,7 +2172,7 @@ bool GraphManager::Render(float deltaTime, bool pause) LSL_ASSERT(_camera); - const D3DXVECTOR3* rayTarget = _camera->GetStyle() == graph::csOrtho && _actorManager->IsBuildOctree() ? &_orthoTarget.pos : 0; + const glm::vec3* rayTarget = _camera->GetStyle() == graph::csOrtho && _actorManager->IsBuildOctree() ? &_orthoTarget.pos : 0; if (_engine->BeginScene()) { @@ -2290,16 +2290,16 @@ bool GraphManager::Render(float deltaTime, bool pause) if (_sunShaft && _engine->GetContext().GetCamera().GetDesc().style == graph::csPerspective) { //наложение - D3DXVECTOR3 lightPos = _engine->GetContext().GetLight(0).GetDesc().pos; - D3DXVECTOR3 radVec; + glm::vec3 lightPos = _engine->GetContext().GetLight(0).GetDesc().pos; + glm::vec3 radVec; D3DXVec3Normalize(&radVec, &(lightPos - _actorManager->GetWorldAABB().GetCenter())); - D3DXVec3Cross(&radVec, &D3DXVECTOR3(0, 0, 1), &radVec); + D3DXVec3Cross(&radVec, &glm::vec3(0, 0, 1), &radVec); if (D3DXVec3Length(&radVec) < 0.1f) { - radVec = D3DXVECTOR3(1, 0, 0); + radVec = glm::vec3(1, 0, 0); } glm::quat radQuat = glm::angleAxis(D3DX_PI / 2.5f, Vec3DxToGlm(radVec)); - Vec3Rotate(D3DXVECTOR3(0, 0, 1), radQuat, radVec); + Vec3Rotate(glm::vec3(0, 0, 1), radQuat, radVec); radVec = radVec * 1000.0f; _sunShaft->SetSunPos(radVec); @@ -2457,15 +2457,15 @@ void GraphManager::BuildOctree() if ((abs(texDiffK.x) + abs(texDiffK.y)) > 0.0f && _lightList.size() > 0 && _lightList.front()->GetSource()->GetType() == D3DLIGHT_DIRECTIONAL) { - D3DXVECTOR3 norm = (*iter)->GetActor()->vec1(); - D3DXVECTOR3 lightDir = _lightList.front()->GetSource()->GetDir(); + glm::vec3 norm = (*iter)->GetActor()->vec1(); + glm::vec3 lightDir = _lightList.front()->GetSource()->GetDir(); float dot = D3DXVec3Dot(&norm, &ZVector); if (dot < 0.99f) { (*iter)->GetActor()->LocalToWorldNorm(norm, norm); - D3DXVECTOR3 right = (*iter)->GetActor()->GetWorldRight(); - D3DXVECTOR3 binormal; + glm::vec3 right = (*iter)->GetActor()->GetWorldRight(); + glm::vec3 binormal; D3DXVec3Cross(&binormal, &right, &ZVector); float d1 = D3DXVec3Dot(&binormal, &norm); @@ -2484,15 +2484,15 @@ void GraphManager::BuildOctree() _actorManager->RebuildOctree(aabb); _actorManager->BuildPlanar(osColorPlanarRefl); - _groundAABB = AABB(D3DXVECTOR3(300.0f + aabb.GetSizes().x, 300.0f + aabb.GetSizes().y, 0.0f)); - _groundAABB.Offset(D3DXVECTOR3(aabb.GetCenter().x, aabb.GetCenter().y, 0.0f)); + _groundAABB = AABB(glm::vec3(300.0f + aabb.GetSizes().x, 300.0f + aabb.GetSizes().y, 0.0f)); + _groundAABB.Offset(glm::vec3(aabb.GetCenter().x, aabb.GetCenter().y, 0.0f)); UpdateWaterPlane(); UpdateGrassPlane(); UpdateFogPlane(); } -D3DXVECTOR3 GraphManager::ScreenToWorld(const lsl::Point& coord, const float z) +glm::vec3 GraphManager::ScreenToWorld(const lsl::Point& coord, const float z) { LSL_ASSERT(_camera); @@ -2500,7 +2500,7 @@ D3DXVECTOR3 GraphManager::ScreenToWorld(const lsl::Point& coord, const float z) float width = static_cast(GetWndRect().Width()); float height = static_cast(GetWndRect().Height()); - D3DXVECTOR3 screenVec(coord.x / width, coord.y / height, 0); + glm::vec3 screenVec(coord.x / width, coord.y / height, 0); //Приводим к диапазону [-1, 1] screenVec = screenVec * 2 - IdentityVector; screenVec.z = z; @@ -2518,19 +2518,19 @@ D3DXVECTOR3 GraphManager::ScreenToWorld(const lsl::Point& coord, const float z) float width = static_cast(GetWndWidth()); float height = static_cast(GetWndHeight()); - D3DXVECTOR3 screenVec(coord.x / width * viewPort.Width, coord.y / height * viewPort.Height, z); + glm::vec3 screenVec(coord.x / width * viewPort.Width, coord.y / height * viewPort.Height, z); D3DXVec3Unproject(&screenVec, &screenVec, &viewPort, &_camera->GetContextInfo().GetProjMat(), &_camera->GetContextInfo().GetViewMat(), &IdentityMatrix); return screenVec;*/ } -lsl::Point GraphManager::WorldToScreen(const D3DXVECTOR3& coord) +lsl::Point GraphManager::WorldToScreen(const glm::vec3& coord) { return lsl::Point(0, 0); } -void GraphManager::ScreenToRay(const lsl::Point& coord, D3DXVECTOR3& rayStart, D3DXVECTOR3& rayVec) +void GraphManager::ScreenToRay(const lsl::Point& coord, glm::vec3& rayStart, glm::vec3& rayVec) { LSL_ASSERT(_camera); @@ -2539,10 +2539,10 @@ void GraphManager::ScreenToRay(const lsl::Point& coord, D3DXVECTOR3& rayStart, D D3DXVec3Normalize(&rayVec, &rayVec); } -bool GraphManager::ScreenPixelRayCastWithPlaneXY(const lsl::Point& coord, D3DXVECTOR3& outVec) +bool GraphManager::ScreenPixelRayCastWithPlaneXY(const lsl::Point& coord, glm::vec3& outVec) { - D3DXVECTOR3 rayStart; - D3DXVECTOR3 rayVec; + glm::vec3 rayStart; + glm::vec3 rayVec; ScreenToRay(coord, rayStart, rayVec); return RayCastIntersectPlane(rayStart, rayVec, ZPlane, outVec); @@ -2882,14 +2882,14 @@ void GraphManager::SetCloudHeight(float value) if (_fogPlane) { - D3DXVECTOR3 pos = _fogPlane->GetPos(); + glm::vec3 pos = _fogPlane->GetPos(); pos.z = _cloudHeight; _fogPlane->SetPos(pos); } if (_fogPlaneActor) { - D3DXVECTOR3 pos = _fogPlaneActor->GetPos(); + glm::vec3 pos = _fogPlaneActor->GetPos(); pos.z = _cloudHeight; _fogPlaneActor->SetPos(pos); } @@ -2908,12 +2908,12 @@ void GraphManager::SetCamera(graph::Camera* value) _gui->SetCamera3d(value); } -const D3DXVECTOR3& GraphManager::GetCubeViewPos() const +const glm::vec3& GraphManager::GetCubeViewPos() const { return _cubeViewPos; } -void GraphManager::SetCubeViewPos(const D3DXVECTOR3& value) +void GraphManager::SetCubeViewPos(const glm::vec3& value) { _cubeViewPos = value; } @@ -2923,7 +2923,7 @@ const GraphManager::OrthoTarget& GraphManager::GetOrthoTarget() const return _orthoTarget; } -void GraphManager::SetOrthoTarget(const D3DXVECTOR3& pos, float size) +void GraphManager::SetOrthoTarget(const glm::vec3& pos, float size) { _orthoTarget.pos = pos; _orthoTarget.size = size; diff --git a/src/Rock3dEngine/source/graph/ActorManager.cpp b/src/Rock3dEngine/source/graph/ActorManager.cpp index 851c26a0..bfbebca7 100644 --- a/src/Rock3dEngine/source/graph/ActorManager.cpp +++ b/src/Rock3dEngine/source/graph/ActorManager.cpp @@ -137,17 +137,17 @@ ActorManager::CameraCache::iterator ActorManager::CameraCull(const graph::Camera return iterCamera; } -bool ActorManager::PullInRayTargetGroup(User* user, unsigned scene, const graph::CameraCI* camera, const D3DXVECTOR3& rayTarget, float rayTargetSize) +bool ActorManager::PullInRayTargetGroup(User* user, unsigned scene, const graph::CameraCI* camera, const glm::vec3& rayTarget, float rayTargetSize) { RayUsers::iterator iter = _rayUsers.find(user); if (iter != _rayUsers.end()) iter->second.draw = true; - D3DXVECTOR3 vec3; + glm::vec3 vec3; D3DXVec3TransformCoord(&vec3, &rayTarget, &camera->GetViewProj()); vec3.z = 0.0f; D3DXVec3TransformCoord(&vec3, &vec3, &camera->GetInvViewProj()); - D3DXVECTOR3 ray = rayTarget - vec3; + glm::vec3 ray = rayTarget - vec3; float rayLen = D3DXVec3Length(&ray); D3DXVec3Normalize(&ray, &ray); @@ -317,7 +317,7 @@ const ActorManager::Planar& ActorManager::GetPlanar(Actor* actor) { const D3DXPLANE& testPlane = iter->plane; float dist = abs(testPlane.d - plane.d); - float angle = abs(D3DXPlaneDotNormal(&testPlane, &D3DXVECTOR3(plane))); + float angle = abs(D3DXPlaneDotNormal(&testPlane, &glm::vec3(plane))); if (dist < 0.5f && angle > 0.99f //&& (planarIter == _planars.end() || @@ -343,7 +343,7 @@ const ActorManager::Planar& ActorManager::GetPlanar(Actor* actor) return _planars.back(); } -void ActorManager::PullRayUsers(unsigned scene, const graph::CameraCI* camera, const D3DXVECTOR3& rayTarget, float rayTargetSize) +void ActorManager::PullRayUsers(unsigned scene, const graph::CameraCI* camera, const glm::vec3& rayTarget, float rayTargetSize) { const Frustum& frustum = camera->GetFrustum(); CameraCache::iterator iterCamera = CameraCull(camera); diff --git a/src/Rock3dEngine/source/graph/ContextInfo.cpp b/src/Rock3dEngine/source/graph/ContextInfo.cpp index 8a0746ef..865df519 100644 --- a/src/Rock3dEngine/source/graph/ContextInfo.cpp +++ b/src/Rock3dEngine/source/graph/ContextInfo.cpp @@ -86,7 +86,7 @@ glm::vec2 CameraCI::ViewToProj(const glm::vec2& coord, const glm::vec2& viewSize float width = static_cast(GetWndWidth()); float height = static_cast(GetWndHeight()); - D3DXVECTOR3 screenVec(coord.x / width * viewPort.Width, coord.y / height * viewPort.Height, z); + glm::vec3 screenVec(coord.x / width * viewPort.Width, coord.y / height * viewPort.Height, z); D3DXVec3Unproject(&screenVec, &screenVec, &viewPort, &_curCamera->GetContextInfo().GetProjMat(), &_curCamera->GetContextInfo().GetViewMat(), &IdentityMatrix); @@ -153,14 +153,14 @@ unsigned CameraCI::IdState() const enum Intersect {fiOutside, fiIntersect, fiInside}; -Intersect FrustumAABBIntersect(const Frustum& frustum, bool incZ, const AABB& aabb, D3DXVECTOR3& vMin, D3DXVECTOR3& vMax) +Intersect FrustumAABBIntersect(const Frustum& frustum, bool incZ, const AABB& aabb, glm::vec3& vMin, glm::vec3& vMax) { Intersect ret = fiInside; int ePlane = incZ ? 6 : 4; for (int i = 0; i < ePlane; ++i) { - D3DXVECTOR3 normal(frustum.planes[i].a, frustum.planes[i].b, frustum.planes[i].c); + glm::vec3 normal(frustum.planes[i].a, frustum.planes[i].b, frustum.planes[i].c); // X axis if (normal.x > 0) @@ -207,7 +207,7 @@ Intersect FrustumAABBIntersect(const Frustum& frustum, bool incZ, const AABB& aa return ret; } -bool LineCastIntersPlane(const D3DXVECTOR3& rayStart, const D3DXVECTOR3& rayVec, const D3DXPLANE& plane, float& outT) +bool LineCastIntersPlane(const glm::vec3& rayStart, const glm::vec3& rayVec, const D3DXPLANE& plane, float& outT) { const float EPSILON = 1.0e-10f; @@ -220,7 +220,7 @@ bool LineCastIntersPlane(const D3DXVECTOR3& rayStart, const D3DXVECTOR3& rayVec, return false; } -unsigned PlaneBBIntersect(const BoundBox& bb, const D3DXPLANE& plane, D3DXVECTOR3 points[]) +unsigned PlaneBBIntersect(const BoundBox& bb, const D3DXPLANE& plane, glm::vec3 points[]) { //конечные вершины ребер для каждого вертекса const int lines[12][2] = {{0, 1}, {1, 2}, {2, 3}, {3, 0}, {4, 5}, {5, 6}, {6, 7}, {7, 4}, {0, 4}, {1, 5}, {2, 6}, {3, 7}}; @@ -229,10 +229,10 @@ unsigned PlaneBBIntersect(const BoundBox& bb, const D3DXPLANE& plane, D3DXVECTOR for (int i = 0; i < 12; ++i) { - D3DXVECTOR3 v1 = bb.v[lines[i][0]]; - D3DXVECTOR3 v2 = bb.v[lines[i][1]]; + glm::vec3 v1 = bb.v[lines[i][0]]; + glm::vec3 v2 = bb.v[lines[i][1]]; - D3DXVECTOR3 vec = v2 - v1; + glm::vec3 vec = v2 - v1; float vec3Len = D3DXVec3Length(&vec); D3DXVec3Normalize(&vec, &vec); float dist; @@ -249,7 +249,7 @@ unsigned PlaneBBIntersect(const BoundBox& bb, const D3DXPLANE& plane, D3DXVECTOR return res; } -unsigned PlaneAABBIntersect(const AABB& aabb, const D3DXPLANE& plane, D3DXVECTOR3 points[]) +unsigned PlaneAABBIntersect(const AABB& aabb, const D3DXPLANE& plane, glm::vec3 points[]) { BoundBox bb(aabb); @@ -283,8 +283,8 @@ bool CameraCI::ComputeZBounds(const AABB& aabb, float& minZ, float& maxZ) const } //поиск через лучи из направляющих ребер фрустума - D3DXVECTOR3 rayVec[4] = {D3DXVECTOR3(-1.0f, -1.0f, 1.0f), D3DXVECTOR3(1.0f, -1.0f, 1.0f), D3DXVECTOR3(-1.0f, 1.0f, 1.0f), D3DXVECTOR3(1.0f, 1.0f, 1.0f)}; - D3DXVECTOR3 rayPos[4] = {D3DXVECTOR3(-1.0f, -1.0f, 0.0f), D3DXVECTOR3(1.0f, -1.0f, 0.0f), D3DXVECTOR3(-1.0f, 1.0f, 0.0f), D3DXVECTOR3(1.0f, 1.0f, 0.0f)}; + glm::vec3 rayVec[4] = {glm::vec3(-1.0f, -1.0f, 1.0f), glm::vec3(1.0f, -1.0f, 1.0f), glm::vec3(-1.0f, 1.0f, 1.0f), glm::vec3(1.0f, 1.0f, 1.0f)}; + glm::vec3 rayPos[4] = {glm::vec3(-1.0f, -1.0f, 0.0f), glm::vec3(1.0f, -1.0f, 0.0f), glm::vec3(-1.0f, 1.0f, 0.0f), glm::vec3(1.0f, 1.0f, 0.0f)}; for (int i = 0; i < 4; ++i) { @@ -310,13 +310,13 @@ bool CameraCI::ComputeZBounds(const AABB& aabb, float& minZ, float& maxZ) const //поиск пересечений aabb с фрустумом /*D3DXPLANE nearPlane; D3DXPlaneFromPointNormal(&nearPlane, &NullVector, &ZVector); - D3DXVECTOR3 points[4]; + glm::vec3 points[4]; unsigned numPoints = PlaneBBIntersect(projBox, nearPlane, points); for (unsigned i = 0; i < numPoints; ++i) { if (abs(points[i].x) < 1.1f && abs(points[i].y) < 1.1f) { - D3DXVECTOR3 vec; + glm::vec3 vec; D3DXVec3TransformCoord(&vec, &points[i], &GetInvProj()); if (vec.z < minZ || !res) @@ -332,7 +332,7 @@ bool CameraCI::ComputeZBounds(const AABB& aabb, float& minZ, float& maxZ) const const Frustum& frustum = GetFrustum(); for (int i = 0; i < 4; ++i) { - D3DXVECTOR3 points[4]; + glm::vec3 points[4]; unsigned numPnt = PlaneAABBIntersect(aabb, frustum.planes[i], points); for (int j = 0; j < 4; ++j) @@ -424,19 +424,19 @@ void CameraCI::SetProjMat(const D3DXMATRIX& value) ProjMatChanged(); } -D3DXVECTOR3 CameraCI::ScreenToWorld(const glm::vec2& coord, float z, const glm::vec2& viewSize) const +glm::vec3 CameraCI::ScreenToWorld(const glm::vec2& coord, float z, const glm::vec2& viewSize) const { glm::vec2 projCoord = ViewToProj(coord, viewSize); - D3DXVECTOR3 screenVec(projCoord.x, projCoord.y, z); + glm::vec3 screenVec(projCoord.x, projCoord.y, z); //Переводим в мировое пространство(домножая на инв. матрицу), что соотв. точке на near плоскости камеры D3DXVec3TransformCoord(&screenVec, &screenVec, &GetInvViewProj()); return screenVec; } -glm::vec2 CameraCI::WorldToScreen(const D3DXVECTOR3& coord, const glm::vec2& viewSize) const +glm::vec2 CameraCI::WorldToScreen(const glm::vec3& coord, const glm::vec2& viewSize) const { - D3DXVECTOR3 screenVec; + glm::vec3 screenVec; D3DXVec3TransformCoord(&screenVec, &coord, &GetViewProj()); glm::vec2 vec(screenVec.x, screenVec.y); diff --git a/src/Rock3dEngine/source/graph/Engine.cpp b/src/Rock3dEngine/source/graph/Engine.cpp index 57dbf43b..c8953afb 100644 --- a/src/Rock3dEngine/source/graph/Engine.cpp +++ b/src/Rock3dEngine/source/graph/Engine.cpp @@ -199,10 +199,10 @@ void Engine::InitResources() { res::VertexPT vertBuf[4] = { - res::VertexPT(D3DXVECTOR3(0.5f, -0.5f, 0.0f), glm::vec2(1, 1)), - res::VertexPT(D3DXVECTOR3(0.5f, 0.5f, 0.0f), glm::vec2(1, 0)), - res::VertexPT(D3DXVECTOR3(-0.5f, -0.5f, 0.0f), glm::vec2(0, 1)), - res::VertexPT(D3DXVECTOR3(-0.5f, 0.5f, 0.0f), glm::vec2(0, 0)) + res::VertexPT(glm::vec3(0.5f, -0.5f, 0.0f), glm::vec2(1, 1)), + res::VertexPT(glm::vec3(0.5f, 0.5f, 0.0f), glm::vec2(1, 0)), + res::VertexPT(glm::vec3(-0.5f, -0.5f, 0.0f), glm::vec2(0, 1)), + res::VertexPT(glm::vec3(-0.5f, 0.5f, 0.0f), glm::vec2(0, 0)) }; res::VertexData* data = _meshPlanePT.GetOrCreateData(); @@ -503,7 +503,7 @@ void Engine::RenderPlanePT() while (!EndDraw(true)); } -void Engine::RenderSpritePT(const D3DXVECTOR3& pos, const D3DXVECTOR3& scale, float turnAngle, const D3DXVECTOR3* fixDirection, const D3DXMATRIX& localMat) +void Engine::RenderSpritePT(const glm::vec3& pos, const glm::vec3& scale, float turnAngle, const glm::vec3* fixDirection, const D3DXMATRIX& localMat) { const CameraCI& camera = GetContext().GetCamera(); @@ -511,10 +511,10 @@ void Engine::RenderSpritePT(const D3DXVECTOR3& pos, const D3DXVECTOR3& scale, fl //Направленный спрайт if (fixDirection) { - D3DXVECTOR3 xVec = *fixDirection; + glm::vec3 xVec = *fixDirection; //Видовой вектор - D3DXVECTOR3 viewVec; + glm::vec3 viewVec; switch (GetContext().GetCamera().GetDesc().style) { case csPerspective: @@ -528,11 +528,11 @@ void Engine::RenderSpritePT(const D3DXVECTOR3& pos, const D3DXVECTOR3& scale, fl } // - D3DXVECTOR3 yVec; + glm::vec3 yVec; D3DXVec3Cross(&yVec, &xVec, &viewVec); D3DXVec3Normalize(&yVec, &yVec); // - D3DXVECTOR3 zVec; + glm::vec3 zVec; D3DXVec3Cross(&zVec, &xVec, &yVec); MatrixRotationFromAxis(xVec, yVec, zVec, rotMat); diff --git a/src/Rock3dEngine/source/graph/FogPlane.cpp b/src/Rock3dEngine/source/graph/FogPlane.cpp index 1c533a94..8271fc65 100644 --- a/src/Rock3dEngine/source/graph/FogPlane.cpp +++ b/src/Rock3dEngine/source/graph/FogPlane.cpp @@ -44,7 +44,7 @@ void FogPlane::DoRender(graph::Engine& engine) if (_cloudsMat) _cloudsMat->Apply(engine); - D3DXVECTOR3 fogParamsVec = D3DXVECTOR3(0, 1, (float)engine.GetContext().GetRenderState(rsFogEnable)); + glm::vec3 fogParamsVec = glm::vec3(0, 1, (float)engine.GetContext().GetRenderState(rsFogEnable)); if (fogParamsVec.z != 0) { DWORD dwVal = engine.GetContext().GetRenderState(rsFogStart); diff --git a/src/Rock3dEngine/source/graph/FxManager.cpp b/src/Rock3dEngine/source/graph/FxManager.cpp index ca0bbf52..14b04b83 100644 --- a/src/Rock3dEngine/source/graph/FxManager.cpp +++ b/src/Rock3dEngine/source/graph/FxManager.cpp @@ -59,12 +59,12 @@ void FxParticle::TransformChanged() _aabbChanged = true; } -const D3DXVECTOR3& FxParticle::GetPos() +const glm::vec3& FxParticle::GetPos() { return _pos; } -void FxParticle::SetPos(const D3DXVECTOR3& value) +void FxParticle::SetPos(const glm::vec3& value) { _pos = value; TransformChanged(); @@ -81,12 +81,12 @@ void FxParticle::SetRot(const glm::quat& value) TransformChanged(); } -const D3DXVECTOR3& FxParticle::GetScale() +const glm::vec3& FxParticle::GetScale() { return _scale; } -void FxParticle::SetScale(const D3DXVECTOR3& value) +void FxParticle::SetScale(const glm::vec3& value) { _scale = value; TransformChanged(); @@ -231,12 +231,12 @@ void FxEmitter::ClearParticles(FxParticleGroup* group) DelParticle(group, group->begin(), group->end()); } -float FxEmitter::CheckTimeCreateQuery(D3DXVECTOR3& offPos) +float FxEmitter::CheckTimeCreateQuery(glm::vec3& offPos) { return 0.0f; } -float FxEmitter::CheckDistCreateQuery(D3DXVECTOR3& offPos) +float FxEmitter::CheckDistCreateQuery(glm::vec3& offPos) { return 0.0f; } @@ -265,8 +265,8 @@ void FxEmitter::UpdateParticle(FxParticle* value, float dTime, bool init) { if (init) { - D3DXVECTOR3 pos = _particleDesc.startPos.GetValue(); - D3DXVECTOR3 scale = _particleDesc.startScale.GetValue(); + glm::vec3 pos = _particleDesc.startPos.GetValue(); + glm::vec3 scale = _particleDesc.startScale.GetValue(); glm::quat rot = _particleDesc.startRot.GetValue(); pos += _particleDesc.rangePos.GetValue(CompRangeFrame(value->index)); @@ -290,7 +290,7 @@ void FxEmitter::UpdateGroup(FxParticleGroup* group, float dTime, bool init) { } -void FxEmitter::QueryCreateParticles(unsigned num, float deltaTime, const D3DXVECTOR3& offPos) +void FxEmitter::QueryCreateParticles(unsigned num, float deltaTime, const glm::vec3& offPos) { LSL_ASSERT(_particleDesc.maxNum == 0 || _particleDesc.maxNum >= _cntParticles); @@ -349,7 +349,7 @@ void FxEmitter::QueryCreateParticles(unsigned num, float deltaTime, const D3DXVE } } -void FxEmitter::QueryCreateGroup(float deltaTime, const D3DXVECTOR3& offPos) +void FxEmitter::QueryCreateGroup(float deltaTime, const glm::vec3& offPos) { //Текущая плотность частиц _curDensParticle = _curDensParticle + _particleDesc.density.GetValue(); @@ -366,7 +366,7 @@ void FxEmitter::QueryCreateGroup(float deltaTime, const D3DXVECTOR3& offPos) AABB FxEmitter::LocalDimensions() const { - D3DXVECTOR3 dimens = IdentityVector / 2 * _particleDesc.startScale.GetMax(); + glm::vec3 dimens = IdentityVector / 2 * _particleDesc.startScale.GetMax(); AABB res(_particleDesc.startPos.GetMin() - dimens, _particleDesc.startPos.GetMax() + dimens); return res; @@ -419,7 +419,7 @@ if (!_modeFading) //оставание более чем в 20 раз недопустимо float dTime = std::min(_curTime - _nextTimeCreate, startTime.GetMax() * 20.0f); - D3DXVECTOR3 dPos = _lastPosQGroup - (_worldCoordSys ? _owner->GetWorldPos() : _owner->GetPos()); + glm::vec3 dPos = _lastPosQGroup - (_worldCoordSys ? _owner->GetWorldPos() : _owner->GetPos()); float dPosTime = std::max(_curTime - _lastTimeQGroup, dTime); unsigned numPart = 0; @@ -438,13 +438,13 @@ if (!_modeFading) if (!_groupList.Empty()) { FxParticle* particle = _groupList.back()->back(); - D3DXVECTOR3 pos = GetLocalPos(particle); - D3DXVECTOR3 dist = pos; + glm::vec3 pos = GetLocalPos(particle); + glm::vec3 dist = pos; float distLen = D3DXVec3Length(&dist); //оставание более чем в 20 раз недопустимо float dDist = std::min(distLen - _nextDistCreate, _particleDesc.startTime.GetMax() * 20.0f); - D3DXVECTOR3 dPos = _lastPosQGroup - (_worldCoordSys ? _owner->GetWorldPos() : _owner->GetPos()); + glm::vec3 dPos = _lastPosQGroup - (_worldCoordSys ? _owner->GetWorldPos() : _owner->GetPos()); float dTime = _curTime - _lastTimeQGroup; while (dDist > 0.0f) @@ -573,18 +573,18 @@ void FxEmitter::SetModeFading(bool value) _modeFading = value; } -D3DXVECTOR3 FxEmitter::GetLocalPos(FxParticle* particle) const +glm::vec3 FxEmitter::GetLocalPos(FxParticle* particle) const { - D3DXVECTOR3 res = particle->GetPos(); + glm::vec3 res = particle->GetPos(); if (_worldCoordSys) _owner->WorldToLocalCoord(res, res); return res; } -D3DXVECTOR3 FxEmitter::GetWorldPos(FxParticle* particle) const +glm::vec3 FxEmitter::GetWorldPos(FxParticle* particle) const { - D3DXVECTOR3 res = particle->GetPos(); + glm::vec3 res = particle->GetPos(); if (!_worldCoordSys) _owner->LocalToWorldCoord(res, res); @@ -867,12 +867,12 @@ void FxParticleSystem::SetModeFading(bool value) (*iter)->SetModeFading(value); } -const D3DXVECTOR3& FxParticleSystem::GetSrcSpeed() const +const glm::vec3& FxParticleSystem::GetSrcSpeed() const { return _srcSpeed; } -void FxParticleSystem::SetSrcSpeed(const D3DXVECTOR3& value) +void FxParticleSystem::SetSrcSpeed(const glm::vec3& value) { _srcSpeed = value; } @@ -952,9 +952,9 @@ struct VertexPSize static const DWORD fvf = D3DFVF_XYZ | D3DFVF_PSIZE; VertexPSize() {}; - VertexPSize(const D3DXVECTOR3& mPos, float mSize): pos(mPos), size(mSize) {} + VertexPSize(const glm::vec3& mPos, float mSize): pos(mPos), size(mSize) {} - D3DXVECTOR3 pos; + glm::vec3 pos; float size; }; @@ -1033,14 +1033,14 @@ void FxSpritesManager::RenderGroup(graph::Engine& engine, FxEmitter* emitter, Fx if (dirSprite) { - D3DXVECTOR3 dir; + glm::vec3 dir; Vec3Rotate(XVector, particle->GetRot(), dir); engine.RenderSpritePT(emitter->GetWorldPos(particle), particle->GetScale(), 0, &dir, IdentityMatrix); } else { - D3DXVECTOR3 axe = Vec3GlmToDx(glm::axis(particle->GetRot())); + glm::vec3 axe = Vec3GlmToDx(glm::axis(particle->GetRot())); float angle = glm::angle(particle->GetRot()); engine.RenderSpritePT(emitter->GetWorldPos(particle), particle->GetScale(), angle, 0, IdentityMatrix); @@ -1062,7 +1062,7 @@ void FxPlaneManager::RenderGroup(graph::Engine& engine, FxEmitter* emitter, FxPa { FxParticle* particle = *iter; - D3DXVECTOR3 axe = Vec3GlmToDx(glm::axis(particle->GetRot())); + glm::vec3 axe = Vec3GlmToDx(glm::axis(particle->GetRot())); float angle = glm::angle(particle->GetRot()); D3DXMATRIX worldMat = particle->GetMatrix() * emitter->GetMatrix(); @@ -1112,9 +1112,9 @@ FxTrailManager::~FxTrailManager() { } -void FxTrailManager::BuildVertexLine(res::VertexPT* vertex, const D3DXVECTOR3& pos, const D3DXVECTOR3& dir, const D3DXVECTOR3& camPos, float xTex) +void FxTrailManager::BuildVertexLine(res::VertexPT* vertex, const glm::vec3& pos, const glm::vec3& dir, const glm::vec3& camPos, float xTex) { - D3DXVECTOR3 yVec; + glm::vec3 yVec; if (fixedUp) { @@ -1123,7 +1123,7 @@ void FxTrailManager::BuildVertexLine(res::VertexPT* vertex, const D3DXVECTOR3& p } else { - D3DXVECTOR3 viewVec = pos - camPos; + glm::vec3 viewVec = pos - camPos; D3DXVec3Normalize(&viewVec, &viewVec); D3DXVec3Cross(&yVec, &dir, &viewVec); @@ -1168,30 +1168,30 @@ void FxTrailManager::RenderEmitter(graph::Engine& engine, FxEmitter* emitter) engine.GetContext().SetWorldMat(emitter->GetMatrix()); - D3DXVECTOR3 camPos = engine.GetContext().GetCamera().GetDesc().pos; + glm::vec3 camPos = engine.GetContext().GetCamera().GetDesc().pos; float xTex = 0; VertexPT* vertexBuf = new VertexPT[cntParticle * 2]; VertexPT* vertex = vertexBuf; // - D3DXVECTOR3 worldPos = emitter->GetWorldCoordSys() ? system->GetWorldPos() : NullVector; + glm::vec3 worldPos = emitter->GetWorldCoordSys() ? system->GetWorldPos() : NullVector; //Вычисление начального направления EmitterGroups::const_iterator iter1 = groups.begin(); FxParticleGroup::const_iterator iterPart1 = (*iter1)->begin(); - D3DXVECTOR3 pos1 = (*iterPart1)->GetPos(); - D3DXVECTOR3 pos2; + glm::vec3 pos1 = (*iterPart1)->GetPos(); + glm::vec3 pos2; if (++iterPart1 != (*iter1)->end()) pos2 = (*iterPart1)->GetPos(); else if (++iter1 != groups.end()) pos2 = (*iter1)->front()->GetPos(); else pos2 = worldPos; - D3DXVECTOR3 dir = pos2 - pos1; + glm::vec3 dir = pos2 - pos1; D3DXVec3Normalize(&dir, &dir); //Последняя позиция для вычисления направления - D3DXVECTOR3 lastPos = pos1 - dir; + glm::vec3 lastPos = pos1 - dir; //Последняя частица которая была отрисована unsigned lastPartDraw = 0; @@ -1206,7 +1206,7 @@ void FxTrailManager::RenderEmitter(graph::Engine& engine, FxEmitter* emitter) for (FxParticleGroup::const_iterator iterPart = group->begin(); iterPart != group->end(); ++iterPart) { FxParticle* particle = *iterPart; - D3DXVECTOR3 pos = particle->GetPos(); + glm::vec3 pos = particle->GetPos(); //Строим линию из двух вершин BuildVertexLine(vertex, pos, dir, camPos, xTex); @@ -1303,7 +1303,7 @@ void FxFlowEmitter::UpdateParticle(FxParticle* value, float dTime, bool init) GetSystem()->LocalToWorldNorm(particle->acceleration, particle->acceleration); } - D3DXVECTOR3 srcSpeed = GetSystem()->GetSrcSpeed(); + glm::vec3 srcSpeed = GetSystem()->GetSrcSpeed(); if (GetWorldCoordSys() && GetSystem()->GetParent()) GetSystem()->GetParent()->LocalToWorldNorm(srcSpeed, srcSpeed); @@ -1313,12 +1313,12 @@ void FxFlowEmitter::UpdateParticle(FxParticle* value, float dTime, bool init) if (dTime != 0.0f) { //dS = (V + a * t) * dt - D3DXVECTOR3 speed = particle->speedPos + (particle->acceleration + _flowDesc.gravitation) * particle->time; + glm::vec3 speed = particle->speedPos + (particle->acceleration + _flowDesc.gravitation) * particle->time; particle->SetPos(particle->GetPos() + speed * dTime); if (_flowDesc.autoRot) { - D3DXVECTOR3 dir; + glm::vec3 dir; D3DXVec3Normalize(&dir, &speed); glm::quat rot; QuatShortestArc(XVector, dir, rot); @@ -1417,7 +1417,7 @@ void FxPhysicsEmitter::UpdateParticle(FxParticle* value, float dTime, bool init) particle->pxActor.SetScene(_pxScene); particle->pxActor.SetPos(particle->GetPos()); - //particle->pxActor.GetNxActor()->addForceAtPos(NxVec3(D3DXVECTOR3(1.0f, 0, 1.0f) * 4000), NxVec3(((_mesh->GetMeshData()->vb.GetMinPos() + _mesh->GetMeshData()->vb.GetMaxPos()) / 2) + GetPos())); + //particle->pxActor.GetNxActor()->addForceAtPos(NxVec3(glm::vec3(1.0f, 0, 1.0f) * 4000), NxVec3(((_mesh->GetMeshData()->vb.GetMinPos() + _mesh->GetMeshData()->vb.GetMaxPos()) / 2) + GetPos())); } else { diff --git a/src/Rock3dEngine/source/graph/GrassField.cpp b/src/Rock3dEngine/source/graph/GrassField.cpp index ee7c7bf5..f2424512 100644 --- a/src/Rock3dEngine/source/graph/GrassField.cpp +++ b/src/Rock3dEngine/source/graph/GrassField.cpp @@ -37,13 +37,13 @@ void GrassField::BuildField() //Общее число спрайтов int maxSprites = numX * numY; //Шаг размещения - D3DXVECTOR3 step(_fieldWidth/numX, _fieldHeight/numY, 0.0f); + glm::vec3 step(_fieldWidth/numX, _fieldHeight/numY, 0.0f); //Заполняем - std::vector mapPos(maxSprites); + std::vector mapPos(maxSprites); int ind = 0; for (int i = -Floor(numX/2.0f); i < Ceil(numX/2.0f) - 1; ++i) for (int j = -Floor(numY/2.0f); j < Ceil(numY/2.0f) - 1; ++j, ++ind) - mapPos[ind] = D3DXVECTOR3(step.x/2 + i * step.x, step.y/2 + j * step.y, step.z); + mapPos[ind] = glm::vec3(step.x/2 + i * step.x, step.y/2 + j * step.y, step.z); std::random_shuffle(mapPos.begin(), mapPos.end()); //Суммарный вес @@ -78,7 +78,7 @@ void GrassField::BuildField() int ind = (spriteOff + k); int vert = ind * 6; - D3DXVECTOR3 pos(mapPos[ind]); + glm::vec3 pos(mapPos[ind]); pos.x += _disp * Random(); pos.y += _disp * Random(); @@ -112,7 +112,7 @@ void GrassField::BuildField() void GrassField::DrawField(graph::Engine& engine, const Field& field) { - AABB aabb(D3DXVECTOR3(_fieldWidth, _fieldHeight, 2.0f)); + AABB aabb(glm::vec3(_fieldWidth, _fieldHeight, 2.0f)); aabb.Offset(field.pos); aabb.Transform(GetWorldMat()); if (engine.GetContext().GetCamera().GetFrustum().ContainsAABB(aabb) == Frustum::scNoOverlap) @@ -162,7 +162,7 @@ void GrassField::Rebuild() for (int j = 0; j < fieldNumY; ++j) { int ind = i * fieldNumY + j; - _fieldList[ind].pos = D3DXVECTOR3((i + 0.5f) * _fieldWidth - _width / 2.0f, (j + 0.5f) * _fieldHeight - _height / 2.0f, 0.0f); + _fieldList[ind].pos = glm::vec3((i + 0.5f) * _fieldWidth - _width / 2.0f, (j + 0.5f) * _fieldHeight - _height / 2.0f, 0.0f); } BuildField(); @@ -170,7 +170,7 @@ void GrassField::Rebuild() AABB GrassField::LocalDimensions() const { - return AABB(D3DXVECTOR3(GetWidth(), GetHeight(), 2.0f)); + return AABB(glm::vec3(GetWidth(), GetHeight(), 2.0f)); } void GrassField::DoRender(graph::Engine& engine) @@ -185,7 +185,7 @@ void GrassField::DoRender(graph::Engine& engine) engine.GetContext().SetRenderState(graph::rsAlphaFunc, D3DCMP_GREATEREQUAL); engine.GetContext().SetRenderState(graph::rsAlphaTestEnable, true); - D3DXVECTOR3 fogParamsVec = D3DXVECTOR3(0, 1, (float)engine.GetContext().GetRenderState(rsFogEnable)); + glm::vec3 fogParamsVec = glm::vec3(0, 1, (float)engine.GetContext().GetRenderState(rsFogEnable)); if (fogParamsVec.z != 0) { DWORD dwVal = engine.GetContext().GetRenderState(rsFogStart); diff --git a/src/Rock3dEngine/source/graph/MappingShaders.cpp b/src/Rock3dEngine/source/graph/MappingShaders.cpp index 9072ced0..bb9cba66 100644 --- a/src/Rock3dEngine/source/graph/MappingShaders.cpp +++ b/src/Rock3dEngine/source/graph/MappingShaders.cpp @@ -156,7 +156,7 @@ void LightShader::DoBeginDraw(Engine& engine) engine.GetContext().SetRenderState(rsSrcBlend, D3DBLEND_ONE); } - D3DXVECTOR3 fogParamsVec = D3DXVECTOR3(0, 1, (float)engine.GetContext().GetRenderState(rsFogEnable)); + glm::vec3 fogParamsVec = glm::vec3(0, 1, (float)engine.GetContext().GetRenderState(rsFogEnable)); if (fogParamsVec.z != 0) { DWORD dwVal = engine.GetContext().GetRenderState(rsFogStart); @@ -198,12 +198,12 @@ bool LightShader::DoEndDraw(Engine& engine, bool nextPass) return !needNextPass; } -const D3DXVECTOR3& LightShader::GetViewPos() const +const glm::vec3& LightShader::GetViewPos() const { return _viewPos; } -void LightShader::SetViewPos(const D3DXVECTOR3& value) +void LightShader::SetViewPos(const glm::vec3& value) { _viewPos = value; } diff --git a/src/Rock3dEngine/source/graph/MaterialLibrary.cpp b/src/Rock3dEngine/source/graph/MaterialLibrary.cpp index 9f7eaa5a..bbebf9c9 100644 --- a/src/Rock3dEngine/source/graph/MaterialLibrary.cpp +++ b/src/Rock3dEngine/source/graph/MaterialLibrary.cpp @@ -32,8 +32,8 @@ const D3DXMATRIX& BaseSampler::GetMatrix(float frame) const _matFrame = frame; _matChanged = false; - D3DXVECTOR3 offset = _offset.GetValue(_matFrame); - D3DXVECTOR3 scale = _scale.GetValue(_matFrame); + glm::vec3 offset = _offset.GetValue(_matFrame); + glm::vec3 scale = _scale.GetValue(_matFrame); glm::quat rotate = _rotate.GetValue(_matFrame); _defMat = offset == NullVector && scale == IdentityVector && rotate == NullQuaternion; @@ -295,8 +295,8 @@ void Sampler2d::BuildAnimByOff(const Vec2Range& texCoord, const Point2U& tileCnt glm::vec2 stTile(texCoord.GetMin() + coordOff); glm::vec2 endTile(tileSize * (fTileCnt - IdentityVec2) + stTile); - SetScale(D3DXVECTOR3(tileSize.x, tileSize.y, 1.0f)); - SetOffset(Vec3Range(D3DXVECTOR3(stTile.x, stTile.y, 0), D3DXVECTOR3(endTile.x, endTile.y, 0), Vec3Range::vdVolume, Point3U(tileCnt.x, tileCnt.y, 1))); + SetScale(glm::vec3(tileSize.x, tileSize.y, 1.0f)); + SetOffset(Vec3Range(glm::vec3(stTile.x, stTile.y, 0), glm::vec3(endTile.x, endTile.y, 0), Vec3Range::vdVolume, Point3U(tileCnt.x, tileCnt.y, 1))); } void Sampler2d::BuildAnimByTile(const Vec2Range& texCoord, const Point2U& tileCnt, const glm::vec2& tileSize) diff --git a/src/Rock3dEngine/source/graph/OctreeSort.cpp b/src/Rock3dEngine/source/graph/OctreeSort.cpp index 3f0a6368..131fadbc 100644 --- a/src/Rock3dEngine/source/graph/OctreeSort.cpp +++ b/src/Rock3dEngine/source/graph/OctreeSort.cpp @@ -389,7 +389,7 @@ OctreeSort::OctreeSort(unsigned numGroups): cNumGroups(numGroups), _root(0), _id for (float i =-1; i < 2; i += 2.0f) for (float j =-1; j < 2; j += 2.0f) for (float k =-1; k < 2; k += 2.0f, ++numNode) - _nodeOff[numNode] = D3DXVECTOR3(i, j, k); + _nodeOff[numNode] = glm::vec3(i, j, k); } OctreeSort::~OctreeSort() @@ -411,7 +411,7 @@ void OctreeSort::BuildOctree(Node& node, const UserList& userList) return; } - D3DXVECTOR3 nodeSize = node.GetAABB().GetSizes() / 2.0f; + glm::vec3 nodeSize = node.GetAABB().GetSizes() / 2.0f; for (int i = 0; i < cOctNum; ++i) { AABB aabb(nodeSize); diff --git a/src/Rock3dEngine/source/graph/RenderToTexture.cpp b/src/Rock3dEngine/source/graph/RenderToTexture.cpp index bcee8e45..85ade260 100644 --- a/src/Rock3dEngine/source/graph/RenderToTexture.cpp +++ b/src/Rock3dEngine/source/graph/RenderToTexture.cpp @@ -177,7 +177,7 @@ void RenderToCubeTex::BeginCubeSurf(Engine& engine) LSL_ASSERT(IsBeginRT()); CameraDesc camDesc = engine.GetContext().GetCamera().GetDesc(); - //camDesc.pos = D3DXVECTOR3(0, 0, 15.0f); + //camDesc.pos = glm::vec3(0, 0, 15.0f); camDesc.pos = _viewPos; camDesc.style = csPerspective; camDesc.aspect = 1; @@ -188,33 +188,33 @@ void RenderToCubeTex::BeginCubeSurf(Engine& engine) switch(_flags.faceType) { case D3DCUBEMAP_FACE_POSITIVE_X: - camDesc.dir = D3DXVECTOR3(-1.0f, 0.0f, 0.0f ); - camDesc.up = D3DXVECTOR3( 0.0f, -1.0f, 0.0f ); + camDesc.dir = glm::vec3(-1.0f, 0.0f, 0.0f ); + camDesc.up = glm::vec3( 0.0f, -1.0f, 0.0f ); break; case D3DCUBEMAP_FACE_NEGATIVE_X: - camDesc.dir = D3DXVECTOR3(1.0f, 0.0f, 0.0f ); - camDesc.up = D3DXVECTOR3( 0.0f, -1.0f, 0.0f ); + camDesc.dir = glm::vec3(1.0f, 0.0f, 0.0f ); + camDesc.up = glm::vec3( 0.0f, -1.0f, 0.0f ); break; case D3DCUBEMAP_FACE_POSITIVE_Y: - camDesc.dir = D3DXVECTOR3( 0.0f, -1.0f, 0.0f ); - camDesc.up = D3DXVECTOR3( 0.0f, 0.0f, 1.0f ); + camDesc.dir = glm::vec3( 0.0f, -1.0f, 0.0f ); + camDesc.up = glm::vec3( 0.0f, 0.0f, 1.0f ); break; case D3DCUBEMAP_FACE_NEGATIVE_Y: - camDesc.dir = D3DXVECTOR3( 0.0f, 1.0f, 0.0f ); - camDesc.up = D3DXVECTOR3( 0.0f, 0.0f, -1.0f ); + camDesc.dir = glm::vec3( 0.0f, 1.0f, 0.0f ); + camDesc.up = glm::vec3( 0.0f, 0.0f, -1.0f ); break; case D3DCUBEMAP_FACE_POSITIVE_Z: - camDesc.dir = D3DXVECTOR3( 0.0f, 0.0f, -1.0f ); - camDesc.up = D3DXVECTOR3( 0.0f, -1.0f, 0.0f ); + camDesc.dir = glm::vec3( 0.0f, 0.0f, -1.0f ); + camDesc.up = glm::vec3( 0.0f, -1.0f, 0.0f ); break; case D3DCUBEMAP_FACE_NEGATIVE_Z: - camDesc.dir = D3DXVECTOR3( 0.0f, 0.0f, 1.0f ); - camDesc.up = D3DXVECTOR3( 0.0f, -1.0f, 0.0f ); + camDesc.dir = glm::vec3( 0.0f, 0.0f, 1.0f ); + camDesc.up = glm::vec3( 0.0f, -1.0f, 0.0f ); break; } @@ -255,12 +255,12 @@ void RenderToCubeTex::EndRT(Engine& engine) _MyBase::EndRT(engine); } -const D3DXVECTOR3& RenderToCubeTex::GetViewPos() const +const glm::vec3& RenderToCubeTex::GetViewPos() const { return _viewPos; } -void RenderToCubeTex::SetViewPos(const D3DXVECTOR3& value) +void RenderToCubeTex::SetViewPos(const glm::vec3& value) { _viewPos = value; } diff --git a/src/Rock3dEngine/source/graph/SceneManager.cpp b/src/Rock3dEngine/source/graph/SceneManager.cpp index 91df1f8f..b2525487 100644 --- a/src/Rock3dEngine/source/graph/SceneManager.cpp +++ b/src/Rock3dEngine/source/graph/SceneManager.cpp @@ -46,7 +46,7 @@ BaseSceneNode::~BaseSceneNode() _parent->GetChildren().Remove(this); ClearSceneList(); - delete _proxyList; + delete _proxyList; delete _children; #ifdef _DEBUG @@ -119,7 +119,7 @@ void BaseSceneNode::ExtractRotation(_RotationStyle style) const if (_rotInvalidate.test(style)) { ApplyTransformationChanged(); - EulerAngles eulAng; + EulerAngles eulAng; switch (style) { case rsEulerAngles: @@ -135,8 +135,8 @@ void BaseSceneNode::ExtractRotation(_RotationStyle style) const break; case rsVectors: - _direction = D3DXVECTOR3(_rotMat.m[0]); - _up = D3DXVECTOR3(_rotMat.m[2]); + _direction = glm::vec3(_rotMat.m[0]); + _up = glm::vec3(_rotMat.m[2]); break; } _rotInvalidate.reset(style); @@ -342,7 +342,7 @@ void BaseSceneNode::Save(lsl::SWriter* writer) writer->WriteValue("animMode", _animMode); writer->WriteValue("animDuration", animDuration); - writer->WriteValue("frame", frame); + writer->WriteValue("frame", frame); writer->WriteValue("speedPos", speedPos, 3); writer->WriteValue("speedScale", speedScale, 3); @@ -386,7 +386,7 @@ void BaseSceneNode::Load(lsl::SReader* reader) animMode(AnimMode(val)); reader->ReadValue("animDuration", animDuration); - reader->ReadValue("frame", frame); + reader->ReadValue("frame", frame); reader->ReadValue("speedPos", speedPos, 3); reader->ReadValue("speedScale", speedScale, 3); @@ -460,7 +460,7 @@ void BaseSceneNode::OnProgress(float deltaTime) if (autoRot) { - D3DXVECTOR3 dir; + glm::vec3 dir; D3DXVec3Normalize(&dir, &speedPos); glm::quat rot; QuatShortestArc(XVector, dir, rot); @@ -493,17 +493,17 @@ void BaseSceneNode::StructureChanged() NotifyChanged(this, 0); } -void BaseSceneNode::MoveAroundTarget(const D3DXVECTOR3& worldTarget, float pitchDelta, float turnDelta) +void BaseSceneNode::MoveAroundTarget(const glm::vec3& worldTarget, float pitchDelta, float turnDelta) { // normalT2C points away from the direction the camera is looking - D3DXVECTOR3 originalT2C = GetWorldPos() - worldTarget; - D3DXVECTOR3 normalT2C = originalT2C; + glm::vec3 originalT2C = GetWorldPos() - worldTarget; + glm::vec3 normalT2C = originalT2C; float dist = D3DXVec3Length(&normalT2C); - D3DXVec3Normalize(&normalT2C, &normalT2C); + D3DXVec3Normalize(&normalT2C, &normalT2C); // normalRight points to the camera's right // the camera is pitching around this axis. - D3DXVECTOR3 normalCameraRight; - D3DXVECTOR3 worldUp = GetWorldUp(); + glm::vec3 normalCameraRight; + glm::vec3 worldUp = GetWorldUp(); D3DXVec3Cross(&normalCameraRight, &worldUp, &normalT2C); if (D3DXVec3Length(&normalCameraRight) < 0.001f) normalCameraRight = XVector; @@ -511,7 +511,7 @@ void BaseSceneNode::MoveAroundTarget(const D3DXVECTOR3& worldTarget, float pitch D3DXVec3Normalize(&normalCameraRight, &normalCameraRight); // calculate the current pitch. // 0 is looking down and PI is looking up - float pitchNow = acos(D3DXVec3Dot(&worldUp, &normalT2C)); + float pitchNow = acos(D3DXVec3Dot(&worldUp, &normalT2C)); pitchNow = lsl::ClampValue(pitchNow + pitchDelta, 0 + 0.025f, D3DX_PI - 0.025f); // create a new vector pointing up and then rotate it down // into the new position @@ -520,17 +520,17 @@ void BaseSceneNode::MoveAroundTarget(const D3DXVECTOR3& worldTarget, float pitch normalT2C = GetWorldUp(); D3DXMatrixRotationAxis(&pitchMat, &normalCameraRight, pitchNow); - D3DXMatrixRotationAxis(&turnMat, &worldUp, -turnDelta); + D3DXMatrixRotationAxis(&turnMat, &worldUp, -turnDelta); D3DXVec3TransformNormal(&normalT2C, &normalT2C, &pitchMat); D3DXVec3TransformNormal(&normalT2C, &normalT2C, &turnMat); normalT2C *= dist; - D3DXVECTOR3 newPos = GetWorldPos() + (normalT2C - originalT2C); + glm::vec3 newPos = GetWorldPos() + (normalT2C - originalT2C); if (_parent) - _parent->WorldToLocalCoord(newPos, newPos); - SetPos(newPos); + _parent->WorldToLocalCoord(newPos, newPos); + SetPos(newPos); } -void BaseSceneNode::AdjustDistToTarget(const D3DXVECTOR3& worldTarget, float distance) +void BaseSceneNode::AdjustDistToTarget(const glm::vec3& worldTarget, float distance) { SetWorldPos(worldTarget + GetWorldDir() * (-distance)); } @@ -541,12 +541,12 @@ void BaseSceneNode::WorldToLocal(const D3DXVECTOR4& vec, D3DXVECTOR4& out) const D3DXVec4Transform(&out, &vec, &mat); } -void BaseSceneNode::WorldToLocalCoord(const D3DXVECTOR3& vec, D3DXVECTOR3& out) const +void BaseSceneNode::WorldToLocalCoord(const glm::vec3& vec, glm::vec3& out) const { D3DXVec3TransformCoord(&out, &vec, &GetInvWorldMat()); } -void BaseSceneNode::WorldToLocalNorm(const D3DXVECTOR3& vec, D3DXVECTOR3& out) const +void BaseSceneNode::WorldToLocalNorm(const glm::vec3& vec, glm::vec3& out) const { D3DXVec3TransformNormal(&out, &vec, &GetInvWorldMat()); } @@ -556,12 +556,12 @@ void BaseSceneNode::LocalToWorld(const D3DXVECTOR4& vec, D3DXVECTOR4& out) const D3DXVec4Transform(&out, &vec, &GetWorldMat()); } -void BaseSceneNode::LocalToWorldCoord(const D3DXVECTOR3& vec, D3DXVECTOR3& out) const +void BaseSceneNode::LocalToWorldCoord(const glm::vec3& vec, glm::vec3& out) const { D3DXVec3TransformCoord(&out, &vec, &GetWorldMat()); } -void BaseSceneNode::LocalToWorldNorm(const D3DXVECTOR3& vec, D3DXVECTOR3& out) const +void BaseSceneNode::LocalToWorldNorm(const glm::vec3& vec, glm::vec3& out) const { D3DXVec3TransformNormal(&out, &vec, &GetWorldMat()); } @@ -578,24 +578,24 @@ void BaseSceneNode::LocalToParent(const D3DXVECTOR4& vec, D3DXVECTOR4& out) cons D3DXVec4Transform(&out, &vec, &mat); } -unsigned BaseSceneNode::RayCastIntersBB(const D3DXVECTOR3& wRayPos, const D3DXVECTOR3& wRayVec, bool includeChild) const +unsigned BaseSceneNode::RayCastIntersBB(const glm::vec3& wRayPos, const glm::vec3& wRayVec, bool includeChild) const { - D3DXVECTOR3 rayPos; + glm::vec3 rayPos; WorldToLocalCoord(wRayPos, rayPos); - D3DXVECTOR3 rayVec; + glm::vec3 rayVec; WorldToLocalNorm(wRayVec, rayVec); float tNear, tFar; AABB aabb = GetLocalAABB(includeChild); - return aabb.RayCastIntersect(rayPos, rayVec, tNear, tFar); + return aabb.RayCastIntersect(rayPos, rayVec, tNear, tFar); } -unsigned BaseSceneNode::RayCastIntersBB(const D3DXVECTOR3& wRayPos, const D3DXVECTOR3& wRayVec, D3DXVECTOR3& wNearVec, D3DXVECTOR3& wFarVec, bool includeChild) const +unsigned BaseSceneNode::RayCastIntersBB(const glm::vec3& wRayPos, const glm::vec3& wRayVec, glm::vec3& wNearVec, glm::vec3& wFarVec, bool includeChild) const { - D3DXVECTOR3 rayPos; + glm::vec3 rayPos; WorldToLocalCoord(wRayPos, rayPos); - D3DXVECTOR3 rayVec; + glm::vec3 rayVec; WorldToLocalNorm(wRayVec, rayVec); AABB aabb = GetLocalAABB(includeChild); @@ -715,23 +715,23 @@ void BaseSceneNode::SetVisible(bool value) //NotifyChanged(this, 0); } -const D3DXVECTOR3& BaseSceneNode::GetPos() const +const glm::vec3& BaseSceneNode::GetPos() const { return _position; } -void BaseSceneNode::SetPos(const D3DXVECTOR3& value) +void BaseSceneNode::SetPos(const glm::vec3& value) { _position = value; TransformationChanged(); } -const D3DXVECTOR3& BaseSceneNode::GetScale() const +const glm::vec3& BaseSceneNode::GetScale() const { return _scale; } -void BaseSceneNode::SetScale(const D3DXVECTOR3& value) +void BaseSceneNode::SetScale(const glm::vec3& value) { _scale = value; TransformationChanged(); @@ -739,16 +739,16 @@ void BaseSceneNode::SetScale(const D3DXVECTOR3& value) void BaseSceneNode::SetScale(float value) { - SetScale(D3DXVECTOR3(value, value, value)); + SetScale(glm::vec3(value, value, value)); } -const D3DXVECTOR3& BaseSceneNode::GetDir() const +const glm::vec3& BaseSceneNode::GetDir() const { ExtractRotation(rsVectors); return _direction; } -void BaseSceneNode::SetDir(const D3DXVECTOR3& value) +void BaseSceneNode::SetDir(const glm::vec3& value) { ExtractRotation(rsVectors); @@ -757,7 +757,7 @@ void BaseSceneNode::SetDir(const D3DXVECTOR3& value) else D3DXVec3Normalize(&_direction, &value); - D3DXVECTOR3 right = GetRight(); + glm::vec3 right = GetRight(); if (D3DXVec3Length(&right) < floatErrComp) { D3DXVec3Cross(&right, &ZVector, &_up); @@ -770,19 +770,19 @@ void BaseSceneNode::SetDir(const D3DXVECTOR3& value) ChangedRotation(rsVectors); } -D3DXVECTOR3 BaseSceneNode::GetRight() const +glm::vec3 BaseSceneNode::GetRight() const { ExtractRotation(rsVectors); - D3DXVECTOR3 tmp; + glm::vec3 tmp; D3DXVec3Cross(&tmp, &_up, &_direction); return tmp; } -void BaseSceneNode::SetRight(const D3DXVECTOR3& value) +void BaseSceneNode::SetRight(const glm::vec3& value) { ExtractRotation(rsVectors); - D3DXVECTOR3 right; + glm::vec3 right; if (D3DXVec3Length(&value) == 0) right = YVector; else @@ -801,20 +801,20 @@ void BaseSceneNode::SetRight(const D3DXVECTOR3& value) ChangedRotation(rsVectors); } -const D3DXVECTOR3& BaseSceneNode::GetUp() const +const glm::vec3& BaseSceneNode::GetUp() const { ExtractRotation(rsVectors); return _up; } -void BaseSceneNode::SetUp(const D3DXVECTOR3& value) +void BaseSceneNode::SetUp(const glm::vec3& value) { ExtractRotation(rsVectors); if (D3DXVec3Length(&value) == 0) - _up = ZVector; + _up = ZVector; D3DXVec3Normalize(&_up, &value); - D3DXVECTOR3 right = GetRight(); + glm::vec3 right = GetRight(); if (D3DXVec3Length(&right) < floatErrComp) { D3DXVec3Cross(&right, &ZVector, &_up); @@ -842,7 +842,7 @@ void BaseSceneNode::SetRollAngle(float value) float BaseSceneNode::GetPitchAngle() const { - ExtractRotation(rsEulerAngles); + ExtractRotation(rsEulerAngles); return _pitchAngle; } @@ -855,7 +855,7 @@ void BaseSceneNode::SetPitchAngle(float value) float BaseSceneNode::GetTurnAngle() const { - ExtractRotation(rsEulerAngles); + ExtractRotation(rsEulerAngles); return _turnAngle; } @@ -880,7 +880,7 @@ void BaseSceneNode::SetRot(const glm::quat& value) D3DXMATRIX BaseSceneNode::GetScaleMat() const { - D3DXVECTOR3 vec = _scale; + glm::vec3 vec = _scale; //Если масштабирование слишком мало, то матрица может оказаться вырожденной. Поэтому подменяем на вектор самой допустимо малой длины //if (D3DXVec3Length(&vec) < 0.0001f) // vec = IdentityVector * 0.0005f; @@ -897,7 +897,7 @@ D3DXMATRIX BaseSceneNode::GetRotMat() const if (!_rotInvalidate.test(rsVectors)) { - D3DXVECTOR3 right = GetRight(); + glm::vec3 right = GetRight(); _rotMat._11 = _direction.x; _rotMat._12 = _direction.y; _rotMat._13 = _direction.z; @@ -944,7 +944,7 @@ D3DXMATRIX BaseSceneNode::GetTransMat() const { D3DXMATRIX transMat; D3DXMatrixTranslation(&transMat, _position.x, _position.y, _position.z); - return transMat; + return transMat; } const D3DXMATRIX& BaseSceneNode::GetMat() const @@ -956,8 +956,8 @@ const D3DXMATRIX& BaseSceneNode::GetMat() const void BaseSceneNode::SetLocalMat(const D3DXMATRIX& value) { _direction = value.m[0]; - D3DXVECTOR3 right = value.m[1]; - _up = value.m[2]; + glm::vec3 right = value.m[1]; + _up = value.m[2]; _position = value.m[3]; D3DXVec3Normalize(&_direction, &_direction); @@ -969,7 +969,7 @@ void BaseSceneNode::SetLocalMat(const D3DXMATRIX& value) const D3DXMATRIX& BaseSceneNode::GetInvMat() const { - ApplyTransformationChanged(); + ApplyTransformationChanged(); return _invLocalMat; } @@ -981,7 +981,7 @@ const D3DXMATRIX& BaseSceneNode::GetWorldMat() const const D3DXMATRIX& BaseSceneNode::GetInvWorldMat() const { - ApplyTransformationChanged(); + ApplyTransformationChanged(); return _invWorldMat; } @@ -1010,7 +1010,7 @@ D3DXMATRIX BaseSceneNode::GetWorldCombMat(CombMatType type) const { case cmtScaleTrans: { - D3DXVECTOR3 vec; + glm::vec3 vec; D3DXMATRIX scaleMat = GetWorldScale(); @@ -1035,7 +1035,7 @@ D3DXMATRIX BaseSceneNode::GetWorldCombMat(CombMatType type) const D3DXMATRIX rotMat = Matrix4GlmToDx(glm::transpose(glm::mat4_cast(GetWorldRot()))); D3DXMATRIX transMat; - D3DXVECTOR3 pos = GetWorldPos(); + glm::vec3 pos = GetWorldPos(); D3DXMatrixTranslation(&transMat, pos.x, pos.y, pos.z); return rotMat * transMat; @@ -1047,16 +1047,16 @@ D3DXMATRIX BaseSceneNode::GetWorldCombMat(CombMatType type) const } } -D3DXVECTOR3 BaseSceneNode::GetWorldPos() const +glm::vec3 BaseSceneNode::GetWorldPos() const { return GetWorldMat().m[3]; } -void BaseSceneNode::SetWorldPos(const D3DXVECTOR3& value) +void BaseSceneNode::SetWorldPos(const glm::vec3& value) { if (_parent) { - D3DXVECTOR3 pos; + glm::vec3 pos; _parent->WorldToLocalCoord(value, pos); SetPos(pos); } @@ -1084,7 +1084,7 @@ void BaseSceneNode::SetWorldRot(const glm::quat& value) D3DXMATRIX BaseSceneNode::GetWorldScale() const { D3DXMATRIX res = IdentityMatrix; - D3DXMatrixMultiply(&res, &res, &GetInvWorldMat()); + D3DXMatrixMultiply(&res, &res, &GetInvWorldMat()); const BaseSceneNode* node = this; do @@ -1092,7 +1092,7 @@ D3DXMATRIX BaseSceneNode::GetWorldScale() const //Применяем опреацию масштабирования D3DXMatrixMultiply(&res, &res, &node->GetScaleMat()); //Переводим на уровень трансформации пониже - D3DXMatrixMultiply(&res, &res, &node->GetMat()); + D3DXMatrixMultiply(&res, &res, &node->GetMat()); node = node->GetParent(); @@ -1106,30 +1106,30 @@ D3DXMATRIX BaseSceneNode::GetWorldScale() const return res; } -D3DXVECTOR3 BaseSceneNode::GetWorldDir() const +glm::vec3 BaseSceneNode::GetWorldDir() const { - D3DXVECTOR3 res; - D3DXVec3Normalize(&res, &D3DXVECTOR3(GetWorldMat().m[0])); + glm::vec3 res; + D3DXVec3Normalize(&res, &glm::vec3(GetWorldMat().m[0])); return res; } -D3DXVECTOR3 BaseSceneNode::GetWorldRight() const +glm::vec3 BaseSceneNode::GetWorldRight() const { return GetWorldMat().m[1]; } -D3DXVECTOR3 BaseSceneNode::GetWorldUp() const +glm::vec3 BaseSceneNode::GetWorldUp() const { return GetWorldMat().m[2]; } -D3DXVECTOR3 BaseSceneNode::GetWorldSizes(bool includeChild) const +glm::vec3 BaseSceneNode::GetWorldSizes(bool includeChild) const { const AABB& aabb = GetWorldAABB(includeChild); return (aabb.max - aabb.min); } -D3DXVECTOR3 BaseSceneNode::GetWorldCenterPos(bool includeChild) const +glm::vec3 BaseSceneNode::GetWorldCenterPos(bool includeChild) const { const AABB& aabb = GetWorldAABB(includeChild); return (aabb.min + aabb.max) / 2.0f; @@ -1145,7 +1145,7 @@ const AABB& BaseSceneNode::GetLocalAABB(bool includeChild) const if (_bbChanges.test(bbcStructure) || IsBBDyn()) { _aabbLocal = LocalDimensions(); - _bbChanges.reset(bbcStructure); + _bbChanges.reset(bbcStructure); } if (includeChild) @@ -1261,7 +1261,7 @@ float BaseSceneNode::GetFrame(float time) const return std::min(frame, 1.0f); case amRepeat: - return frame - static_cast(frame); + return frame - static_cast(frame); case amTile: return frame; @@ -1329,34 +1329,34 @@ void Camera::RenderFrustum(graph::Engine& engine, const D3DXMATRIX& invViewProj, D3DCOLOR linesColor = colorBB; VertexPD lines[24]; - lines[0] = VertexPD(frustumV[0], linesColor); - lines[1] = VertexPD(frustumV[1], linesColor); - lines[2] = VertexPD(frustumV[2], linesColor); + lines[0] = VertexPD(frustumV[0], linesColor); + lines[1] = VertexPD(frustumV[1], linesColor); + lines[2] = VertexPD(frustumV[2], linesColor); lines[3] = VertexPD(frustumV[3], linesColor); - lines[4] = VertexPD(frustumV[4], linesColor); - lines[5] = VertexPD(frustumV[5], linesColor); - lines[6] = VertexPD(frustumV[6], linesColor); + lines[4] = VertexPD(frustumV[4], linesColor); + lines[5] = VertexPD(frustumV[5], linesColor); + lines[6] = VertexPD(frustumV[6], linesColor); lines[7] = VertexPD(frustumV[7], linesColor); //near plane lines[8] = VertexPD(frustumV[1], linesColor); - lines[9] = VertexPD(frustumV[3], linesColor); - lines[10] = VertexPD(frustumV[3], linesColor); + lines[9] = VertexPD(frustumV[3], linesColor); + lines[10] = VertexPD(frustumV[3], linesColor); lines[11] = VertexPD(frustumV[7], linesColor); - lines[12] = VertexPD(frustumV[7], linesColor); - lines[13] = VertexPD(frustumV[5], linesColor); - lines[14] = VertexPD(frustumV[5], linesColor); + lines[12] = VertexPD(frustumV[7], linesColor); + lines[13] = VertexPD(frustumV[5], linesColor); + lines[14] = VertexPD(frustumV[5], linesColor); lines[15] = VertexPD(frustumV[1], linesColor); //far plane lines[16] = VertexPD(frustumV[0], linesColor); - lines[17] = VertexPD(frustumV[2], linesColor); - lines[18] = VertexPD(frustumV[2], linesColor); + lines[17] = VertexPD(frustumV[2], linesColor); + lines[18] = VertexPD(frustumV[2], linesColor); lines[19] = VertexPD(frustumV[6], linesColor); - lines[20] = VertexPD(frustumV[6], linesColor); - lines[21] = VertexPD(frustumV[4], linesColor); - lines[22] = VertexPD(frustumV[4], linesColor); + lines[20] = VertexPD(frustumV[6], linesColor); + lines[21] = VertexPD(frustumV[4], linesColor); + lines[22] = VertexPD(frustumV[4], linesColor); lines[23] = VertexPD(frustumV[0], linesColor); engine.GetContext().SetWorldMat(IdentityMatrix); @@ -1364,9 +1364,9 @@ void Camera::RenderFrustum(graph::Engine& engine, const D3DXMATRIX& invViewProj, engine.GetContext().SetRenderState(graph::rsLighting, false); engine.GetDriver().GetDevice()->SetFVF(VertexPD::fvf); - engine.GetDriver().GetDevice()->DrawPrimitiveUP(D3DPT_LINELIST, 12, lines, sizeof(VertexPD)); + engine.GetDriver().GetDevice()->DrawPrimitiveUP(D3DPT_LINELIST, 12, lines, sizeof(VertexPD)); - engine.GetContext().RestoreRenderState(graph::rsDiffuseMaterialSource); + engine.GetContext().RestoreRenderState(graph::rsDiffuseMaterialSource); engine.GetContext().RestoreRenderState(graph::rsLighting); } @@ -1417,7 +1417,7 @@ void Camera::AdjustNearFarPlane(const AABB& aabb, float nearDist, float farDist) { BuildContextInfo(); - _contextInfo.AdjustNearFarPlane(aabb, nearDist, farDist); + _contextInfo.AdjustNearFarPlane(aabb, nearDist, farDist); _desc.nearDist = _contextInfo.GetDesc().nearDist; _desc.farDist = _contextInfo.GetDesc().farDist; diff --git a/src/Rock3dEngine/source/graph/SkyBox.cpp b/src/Rock3dEngine/source/graph/SkyBox.cpp index 05db6a17..fa5bdfbf 100644 --- a/src/Rock3dEngine/source/graph/SkyBox.cpp +++ b/src/Rock3dEngine/source/graph/SkyBox.cpp @@ -20,13 +20,13 @@ SkyBox::SkyBox(): _coordSystem(csLeft) _mesh.GetOrCreateData()->SetVertexCount(6); _mesh.GetData()->SetFormat(res::VertexData::vtPos3); _mesh.GetData()->Init(); - D3DXVECTOR3* vb = reinterpret_cast(_mesh.GetData()->GetData()); - vb[0] = D3DXVECTOR3(-1.0f, -1.0f, 1.0f); - vb[1] = D3DXVECTOR3(1.0f, -1.0f, 1.0f); - vb[2] = D3DXVECTOR3(1.0f, 1.0f, 1.0f); - vb[3] = D3DXVECTOR3(-1.0f, -1.0f, 1.0f); - vb[4] = D3DXVECTOR3(1.0f, 1.0f, 1.0f); - vb[5] = D3DXVECTOR3(-1.0f, 1.0f, 1.0f); + glm::vec3* vb = reinterpret_cast(_mesh.GetData()->GetData()); + vb[0] = glm::vec3(-1.0f, -1.0f, 1.0f); + vb[1] = glm::vec3(1.0f, -1.0f, 1.0f); + vb[2] = glm::vec3(1.0f, 1.0f, 1.0f); + vb[3] = glm::vec3(-1.0f, -1.0f, 1.0f); + vb[4] = glm::vec3(1.0f, 1.0f, 1.0f); + vb[5] = glm::vec3(-1.0f, 1.0f, 1.0f); _mesh.GetData()->Update(); shader.SetTech("techSkybox"); diff --git a/src/Rock3dEngine/source/graph/StdNode.cpp b/src/Rock3dEngine/source/graph/StdNode.cpp index 9d2e9316..9e51035d 100644 --- a/src/Rock3dEngine/source/graph/StdNode.cpp +++ b/src/Rock3dEngine/source/graph/StdNode.cpp @@ -9,13 +9,13 @@ namespace r3d namespace graph { -const D3DXVECTOR3 MovCoordSys::arUp[3] = {XVector, YVector, ZVector}; +const glm::vec3 MovCoordSys::arUp[3] = {XVector, YVector, ZVector}; const float MovCoordSys::arSize = 2.0f; -const D3DXVECTOR3 MovCoordSys::arPos[3] = {2 * XVector, 2 * YVector, 2 * ZVector}; +const glm::vec3 MovCoordSys::arPos[3] = {2 * XVector, 2 * YVector, 2 * ZVector}; const D3DXCOLOR MovCoordSys::arCol[3] = {clrRed, clrGreen, clrBlue}; const D3DXCOLOR MovCoordSys::colSel = clrYellow; -const D3DXVECTOR3 ScaleCoordSys::arUp[3] = {XVector, YVector, ZVector}; +const glm::vec3 ScaleCoordSys::arUp[3] = {XVector, YVector, ZVector}; const float ScaleCoordSys::arSize = 2.0f; const float ScaleCoordSys::plSize = 1.5f; const D3DXCOLOR ScaleCoordSys::arCol[3] = {clrRed, clrGreen, clrBlue}; @@ -281,23 +281,23 @@ void MaterialNode::SetColor(const D3DXCOLOR& value) _color = value; } -const D3DXVECTOR3& MaterialNode::GetOffset() const +const glm::vec3& MaterialNode::GetOffset() const { return _offset; } -void MaterialNode::SetOffset(const D3DXVECTOR3& value) +void MaterialNode::SetOffset(const glm::vec3& value) { _offset = value; TransformationChanged(); } -const D3DXVECTOR3& MaterialNode::GetScale() const +const glm::vec3& MaterialNode::GetScale() const { return _scale; } -void MaterialNode::SetScale(const D3DXVECTOR3& value) +void MaterialNode::SetScale(const glm::vec3& value) { _scale = value; TransformationChanged(); @@ -459,8 +459,8 @@ AABB IVBMeshNode::LocalDimensions() const if (!_mesh) return NullAABB; - D3DXVECTOR3 min = NullVector; - D3DXVECTOR3 max = NullVector; + glm::vec3 min = NullVector; + glm::vec3 max = NullVector; if (_meshId < 0) { min = _mesh->GetMinPos(); @@ -479,7 +479,7 @@ AABB IVBMeshNode::LocalDimensions() const for (int j = 0; j < 3; ++j) { unsigned ind = _mesh->GetData()->fb.GetIndex(fg.sFace + i, j); - D3DXVECTOR3 vec = *(_mesh->GetData()->vb[ind].Pos3()); + glm::vec3 vec = *(_mesh->GetData()->vb[ind].Pos3()); if (!bMin) { @@ -662,8 +662,8 @@ AABB MeshXNode::LocalDimensions() const if (!_mesh) return NullAABB; - D3DXVECTOR3 min = NullVector; - D3DXVECTOR3 max = NullVector; + glm::vec3 min = NullVector; + glm::vec3 max = NullVector; if (_meshId < 0) { min = _mesh->GetMinPos(); @@ -682,7 +682,7 @@ AABB MeshXNode::LocalDimensions() const for (int j = 0; j < 3; ++j) { unsigned ind = _mesh->GetData()->fb.GetIndex(fg.sFace + i, j); - D3DXVECTOR3 vec = *(_mesh->GetData()->vb[ind].Pos3()); + glm::vec3 vec = *(_mesh->GetData()->vb[ind].Pos3()); if (!bMin) { @@ -827,58 +827,58 @@ Box::Box() void Box::RenderBox(Engine& engine) { - D3DXVECTOR3 vertBuf[72] = + glm::vec3 vertBuf[72] = { // - D3DXVECTOR3(-0.5f, -0.5f, -0.5f), -ZVector, - D3DXVECTOR3(0.5f, 0.5f, -0.5f), -ZVector, - D3DXVECTOR3(0.5f, -0.5f, -0.5f), -ZVector, - D3DXVECTOR3(-0.5f, -0.5f, -0.5f), -ZVector, - D3DXVECTOR3(-0.5f, 0.5f, -0.5f), -ZVector, - D3DXVECTOR3(0.5f, 0.5f, -0.5f), -ZVector, + glm::vec3(-0.5f, -0.5f, -0.5f), -ZVector, + glm::vec3(0.5f, 0.5f, -0.5f), -ZVector, + glm::vec3(0.5f, -0.5f, -0.5f), -ZVector, + glm::vec3(-0.5f, -0.5f, -0.5f), -ZVector, + glm::vec3(-0.5f, 0.5f, -0.5f), -ZVector, + glm::vec3(0.5f, 0.5f, -0.5f), -ZVector, // - D3DXVECTOR3(-0.5f, -0.5f, 0.5f), ZVector, - D3DXVECTOR3(0.5f, -0.5f, 0.5f), ZVector, - D3DXVECTOR3(0.5f, 0.5f, 0.5f), ZVector, - D3DXVECTOR3(-0.5f, -0.5f, 0.5f), ZVector, - D3DXVECTOR3(0.5f, 0.5f, 0.5f), ZVector, - D3DXVECTOR3(-0.5f, 0.5f, 0.5f), ZVector, + glm::vec3(-0.5f, -0.5f, 0.5f), ZVector, + glm::vec3(0.5f, -0.5f, 0.5f), ZVector, + glm::vec3(0.5f, 0.5f, 0.5f), ZVector, + glm::vec3(-0.5f, -0.5f, 0.5f), ZVector, + glm::vec3(0.5f, 0.5f, 0.5f), ZVector, + glm::vec3(-0.5f, 0.5f, 0.5f), ZVector, // - D3DXVECTOR3(-0.5f, -0.5f, -0.5f), -YVector, - D3DXVECTOR3(0.5f, -0.5f, -0.5f), -YVector, - D3DXVECTOR3(0.5f, -0.5f, 0.5f), -YVector, - D3DXVECTOR3(-0.5f, -0.5f, -0.5f), -YVector, - D3DXVECTOR3(0.5f, -0.5f, 0.5f), -YVector, - D3DXVECTOR3(-0.5f, -0.5f, 0.5f), -YVector, + glm::vec3(-0.5f, -0.5f, -0.5f), -YVector, + glm::vec3(0.5f, -0.5f, -0.5f), -YVector, + glm::vec3(0.5f, -0.5f, 0.5f), -YVector, + glm::vec3(-0.5f, -0.5f, -0.5f), -YVector, + glm::vec3(0.5f, -0.5f, 0.5f), -YVector, + glm::vec3(-0.5f, -0.5f, 0.5f), -YVector, // - D3DXVECTOR3(0.5f, 0.5f, -0.5f), YVector, - D3DXVECTOR3(-0.5f, 0.5f, -0.5f), YVector, - D3DXVECTOR3(-0.5f, 0.5f, 0.5f), YVector, - D3DXVECTOR3(0.5f, 0.5f, -0.5f), YVector, - D3DXVECTOR3(-0.5f, 0.5f, 0.5f), YVector, - D3DXVECTOR3(0.5f, 0.5f, 0.5f), YVector, - - D3DXVECTOR3(-0.5f, 0.5f, -0.5f), -XVector, - D3DXVECTOR3(-0.5f, -0.5f, -0.5f), -XVector, - D3DXVECTOR3(-0.5f, -0.5f, 0.5f), -XVector, - D3DXVECTOR3(-0.5f, 0.5f, -0.5f), -XVector, - D3DXVECTOR3(-0.5f, -0.5f, 0.5f), -XVector, - D3DXVECTOR3(-0.5f, 0.5f, 0.5f), -XVector, + glm::vec3(0.5f, 0.5f, -0.5f), YVector, + glm::vec3(-0.5f, 0.5f, -0.5f), YVector, + glm::vec3(-0.5f, 0.5f, 0.5f), YVector, + glm::vec3(0.5f, 0.5f, -0.5f), YVector, + glm::vec3(-0.5f, 0.5f, 0.5f), YVector, + glm::vec3(0.5f, 0.5f, 0.5f), YVector, + + glm::vec3(-0.5f, 0.5f, -0.5f), -XVector, + glm::vec3(-0.5f, -0.5f, -0.5f), -XVector, + glm::vec3(-0.5f, -0.5f, 0.5f), -XVector, + glm::vec3(-0.5f, 0.5f, -0.5f), -XVector, + glm::vec3(-0.5f, -0.5f, 0.5f), -XVector, + glm::vec3(-0.5f, 0.5f, 0.5f), -XVector, // - D3DXVECTOR3(0.5f, -0.5f, -0.5f), XVector, - D3DXVECTOR3(0.5f, 0.5f, -0.5f), XVector, - D3DXVECTOR3(0.5f, 0.5f, 0.5f), XVector, - D3DXVECTOR3(0.5f, -0.5f, -0.5f), XVector, - D3DXVECTOR3(0.5f, 0.5f, 0.5f), XVector, - D3DXVECTOR3(0.5f, -0.5f, 0.5f), XVector + glm::vec3(0.5f, -0.5f, -0.5f), XVector, + glm::vec3(0.5f, 0.5f, -0.5f), XVector, + glm::vec3(0.5f, 0.5f, 0.5f), XVector, + glm::vec3(0.5f, -0.5f, -0.5f), XVector, + glm::vec3(0.5f, 0.5f, 0.5f), XVector, + glm::vec3(0.5f, -0.5f, 0.5f), XVector }; engine.GetDriver().GetDevice()->SetFVF(D3DFVF_XYZ | D3DFVF_NORMAL); - engine.GetDriver().GetDevice()->DrawPrimitiveUP(D3DPT_TRIANGLELIST, 12, vertBuf, 2 * sizeof(D3DXVECTOR3)); + engine.GetDriver().GetDevice()->DrawPrimitiveUP(D3DPT_TRIANGLELIST, 12, vertBuf, 2 * sizeof(glm::vec3)); } void Box::DoRender(Engine& engine) @@ -972,7 +972,7 @@ void Sprite::DoRender(Engine& engine) //Отрисовка material.Apply(engine); - engine.RenderSpritePT(GetWorldPos(), D3DXVECTOR3(sizes.x, sizes.y, 1.0f), GetTurnAngle(), fixDirection ? &GetWorldDir() : 0, GetWorldScale()); + engine.RenderSpritePT(GetWorldPos(), glm::vec3(sizes.x, sizes.y, 1.0f), GetTurnAngle(), fixDirection ? &GetWorldDir() : 0, GetWorldScale()); material.UnApply(engine); } @@ -981,9 +981,9 @@ AABB Sprite::LocalDimensions() const { if (fixDirection) { - D3DXVECTOR3 dir = GetDir(); - D3DXVECTOR3 up = GetUp(); - D3DXVECTOR3 max = dir * sizes.x/2.0f + up * sizes.y/2.0f; + glm::vec3 dir = GetDir(); + glm::vec3 up = GetUp(); + glm::vec3 max = dir * sizes.x/2.0f + up * sizes.y/2.0f; return AABB(-max, max); } @@ -1074,14 +1074,14 @@ MovCoordSys::~MovCoordSys() delete _arrows[i]; } -MovCoordSys::DirMove MovCoordSys::CompDirMove(const D3DXVECTOR3& rayStart, const D3DXVECTOR3& rayVec) +MovCoordSys::DirMove MovCoordSys::CompDirMove(const glm::vec3& rayStart, const glm::vec3& rayVec) { const D3DXPLANE planes[3] = {XPlane, YPlane, ZPlane}; - const D3DXVECTOR3 coordOff[3] = {XVector/2, YVector/2, ZVector/2}; + const glm::vec3 coordOff[3] = {XVector/2, YVector/2, ZVector/2}; const DirMove moves[3] = {dmYZ, dmXZ, dmXY}; - D3DXVECTOR3 localRS; - D3DXVECTOR3 localRV; + glm::vec3 localRS; + glm::vec3 localRV; WorldToLocalCoord(rayStart, localRS); WorldToLocalNorm(rayVec, localRV); @@ -1094,7 +1094,7 @@ MovCoordSys::DirMove MovCoordSys::CompDirMove(const D3DXVECTOR3& rayStart, const float t; if (RayCastIntersectPlane(localRS, localRV, planes[i], t)) { - D3DXVECTOR3 pnt = localRS + localRV * t + coordOff[i]; + glm::vec3 pnt = localRS + localRV * t + coordOff[i]; if (pnt > NullVector && pnt < IdentityVector && (!minTInit || minT > t)) { minTInit = true; @@ -1124,7 +1124,7 @@ MovCoordSys::DirMove MovCoordSys::CompDirMove(const D3DXVECTOR3& rayStart, const void MovCoordSys::DoRender(Engine& engine) { - typedef D3DXVECTOR3 AxePlane[4]; + typedef glm::vec3 AxePlane[4]; const DirMove planeMoves[3] = {dmXY, dmXZ, dmYZ}; @@ -1211,12 +1211,12 @@ AABB MovCoordSys::LocalDimensions() const return GetAABBOfChildren(); } -MovCoordSys::DirMove MovCoordSys::OnMouseMove(const D3DXVECTOR3& rayStart, const D3DXVECTOR3& rayVec) +MovCoordSys::DirMove MovCoordSys::OnMouseMove(const glm::vec3& rayStart, const glm::vec3& rayVec) { return CompDirMove(rayStart, rayVec); } -MovCoordSys::DirMove MovCoordSys::OnMouseClick(const D3DXVECTOR3& rayStart, const D3DXVECTOR3& rayVec, lsl::KeyState state) +MovCoordSys::DirMove MovCoordSys::OnMouseClick(const glm::vec3& rayStart, const glm::vec3& rayVec, lsl::KeyState state) { return CompDirMove(rayStart, rayVec); } @@ -1241,33 +1241,33 @@ ScaleCoordSys::~ScaleCoordSys() delete _arrows[i]; } -void ScaleCoordSys::CompBBPlanes(const D3DXVECTOR3& camPos, D3DXVECTOR3* bbPlanes) +void ScaleCoordSys::CompBBPlanes(const glm::vec3& camPos, glm::vec3* bbPlanes) { for (int i = 0; i < 3; ++i) bbPlanes[i] = camPos[i] > 0 ? arUp[i] : -arUp[i]; } -ScaleCoordSys::DirMove ScaleCoordSys::CompDirMove(const D3DXVECTOR3& rayStart, const D3DXVECTOR3& rayVec, const D3DXVECTOR3& camPos) +ScaleCoordSys::DirMove ScaleCoordSys::CompDirMove(const glm::vec3& rayStart, const glm::vec3& rayVec, const glm::vec3& camPos) { - D3DXVECTOR3 localRS; - D3DXVECTOR3 localRV; + glm::vec3 localRS; + glm::vec3 localRV; WorldToLocalCoord(rayStart, localRS); WorldToLocalNorm(rayVec, localRV); - D3DXVECTOR3 bbPlanes[3]; + glm::vec3 bbPlanes[3]; CompBBPlanes(camPos, bbPlanes); //Пересечение с размерной плоскостью - D3DXVECTOR3 plLine[3]; + glm::vec3 plLine[3]; for (int i = 0; i < 3; ++i) plLine[i] = bbPlanes[i] * plSize; D3DXPLANE upPlane; D3DXPlaneFromPoints(&upPlane, &plLine[0], &plLine[1], &plLine[2]); // - D3DXVECTOR3 maxVec = NullVector; + glm::vec3 maxVec = NullVector; for (int i = 0; i < 3; ++i) maxVec += plLine[i]; - D3DXVECTOR3 pnt; + glm::vec3 pnt; RayCastIntersectPlane(localRS, localRV, upPlane, pnt); AABB aabb; aabb.FromPoints(NullVector, maxVec); @@ -1293,10 +1293,10 @@ void ScaleCoordSys::DoRender(Engine& engine) { const float stepSzAxe = 2.2f; - D3DXVECTOR3 bbPlanes[3]; + glm::vec3 bbPlanes[3]; CompBBPlanes(engine.GetContext().GetCamera().GetDesc().pos - GetWorldPos(), bbPlanes); - D3DXVECTOR3 plLine[3]; + glm::vec3 plLine[3]; for (int i = 0; i < 3; ++i) plLine[i] = bbPlanes[i] * plSize; const DirMove axeMoves[3] = {dmX, dmY, dmZ}; @@ -1365,12 +1365,12 @@ AABB ScaleCoordSys::LocalDimensions() const return GetAABBOfChildren(); } -ScaleCoordSys::DirMove ScaleCoordSys::OnMouseMove(const D3DXVECTOR3& rayStart, const D3DXVECTOR3& rayVec, const D3DXVECTOR3& camPos) +ScaleCoordSys::DirMove ScaleCoordSys::OnMouseMove(const glm::vec3& rayStart, const glm::vec3& rayVec, const glm::vec3& camPos) { return CompDirMove(rayStart, rayVec, camPos - GetWorldPos()); } -ScaleCoordSys::DirMove ScaleCoordSys::OnMouseClick(const D3DXVECTOR3& rayStart, const D3DXVECTOR3& rayVec, lsl::KeyState state, const D3DXVECTOR3& camPos) +ScaleCoordSys::DirMove ScaleCoordSys::OnMouseClick(const glm::vec3& rayStart, const glm::vec3& rayVec, lsl::KeyState state, const glm::vec3& camPos) { return CompDirMove(rayStart, rayVec, camPos - GetWorldPos()); } @@ -1387,12 +1387,12 @@ void FillDataPlane(res::VertexData& vb, float width, float height, float u, floa float y = height / 2.0f; res::VertexPNT* vertex = reinterpret_cast(vb.GetData()); - vertex[0] = res::VertexPNT(D3DXVECTOR3(-x, -y, 0.0f), ZVector, glm::vec2(0.0f, 0.0f)); - vertex[1] = res::VertexPNT(D3DXVECTOR3( x, -y, 0.0f), ZVector, glm::vec2(u, 0.0f)); - vertex[2] = res::VertexPNT(D3DXVECTOR3( x, y, 0.0f), ZVector, glm::vec2(u, v)); - vertex[3] = res::VertexPNT(D3DXVECTOR3(-x, -y, 0.0f), ZVector, glm::vec2(0.0f, 0.0f)); - vertex[4] = res::VertexPNT(D3DXVECTOR3( x, y, 0.0f), ZVector, glm::vec2(u, v)); - vertex[5] = res::VertexPNT(D3DXVECTOR3(-x, y, 0.0f), ZVector, glm::vec2(0.0f, v)); + vertex[0] = res::VertexPNT(glm::vec3(-x, -y, 0.0f), ZVector, glm::vec2(0.0f, 0.0f)); + vertex[1] = res::VertexPNT(glm::vec3( x, -y, 0.0f), ZVector, glm::vec2(u, 0.0f)); + vertex[2] = res::VertexPNT(glm::vec3( x, y, 0.0f), ZVector, glm::vec2(u, v)); + vertex[3] = res::VertexPNT(glm::vec3(-x, -y, 0.0f), ZVector, glm::vec2(0.0f, 0.0f)); + vertex[4] = res::VertexPNT(glm::vec3( x, y, 0.0f), ZVector, glm::vec2(u, v)); + vertex[5] = res::VertexPNT(glm::vec3(-x, y, 0.0f), ZVector, glm::vec2(0.0f, v)); vb.Update(); } diff --git a/src/Rock3dEngine/source/graph/SunShaft.cpp b/src/Rock3dEngine/source/graph/SunShaft.cpp index 42a38945..1ea61393 100644 --- a/src/Rock3dEngine/source/graph/SunShaft.cpp +++ b/src/Rock3dEngine/source/graph/SunShaft.cpp @@ -82,15 +82,15 @@ void SunShaftRender::Render(Engine& engine) sunPos.y *= 0.5f; //Стд. техника учитывающая напрявление ист. света - //D3DXVECTOR3 posNorm; + //glm::vec3 posNorm; //D3DXVec3Normalize(&posNorm, &engine.GetLight()->GetDesc().pos); //sunPos.w = D3DXVec3Dot(&posNorm, &engine.GetCamera()->GetDesc().dir); // if (sunPos.w > 0.0f) { //Не учитвает направление ист. света - //D3DXVECTOR3 posNorm; - //D3DXVec3Normalize(&posNorm, &D3DXVECTOR3(sunPos)); + //glm::vec3 posNorm; + //D3DXVec3Normalize(&posNorm, &glm::vec3(sunPos)); //sunPos.w = D3DXVec3Dot(&posNorm, &engine.GetCamera()->GetDesc().up); // //Без затухания @@ -129,12 +129,12 @@ void SunShaftRender::SetDepthTex(Tex2DResource* value) shader.SetTexture("depthTex", value); } -const D3DXVECTOR3& SunShaftRender::GetSunPos() const +const glm::vec3& SunShaftRender::GetSunPos() const { return _sunPos; } -void SunShaftRender::SetSunPos(const D3DXVECTOR3& value) +void SunShaftRender::SetSunPos(const glm::vec3& value) { _sunPos = value; } diff --git a/src/Rock3dEngine/source/graph/VideoResource.cpp b/src/Rock3dEngine/source/graph/VideoResource.cpp index b37d0931..783e126e 100644 --- a/src/Rock3dEngine/source/graph/VideoResource.cpp +++ b/src/Rock3dEngine/source/graph/VideoResource.cpp @@ -236,14 +236,14 @@ void VBMesh::SetData(res::VertexData* value) } } -const D3DXVECTOR3& VBMesh::GetMinPos() const +const glm::vec3& VBMesh::GetMinPos() const { LoadData(); return _data->GetMinPos(); } -const D3DXVECTOR3& VBMesh::GetMaxPos() const +const glm::vec3& VBMesh::GetMaxPos() const { LoadData(); @@ -385,14 +385,14 @@ unsigned IndexedVBMesh::GetSubsetCount() const return _data->faceGroups.size(); } -const D3DXVECTOR3& IndexedVBMesh::GetMinPos() const +const glm::vec3& IndexedVBMesh::GetMinPos() const { LoadData(); return _data->vb.GetMinPos(); } -const D3DXVECTOR3& IndexedVBMesh::GetMaxPos() const +const glm::vec3& IndexedVBMesh::GetMaxPos() const { LoadData(); @@ -549,14 +549,14 @@ unsigned MeshX::GetSubsetCount() const return _data->faceGroups.size(); } -const D3DXVECTOR3& MeshX::GetMinPos() const +const glm::vec3& MeshX::GetMinPos() const { LoadData(); return _data->vb.GetMinPos(); } -const D3DXVECTOR3& MeshX::GetMaxPos() const +const glm::vec3& MeshX::GetMaxPos() const { LoadData(); diff --git a/src/Rock3dEngine/source/graph/WaterPlane.cpp b/src/Rock3dEngine/source/graph/WaterPlane.cpp index 993aee9d..3ecfe61a 100644 --- a/src/Rock3dEngine/source/graph/WaterPlane.cpp +++ b/src/Rock3dEngine/source/graph/WaterPlane.cpp @@ -98,7 +98,7 @@ void WaterPlane::DoRender(graph::Engine& engine) shader.SetValueDir("time", curTime); shader.SetValueDir("cloudIntens", _cloudIntens); - D3DXVECTOR3 fogParamsVec = D3DXVECTOR3(0, 1, (float)engine.GetContext().GetRenderState(rsFogEnable)); + glm::vec3 fogParamsVec = glm::vec3(0, 1, (float)engine.GetContext().GetRenderState(rsFogEnable)); if (fogParamsVec.z != 0) { DWORD dwVal = engine.GetContext().GetRenderState(rsFogStart); @@ -161,12 +161,12 @@ void WaterPlane::SetColor(const D3DXCOLOR& value) shader.SetValue("waterColor", D3DXVECTOR4(value)); } -const D3DXVECTOR3& WaterPlane::GetViewPos() const +const glm::vec3& WaterPlane::GetViewPos() const { return _viewPos; } -void WaterPlane::SetViewPos(const D3DXVECTOR3& value) +void WaterPlane::SetViewPos(const glm::vec3& value) { _viewPos = value; } diff --git a/src/Rock3dEngine/source/gui/GUI.cpp b/src/Rock3dEngine/source/gui/GUI.cpp index 4944e1f8..33a392dd 100644 --- a/src/Rock3dEngine/source/gui/GUI.cpp +++ b/src/Rock3dEngine/source/gui/GUI.cpp @@ -374,12 +374,12 @@ Context& Graphic3d::GetContext() return *_context; } -const D3DXVECTOR3& Graphic3d::GetPos() const +const glm::vec3& Graphic3d::GetPos() const { return _pos; } -void Graphic3d::SetPos(const D3DXVECTOR3& value) +void Graphic3d::SetPos(const glm::vec3& value) { _pos = value; TransformChanged(); @@ -396,12 +396,12 @@ void Graphic3d::SetRot(const glm::quat& value) TransformChanged(); } -const D3DXVECTOR3& Graphic3d::GetScale() const +const glm::vec3& Graphic3d::GetScale() const { return _scale; } -void Graphic3d::SetScale(const D3DXVECTOR3& value) +void Graphic3d::SetScale(const glm::vec3& value) { _scale = value; TransformChanged(); @@ -634,7 +634,7 @@ Plane3d::Plane3d(Context *context) : _MyBase(context), _size(IdentityVector.x, I AABB Plane3d::LocalAABB() const { - return AABB(D3DXVECTOR3(_size.x, _size.y, 0.0)); + return AABB(glm::vec3(_size.x, _size.y, 0.0)); } void Plane3d::Draw() @@ -854,7 +854,7 @@ template void Context::DrawBaseText(_Text& text, AABB2* aabb) { //pos += glm::vec2(MatGetPos(GetCI().GetWorldMat())); pos += glm::vec2(MatGetPos(GetCI().GetWorldMat()).x, - MatGetPos(GetCI().GetWorldMat()).y); // remove after D3DXVECTOR3 replacement + MatGetPos(GetCI().GetWorldMat()).y); // remove after glm::vec3 replacement //Оси y не совпадают if (_invertY) pos.y = GetVPSize().y - (pos.y + text.GetVScroll()); @@ -933,23 +933,23 @@ void Context::SetTransform(const D3DXMATRIX& value) void Context::DrawPlane(Plane& plane) { - D3DXVECTOR3 pos3(Vec3FromVec2(plane.GetPos())); + glm::vec3 pos3(Vec3FromVec2(plane.GetPos())); glm::vec2 size = plane.GetSize()/2.0f; res::VertexPT planeBuf[4]; if (_invertY) { - planeBuf[0] = res::VertexPT(D3DXVECTOR3(Ceil(size.x + pos3.x) - 0.5f, Floor(-size.y + pos3.y) - 0.5f, 0), glm::vec2(1.0f, 1.0f)); - planeBuf[1] = res::VertexPT(D3DXVECTOR3(Ceil(size.x + pos3.x) - 0.5f, Ceil(size.y + pos3.y) - 0.5f, 0), glm::vec2(1.0f, 0.0f)); - planeBuf[2] = res::VertexPT(D3DXVECTOR3(Floor(-size.x + pos3.x) - 0.5f, Floor(-size.y + pos3.y) - 0.5f, 0), glm::vec2(0.0f, 1.0f)); - planeBuf[3] = res::VertexPT(D3DXVECTOR3(Floor(-size.x + pos3.x) - 0.5f, Ceil(size.y + pos3.y) - 0.5f, 0), glm::vec2(0.0f, 0.0f)); + planeBuf[0] = res::VertexPT(glm::vec3(Ceil(size.x + pos3.x) - 0.5f, Floor(-size.y + pos3.y) - 0.5f, 0), glm::vec2(1.0f, 1.0f)); + planeBuf[1] = res::VertexPT(glm::vec3(Ceil(size.x + pos3.x) - 0.5f, Ceil(size.y + pos3.y) - 0.5f, 0), glm::vec2(1.0f, 0.0f)); + planeBuf[2] = res::VertexPT(glm::vec3(Floor(-size.x + pos3.x) - 0.5f, Floor(-size.y + pos3.y) - 0.5f, 0), glm::vec2(0.0f, 1.0f)); + planeBuf[3] = res::VertexPT(glm::vec3(Floor(-size.x + pos3.x) - 0.5f, Ceil(size.y + pos3.y) - 0.5f, 0), glm::vec2(0.0f, 0.0f)); } else { - planeBuf[0] = res::VertexPT(D3DXVECTOR3(Ceil(size.x + pos3.x) - 0.5f, Floor(-size.y + pos3.y) - 0.5f, 0), glm::vec2(1.0f, 0.0f)); - planeBuf[1] = res::VertexPT(D3DXVECTOR3(Floor(-size.x + pos3.x) - 0.5f, Floor(-size.y + pos3.y) - 0.5f, 0), glm::vec2(0.0f, 0.0f)); - planeBuf[2] = res::VertexPT(D3DXVECTOR3(Ceil(size.x + pos3.x) - 0.5f, Ceil(size.y + pos3.y) - 0.5f, 0), glm::vec2(1.0f, 1.0f)); - planeBuf[3] = res::VertexPT(D3DXVECTOR3(Floor(-size.x + pos3.x) - 0.5f, Ceil(size.y + pos3.y) - 0.5f, 0), glm::vec2(0.0f, 1.0f)); + planeBuf[0] = res::VertexPT(glm::vec3(Ceil(size.x + pos3.x) - 0.5f, Floor(-size.y + pos3.y) - 0.5f, 0), glm::vec2(1.0f, 0.0f)); + planeBuf[1] = res::VertexPT(glm::vec3(Floor(-size.x + pos3.x) - 0.5f, Floor(-size.y + pos3.y) - 0.5f, 0), glm::vec2(0.0f, 0.0f)); + planeBuf[2] = res::VertexPT(glm::vec3(Ceil(size.x + pos3.x) - 0.5f, Ceil(size.y + pos3.y) - 0.5f, 0), glm::vec2(1.0f, 1.0f)); + planeBuf[3] = res::VertexPT(glm::vec3(Floor(-size.x + pos3.x) - 0.5f, Ceil(size.y + pos3.y) - 0.5f, 0), glm::vec2(0.0f, 1.0f)); }; BeginDrawGraphic(plane); @@ -1000,10 +1000,10 @@ void Context::DrawPlane3d(Plane3d& plane3d) const res::VertexPT planeBuf[4] = { - res::VertexPT(D3DXVECTOR3(size.x, -size.y, 0), glm::vec2(1.0f, 1.0f)), - res::VertexPT(D3DXVECTOR3(size.x, size.y, 0), glm::vec2(1.0f, 0.0f)), - res::VertexPT(D3DXVECTOR3(-size.x, -size.y, 0), glm::vec2(0.0f, 1.0f)), - res::VertexPT(D3DXVECTOR3(-size.x, size.y, 0), glm::vec2(0.0f, 0.0f)) + res::VertexPT(glm::vec3(size.x, -size.y, 0), glm::vec2(1.0f, 1.0f)), + res::VertexPT(glm::vec3(size.x, size.y, 0), glm::vec2(1.0f, 0.0f)), + res::VertexPT(glm::vec3(-size.x, -size.y, 0), glm::vec2(0.0f, 1.0f)), + res::VertexPT(glm::vec3(-size.x, size.y, 0), glm::vec2(0.0f, 0.0f)) }; GetDriver().GetDevice()->SetFVF(D3DFVF_XYZ | D3DFVF_TEX1); @@ -1026,13 +1026,13 @@ void Context::DrawView3d(View3d& view3d) if (!view3d.GetAlign()) maxScale += D3DXVec3Length(&aabb.GetCenter()); //размер поля в котором он отображается - D3DXVECTOR3 viewSize = D3DXVECTOR3(view3d.GetSize().x, view3d.GetSize().y, 0.0f); + glm::vec3 viewSize = glm::vec3(view3d.GetSize().x, view3d.GetSize().y, 0.0f); //размер по оси z вычисляет с прикидкой viewSize.z = (viewSize.x + viewSize.y) / 2.0f; //растягиваем меш до размера поля - D3DXVECTOR3 scale = viewSize / maxScale; - D3DXVECTOR3 pos = NullVector; + glm::vec3 scale = viewSize / maxScale; + glm::vec3 pos = NullVector; //центрируем if (view3d.GetAlign()) { @@ -1259,9 +1259,9 @@ void Widget::BuildMatrix(MatrixChange change) const glm::quat rot = glm::angleAxis(GetRot(), Vec3DxToGlm(ZVector)); - D3DXVECTOR3 pos = Vec3FromVec2(GetPos()); + glm::vec3 pos = Vec3FromVec2(GetPos()); - BuildWorldMatrix(pos, D3DXVECTOR3(_scale.x, _scale.y, 1.0f), rot, _matrix[mcLocal]); + BuildWorldMatrix(pos, glm::vec3(_scale.x, _scale.y, 1.0f), rot, _matrix[mcLocal]); break; } @@ -2044,12 +2044,12 @@ void Widget::SetCoord3d(bool value) TransformChanged(); } -const D3DXVECTOR3& Widget::GetPos3d() const +const glm::vec3& Widget::GetPos3d() const { return _pos3d; } -void Widget::SetPos3d(const D3DXVECTOR3& value) +void Widget::SetPos3d(const glm::vec3& value) { _pos3d = value; @@ -4320,7 +4320,7 @@ void ProgressBar::StructureChanged(StructChange change) float barSize = GetSize().x * _progress; _front->SetSize(glm::vec2(barSize, GetSize().y)); _front->SetPos(pos + glm::vec2(-GetSize().x/2.0f + barSize/2.0f, 0)); - _front->GetMaterial()->GetSampler().SetScale(D3DXVECTOR3(_progress, 1, 1)); + _front->GetMaterial()->GetSampler().SetScale(glm::vec3(_progress, 1, 1)); break; } case psVertical: @@ -4328,7 +4328,7 @@ void ProgressBar::StructureChanged(StructChange change) float barSize = GetSize().y * _progress; _front->SetSize(glm::vec2(GetSize().x, barSize)); _front->SetPos(pos + glm::vec2(0, GetSize().y/2.0f - barSize/2.0f)); - _front->GetMaterial()->GetSampler().SetScale(D3DXVECTOR3(1, _progress, 1)); + _front->GetMaterial()->GetSampler().SetScale(glm::vec3(1, _progress, 1)); break; } } @@ -5578,7 +5578,7 @@ glm::vec2 Manager::ScreenToView(const Point& point) return glm::vec2(static_cast(point.x), static_cast(point.y)); } -glm::vec2 Manager::WorldToView(const D3DXVECTOR3& coord) +glm::vec2 Manager::WorldToView(const glm::vec3& coord) { if (_camera3d == NULL) return NullVec2; diff --git a/src/Rock3dEngine/source/px/Physx.cpp b/src/Rock3dEngine/source/px/Physx.cpp index 48edd632..96d131f9 100644 --- a/src/Rock3dEngine/source/px/Physx.cpp +++ b/src/Rock3dEngine/source/px/Physx.cpp @@ -137,8 +137,8 @@ void Scene::ContactReport::onContactNotify(NxContactPair& pair, NxU32 events) contact1.events = events; contact1.deltaTime = _scene->_lastDeltaTime; contact1.stream = pair.stream; - contact1.sumNormalForce = D3DXVECTOR3(pair.sumNormalForce.get()); - contact1.sumFrictionForce = D3DXVECTOR3(pair.sumFrictionForce.get()); + contact1.sumNormalForce = glm::vec3(pair.sumNormalForce.get()); + contact1.sumFrictionForce = glm::vec3(pair.sumFrictionForce.get()); contact2 = contact1; contact1.actor = !pair.isDeletedActor[0] ? _scene->GetActorFromNx(pair.actors[0]) : 0; @@ -370,7 +370,7 @@ TriangleMesh::~TriangleMesh() SetMeshData(0); } -void TriangleMesh::LoadMesh(const D3DXVECTOR3& scale, int id, NxTriangleMeshDesc& desc) +void TriangleMesh::LoadMesh(const glm::vec3& scale, int id, NxTriangleMeshDesc& desc) { LSL_ASSERT(_meshData); @@ -378,7 +378,7 @@ void TriangleMesh::LoadMesh(const D3DXVECTOR3& scale, int id, NxTriangleMeshDesc _meshData->Load(); if (!_meshData->vb.GetFormat(res::VertexData::vtPos3)) - throw lsl::Error("NxTriangleMesh* TriangleMesh::GetOrCreateMesh(const D3DXVECTOR3& scale)"); + throw lsl::Error("NxTriangleMesh* TriangleMesh::GetOrCreateMesh(const glm::vec3& scale)"); bool scaling = (scale != IdentityVector) == TRUE; //scaling = false; @@ -388,9 +388,9 @@ void TriangleMesh::LoadMesh(const D3DXVECTOR3& scale, int id, NxTriangleMeshDesc int sFace = id < 0 ? 0 : _meshData->faceGroups[id].sFace; int faceCnt = id < 0 ? _meshData->fb.GetFaceCount() : _meshData->faceGroups[id].faceCnt; - D3DXVECTOR3* vertices = new D3DXVECTOR3[vertCnt]; + glm::vec3* vertices = new glm::vec3[vertCnt]; //Если в формате вершины только позиция, то копируется буффер целиком - if (_meshData->vb.GetVertexSize() == sizeof(D3DXVECTOR3)) + if (_meshData->vb.GetVertexSize() == sizeof(glm::vec3)) { _meshData->vb.CopyDataTo(vertices, sVertex, vertCnt); if (scaling) @@ -407,7 +407,7 @@ void TriangleMesh::LoadMesh(const D3DXVECTOR3& scale, int id, NxTriangleMeshDesc } desc.numVertices = vertCnt; - desc.pointStrideBytes = sizeof(D3DXVECTOR3); + desc.pointStrideBytes = sizeof(glm::vec3); desc.points = vertices; desc.numTriangles = faceCnt; desc.triangleStrideBytes = _meshData->fb.GetFaceSize(); @@ -420,7 +420,7 @@ void TriangleMesh::FreeMesh(NxTriangleMeshDesc& desc) delete desc.points; } -TriangleMesh::MeshList::iterator TriangleMesh::GetOrCreateMesh(const D3DXVECTOR3& scale, int id) +TriangleMesh::MeshList::iterator TriangleMesh::GetOrCreateMesh(const glm::vec3& scale, int id) { MeshVal val; val.scale = scale; @@ -446,7 +446,7 @@ void TriangleMesh::ReleaseMesh(MeshList::iterator iter) } } -NxTriangleMesh* TriangleMesh::GetOrCreateTri(const D3DXVECTOR3& scale, int id) +NxTriangleMesh* TriangleMesh::GetOrCreateTri(const glm::vec3& scale, int id) { MeshList::iterator mesh = GetOrCreateMesh(scale, id); ++(mesh->triRef); @@ -489,7 +489,7 @@ void TriangleMesh::ReleaseTri(NxTriangleMesh* mesh) LSL_ASSERT(false); } -NxConvexMesh* TriangleMesh::GetOrCreateConvex(const D3DXVECTOR3& scale, int id) +NxConvexMesh* TriangleMesh::GetOrCreateConvex(const glm::vec3& scale, int id) { MeshList::iterator mesh = GetOrCreateMesh(scale, id); ++(mesh->convexRef); @@ -590,9 +590,9 @@ void Shape::ReloadNxShape(bool allowInitialization) GetActor()->ReloadNxShape(this, allowInitialization); } -D3DXVECTOR3 Shape::TransformLocalPos(const D3DXVECTOR3& inValue) +glm::vec3 Shape::TransformLocalPos(const glm::vec3& inValue) { - D3DXVECTOR3 tmp; + glm::vec3 tmp; GetActor()->LocalToWorldPos(_pos, tmp, true); return tmp; } @@ -691,12 +691,12 @@ NxShape* Shape::GetNxShape() return _nxShape; } -const D3DXVECTOR3& Shape::GetPos() const +const glm::vec3& Shape::GetPos() const { return _pos; } -void Shape::SetPos(const D3DXVECTOR3& value) +void Shape::SetPos(const glm::vec3& value) { _pos = value; if (_nxShape) @@ -715,12 +715,12 @@ void Shape::SetRot(const glm::quat& value) SyncRot(); } -const D3DXVECTOR3& Shape::GetScale() const +const glm::vec3& Shape::GetScale() const { return _scale; } -void Shape::SetScale(D3DXVECTOR3& value) +void Shape::SetScale(glm::vec3& value) { _scale = value; if (_nxShape) @@ -835,12 +835,12 @@ NxPlaneShape* PlaneShape::GetNxShape() return static_cast(_MyBase::GetNxShape()); } -const D3DXVECTOR3& PlaneShape::GetNormal() const +const glm::vec3& PlaneShape::GetNormal() const { return _normal; } -void PlaneShape::SetNormal(const D3DXVECTOR3& value) +void PlaneShape::SetNormal(const glm::vec3& value) { _normal = value; @@ -907,12 +907,12 @@ NxBoxShape* BoxShape::GetNxShape() return static_cast(_MyBase::GetNxShape()); } -const D3DXVECTOR3& BoxShape::GetDimensions() const +const glm::vec3& BoxShape::GetDimensions() const { return _dimensions; } -void BoxShape::SetDimensions(const D3DXVECTOR3& value) +void BoxShape::SetDimensions(const glm::vec3& value) { if (_dimensions != value) { @@ -1553,7 +1553,7 @@ void Body::Save(lsl::SWriter* writer) { writer->WriteValue("mass", _desc.mass); - D3DXVECTOR3 massLocalPose[4]; + glm::vec3 massLocalPose[4]; for (int i = 0; i < 3; ++i) massLocalPose[i] = _desc.massLocalPose.M.getRow(i).get(); massLocalPose[3] = _desc.massLocalPose.t.get(); @@ -1563,14 +1563,14 @@ void Body::Save(lsl::SWriter* writer) writer->WriteValue("sleepEnergyThreshold", _desc.sleepEnergyThreshold); - lsl::SWriteValue(writer, "linearVelocity", D3DXVECTOR3(_desc.linearVelocity.get())); + lsl::SWriteValue(writer, "linearVelocity", glm::vec3(_desc.linearVelocity.get())); } void Body::Load(lsl::SReader* reader) { reader->ReadValue("mass", _desc.mass); - D3DXVECTOR3 massLocalPose[4]; + glm::vec3 massLocalPose[4]; if (reader->ReadValue("massLocalPose", massLocalPose[0], 12)) { for (int i = 0; i < 3; ++i) @@ -1582,7 +1582,7 @@ void Body::Load(lsl::SReader* reader) reader->ReadValue("sleepEnergyThreshold", _desc.sleepEnergyThreshold); - D3DXVECTOR3 linearVelocity; + glm::vec3 linearVelocity; lsl::SReadValue(reader, "linearVelocity", linearVelocity); _desc.linearVelocity = NxVec3(linearVelocity); } @@ -1665,8 +1665,8 @@ void Actor::CreateNxShape(Shape* shape) LSL_ASSERT(_nxActor && !shape->_nxShape); NxShapeDesc* shapeDesc = shape->CreateDesc(); - D3DXVECTOR3 pos; - LocalToWorldPos(D3DXVECTOR3(shapeDesc->localPose.t.get()), pos, true); + glm::vec3 pos; + LocalToWorldPos(glm::vec3(shapeDesc->localPose.t.get()), pos, true); shapeDesc->localPose.t.set(pos); //not all conditions is completed to create nxShape (neccesary params will be set next, NxTriangleMesh for example) @@ -1944,7 +1944,7 @@ void Actor::RemoveChild(Actor* child) child->InitNxActor(); } -void Actor::LocalToWorldPos(const D3DXVECTOR3& inValue, D3DXVECTOR3& outValue, bool nxActorSpace) +void Actor::LocalToWorldPos(const glm::vec3& inValue, glm::vec3& outValue, bool nxActorSpace) { outValue = inValue; Actor* curNode = this; @@ -1955,7 +1955,7 @@ void Actor::LocalToWorldPos(const D3DXVECTOR3& inValue, D3DXVECTOR3& outValue, b } } -void Actor::WorldToLocalPos(const D3DXVECTOR3& inValue, D3DXVECTOR3& outValue, bool nxActorSpace) +void Actor::WorldToLocalPos(const glm::vec3& inValue, glm::vec3& outValue, bool nxActorSpace) { outValue = inValue; } @@ -1963,9 +1963,9 @@ void Actor::WorldToLocalPos(const D3DXVECTOR3& inValue, D3DXVECTOR3& outValue, b BoxShape& Actor::AddBBShape(const AABB& aabb, const NxBoxShapeDesc& desc) { NxBoxShapeDesc descShape = desc; - D3DXVECTOR3 sizes = aabb.GetSizes(); + glm::vec3 sizes = aabb.GetSizes(); sizes /= 2.0f; - D3DXVECTOR3 pos = aabb.GetCenter(); + glm::vec3 pos = aabb.GetCenter(); descShape.dimensions.set(sizes); descShape.localPose.t.set(pos); px::BoxShape& bbShape = GetShapes().Add(); @@ -2095,7 +2095,7 @@ void Actor::SetContactReportFlag(unsigned value, bool set) SetContactReportFlags(set ? _desc.contactReportFlags | value : _desc.contactReportFlags ^ value); } -const D3DXVECTOR3& Actor::GetPos() const +const glm::vec3& Actor::GetPos() const { if (!_parent && _nxActor) _nxActor->getGlobalPosition().get(_pos); @@ -2103,7 +2103,7 @@ const D3DXVECTOR3& Actor::GetPos() const return _pos; } -void Actor::SetPos(const D3DXVECTOR3& value) +void Actor::SetPos(const glm::vec3& value) { _pos = value; if (_nxActor) @@ -2141,12 +2141,12 @@ void Actor::SetRot(const glm::quat& value) } } -const D3DXVECTOR3& Actor::GetScale() const +const glm::vec3& Actor::GetScale() const { return _scale; } -void Actor::SetScale(const D3DXVECTOR3& value) +void Actor::SetScale(const glm::vec3& value) { _scale = value; if (_nxActor) @@ -2156,10 +2156,10 @@ void Actor::SetScale(const D3DXVECTOR3& value) } } -D3DXVECTOR3 Actor::GetWorldScale() const +glm::vec3 Actor::GetWorldScale() const { const Actor* actor = this; - D3DXVECTOR3 scale = IdentityVector; + glm::vec3 scale = IdentityVector; while (actor) { diff --git a/src/Rock3dEngine/source/res/GraphResource.cpp b/src/Rock3dEngine/source/res/GraphResource.cpp index eeefa51f..4c502f39 100644 --- a/src/Rock3dEngine/source/res/GraphResource.cpp +++ b/src/Rock3dEngine/source/res/GraphResource.cpp @@ -10,14 +10,14 @@ namespace res const int VertexData::cElementSize[cElementEnd] = { - sizeof(D3DXVECTOR3), + sizeof(glm::vec3), sizeof(D3DXVECTOR4), - sizeof(D3DXVECTOR3), + sizeof(glm::vec3), sizeof(D3DCOLOR), sizeof(glm::vec2), sizeof(glm::vec2), - sizeof(D3DXVECTOR3), - sizeof(D3DXVECTOR3) + sizeof(glm::vec3), + sizeof(glm::vec3) }; MeshData::ResFormats meshResFormats; @@ -28,7 +28,7 @@ VertexP::VertexP() { } -VertexP::VertexP(const D3DXVECTOR3& mPos): pos(mPos) +VertexP::VertexP(const glm::vec3& mPos): pos(mPos) { } @@ -36,7 +36,7 @@ VertexPD::VertexPD() { } -VertexPD::VertexPD(D3DXVECTOR3 position, D3DCOLOR diffuseColor): pos(position), diffuse(diffuseColor) +VertexPD::VertexPD(glm::vec3 position, D3DCOLOR diffuseColor): pos(position), diffuse(diffuseColor) { } @@ -44,7 +44,7 @@ VertexPN::VertexPN() { } -VertexPN::VertexPN(D3DXVECTOR3 position, D3DXVECTOR3 normal): pos(position), norm(normal) +VertexPN::VertexPN(glm::vec3 position, glm::vec3 normal): pos(position), norm(normal) { } @@ -52,7 +52,7 @@ VertexPT::VertexPT() { } -VertexPT::VertexPT(D3DXVECTOR3 position, glm::vec2 texCoord): pos(position), tex(texCoord) +VertexPT::VertexPT(glm::vec3 position, glm::vec2 texCoord): pos(position), tex(texCoord) { } @@ -60,7 +60,7 @@ VertexPNT::VertexPNT() { } -VertexPNT::VertexPNT(const D3DXVECTOR3& position, const D3DXVECTOR3& normal, const glm::vec2& texCoord): pos(position), norm(normal), tex(texCoord) +VertexPNT::VertexPNT(const glm::vec3& position, const glm::vec3& normal, const glm::vec2& texCoord): pos(position), norm(normal), tex(texCoord) { } @@ -275,12 +275,12 @@ DWORD VertexData::GetFVF() const return fvf; } -const D3DXVECTOR3& VertexData::GetMinPos() const +const glm::vec3& VertexData::GetMinPos() const { return _minPos; } -const D3DXVECTOR3& VertexData::GetMaxPos() const +const glm::vec3& VertexData::GetMaxPos() const { return _maxPos; } @@ -318,14 +318,14 @@ VertexIter::VertexIter(unsigned index, VertexData* owner): _index(index), _owner { } -const D3DXVECTOR3* VertexIter::Pos3() const +const glm::vec3* VertexIter::Pos3() const { - return reinterpret_cast(_owner->GetVertex(_index, VertexData::vtPos3)); + return reinterpret_cast(_owner->GetVertex(_index, VertexData::vtPos3)); } -D3DXVECTOR3* VertexIter::Pos3() +glm::vec3* VertexIter::Pos3() { - return reinterpret_cast(_owner->GetVertex(_index, VertexData::vtPos3)); + return reinterpret_cast(_owner->GetVertex(_index, VertexData::vtPos3)); } D3DXVECTOR4* VertexIter::Pos4() @@ -348,19 +348,19 @@ glm::vec2* VertexIter::Tex1() return reinterpret_cast(_owner->GetVertex(_index, VertexData::vtTex1)); } -D3DXVECTOR3* VertexIter::Normal() +glm::vec3* VertexIter::Normal() { - return reinterpret_cast(_owner->GetVertex(_index, VertexData::vtNormal)); + return reinterpret_cast(_owner->GetVertex(_index, VertexData::vtNormal)); } -D3DXVECTOR3* VertexIter::Tangent() +glm::vec3* VertexIter::Tangent() { - return reinterpret_cast(_owner->GetVertex(_index, VertexData::vtTangent)); + return reinterpret_cast(_owner->GetVertex(_index, VertexData::vtTangent)); } -D3DXVECTOR3* VertexIter::Binormal() +glm::vec3* VertexIter::Binormal() { - return reinterpret_cast(_owner->GetVertex(_index, VertexData::vtBinormal)); + return reinterpret_cast(_owner->GetVertex(_index, VertexData::vtBinormal)); } const char* VertexIter::GetElem(VertexData::Element element) const @@ -517,10 +517,10 @@ MeshData::~MeshData() Free(); } -void CalcTangentBasis(const D3DXVECTOR3 &p1, const D3DXVECTOR3 &p2, const D3DXVECTOR3 &p3, const glm::vec2 &t1, const glm::vec2 &t2, const glm::vec2 &t3, D3DXVECTOR3& tangent, D3DXVECTOR3& binormal) +void CalcTangentBasis(const glm::vec3 &p1, const glm::vec3 &p2, const glm::vec3 &p3, const glm::vec2 &t1, const glm::vec2 &t2, const glm::vec2 &t3, glm::vec3& tangent, glm::vec3& binormal) { - D3DXVECTOR3 e1 = p2 - p1; - D3DXVECTOR3 e2 = p3 - p1; + glm::vec3 e1 = p2 - p1; + glm::vec3 e2 = p3 - p1; glm::vec2 et1 = t2 - t1; glm::vec2 et2 = t3 - t1; @@ -569,7 +569,7 @@ void MeshData::DoUpdate() { int triIndex = fb.GetIndex(fg.sFace + j, k); VertexIter iter = vb[triIndex]; - const D3DXVECTOR3* pos = iter.Pos3(); + const glm::vec3* pos = iter.Pos3(); if (j == 0 && k == 0) fg.minPos = fg.maxPos = *pos; @@ -608,7 +608,7 @@ void MeshData::CalcTangentSpace() unsigned b = fb.GetIndex(i, 1); unsigned c = fb.GetIndex(i, 2); - D3DXVECTOR3 bin, tan; + glm::vec3 bin, tan; CalcTangentBasis(*vb[a].Pos3(), *vb[b].Pos3(), *vb[c].Pos3(), *vb[a].Tex0(), *vb[b].Tex0(), *vb[c].Tex0(), tan, bin); *vb[a].Tangent() += tan; @@ -625,12 +625,12 @@ void MeshData::CalcTangentSpace() D3DXVec3Normalize(vb[i].Tangent(), vb[i].Tangent()); D3DXVec3Normalize(vb[i].Binormal(), vb[i].Binormal()); - D3DXVECTOR3 tmpT = *vb[i].Tangent(); - D3DXVECTOR3 tmpB = *vb[i].Binormal(); - D3DXVECTOR3 tmpN = *vb[i].Normal(); + glm::vec3 tmpT = *vb[i].Tangent(); + glm::vec3 tmpB = *vb[i].Binormal(); + glm::vec3 tmpN = *vb[i].Normal(); - D3DXVECTOR3 newT = tmpT - (D3DXVec3Dot(&tmpN, &tmpT) * tmpN); - D3DXVECTOR3 newB = tmpB - (D3DXVec3Dot(&tmpN, &tmpB) * tmpN) - (D3DXVec3Dot(&newT, &tmpB) * newT); + glm::vec3 newT = tmpT - (D3DXVec3Dot(&tmpN, &tmpT) * tmpN); + glm::vec3 newB = tmpB - (D3DXVec3Dot(&tmpN, &tmpB) * tmpN) - (D3DXVec3Dot(&newT, &tmpB) * newT); D3DXVec3Normalize(&newT, &newT); D3DXVec3Normalize(&newB, &newB); *vb[i].Tangent() = newT; @@ -648,7 +648,7 @@ void MeshData::CalcTangentSpace() D3DXVec3Cross(vb[i].Tangent(), vb[i].Binormal(), &tmpN); else { - D3DXVECTOR3 startAxis; + glm::vec3 startAxis; if (D3DXVec3Dot(&XVector, &tmpN) < D3DXVec3Dot(&YVector, &tmpN)) startAxis = XVector; else diff --git a/src/Rock3dGame/header/edit/Map.h b/src/Rock3dGame/header/edit/Map.h index 9eb673c1..e9ebce82 100644 --- a/src/Rock3dGame/header/edit/Map.h +++ b/src/Rock3dGame/header/edit/Map.h @@ -21,11 +21,11 @@ class MapObj: public IMapObj, public ExternImpl const std::string& GetName() const; IMapObjRecRef MapObj::GetRecord(); - D3DXVECTOR3 GetPos() const; - void SetPos(const D3DXVECTOR3& value); + glm::vec3 GetPos() const; + void SetPos(const glm::vec3& value); - D3DXVECTOR3 GetScale() const; - void SetScale(const D3DXVECTOR3& value); + glm::vec3 GetScale() const; + void SetScale(const glm::vec3& value); glm::quat GetRot() const; void SetRot(const glm::quat& value); @@ -54,7 +54,7 @@ class Map: public IMap virtual ~NodeControl(); void Select(bool active); - void OnShiftAction(const D3DXVECTOR3& scrRayPos, const D3DXVECTOR3& scrRayVec); + void OnShiftAction(const glm::vec3& scrRayPos, const glm::vec3& scrRayVec); }; public: typedef game::Map Inst; @@ -63,7 +63,7 @@ class Map: public IMap ITrace* _trace; bool _showBB; - game::MapObj* PickInstMapObj(const D3DXVECTOR3& rayPos, const D3DXVECTOR3& rayVec); + game::MapObj* PickInstMapObj(const glm::vec3& rayPos, const glm::vec3& rayVec); void ApplyShowBB(); void OnUpdateLevel(); diff --git a/src/Rock3dGame/header/edit/SceneControl.h b/src/Rock3dGame/header/edit/SceneControl.h index 7ed729b3..37443ba9 100644 --- a/src/Rock3dGame/header/edit/SceneControl.h +++ b/src/Rock3dGame/header/edit/SceneControl.h @@ -22,13 +22,13 @@ class SceneControl: public ISceneControl bool _clDrag; bool _startDrag; - D3DXVECTOR3 _clDragOff; + glm::vec3 _clDragOff; // graph::MovCoordSys::DirMove _clDirMove; - D3DXVECTOR3 _clDirOff; + glm::vec3 _clDirOff; // graph::ScaleCoordSys::DirMove _clScDirMove; - D3DXVECTOR3 _clStScale; + glm::vec3 _clStScale; // bool _clRotating; glm::quat _clStartRot; @@ -51,8 +51,8 @@ class SceneControl: public ISceneControl graph::MovCoordSys* _movCoordSys; graph::ScaleCoordSys* _scaleCoordSys; - bool ComputeAxeLink(const AABB& aabb, const D3DXMATRIX& aabbToWorld, const D3DXMATRIX& worldToAABB, const D3DXVECTOR3& normOff, INode* ignore, float& outDistOff, const float distLink = 1.0f); - void ComputeLink(INode* node, const D3DXVECTOR3& pos, D3DXVECTOR3& resPos); + bool ComputeAxeLink(const AABB& aabb, const D3DXMATRIX& aabbToWorld, const D3DXMATRIX& worldToAABB, const glm::vec3& normOff, INode* ignore, float& outDistOff, const float distLink = 1.0f); + void ComputeLink(INode* node, const glm::vec3& pos, glm::vec3& resPos); void CreateGraphActor(); void ReleaseGraphActor(); @@ -66,8 +66,8 @@ class SceneControl: public ISceneControl SceneControl(Edit* edit); virtual ~SceneControl(); - D3DXVECTOR3 ComputePoint(const D3DXVECTOR3& curPos, const D3DXVECTOR3& rayStart, const D3DXVECTOR3& rayVec, DirMove dirMove, const D3DXVECTOR3& centerOff); - D3DXVECTOR3 ComputePos(INode* node, const D3DXVECTOR3& rayStart, const D3DXVECTOR3& rayVec, DirMove dirMove, const D3DXVECTOR3& centerOff); + glm::vec3 ComputePoint(const glm::vec3& curPos, const glm::vec3& rayStart, const glm::vec3& rayVec, DirMove dirMove, const glm::vec3& centerOff); + glm::vec3 ComputePos(INode* node, const glm::vec3& rayStart, const glm::vec3& rayVec, DirMove dirMove, const glm::vec3& centerOff); INodeRef GetSelNode(); void SelectNode(const INodeRef& node); diff --git a/src/Rock3dGame/header/edit/Trace.h b/src/Rock3dGame/header/edit/Trace.h index e0155ef9..1fded078 100644 --- a/src/Rock3dGame/header/edit/Trace.h +++ b/src/Rock3dGame/header/edit/Trace.h @@ -67,12 +67,12 @@ class Trace: public ITrace, public ExternImpl ControlEventRef _event; game::TraceGfx::PointLink* _link; - D3DXVECTOR3 _dragRayPos; - D3DXVECTOR3 _dragRayVec; + glm::vec3 _dragRayPos; + glm::vec3 _dragRayVec; void Reset(game::WayPoint* wayPoint); - void NewLink(const D3DXVECTOR3& scrRayPos, const D3DXVECTOR3& scrRayVec); + void NewLink(const glm::vec3& scrRayPos, const glm::vec3& scrRayVec); void FreeLink(); bool CreateWay(game::WayNode* curNode, game::WayPoint* point, game::WayNode* node); public: @@ -80,27 +80,27 @@ class Trace: public ITrace, public ExternImpl virtual ~NodeControl(); void Select(bool active); - bool RayCastInters(const D3DXVECTOR3& rayPos, const D3DXVECTOR3& rayVec) const; + bool RayCastInters(const glm::vec3& rayPos, const glm::vec3& rayVec) const; bool Compare(const IMapObjRef& node) const; - virtual void OnStartDrag(const D3DXVECTOR3& scrRayPos, const D3DXVECTOR3& scrRayVec); - virtual void OnEndDrag(const D3DXVECTOR3& scrRayPos, const D3DXVECTOR3& scrRayVec); - virtual void OnDrag(const D3DXVECTOR3& pos, const D3DXVECTOR3& scrRayPos, const D3DXVECTOR3& scrRayVec); + virtual void OnStartDrag(const glm::vec3& scrRayPos, const glm::vec3& scrRayVec); + virtual void OnEndDrag(const glm::vec3& scrRayPos, const glm::vec3& scrRayVec); + virtual void OnDrag(const glm::vec3& pos, const glm::vec3& scrRayPos, const glm::vec3& scrRayVec); // - virtual void OnShiftAction(const D3DXVECTOR3& scrRayPos, const D3DXVECTOR3& scrRayVec); + virtual void OnShiftAction(const glm::vec3& scrRayPos, const glm::vec3& scrRayVec); - D3DXVECTOR3 GetPos() const; - void SetPos(const D3DXVECTOR3& value); + glm::vec3 GetPos() const; + void SetPos(const glm::vec3& value); // glm::quat GetRot() const; void SetRot(const glm::quat& value); // - D3DXVECTOR3 GetScale() const; - void SetScale(const D3DXVECTOR3& value); + glm::vec3 GetScale() const; + void SetScale(const glm::vec3& value); // - D3DXVECTOR3 GetDir() const; - D3DXVECTOR3 GetRight() const; - D3DXVECTOR3 GetUp() const; + glm::vec3 GetDir() const; + glm::vec3 GetRight() const; + glm::vec3 GetUp() const; D3DXMATRIX GetMat() const; AABB GetAABB() const; @@ -113,7 +113,7 @@ class Trace: public ITrace, public ExternImpl IWayNodeRef _selNode; bool _enableVisualize; - game::WayPoint* PickInstPoint(const D3DXVECTOR3& rayPos, const D3DXVECTOR3& rayVec); + game::WayPoint* PickInstPoint(const glm::vec3& rayPos, const glm::vec3& rayVec); protected: virtual VirtImpl* GetImpl() {return this;} public: diff --git a/src/Rock3dGame/header/edit/Utils.h b/src/Rock3dGame/header/edit/Utils.h index 3b4c80f4..642cfd5e 100644 --- a/src/Rock3dGame/header/edit/Utils.h +++ b/src/Rock3dGame/header/edit/Utils.h @@ -18,21 +18,21 @@ class ScNodeCont: public IScNodeCont ScNodeCont(graph::BaseSceneNode* node); virtual ~ScNodeCont(); - virtual bool RayCastInters(const D3DXVECTOR3& rayPos, const D3DXVECTOR3& rayVec) const; + virtual bool RayCastInters(const glm::vec3& rayPos, const glm::vec3& rayVec) const; virtual bool Compare(const IMapObjRef& node) const; - virtual D3DXVECTOR3 GetPos() const; - virtual void SetPos(const D3DXVECTOR3& value); + virtual glm::vec3 GetPos() const; + virtual void SetPos(const glm::vec3& value); // virtual glm::quat GetRot() const; virtual void SetRot(const glm::quat& value); // - virtual D3DXVECTOR3 GetScale() const; - virtual void SetScale(const D3DXVECTOR3& value); + virtual glm::vec3 GetScale() const; + virtual void SetScale(const glm::vec3& value); // - virtual D3DXVECTOR3 GetDir() const; - virtual D3DXVECTOR3 GetRight() const; - virtual D3DXVECTOR3 GetUp() const; + virtual glm::vec3 GetDir() const; + virtual glm::vec3 GetRight() const; + virtual glm::vec3 GetUp() const; virtual D3DXMATRIX GetMat() const; //В локальных координатах, включая дочерние узлы diff --git a/src/Rock3dGame/header/game/CameraManager.h b/src/Rock3dGame/header/game/CameraManager.h index 4b38d5e9..00f86d22 100644 --- a/src/Rock3dGame/header/game/CameraManager.h +++ b/src/Rock3dGame/header/game/CameraManager.h @@ -22,9 +22,9 @@ class CameraManager: public ICameraManager float _staticFloat1; float _staticFloat2; - D3DXVECTOR3 _staticVec1; - D3DXVECTOR3 _staticVec2; - D3DXVECTOR3 _staticVec3; + glm::vec3 _staticVec1; + glm::vec3 _staticVec2; + glm::vec3 _staticVec3; glm::quat _staticQuat1; bool OnMouseMoveEvent(const MouseMove& mMove); @@ -45,14 +45,14 @@ class CameraManager: public ICameraManager float _near; float _far; D3DXVECTOR4 _clampAngle; - D3DXVECTOR3 _angleSpeed; - D3DXVECTOR3 _stableAngle; - D3DXVECTOR3 _lastFreePos; + glm::vec3 _angleSpeed; + glm::vec3 _stableAngle; + glm::vec3 _lastFreePos; glm::quat _lastFreeRot; - D3DXVECTOR3 _flySPos; + glm::vec3 _flySPos; glm::quat _flySRot; - D3DXVECTOR3 _flyPos; + glm::vec3 _flyPos; glm::quat _flyRot; float _flyCurTime; float _flyTime; @@ -69,12 +69,12 @@ class CameraManager: public ICameraManager ~CameraManager(); //z - координата глубины относительно zNear. [0..1] <--> [zNear..zFar] - D3DXVECTOR3 ScreenToWorld(const lsl::Point& coord, float z); - glm::vec2 WorldToScreen(const D3DXVECTOR3& coord); - void ScreenToRay(const lsl::Point& coord, D3DXVECTOR3& rayStart, D3DXVECTOR3& rayVec); - bool ScreenPixelRayCastWithPlaneXY(const lsl::Point& coord, D3DXVECTOR3& outVec); + glm::vec3 ScreenToWorld(const lsl::Point& coord, float z); + glm::vec2 WorldToScreen(const glm::vec3& coord); + void ScreenToRay(const lsl::Point& coord, glm::vec3& rayStart, glm::vec3& rayVec); + bool ScreenPixelRayCastWithPlaneXY(const lsl::Point& coord, glm::vec3& outVec); - void FlyTo(const D3DXVECTOR3& pos, const glm::quat& rot, float time); + void FlyTo(const glm::vec3& pos, const glm::quat& rot, float time); void StopFly(); bool InFly(); @@ -83,11 +83,11 @@ class CameraManager: public ICameraManager const D3DXVECTOR4& GetClampAngle() const; void SetClampAngle(const D3DXVECTOR4& value); - const D3DXVECTOR3& GetAngleSpeed(); - void SetAngleSpeed(const D3DXVECTOR3& value); + const glm::vec3& GetAngleSpeed(); + void SetAngleSpeed(const glm::vec3& value); - const D3DXVECTOR3& GetStableAngle(); - void SetStableAngle(const D3DXVECTOR3& value); + const glm::vec3& GetStableAngle(); + void SetStableAngle(const glm::vec3& value); Style GetStyle() const; void ChangeStyle(Style value); @@ -95,9 +95,9 @@ class CameraManager: public ICameraManager float GetAspect() const; void SetAspect(float value); - D3DXVECTOR3 GetPos() const; - D3DXVECTOR3 GetDir() const; - D3DXVECTOR3 GetRight() const; + glm::vec3 GetPos() const; + glm::vec3 GetDir() const; + glm::vec3 GetRight() const; float GetNear() const; void SetNear(float value); @@ -114,7 +114,7 @@ class CameraManager: public ICameraManager GraphManager::LightSrc* GetLight(); void SetLight(GraphManager::LightSrc* value); - void GetObserverCoord(const D3DXVECTOR3& targetPos, float targetDist, D3DXVECTOR3* pos, glm::quat& rot, const glm::vec2& dMPos, float deltaTime, bool dragX, bool dragY, bool restoreY, D3DXVECTOR3* camPos, glm::quat* camQuat, float* dir); + void GetObserverCoord(const glm::vec3& targetPos, float targetDist, glm::vec3* pos, glm::quat& rot, const glm::vec2& dMPos, float deltaTime, bool dragX, bool dragY, bool restoreY, glm::vec3* camPos, glm::quat* camQuat, float* dir); }; } diff --git a/src/Rock3dGame/header/game/ControlManager.h b/src/Rock3dGame/header/game/ControlManager.h index 7740a56f..4e39686a 100644 --- a/src/Rock3dGame/header/game/ControlManager.h +++ b/src/Rock3dGame/header/game/ControlManager.h @@ -19,8 +19,8 @@ struct MouseClick glm::vec2 projCoord; //экранный луч в мировом пространстве - D3DXVECTOR3 scrRayPos; - D3DXVECTOR3 scrRayVec; + glm::vec3 scrRayPos; + glm::vec3 scrRayVec; }; struct MouseMove @@ -41,8 +41,8 @@ struct MouseMove MouseClick click; //экранный луч в мировом пространстве - D3DXVECTOR3 scrRayPos; - D3DXVECTOR3 scrRayVec; + glm::vec3 scrRayPos; + glm::vec3 scrRayVec; }; enum AsyncKey diff --git a/src/Rock3dGame/header/game/DataBase.h b/src/Rock3dGame/header/game/DataBase.h index a479bbb7..2242c9df 100644 --- a/src/Rock3dGame/header/game/DataBase.h +++ b/src/Rock3dGame/header/game/DataBase.h @@ -28,16 +28,16 @@ class DataBase: public Component CarDesc(): mass(0), centerMassPos(NullVector), bodyScale(IdentityVector), bodyOffset(NullVector), bodyAABB(NullAABB), bodyOffsetModel(NullVector), bodyScaleModel(IdentityVector), wheelRadius(0), wheelScaleModel(IdentityVector), inverseWheelMass(0), maxSpeed(0), tireSpring(2.0f), steerSpeed(D3DX_PI/1.6f), steerRot(D3DX_PI), flyYTorque(D3DX_PI/2), clampXTorque(0), clampYTorque(0), angDamping(1, 1, 0), maxRPM(7000), frontWheelDrive(true), backWheelDrive(false), gravEngine(false), clutchImmunity(false), wheelEff(true), halfWheelEff(false), guseniza(false), podushka(false), wakeFrictionModel(false), suspensionTravel(0), suspensionSpring(0), suspensionDamper(0), suspensionTarget(0), soundMotorIdle(""), soundMotorHigh(""), motorVolumeRange(0, 1), motorFreqRange(0, 1), bump(false) {} float mass; - D3DXVECTOR3 centerMassPos; - D3DXVECTOR3 bodyScale; - D3DXVECTOR3 bodyOffset; + glm::vec3 centerMassPos; + glm::vec3 bodyScale; + glm::vec3 bodyOffset; AABB bodyAABB; - D3DXVECTOR3 bodyOffsetModel; - D3DXVECTOR3 bodyScaleModel; + glm::vec3 bodyOffsetModel; + glm::vec3 bodyScaleModel; float wheelRadius; - std::vector wheelOffsetModel; - D3DXVECTOR3 wheelScaleModel; + std::vector wheelOffsetModel; + glm::vec3 wheelScaleModel; float inverseWheelMass; float maxSpeed; float tireSpring; @@ -46,7 +46,7 @@ class DataBase: public Component float flyYTorque; float clampXTorque; float clampYTorque; - D3DXVECTOR3 angDamping; + glm::vec3 angDamping; int maxRPM; bool frontWheelDrive; @@ -123,16 +123,16 @@ class DataBase: public Component // px::BoxShape* AddPxBox(MapObj* mapObj, const AABB& aabb); px::BoxShape* AddPxBox(MapObj* mapObj); - px::CapsuleShape* AddPxCapsule(MapObj* mapObj, float radius, float height, const D3DXVECTOR3& dir, const D3DXVECTOR3& up); + px::CapsuleShape* AddPxCapsule(MapObj* mapObj, float radius, float height, const glm::vec3& dir, const glm::vec3& up); px::CapsuleShape* AddPxCapsule(MapObj* mapObj); px::SphereShape* AddPxSpere(MapObj* mapObj, float radius); px::TriangleMeshShape* AddPxMesh(MapObj* mapObj, const std::string& meshName, int meshId = -1); px::ConvexShape* AddPxConvex(MapObj* mapObj, const std::string& meshName, int meshId = -1); px::Body* AddPxBody(MapObj* mapObj, const NxBodyDesc& desc); - px::Body* AddPxBody(MapObj* mapObj, float mass, const D3DXVECTOR3* massPos); + px::Body* AddPxBody(MapObj* mapObj, float mass, const glm::vec3* massPos); // - CarWheel* AddWheel(unsigned index, GameCar& car, const std::string& meshName, const std::string& matName, const D3DXVECTOR3& pos, bool steer, bool lead, CarWheel* master, const CarDesc& carDesc); + CarWheel* AddWheel(unsigned index, GameCar& car, const std::string& meshName, const std::string& matName, const glm::vec3& pos, bool steer, bool lead, CarWheel* master, const CarDesc& carDesc); // graph::FxParticleSystem* AddFxSystem(graph::SceneNode* node, graph::FxManager* manager, graph::FxParticleSystem::ChildStyle childStyle = graph::FxParticleSystem::csProxy); diff --git a/src/Rock3dGame/header/game/Environment.h b/src/Rock3dGame/header/game/Environment.h index d736167b..1f026eeb 100644 --- a/src/Rock3dGame/header/game/Environment.h +++ b/src/Rock3dGame/header/game/Environment.h @@ -52,11 +52,11 @@ class Environment: public GameObjListener bool _startScene; GraphManager::LightSrc* _sun; - mutable D3DXVECTOR3 _sunPos; + mutable glm::vec3 _sunPos; mutable glm::quat _sunRot; GraphManager::LightSrc* _lamp[4]; - D3DXVECTOR3 _lampPos[4]; + glm::vec3 _lampPos[4]; glm::quat _lampRot[4]; D3DXCOLOR _lampColor[4]; bool _lampSwitchOn[4]; @@ -99,14 +99,14 @@ class Environment: public GameObjListener void ReleaseScene(); void ProcessScene(float dt); - const D3DXVECTOR3& GetSunPos() const; - void SetSunPos(const D3DXVECTOR3& value); + const glm::vec3& GetSunPos() const; + void SetSunPos(const glm::vec3& value); const glm::quat& GetSunRot() const; void SetSunRot(const glm::quat& value); - const D3DXVECTOR3& GetLampPos(int index) const; - void SetLampPos(const D3DXVECTOR3& value, int index); + const glm::vec3& GetLampPos(int index) const; + void SetLampPos(const glm::vec3& value, int index); const glm::quat& GetLampRot(int index) const; void SetLampRot(const glm::quat& value, int index); diff --git a/src/Rock3dGame/header/game/GameBase.h b/src/Rock3dGame/header/game/GameBase.h index f1b2570f..b7abe56b 100644 --- a/src/Rock3dGame/header/game/GameBase.h +++ b/src/Rock3dGame/header/game/GameBase.h @@ -72,7 +72,7 @@ class Behavior: public lsl::Object, public GameObjListener, public Serializable PxNotifies _pxNotifies; bool _removed; protected: - virtual void OnShot(const D3DXVECTOR3& pos) {} + virtual void OnShot(const glm::vec3& pos) {} virtual void OnMotor(float deltaTime, float rpm, float minRPM, float maxRPM) {} virtual void OnImmortalStatus(bool status) {} @@ -165,7 +165,7 @@ class EventEffect: public Behavior { EffectDesc(): pos(NullVector), rot(NullQuaternion), child(true), parent(NULL) {} - D3DXVECTOR3 pos; + glm::vec3 pos; glm::quat rot; //дочерний //true - время жизни совпадает с врменем жизни EventEffect, локальная система координат @@ -189,8 +189,8 @@ class EventEffect: public Behavior MapObjRec* _effect; SoundList _sounds; - D3DXVECTOR3 _pos; - D3DXVECTOR3 _impulse; + glm::vec3 _pos; + glm::vec3 _impulse; bool _ignoreRot; EffObjList _effObjList; @@ -243,12 +243,12 @@ class EventEffect: public Behavior snd::Sound* GetSound(); void SetSound(snd::Sound* value); - const D3DXVECTOR3& GetPos() const; - void SetPos(const D3DXVECTOR3& value); + const glm::vec3& GetPos() const; + void SetPos(const glm::vec3& value); //local coordinates - const D3DXVECTOR3& GetImpulse() const; - void SetImpulse(const D3DXVECTOR3& value); + const glm::vec3& GetImpulse() const; + void SetImpulse(const glm::vec3& value); //игнорировать родительский поворот bool GetIgnoreRot() const; @@ -339,7 +339,7 @@ class ShotEffect: public EventEffect { typedef EventEffect _MyBase; protected: - virtual void OnShot(const D3DXVECTOR3& pos); + virtual void OnShot(const glm::vec3& pos); public: ShotEffect(Behaviors* owner); }; @@ -351,8 +351,8 @@ class ImmortalEffect: public EventEffect float _fadeInTime; float _fadeOutTime; float _dmgTime; - D3DXVECTOR3 _scale; - D3DXVECTOR3 _scaleK; + glm::vec3 _scale; + glm::vec3 _scaleK; protected: virtual void OnImmortalStatus(bool status); virtual void OnDamage(GameObject* sender, float value, DamageType damageType); @@ -364,8 +364,8 @@ class ImmortalEffect: public EventEffect virtual void OnProgress(float deltaTime); - const D3DXVECTOR3& GetScaleK() const; - void SetScaleK(const D3DXVECTOR3& value); + const glm::vec3& GetScaleK() const; + void SetScaleK(const glm::vec3& value); }; class SlowEffect: public EventEffect @@ -478,7 +478,7 @@ class Behaviors: public lsl::Collection typedef lsl::List WheelGroup; typedef px::WheelShape::ContactModify ContactModify; - static void LoadPosTo(const std::string& fileName, std::vector& pos); + static void LoadPosTo(const std::string& fileName, std::vector& pos); private: GameCar* _owner; ContactModify* _steerContactModify; @@ -164,7 +164,7 @@ class GameCar: public GameObject float _clampYTorque; float _motorTorqueK; float _wheelSteerK; - D3DXVECTOR3 _angDamping; + glm::vec3 _angDamping; bool _gravEngine; bool _clutchImmunity; float _maxSpeed; @@ -252,8 +252,8 @@ class GameCar: public GameObject float GetSteerRot() const; void SetSteerRot(float value); - D3DXVECTOR3 GetAngDamping() const; - void SetAngDamping(D3DXVECTOR3 value); + glm::vec3 GetAngDamping() const; + void SetAngDamping(glm::vec3 value); float GetFlyYTorque() const; void SetFlyYTourque(float value); @@ -301,7 +301,7 @@ class GameCar: public GameObject //typedef lsl::List ContactList; //ContactList contactList; - static float GetSpeed(NxActor* nxActor, const D3DXVECTOR3& dir); + static float GetSpeed(NxActor* nxActor, const glm::vec3& dir); }; class DestrObj: public GameObject diff --git a/src/Rock3dGame/header/game/GameObject.h b/src/Rock3dGame/header/game/GameObject.h index 2708cd3c..032c1b5a 100644 --- a/src/Rock3dGame/header/game/GameObject.h +++ b/src/Rock3dGame/header/game/GameObject.h @@ -81,31 +81,31 @@ class GameObject: public lsl::Component, public GameObjListener, public px::Acto int _touchPlayerId; float _touchPlayerTime; - D3DXVECTOR3 _posSync; - D3DXVECTOR3 _posSyncDir; + glm::vec3 _posSync; + glm::vec3 _posSyncDir; float _posSyncLength; glm::quat _rotSync; - D3DXVECTOR3 _rotSyncAxis; + glm::vec3 _rotSyncAxis; float _rotSyncAngle; - D3DXVECTOR3 _posSync2; - D3DXVECTOR3 _posSyncDir2; + glm::vec3 _posSync2; + glm::vec3 _posSyncDir2; float _posSyncDist2; float _posSyncLength2; glm::quat _rotSync2; - D3DXVECTOR3 _rotSyncAxis2; + glm::vec3 _rotSyncAxis2; float _rotSyncAngle2; float _rotSyncLength2; - D3DXVECTOR3 _pxPosLerp; + glm::vec3 _pxPosLerp; glm::quat _pxRotLerp; - D3DXVECTOR3 _pxVelocityLerp; + glm::vec3 _pxVelocityLerp; - D3DXVECTOR3 _pxPrevPos; + glm::vec3 _pxPrevPos; glm::quat _pxPrevRot; - D3DXVECTOR3 _pxPrevVelocity; + glm::vec3 _pxPrevVelocity; void SetSyncFrameEvent(bool value); void SetBodyProgressEvent(bool value); @@ -124,7 +124,7 @@ class GameObject: public lsl::Component, public GameObjListener, public px::Acto void RegFixedStepEvent(); void UnregFixedStepEvent(); - D3DXVECTOR3 GetContactPoint(const px::Scene::OnContactEvent& contact); + glm::vec3 GetContactPoint(const px::Scene::OnContactEvent& contact); bool ContainsContactGroup(NxContactStreamIterator& contIter, unsigned actorIndex, px::Scene::CollDisGroup group); //изменения ссылки на объект логки, хак @@ -138,7 +138,7 @@ class GameObject: public lsl::Component, public GameObjListener, public px::Acto virtual void OnImmortalStatus(bool status) {} - void RayCastClosestActor(const D3DXVECTOR3& rayStart, const D3DXVECTOR3& rayDir, NxShapesType shapesType, RayCastHit& hit, unsigned groups = 0xFFFFFFFF, unsigned mask = 0, float maxDist = NX_MAX_F32); + void RayCastClosestActor(const glm::vec3& rayStart, const glm::vec3& rayDir, NxShapesType shapesType, RayCastHit& hit, unsigned groups = 0xFFFFFFFF, unsigned mask = 0, float maxDist = NX_MAX_F32); void DoDeath(DamageType damageType = dtSimple, GameObject* target = NULL); void SendDeath(DamageType damageType = dtSimple, GameObject* target = NULL); @@ -214,45 +214,45 @@ class GameObject: public lsl::Component, public GameObjListener, public px::Acto //Интерфейс пользователя для изменения трансформации //Локальные трансформации //Позиция - const D3DXVECTOR3& GetPos() const; - virtual void SetPos(const D3DXVECTOR3& value); + const glm::vec3& GetPos() const; + virtual void SetPos(const glm::vec3& value); //Растяжение - const D3DXVECTOR3& GetScale() const; - virtual void SetScale(const D3DXVECTOR3& value); + const glm::vec3& GetScale() const; + virtual void SetScale(const glm::vec3& value); void SetScale(float value); //Поворот const glm::quat& GetRot() const; virtual void SetRot(const glm::quat& value); //Абсолютные трансформации //Позиция - D3DXVECTOR3 GetWorldPos() const; - virtual void SetWorldPos(const D3DXVECTOR3& value); + glm::vec3 GetWorldPos() const; + virtual void SetWorldPos(const glm::vec3& value); //Поворот glm::quat GetWorldRot() const; virtual void SetWorldRot(const glm::quat& value); - void SetWorldDir(const D3DXVECTOR3& value); - void SetWorldUp(const D3DXVECTOR3& value); + void SetWorldDir(const glm::vec3& value); + void SetWorldUp(const glm::vec3& value); - const D3DXVECTOR3& GetPosSync() const; - void SetPosSync(const D3DXVECTOR3& value); + const glm::vec3& GetPosSync() const; + void SetPosSync(const glm::vec3& value); const glm::quat& GetRotSync() const; void SetRotSync(const glm::quat& value); - const D3DXVECTOR3& GetPosSync2() const; - void SetPosSync2(const D3DXVECTOR3& curSync, const D3DXVECTOR3& newSync); + const glm::vec3& GetPosSync2() const; + void SetPosSync2(const glm::vec3& curSync, const glm::vec3& newSync); const glm::quat& GetRotSync2() const; void SetRotSync2(const glm::quat& curSync, const glm::quat& newSync); - const D3DXVECTOR3& GetPxPosLerp() const; + const glm::vec3& GetPxPosLerp() const; const glm::quat& GetPxRotLerp() const; - const D3DXVECTOR3& GetPxVelocityLerp() const; + const glm::vec3& GetPxVelocityLerp() const; - const D3DXVECTOR3& GetPxPrevPos() const; + const glm::vec3& GetPxPrevPos() const; const glm::quat& GetPxPrevRot() const; - const D3DXVECTOR3& GetPxPrevVelocity() const; + const glm::vec3& GetPxPrevVelocity() const; LiveState GetLiveState() const; diff --git a/src/Rock3dGame/header/game/HudMenu.h b/src/Rock3dGame/header/game/HudMenu.h index f656b885..30489ec1 100644 --- a/src/Rock3dGame/header/game/HudMenu.h +++ b/src/Rock3dGame/header/game/HudMenu.h @@ -142,8 +142,8 @@ class MiniMapFrame { Node() {} Node(const glm::vec2& mPos, float mSize): pos(mPos), size(mSize) {} - //Node(const D3DXVECTOR3& mPos, float mSize): pos(mPos), size(mSize) {} - Node(const D3DXVECTOR3& mPos, float mSize): pos(mPos.x, mPos.y), size(mSize) {} // remove after D3DXVECTOR3 replacement + //Node(const glm::vec3& mPos, float mSize): pos(mPos), size(mSize) {} + Node(const glm::vec3& mPos, float mSize): pos(mPos.x, mPos.y), size(mSize) {} // remove after glm::vec3 replacement glm::vec2 pos; float size; diff --git a/src/Rock3dGame/header/game/Logic.h b/src/Rock3dGame/header/game/Logic.h index 1112a76d..c32b0c8f 100644 --- a/src/Rock3dGame/header/game/Logic.h +++ b/src/Rock3dGame/header/game/Logic.h @@ -59,14 +59,14 @@ class LogicEventEffect: public LogicBehavior { EffectDesc(): pos(NullVector) {} - D3DXVECTOR3 pos; + glm::vec3 pos; }; private: GameObjEvent* _gameObjEvent; MapObjRec* _effect; EffObjList _effObjList; - D3DXVECTOR3 _pos; + glm::vec3 _pos; void InsertEffObj(MapObj* mapObj); void RemoveEffObj(MapObj* mapObj); @@ -89,8 +89,8 @@ class LogicEventEffect: public LogicBehavior MapObjRec* GetEffect(); void SetEffect(MapObjRec* value); - const D3DXVECTOR3& GetPos() const; - void SetPos(const D3DXVECTOR3& value); + const glm::vec3& GetPos() const; + void SetPos(const glm::vec3& value); }; class PairPxContactEffect: public LogicEventEffect @@ -124,7 +124,7 @@ class PairPxContactEffect: public LogicEventEffect NxShape* shape1; NxShape* shape2; - D3DXVECTOR3 point; + glm::vec3 point; MapObj* effect; float time; @@ -152,7 +152,7 @@ class PairPxContactEffect: public LogicEventEffect ContactMap _contactMap; ContactMap::iterator GetOrCreateContact(const Key& key); - void InsertContact(ContactMap::iterator iter, NxShape* shape1, NxShape* shape2, const D3DXVECTOR3& point); + void InsertContact(ContactMap::iterator iter, NxShape* shape1, NxShape* shape2, const glm::vec3& point); ContactMap::iterator ReleaseContact(ContactMap::iterator iter, ContactList::iterator cIter1, ContactList::iterator cIter2, bool death, float deltaTime = 0.0f, float cRelTime = -1.0f); void ReleaseContacts(bool death); @@ -259,7 +259,7 @@ class Logic: public lsl::Object, public Serializable void Shot(Player* player, MapObj* target); void Damage(GameObject* sender, int senderPlayerId, GameObject* target, float value, GameObject::DamageType damageType); bool TakeBonus(GameObject* sender, GameObject* bonus, GameObject::BonusType type, float value); - bool MineContact(Proj* sender, GameObject* target, const D3DXVECTOR3& point); + bool MineContact(Proj* sender, GameObject* target, const glm::vec3& point); snd::Source* CreateSndSource(SndCategory category); snd::Source3d* CreateSndSource3d(SndCategory category); diff --git a/src/Rock3dGame/header/game/Player.h b/src/Rock3dGame/header/game/Player.h index 3ceb9aa5..45f6cb98 100644 --- a/src/Rock3dGame/header/game/Player.h +++ b/src/Rock3dGame/header/game/Player.h @@ -30,7 +30,7 @@ class SlotItem: public Object, public Serializable, protected IProgressEvent graph::IndexedVBMesh* _mesh; graph::Tex2DResource* _texture; - D3DXVECTOR3 _pos; + glm::vec3 _pos; glm::quat _rot; protected: void RegProgressEvent(); @@ -76,8 +76,8 @@ class SlotItem: public Object, public Serializable, protected IProgressEvent graph::Tex2DResource* GetTexture() const; void SetTexture(graph::Tex2DResource* value); - const D3DXVECTOR3& GetPos() const; - void SetPos(const D3DXVECTOR3& value); + const glm::vec3& GetPos() const; + void SetPos(const glm::vec3& value); const glm::quat& GetRot() const; void SetRot(const glm::quat& value); @@ -400,7 +400,7 @@ class Player: public GameObjListener float GetLap(bool lastCorrect = false) const; //место на карте - D3DXVECTOR3 GetMapPos() const; + glm::vec3 GetMapPos() const; Player* owner; MapObjRec* record; @@ -413,8 +413,8 @@ class Player: public GameObjListener NxActor* nxActor; //Координаты актера - D3DXVECTOR3 pos3; - D3DXVECTOR3 dir3; + glm::vec3 pos3; + glm::vec3 dir3; glm::quat rot3; D3DXMATRIX worldMat; @@ -426,12 +426,12 @@ class Player: public GameObjListener float radius; float kSteerControl; //Линия проведенная через pos в направлении dir актера - D3DXVECTOR3 dirLine; + glm::vec3 dirLine; //Линия проведенная через pos и перпендикулярно dir актера - D3DXVECTOR3 normLine; + glm::vec3 normLine; // - D3DXVECTOR3 trackDirLine; - D3DXVECTOR3 trackNormLine; + glm::vec3 trackDirLine; + glm::vec3 trackNormLine; // WayNode* curTile; WayNode* curNode; @@ -449,7 +449,7 @@ class Player: public GameObjListener float maxSpeed; float maxSpeedTime; //отслеживание резких колебаний угла направляющего вектора - D3DXVECTOR3 lastDir; + glm::vec3 lastDir; float summAngle; float summAngleTime; @@ -523,7 +523,7 @@ class Player: public GameObjListener void RemoveBonusProj(Proj* proj); void ClearBonusProjs(); - void InitLight(HeadLight headLight, const D3DXVECTOR3& pos, const glm::quat& rot); + void InitLight(HeadLight headLight, const glm::vec3& pos, const glm::quat& rot); void FreeLight(HeadLight headLight); void SetLightParent(GraphManager::LightSrc* light, MapObj* mapObj); void CreateNightLights(MapObj* mapObj); @@ -586,7 +586,7 @@ class Player: public GameObjListener void SetReflScene(bool value); Record* GetSlot(SlotType type); - void SetSlot(SlotType type, Record* record, const D3DXVECTOR3& pos = NullVector, const glm::quat& rot = NullQuaternion); + void SetSlot(SlotType type, Record* record, const glm::vec3& pos = NullVector, const glm::quat& rot = NullQuaternion); Slot* GetSlotInst(SlotType type); Slot* GetSlotInst(Slot::Type type); diff --git a/src/Rock3dGame/header/game/Race.h b/src/Rock3dGame/header/game/Race.h index dc7caed4..4f14db30 100644 --- a/src/Rock3dGame/header/game/Race.h +++ b/src/Rock3dGame/header/game/Race.h @@ -101,11 +101,11 @@ class Garage: lsl::Component struct PlaceItem { PlaceItem(): slot(0), rot(NullQuaternion) {} - PlaceItem(Slot* mSlot, const glm::quat& mRot = NullQuaternion, const D3DXVECTOR3& mOffset = NullVector): slot(mSlot), rot(mRot), offset(mOffset) {} + PlaceItem(Slot* mSlot, const glm::quat& mRot = NullQuaternion, const glm::vec3& mOffset = NullVector): slot(mSlot), rot(mRot), offset(mOffset) {} Slot* slot; glm::quat rot; - D3DXVECTOR3 offset; + glm::vec3 offset; }; typedef lsl::List PlaceItems; @@ -121,7 +121,7 @@ class Garage: lsl::Component //отобразить на модели bool show; //ккординаты - D3DXVECTOR3 pos; + glm::vec3 pos; //итемы PlaceItems items; //итем по умолчанию, ставится на машину если нет других вариантов @@ -148,7 +148,7 @@ class Garage: lsl::Component struct NightLight { bool head; - D3DXVECTOR3 pos; + glm::vec3 pos; glm::vec2 size; }; typedef lsl::Vector NightLights; @@ -219,7 +219,7 @@ class Garage: lsl::Component int _upgradeMaxLevel; int _weaponMaxLevel; - void FillStandartSlots(Car* car, const std::string& wheel, bool truba, const D3DXVECTOR3* hyperDrive, bool spring, bool maslo, bool mineSpike, bool mineRip, bool mineProton, bool lockedMax); + void FillStandartSlots(Car* car, const std::string& wheel, bool truba, const glm::vec3* hyperDrive, bool spring, bool maslo, bool mineSpike, bool mineRip, bool mineProton, bool lockedMax); //записи о всех машинвх Car* AddCar(); diff --git a/src/Rock3dGame/header/game/RaceMenu2.h b/src/Rock3dGame/header/game/RaceMenu2.h index 27249f62..90760800 100644 --- a/src/Rock3dGame/header/game/RaceMenu2.h +++ b/src/Rock3dGame/header/game/RaceMenu2.h @@ -21,7 +21,7 @@ class CarFrame: public MenuFrame RaceMenu* _raceMenu; Garage::Car* _car; CamStyle _camStyle; - D3DXVECTOR3 _camLastPos; + glm::vec3 _camLastPos; glm::quat _camLastRot; MapObj* _garageMapObj; diff --git a/src/Rock3dGame/header/game/Trace.h b/src/Rock3dGame/header/game/Trace.h index 4d952f4b..b604fd45 100644 --- a/src/Rock3dGame/header/game/Trace.h +++ b/src/Rock3dGame/header/game/Trace.h @@ -20,9 +20,9 @@ class WayPoint: public Object Trace* _trace; unsigned _id; - D3DXVECTOR3 _pos; + glm::vec3 _pos; float _size; - D3DXVECTOR3 _off; + glm::vec3 _off; Nodes _nodes; @@ -34,20 +34,20 @@ class WayPoint: public Object WayPoint(Trace* trace, unsigned id); virtual ~WayPoint(); - bool RayCast(const D3DXVECTOR3& rayPos, const D3DXVECTOR3& rayVec, float* dist = 0) const; - bool IsContains(const D3DXVECTOR3& point, float* dist = 0) const; + bool RayCast(const glm::vec3& rayPos, const glm::vec3& rayVec, float* dist = 0) const; + bool IsContains(const glm::vec3& point, float* dist = 0) const; unsigned GetId() const; //Позиция, в мировых координатах - const D3DXVECTOR3& GetPos() const; - void SetPos(const D3DXVECTOR3& value); + const glm::vec3& GetPos() const; + void SetPos(const glm::vec3& value); //Размер, в виде диаметра сферы float GetSize() const; void SetSize(float value); //Оптимальная точка, в виде смещения относительно позиции - const D3DXVECTOR3& GetOff() const; - void SetOff(const D3DXVECTOR3& value); + const glm::vec3& GetOff() const; + void SetOff(const glm::vec3& value); //Принадлжеит ли точка путю bool IsFind(WayPath* path) const; @@ -78,21 +78,21 @@ class WayNode: public Object //Нормаль к направляющему вектору mutable glm::vec2 _norm; // - mutable D3DXVECTOR3 _normLine; + mutable glm::vec3 _normLine; //направляющая линия - mutable D3DXVECTOR3 _dirLine; + mutable glm::vec3 _dirLine; //Средний направляющий вектор mutable glm::vec2 _midDir; //Нормаль к _midDir mutable glm::vec2 _midNorm; //Нормальная ограничивающие линия через node - mutable D3DXVECTOR3 _midNormLine; + mutable glm::vec3 _midNormLine; //нормаль к _midDir в направлении к внутреннему углу (наче говоря к острому углу) mutable glm::vec2 _edgeNorm; //узловой радиус окружности целиком описывающий угол mutable float _nodeRadius; //линия через внутренний угол поворота перпендикулярно _midNorm - mutable D3DXVECTOR3 _edgeLine; + mutable glm::vec3 _edgeLine; //острый угол поворота узла (двух смежных тайлов), в рад mutable float _turnAngle; //дистанцию до конечного узла @@ -105,14 +105,14 @@ class WayNode: public Object //Применить изменения void ApplyChanges() const; - const D3DXVECTOR3& GetPos() const; + const glm::vec3& GetPos() const; float GetHeight() const; // - const D3DXVECTOR3& GetNextPos() const; + const glm::vec3& GetNextPos() const; float GetNextHeight() const; const glm::vec2& GetPrevDir() const; const glm::vec2& GetNextMidNorm() const; - const D3DXVECTOR3& GetNextNormLine() const; + const glm::vec3& GetNextNormLine() const; float GetNextNodeRadius() const; D3DXPLANE GetWayPlane() const; @@ -121,7 +121,7 @@ class WayNode: public Object void Changed(); //если upVec указан, то в 3д координатах иначе в 2д координатах - void GetVBuf(D3DXVECTOR3* vBuf, unsigned length, const D3DXVECTOR3* upVec) const; + void GetVBuf(glm::vec3* vBuf, unsigned length, const glm::vec3* upVec) const; //Работа с дорожками //Номер дорожки отсчитывается начиная с 0 от крайней грани в направлении нормали GetNorm //Номер из поизции @@ -129,21 +129,21 @@ class WayNode: public Object //Наикратчайший вектор смещения до соседней дорожки track относительно point glm::vec2 ComputeTrackNormOff(const glm::vec2& point, unsigned track) const; - bool RayCast(const D3DXVECTOR3& rayPos, const D3DXVECTOR3& rayVec, float* dist = 0) const; + bool RayCast(const glm::vec3& rayPos, const glm::vec3& rayVec, float* dist = 0) const; //lengthClamp - ограничивать ли тайл по длине - bool IsContains(const D3DXVECTOR3& point, bool lengthClamp = true, float* dist = 0, float widthErr = 0.0f) const; - bool IsZLevelContains(const D3DXVECTOR3& point, float* dist = 0) const; + bool IsContains(const glm::vec3& point, bool lengthClamp = true, float* dist = 0, float widthErr = 0.0f) const; + bool IsZLevelContains(const glm::vec3& point, float* dist = 0) const; const glm::vec2& GetDir() const; float GetDirLength() const; const glm::vec2& GetNorm() const; - const D3DXVECTOR3& GetDirLine() const; + const glm::vec3& GetDirLine() const; const glm::vec2& GetMidDir() const; const glm::vec2& GetMidNorm() const; - const D3DXVECTOR3& GetMidNormLine() const; + const glm::vec3& GetMidNormLine() const; const glm::vec2& GetEdgeNorm() const; float GetNodeRadius() const; - const D3DXVECTOR3& GetEdgeLine() const; + const glm::vec3& GetEdgeLine() const; float GetTurnAngle() const; float GetFinishDist() const; float GetStartDist() const; @@ -160,13 +160,13 @@ class WayNode: public Object //Z координата тайла в точке coordX float ComputeZCoord(float coordX) const; // - D3DXVECTOR3 GetPoint(float coordX) const; + glm::vec3 GetPoint(float coordX) const; // float GetLength(const glm::vec2& point) const; float GetHeight(const glm::vec2& point) const; float GetWidth(const glm::vec2& point) const; float GetZCoord(const glm::vec2& point) const; - D3DXVECTOR3 GetCenter3() const; + glm::vec3 GetCenter3() const; const unsigned cTrackCnt; }; @@ -186,9 +186,9 @@ class WayNode: public Object public: void Changed(); - bool RayCast(const D3DXVECTOR3& rayPos, const D3DXVECTOR3& rayVec, float* dist = 0) const; + bool RayCast(const glm::vec3& rayPos, const glm::vec3& rayVec, float* dist = 0) const; bool IsContains2(const glm::vec2& point, float* dist = 0) const; - bool IsContains(const D3DXVECTOR3& point, float* dist = 0) const; + bool IsContains(const glm::vec3& point, float* dist = 0) const; WayPath* GetPath(); WayPoint* GetPoint(); @@ -198,7 +198,7 @@ class WayNode: public Object WayNode* GetPrev(); WayNode* GetNext(); - const D3DXVECTOR3& GetPos() const; + const glm::vec3& GetPos() const; glm::vec2 GetPos2() const; float GetSize() const; float GetRadius() const; @@ -227,11 +227,11 @@ class WayPath bool IsEnclosed() const; void Enclosed(bool value); - WayNode* RayCast(const D3DXVECTOR3& rayPos, const D3DXVECTOR3& rayVec, WayNode* mWhere = 0, float* dist = 0) const; + WayNode* RayCast(const glm::vec3& rayPos, const glm::vec3& rayVec, WayNode* mWhere = 0, float* dist = 0) const; //Поиск узла-тайла содержащего point. При поиске предпочтение отдается узлам с кторых начинается тайл - WayNode* IsTileContains(const D3DXVECTOR3& point, WayNode* mWhere = 0) const; + WayNode* IsTileContains(const glm::vec3& point, WayNode* mWhere = 0) const; //если upVec указан, то в 3д координатах иначе в 2д координатах - void GetTriStripVBuf(res::VertexData& data, const D3DXVECTOR3* upVec); + void GetTriStripVBuf(res::VertexData& data, const glm::vec3* upVec); Trace* GetTrace(); WayNode* GetFirst(); @@ -270,10 +270,10 @@ class Trace: public Component void ClearPathes(); void Clear(); - WayNode* RayCast(const D3DXVECTOR3& rayPos, const D3DXVECTOR3& rayVec, float* dist = 0) const; - WayNode* IsTileContains(const D3DXVECTOR3& point, WayNode* mWhere = 0) const; + WayNode* RayCast(const glm::vec3& rayPos, const glm::vec3& rayVec, float* dist = 0) const; + WayNode* IsTileContains(const glm::vec3& point, WayNode* mWhere = 0) const; WayPoint* FindPoint(unsigned id); - WayNode* FindClosestNode(const D3DXVECTOR3& point); + WayNode* FindClosestNode(const glm::vec3& point); const Points& GetPoints() const; const Pathes& GetPathes() const; diff --git a/src/Rock3dGame/header/game/TraceGfx.h b/src/Rock3dGame/header/game/TraceGfx.h index cc90c395..d08f787d 100644 --- a/src/Rock3dGame/header/game/TraceGfx.h +++ b/src/Rock3dGame/header/game/TraceGfx.h @@ -15,14 +15,14 @@ class TraceGfx: public graph::BaseSceneNode { private: WayPoint* _point; - D3DXVECTOR3 _pos; + glm::vec3 _pos; public: PointLink(WayPoint* point): _point(point) {LSL_ASSERT(_point); _point->AddRef();} ~PointLink() {_point->Release();}; WayPoint* GetPoint() {return _point;} - const D3DXVECTOR3& GetPos() const {return _pos;} - void SetPos(const D3DXVECTOR3& value) {_pos = value;} + const glm::vec3& GetPos() const {return _pos;} + void SetPos(const glm::vec3& value) {_pos = value;} }; private: Trace* _trace; @@ -35,7 +35,7 @@ class TraceGfx: public graph::BaseSceneNode WayNode* _selNode; PointLink* _pointLink; - void DrawNodes(graph::Engine& engine, D3DXVECTOR3* vBuf, unsigned triCnt, const D3DXCOLOR& color); + void DrawNodes(graph::Engine& engine, glm::vec3* vBuf, unsigned triCnt, const D3DXCOLOR& color); protected: virtual void DoRender(graph::Engine& engine); public: diff --git a/src/Rock3dGame/header/game/Weapon.h b/src/Rock3dGame/header/game/Weapon.h index f22d01a4..0695872f 100644 --- a/src/Rock3dGame/header/game/Weapon.h +++ b/src/Rock3dGame/header/game/Weapon.h @@ -164,13 +164,13 @@ class Proj: public GameObject //тип снаряда Type type; //Локальная позиция снаряда - D3DXVECTOR3 pos; + glm::vec3 pos; //Локальный поворот снаряда glm::quat rot; //размер и смещение бокса снаряда - D3DXVECTOR3 size; - D3DXVECTOR3 sizeAddPx; - D3DXVECTOR3 offset; + glm::vec3 size; + glm::vec3 sizeAddPx; + glm::vec3 offset; //прибавлять к размеру размер модели снаряда bool modelSize; //Скорость снаряда, @@ -233,7 +233,7 @@ class Proj: public GameObject return *this; } - D3DXVECTOR3 target; + glm::vec3 target; }; struct ShotContext @@ -261,9 +261,9 @@ class Proj: public GameObject int _tick1; float _time1; bool _state1; - D3DXVECTOR3 _vec1; + glm::vec3 _vec1; - void LocateProj(GameObject* weapon, bool pos, bool rot, const D3DXVECTOR3* speed); + void LocateProj(GameObject* weapon, bool pos, bool rot, const glm::vec3* speed); void InitModel(); void FreeModel(bool remove); @@ -278,8 +278,8 @@ class Proj: public GameObject AABB ComputeAABB(bool onlyModel); void CreatePxBox(NxCollisionGroup group = px::Scene::cdgShot); - void AddContactForce(GameObject* target, const D3DXVECTOR3& point, const D3DXVECTOR3& force, NxForceMode mode); - void AddContactForce(GameObject* target, const px::Scene::OnContactEvent& contact, const D3DXVECTOR3& force, NxForceMode mode); + void AddContactForce(GameObject* target, const glm::vec3& point, const glm::vec3& force, NxForceMode mode); + void AddContactForce(GameObject* target, const px::Scene::OnContactEvent& contact, const glm::vec3& force, NxForceMode mode); void SetWeapon(GameObject* weapon); //прилинковать к владельцу. Уничтожается вместе с ним @@ -292,9 +292,9 @@ class Proj: public GameObject void EnableFilter(GameObject* target, unsigned mask); void DisableFilter(GameObject* target); - D3DXVECTOR3 CalcSpeed(GameObject* weapon); + glm::vec3 CalcSpeed(GameObject* weapon); - bool RocketPrepare(GameObject* weapon, bool disableGravity = true, D3DXVECTOR3* speedVec = NULL, NxCollisionGroup pxGroup = px::Scene::cdgShot); + bool RocketPrepare(GameObject* weapon, bool disableGravity = true, glm::vec3* speedVec = NULL, NxCollisionGroup pxGroup = px::Scene::cdgShot); void RocketContact(const px::Scene::OnContactEvent& contact); void RocketUpdate(float deltaTime); // @@ -394,7 +394,7 @@ class Proj: public GameObject virtual void OnProgress(float deltaTime); bool PrepareProj(GameObject* weapon, const ShotContext& ctx); - void MineContact(GameObject* target, const D3DXVECTOR3& point); + void MineContact(GameObject* target, const glm::vec3& point); const Desc& GetDesc() const; void SetDesc(const Desc& value); @@ -531,7 +531,7 @@ class Weapon: public GameObject virtual void OnProgress(float deltaTime); bool Shot(const ShotDesc& shotDesc, ProjList* projList = NULL); - bool Shot(const D3DXVECTOR3& target, ProjList* projList = NULL); + bool Shot(const glm::vec3& target, ProjList* projList = NULL); bool Shot(MapObj* target, ProjList* projList = NULL); bool Shot(ProjList* projList = NULL); diff --git a/src/Rock3dGame/header/net/NetPlayer.h b/src/Rock3dGame/header/net/NetPlayer.h index a34dae64..c11743a5 100644 --- a/src/Rock3dGame/header/net/NetPlayer.h +++ b/src/Rock3dGame/header/net/NetPlayer.h @@ -127,7 +127,7 @@ class NetPlayer: public net::NetModelRPC } }; - typedef std::vector CoordList; + typedef std::vector CoordList; public: struct DescData { @@ -201,7 +201,7 @@ class NetPlayer: public net::NetModelRPC void Shot(MapObj* target); void TakeBonus(MapObj* bonus, GameObject::BonusType type, float value); - void MineContact(Proj* sender, const D3DXVECTOR3& point); + void MineContact(Proj* sender, const glm::vec3& point); int GetGamerId() const; void SetGamerId(int value); diff --git a/src/Rock3dGame/header/snd/Audio.h b/src/Rock3dGame/header/snd/Audio.h index 0d5f081f..07f86dc9 100644 --- a/src/Rock3dGame/header/snd/Audio.h +++ b/src/Rock3dGame/header/snd/Audio.h @@ -496,7 +496,7 @@ class Source3d: public Source }; private: MyReport* _myReport; - D3DXVECTOR3 _pos3d; + glm::vec3 _pos3d; float _distScaler; X3DAUDIO_EMITTER _xEmitter; @@ -523,8 +523,8 @@ class Source3d: public Source virtual void Stop(); virtual bool IsPlaying() const; - const D3DXVECTOR3& GetPos3d(); - void SetPos3d(const D3DXVECTOR3& value); + const glm::vec3& GetPos3d(); + void SetPos3d(const glm::vec3& value); float GetDistScaler() const; void SetDistScaler(float value); @@ -534,7 +534,7 @@ struct Listener { Listener(): pos(NullVector), rot(NullQuaternion) {} - D3DXVECTOR3 pos; + glm::vec3 pos; glm::quat rot; }; diff --git a/src/Rock3dGame/include/IMapObj.h b/src/Rock3dGame/include/IMapObj.h index c3af6129..dcbb3ce4 100644 --- a/src/Rock3dGame/include/IMapObj.h +++ b/src/Rock3dGame/include/IMapObj.h @@ -13,11 +13,11 @@ class IMapObj: public ExternInterf public: virtual const std::string& GetName() const = 0; - virtual D3DXVECTOR3 GetPos() const = 0; - virtual void SetPos(const D3DXVECTOR3& value) = 0; + virtual glm::vec3 GetPos() const = 0; + virtual void SetPos(const glm::vec3& value) = 0; - virtual D3DXVECTOR3 GetScale() const = 0; - virtual void SetScale(const D3DXVECTOR3& value) = 0; + virtual glm::vec3 GetScale() const = 0; + virtual void SetScale(const glm::vec3& value) = 0; virtual glm::quat GetRot() const = 0; virtual void SetRot(const glm::quat& value) = 0; diff --git a/src/Rock3dGame/include/ISceneControl.h b/src/Rock3dGame/include/ISceneControl.h index a9fa1156..0d3c3d69 100644 --- a/src/Rock3dGame/include/ISceneControl.h +++ b/src/Rock3dGame/include/ISceneControl.h @@ -14,30 +14,30 @@ class IScNodeCont: public Object public: virtual void Select(bool active) = 0; //Включая дочерние узлы - virtual bool RayCastInters(const D3DXVECTOR3& rayPos, const D3DXVECTOR3& rayVec) const = 0; + virtual bool RayCastInters(const glm::vec3& rayPos, const glm::vec3& rayVec) const = 0; //Сравнить с объектом сцены virtual bool Compare(const IMapObjRef& node) const = 0; //Перетягивание в режиме none - virtual void OnStartDrag(const D3DXVECTOR3& scrRayPos, const D3DXVECTOR3& scrRayVec) {}; - virtual void OnEndDrag(const D3DXVECTOR3& scrRayPos, const D3DXVECTOR3& scrRayVec) {}; - virtual void OnDrag(const D3DXVECTOR3& pos, const D3DXVECTOR3& scrRayPos, const D3DXVECTOR3& scrRayVec) {}; + virtual void OnStartDrag(const glm::vec3& scrRayPos, const glm::vec3& scrRayVec) {}; + virtual void OnEndDrag(const glm::vec3& scrRayPos, const glm::vec3& scrRayVec) {}; + virtual void OnDrag(const glm::vec3& pos, const glm::vec3& scrRayPos, const glm::vec3& scrRayVec) {}; //Действие при нажатом shift - virtual void OnShiftAction(const D3DXVECTOR3& scrRayPos, const D3DXVECTOR3& scrRayVec) {}; + virtual void OnShiftAction(const glm::vec3& scrRayPos, const glm::vec3& scrRayVec) {}; //В мировых координатах - virtual D3DXVECTOR3 GetPos() const = 0; - virtual void SetPos(const D3DXVECTOR3& value) = 0; + virtual glm::vec3 GetPos() const = 0; + virtual void SetPos(const glm::vec3& value) = 0; // virtual glm::quat GetRot() const = 0; virtual void SetRot(const glm::quat& value) = 0; // - virtual D3DXVECTOR3 GetScale() const = 0; - virtual void SetScale(const D3DXVECTOR3& value) = 0; + virtual glm::vec3 GetScale() const = 0; + virtual void SetScale(const glm::vec3& value) = 0; // - virtual D3DXVECTOR3 GetDir() const = 0; - virtual D3DXVECTOR3 GetRight() const = 0; - virtual D3DXVECTOR3 GetUp() const = 0; + virtual glm::vec3 GetDir() const = 0; + virtual glm::vec3 GetRight() const = 0; + virtual glm::vec3 GetUp() const = 0; virtual D3DXMATRIX GetMat() const = 0; //Включая дочерние узлы @@ -55,8 +55,8 @@ class ISceneControl: public Object typedef IScNodeCont INode; typedef IScNodeContRef INodeRef; public: - virtual D3DXVECTOR3 ComputePoint(const D3DXVECTOR3& curPos, const D3DXVECTOR3& rayStart, const D3DXVECTOR3& rayVec, DirMove dirMove, const D3DXVECTOR3& centerOff) = 0; - virtual D3DXVECTOR3 ComputePos(INode* node, const D3DXVECTOR3& rayStart, const D3DXVECTOR3& rayVec, DirMove dirMove, const D3DXVECTOR3& centerOff) = 0; + virtual glm::vec3 ComputePoint(const glm::vec3& curPos, const glm::vec3& rayStart, const glm::vec3& rayVec, DirMove dirMove, const glm::vec3& centerOff) = 0; + virtual glm::vec3 ComputePos(INode* node, const glm::vec3& rayStart, const glm::vec3& rayVec, DirMove dirMove, const glm::vec3& centerOff) = 0; virtual INodeRef GetSelNode() = 0; virtual void SelectNode(const INodeRef& value) = 0; diff --git a/src/Rock3dGame/include/ITrace.h b/src/Rock3dGame/include/ITrace.h index d520fe16..e36803a2 100644 --- a/src/Rock3dGame/include/ITrace.h +++ b/src/Rock3dGame/include/ITrace.h @@ -17,11 +17,11 @@ class IWayPoint: public ExternInterf virtual float GetSize() const = 0; virtual void SetSize(float value) = 0; - /*virtual const D3DXVECTOR3& GetPos() const; - virtual void SetPos(const D3DXVECTOR3& value); + /*virtual const glm::vec3& GetPos() const; + virtual void SetPos(const glm::vec3& value); - virtual const D3DXVECTOR3& GetOff() const; - virtual void SetOff(const D3DXVECTOR3& value);*/ + virtual const glm::vec3& GetOff() const; + virtual void SetOff(const glm::vec3& value);*/ }; typedef AutoRef IWayPointRef; diff --git a/src/Rock3dGame/source/edit/EditMap.cpp b/src/Rock3dGame/source/edit/EditMap.cpp index 8c7ca75d..8d0f8b21 100644 --- a/src/Rock3dGame/source/edit/EditMap.cpp +++ b/src/Rock3dGame/source/edit/EditMap.cpp @@ -24,22 +24,22 @@ const std::string& MapObj::GetName() const return GetInst()->GetName(); } -D3DXVECTOR3 MapObj::GetPos() const +glm::vec3 MapObj::GetPos() const { return GetInst()->GetGameObj().GetPos(); } -void MapObj::SetPos(const D3DXVECTOR3& value) +void MapObj::SetPos(const glm::vec3& value) { GetInst()->GetGameObj().SetPos(value); } -D3DXVECTOR3 MapObj::GetScale() const +glm::vec3 MapObj::GetScale() const { return GetInst()->GetGameObj().GetScale(); } -void MapObj::SetScale(const D3DXVECTOR3& value) +void MapObj::SetScale(const glm::vec3& value) { GetInst()->GetGameObj().SetScale(value); } @@ -88,7 +88,7 @@ void Map::NodeControl::Select(bool active) GetNode()->colorBB = active ? Map::selColor : Map::bbColor; } -void Map::NodeControl::OnShiftAction(const D3DXVECTOR3& scrRayPos, const D3DXVECTOR3& scrRayVec) +void Map::NodeControl::OnShiftAction(const glm::vec3& scrRayPos, const glm::vec3& scrRayVec) { Select(false); _mapObj = &_map->GetInst()->AddMapObj(_mapObj); @@ -102,15 +102,15 @@ void Map::NodeControl::OnShiftAction(const D3DXVECTOR3& scrRayPos, const D3DXVEC } } -game::MapObj* Map::PickInstMapObj(const D3DXVECTOR3& rayPos, const D3DXVECTOR3& rayVec) +game::MapObj* Map::PickInstMapObj(const glm::vec3& rayPos, const glm::vec3& rayVec) { float minDist = 0; game::MapObj* mapObj = 0; for (Inst::Objects::const_iterator iter = GetInst()->GetObjects().begin(); iter != GetInst()->GetObjects().end(); ++iter) { - D3DXVECTOR3 nearVec; - D3DXVECTOR3 farVec; + glm::vec3 nearVec; + glm::vec3 farVec; game::MapObj* item = iter->second; if (item->GetGameObj().GetGrActor().RayCastIntersBB(rayPos, rayVec, nearVec, farVec, true)) @@ -181,8 +181,8 @@ void Map::ClearMap() IMapObjRef Map::PickMapObj(const lsl::Point& coord) { - D3DXVECTOR3 scrRayPos; - D3DXVECTOR3 scrRayVec; + glm::vec3 scrRayPos; + glm::vec3 scrRayVec; _edit->GetWorld()->GetCamera()->ScreenToRay(coord, scrRayPos, scrRayVec); game::MapObj* mapObj = PickInstMapObj(scrRayPos, scrRayVec); diff --git a/src/Rock3dGame/source/edit/EditTrace.cpp b/src/Rock3dGame/source/edit/EditTrace.cpp index 8e880c90..02103d2b 100644 --- a/src/Rock3dGame/source/edit/EditTrace.cpp +++ b/src/Rock3dGame/source/edit/EditTrace.cpp @@ -111,7 +111,7 @@ void Trace::NodeControl::Reset(game::WayPoint* wayPoint) LSL_ASSERT(_wayPoint); } -void Trace::NodeControl::NewLink(const D3DXVECTOR3& scrRayPos, const D3DXVECTOR3& scrRayVec) +void Trace::NodeControl::NewLink(const glm::vec3& scrRayPos, const glm::vec3& scrRayVec) { FreeLink(); @@ -182,7 +182,7 @@ void Trace::NodeControl::Select(bool active) _trace->_traceGfx->SetSelPoint(active ? _wayPoint : 0); } -bool Trace::NodeControl::RayCastInters(const D3DXVECTOR3& rayPos, const D3DXVECTOR3& rayVec) const +bool Trace::NodeControl::RayCastInters(const glm::vec3& rayPos, const glm::vec3& rayVec) const { return RayCastIntersectSphere(rayPos, rayVec, _wayPoint->GetPos(), _wayPoint->GetSize()/2.0f); } @@ -192,7 +192,7 @@ bool Trace::NodeControl::Compare(const IMapObjRef& node) const return false; } -void Trace::NodeControl::OnStartDrag(const D3DXVECTOR3& scrRayPos, const D3DXVECTOR3& scrRayVec) +void Trace::NodeControl::OnStartDrag(const glm::vec3& scrRayPos, const glm::vec3& scrRayVec) { NewLink(scrRayPos, scrRayVec); @@ -200,7 +200,7 @@ void Trace::NodeControl::OnStartDrag(const D3DXVECTOR3& scrRayPos, const D3DXVEC _dragRayVec = scrRayVec; } -void Trace::NodeControl::OnEndDrag(const D3DXVECTOR3& scrRayPos, const D3DXVECTOR3& scrRayVec) +void Trace::NodeControl::OnEndDrag(const glm::vec3& scrRayPos, const glm::vec3& scrRayVec) { FreeLink(); @@ -216,13 +216,13 @@ void Trace::NodeControl::OnEndDrag(const D3DXVECTOR3& scrRayPos, const D3DXVECTO } } -void Trace::NodeControl::OnDrag(const D3DXVECTOR3& pos, const D3DXVECTOR3& scrRayPos, const D3DXVECTOR3& scrRayVec) +void Trace::NodeControl::OnDrag(const glm::vec3& pos, const glm::vec3& scrRayPos, const glm::vec3& scrRayVec) { if (_link) _link->SetPos(pos); } -void Trace::NodeControl::OnShiftAction(const D3DXVECTOR3& scrRayPos, const D3DXVECTOR3& scrRayVec) +void Trace::NodeControl::OnShiftAction(const glm::vec3& scrRayPos, const glm::vec3& scrRayVec) { game::WayPoint* newPoint = _trace->GetInst()->AddPoint(); newPoint->SetPos(_wayPoint->GetPos()); @@ -251,12 +251,12 @@ void Trace::NodeControl::OnShiftAction(const D3DXVECTOR3& scrRayPos, const D3DXV } } -D3DXVECTOR3 Trace::NodeControl::GetPos() const +glm::vec3 Trace::NodeControl::GetPos() const { return _wayPoint->GetPos(); } -void Trace::NodeControl::SetPos(const D3DXVECTOR3& value) +void Trace::NodeControl::SetPos(const glm::vec3& value) { _wayPoint->SetPos(value); } @@ -271,29 +271,29 @@ void Trace::NodeControl::SetRot(const glm::quat& value) //Nothing } -D3DXVECTOR3 Trace::NodeControl::GetScale() const +glm::vec3 Trace::NodeControl::GetScale() const { float radius = _wayPoint->GetSize() / sqrt(3.0f); - return D3DXVECTOR3(radius, radius, radius); + return glm::vec3(radius, radius, radius); } -void Trace::NodeControl::SetScale(const D3DXVECTOR3& value) +void Trace::NodeControl::SetScale(const glm::vec3& value) { _wayPoint->SetSize(D3DXVec3Length(&value)); } -D3DXVECTOR3 Trace::NodeControl::GetDir() const +glm::vec3 Trace::NodeControl::GetDir() const { return XVector; } -D3DXVECTOR3 Trace::NodeControl::GetRight() const +glm::vec3 Trace::NodeControl::GetRight() const { return YVector; } -D3DXVECTOR3 Trace::NodeControl::GetUp() const +glm::vec3 Trace::NodeControl::GetUp() const { return ZVector; } @@ -308,7 +308,7 @@ AABB Trace::NodeControl::GetAABB() const return AABB(1.0f); } -game::WayPoint* Trace::PickInstPoint(const D3DXVECTOR3& rayPos, const D3DXVECTOR3& rayVec) +game::WayPoint* Trace::PickInstPoint(const glm::vec3& rayPos, const glm::vec3& rayVec) { float minDist = 0; game::WayPoint* point = 0; @@ -331,8 +331,8 @@ game::WayPoint* Trace::PickInstPoint(const D3DXVECTOR3& rayPos, const D3DXVECTOR IWayPointRef Trace::PickPoint(const lsl::Point& scrCoord) { - D3DXVECTOR3 scrRayPos; - D3DXVECTOR3 scrRayVec; + glm::vec3 scrRayPos; + glm::vec3 scrRayVec; _edit->GetWorld()->GetCamera()->ScreenToRay(scrCoord, scrRayPos, scrRayVec); game::WayPoint* point = PickInstPoint(scrRayPos, scrRayVec); diff --git a/src/Rock3dGame/source/edit/EditUtils.cpp b/src/Rock3dGame/source/edit/EditUtils.cpp index 8ac35845..e12275db 100644 --- a/src/Rock3dGame/source/edit/EditUtils.cpp +++ b/src/Rock3dGame/source/edit/EditUtils.cpp @@ -30,7 +30,7 @@ void ScNodeCont::Reset(graph::BaseSceneNode* node) LSL_ASSERT(_node); } -bool ScNodeCont::RayCastInters(const D3DXVECTOR3& rayPos, const D3DXVECTOR3& rayVec) const +bool ScNodeCont::RayCastInters(const glm::vec3& rayPos, const glm::vec3& rayVec) const { return _node->RayCastIntersBB(rayPos, rayVec, true) > 0; } @@ -40,12 +40,12 @@ bool ScNodeCont::Compare(const IMapObjRef& node) const return &node->GetImpl()->GetInst()->GetGameObj().GetGrActor() == _node; } -D3DXVECTOR3 ScNodeCont::GetPos() const +glm::vec3 ScNodeCont::GetPos() const { return _node->GetWorldPos(); } -void ScNodeCont::SetPos(const D3DXVECTOR3& value) +void ScNodeCont::SetPos(const glm::vec3& value) { _node->SetWorldPos(value); } @@ -60,27 +60,27 @@ void ScNodeCont::SetRot(const glm::quat& value) _node->SetWorldRot(value); } -D3DXVECTOR3 ScNodeCont::GetScale() const +glm::vec3 ScNodeCont::GetScale() const { return _node->GetScale(); } -void ScNodeCont::SetScale(const D3DXVECTOR3& value) +void ScNodeCont::SetScale(const glm::vec3& value) { _node->SetScale(value); } -D3DXVECTOR3 ScNodeCont::GetDir() const +glm::vec3 ScNodeCont::GetDir() const { return _node->GetWorldDir(); } -D3DXVECTOR3 ScNodeCont::GetRight() const +glm::vec3 ScNodeCont::GetRight() const { return _node->GetWorldRight(); } -D3DXVECTOR3 ScNodeCont::GetUp() const +glm::vec3 ScNodeCont::GetUp() const { return _node->GetWorldUp(); } diff --git a/src/Rock3dGame/source/edit/SceneControl.cpp b/src/Rock3dGame/source/edit/SceneControl.cpp index 9aab4b0d..be9f46f3 100644 --- a/src/Rock3dGame/source/edit/SceneControl.cpp +++ b/src/Rock3dGame/source/edit/SceneControl.cpp @@ -125,7 +125,7 @@ bool SceneControl::Control::OnMouseMoveEvent(const game::MouseMove& mMove) } if (_startDrag) { - D3DXVECTOR3 pos = _owner->ComputePos(selNode.Pnt(), mMove.scrRayPos, mMove.scrRayVec, dmView, _clDragOff); + glm::vec3 pos = _owner->ComputePos(selNode.Pnt(), mMove.scrRayPos, mMove.scrRayVec, dmView, _clDragOff); selNode->OnDrag(pos, mMove.scrRayPos, mMove.scrRayVec); } } @@ -140,7 +140,7 @@ bool SceneControl::Control::OnMouseMoveEvent(const game::MouseMove& mMove) if (!_shiftAction && mMove.shift1) { graph::MovCoordSys::DirMove dirMove = _clDirMove; - D3DXVECTOR3 clDirOff = _clDirOff; + glm::vec3 clDirOff = _clDirOff; selNode->OnShiftAction(mMove.scrRayPos, mMove.scrRayVec); @@ -150,7 +150,7 @@ bool SceneControl::Control::OnMouseMoveEvent(const game::MouseMove& mMove) shitMovUpdate = true; } - D3DXVECTOR3 pos = _owner->ComputePos(selNode.Pnt(), mMove.scrRayPos, mMove.scrRayVec, DMCoordMoveToSC[_clDirMove], _clDirOff); + glm::vec3 pos = _owner->ComputePos(selNode.Pnt(), mMove.scrRayPos, mMove.scrRayVec, DMCoordMoveToSC[_clDirMove], _clDirOff); selNode->SetPos(pos); _owner->_movCoordSys->SetWorldPos(pos); @@ -196,7 +196,7 @@ bool SceneControl::Control::OnMouseMoveEvent(const game::MouseMove& mMove) if (!_shiftAction && mMove.shift1) { graph::ScaleCoordSys::DirMove clScDirMove = _clScDirMove; - D3DXVECTOR3 clStScale = _clStScale; + glm::vec3 clStScale = _clStScale; selNode->OnShiftAction(mMove.scrRayPos, mMove.scrRayVec); @@ -210,16 +210,16 @@ bool SceneControl::Control::OnMouseMoveEvent(const game::MouseMove& mMove) switch (_clScDirMove) { case graph::ScaleCoordSys::dmXYZ: - selNode->SetScale(_clStScale + D3DXVECTOR3(fS.y, fS.y, fS.y)); + selNode->SetScale(_clStScale + glm::vec3(fS.y, fS.y, fS.y)); break; case graph::ScaleCoordSys::dmX: - selNode->SetScale(_clStScale + D3DXVECTOR3(fS.x, 0, 0)); + selNode->SetScale(_clStScale + glm::vec3(fS.x, 0, 0)); break; case graph::ScaleCoordSys::dmY: - selNode->SetScale(_clStScale + D3DXVECTOR3(0, fS.x, 0)); + selNode->SetScale(_clStScale + glm::vec3(0, fS.x, 0)); break; case graph::ScaleCoordSys::dmZ: - selNode->SetScale(_clStScale + D3DXVECTOR3(0, 0, fS.y)); + selNode->SetScale(_clStScale + glm::vec3(0, 0, fS.y)); break; } return true; @@ -231,7 +231,7 @@ bool SceneControl::Control::OnMouseMoveEvent(const game::MouseMove& mMove) { case smLink: { - D3DXVECTOR3 pos = _owner->ComputePos(selNode.Pnt(), mMove.scrRayPos, mMove.scrRayVec, dmXY, NullVector); + glm::vec3 pos = _owner->ComputePos(selNode.Pnt(), mMove.scrRayPos, mMove.scrRayVec, dmXY, NullVector); selNode->SetPos(pos); break; } @@ -249,7 +249,7 @@ bool SceneControl::Control::OnMouseMoveEvent(const game::MouseMove& mMove) return false; } -bool SceneControl::ComputeAxeLink(const AABB& aabb, const D3DXMATRIX& aabbToWorld, const D3DXMATRIX& worldToAABB, const D3DXVECTOR3& normOff, INode* ignore, float& outDistOff, const float distLink) +bool SceneControl::ComputeAxeLink(const AABB& aabb, const D3DXMATRIX& aabbToWorld, const D3DXMATRIX& worldToAABB, const glm::vec3& normOff, INode* ignore, float& outDistOff, const float distLink) { bool res = false; outDistOff = distLink; @@ -276,12 +276,12 @@ bool SceneControl::ComputeAxeLink(const AABB& aabb, const D3DXMATRIX& aabbToWorl return res; } -void SceneControl::ComputeLink(INode* node, const D3DXVECTOR3& pos, D3DXVECTOR3& resPos) +void SceneControl::ComputeLink(INode* node, const glm::vec3& pos, glm::vec3& resPos) { - D3DXVECTOR3 oldPos = node->GetPos(); - D3DXVECTOR3 offset = pos - oldPos; + glm::vec3 oldPos = node->GetPos(); + glm::vec3 offset = pos - oldPos; - D3DXVECTOR3 newOff = offset; + glm::vec3 newOff = offset; bool repeat = false; unsigned repCnt = 0; //Перемещение раскладывается на орты в системе координат mapObj, и по каждой орте ищется возможный link. Если их несколько то процесс продолжается пока не будет наден близкий к нулю link или пока не истечет заданное число итераций (сделано на случай неопреденных ситуаций чтобы избежать зацикливания) @@ -408,9 +408,9 @@ void SceneControl::ApplySelMode() } } -D3DXVECTOR3 SceneControl::ComputePoint(const D3DXVECTOR3& curPos, const D3DXVECTOR3& rayStart, const D3DXVECTOR3& rayVec, DirMove dirMove, const D3DXVECTOR3& centerOff) +glm::vec3 SceneControl::ComputePoint(const glm::vec3& curPos, const glm::vec3& rayStart, const glm::vec3& rayVec, DirMove dirMove, const glm::vec3& centerOff) { - D3DXVECTOR3 planeNorm; + glm::vec3 planeNorm; switch (dirMove) { @@ -443,10 +443,10 @@ D3DXVECTOR3 SceneControl::ComputePoint(const D3DXVECTOR3& curPos, const D3DXVECT (dirMove == dmZ || dirMove == dmXZ || dirMove == dmYZ || dirMove == dmView) }; - D3DXVECTOR3 pos = curPos; + glm::vec3 pos = curPos; D3DXPLANE plane; D3DXPlaneFromPointNormal(&plane, &pos, &planeNorm); - D3DXVECTOR3 newPos; + glm::vec3 newPos; if (abs(D3DXVec3Dot(&planeNorm, &rayVec)) < 0.05f || !RayCastIntersectPlane(rayStart, rayVec, plane, newPos)) { newPos = NullVector; @@ -465,9 +465,9 @@ D3DXVECTOR3 SceneControl::ComputePoint(const D3DXVECTOR3& curPos, const D3DXVECT return newPos; } -D3DXVECTOR3 SceneControl::ComputePos(INode* node, const D3DXVECTOR3& rayStart, const D3DXVECTOR3& rayVec, DirMove dirMove, const D3DXVECTOR3& centerOff) +glm::vec3 SceneControl::ComputePos(INode* node, const glm::vec3& rayStart, const glm::vec3& rayVec, DirMove dirMove, const glm::vec3& centerOff) { - D3DXVECTOR3 newPos = ComputePoint(node->GetPos(), rayStart, rayVec, dirMove, centerOff); + glm::vec3 newPos = ComputePoint(node->GetPos(), rayStart, rayVec, dirMove, centerOff); if (_linkBB) ComputeLink(node, newPos, newPos); diff --git a/src/Rock3dGame/source/game/AIPlayer.cpp b/src/Rock3dGame/source/game/AIPlayer.cpp index f079996e..f4cbadc5 100644 --- a/src/Rock3dGame/source/game/AIPlayer.cpp +++ b/src/Rock3dGame/source/game/AIPlayer.cpp @@ -123,7 +123,7 @@ void AISystem::ComputeTracks(float deltaTime) { const AICar::CarState& car = (*iter)->GetCar()->GetCar(); - D3DXVECTOR3 dirLine; + glm::vec3 dirLine; Line2FromDir(car.curTile->GetTile().GetDir(), car.curTile->GetPos2(), dirLine); Link* link = new Link((*iter)->GetCar(), Line2DistToPoint(dirLine, car.pos), 0); @@ -404,8 +404,8 @@ void AIDebug::GrActor::DoRender(graph::Engine& engine) glm::vec2 moveDir = aiPlayer->GetCar()->_path.moveDir; res::VertexPD lines[2]; - D3DXVECTOR3 worldPos = car->GetGameObj().GetWorldPos(); - D3DXVECTOR3 newPos = worldPos + D3DXVECTOR3(moveDir.x, moveDir.y, 0.0f) * aiPlayer->GetCar()->_path.dirArea; + glm::vec3 worldPos = car->GetGameObj().GetWorldPos(); + glm::vec3 newPos = worldPos + glm::vec3(moveDir.x, moveDir.y, 0.0f) * aiPlayer->GetCar()->_path.dirArea; lines[0].pos = worldPos; lines[1].pos = newPos; lines[0].diffuse = lines[1].diffuse = clrWhite; @@ -428,8 +428,8 @@ void AIDebug::GrActor::DoRender(graph::Engine& engine) glm::vec2 dir = nextNode->GetTile().GetEdgeNorm(); res::VertexPD lines[2]; - D3DXVECTOR3 worldPos = car->GetGameObj().GetWorldPos(); - D3DXVECTOR3 newPos = worldPos + (-D3DXVECTOR3(dir.x, dir.y, 0.0f)) * dist; + glm::vec3 worldPos = car->GetGameObj().GetWorldPos(); + glm::vec3 newPos = worldPos + (-glm::vec3(dir.x, dir.y, 0.0f)) * dist; lines[0].pos = worldPos; lines[1].pos = newPos; lines[0].diffuse = lines[1].diffuse = clrRed; @@ -453,36 +453,36 @@ void AIDebug::GrActor::DoRender(graph::Engine& engine) mat0.multiply(bodyMat.M, mat0); } - D3DXVECTOR3 error(contData.error.get()); - D3DXVECTOR3 errorNorm; + glm::vec3 error(contData.error.get()); + glm::vec3 errorNorm; D3DXVec3Normalize(&errorNorm, &error); //Отрисовка error вектора NxVec3 nxErrNorm = error; //nxErrNorm.normalize(); gameObj->GetPxActor().GetNxActor()->getCMassGlobalPose().M.multiply(nxErrNorm, nxErrNorm); - errorNorm = D3DXVECTOR3(nxErrNorm.get()); - lines[0].pos = D3DXVECTOR3(pos0.get()); + errorNorm = glm::vec3(nxErrNorm.get()); + lines[0].pos = glm::vec3(pos0.get()); lines[0].diffuse = clrBlack; - lines[1].pos = D3DXVECTOR3(pos0.get()) + errorNorm * 50.0f; + lines[1].pos = glm::vec3(pos0.get()) + errorNorm * 50.0f; lines[1].diffuse = clrBlack; engine.GetDriver().GetDevice()->SetFVF(res::VertexPD::fvf); engine.GetDriver().GetDevice()->DrawPrimitiveUP(D3DPT_LINELIST, 1, lines, sizeof(res::VertexPD)); //Отрисовка X оси базиса - lines[0].pos = D3DXVECTOR3(pos0.get()); - lines[1].pos = D3DXVECTOR3((pos0 + mat0.getColumn(0) * 5.0f).get()); + lines[0].pos = glm::vec3(pos0.get()); + lines[1].pos = glm::vec3((pos0 + mat0.getColumn(0) * 5.0f).get()); lines[0].diffuse = lines[1].diffuse = clrYellow; engine.GetDriver().GetDevice()->SetFVF(res::VertexPD::fvf); engine.GetDriver().GetDevice()->DrawPrimitiveUP(D3DPT_LINELIST, 1, lines, sizeof(res::VertexPD)); //Отрисовка Y оси базиса - lines[0].pos = D3DXVECTOR3(pos0.get()); - lines[1].pos = D3DXVECTOR3((pos0 + mat0.getColumn(1) * 5.0f).get()); + lines[0].pos = glm::vec3(pos0.get()); + lines[1].pos = glm::vec3((pos0 + mat0.getColumn(1) * 5.0f).get()); lines[0].diffuse = lines[1].diffuse = clrGreen; engine.GetDriver().GetDevice()->SetFVF(res::VertexPD::fvf); engine.GetDriver().GetDevice()->DrawPrimitiveUP(D3DPT_LINELIST, 1, lines, sizeof(res::VertexPD)); //Отрисовка Z оси базиса - lines[0].pos = D3DXVECTOR3(pos0.get()); - lines[1].pos = D3DXVECTOR3((pos0 + mat0.getColumn(2) * 5.0f).get()); + lines[0].pos = glm::vec3(pos0.get()); + lines[1].pos = glm::vec3((pos0 + mat0.getColumn(2) * 5.0f).get()); lines[0].diffuse = lines[1].diffuse = clrRed; engine.GetDriver().GetDevice()->SetFVF(res::VertexPD::fvf); engine.GetDriver().GetDevice()->DrawPrimitiveUP(D3DPT_LINELIST, 1, lines, sizeof(res::VertexPD)); @@ -491,9 +491,9 @@ void AIDebug::GrActor::DoRender(graph::Engine& engine) NxVec3 myNorm; triData.normal(myNorm); res::VertexPD triLines[4]; - triLines[0].pos = D3DXVECTOR3(triData.verts[0].get()); - triLines[1].pos = D3DXVECTOR3(triData.verts[1].get()); - triLines[2].pos = D3DXVECTOR3(triData.verts[2].get()); + triLines[0].pos = glm::vec3(triData.verts[0].get()); + triLines[1].pos = glm::vec3(triData.verts[1].get()); + triLines[2].pos = glm::vec3(triData.verts[2].get()); triLines[0].diffuse = triLines[1].diffuse = triLines[2].diffuse = abs(myNorm.x) > 0.5f ? clrRed : clrBlue; triLines[3] = triLines[0]; engine.GetDriver().GetDevice()->SetFVF(res::VertexPD::fvf); diff --git a/src/Rock3dGame/source/game/CameraManager.cpp b/src/Rock3dGame/source/game/CameraManager.cpp index 4288f31f..80278da6 100644 --- a/src/Rock3dGame/source/game/CameraManager.cpp +++ b/src/Rock3dGame/source/game/CameraManager.cpp @@ -12,7 +12,7 @@ namespace game CameraManager::CameraManager(World* world): _world(world), _player(0), _target(0, 0, 0, 5.0f), _light(0), _style(cStyleEnd), _near(1.0f), _far(100.0f), _clampAngle(0.0f, 0.0f, 25.0f * D3DX_PI/180, 80.0f * D3DX_PI/180), _angleSpeed(D3DX_PI/48, 0, 0), _stableAngle(75.0f * D3DX_PI/180, 0, 0), _flyCurTime(-1) { _camera = new graph::Camera(); - _camera->SetPos(D3DXVECTOR3(50.0f, 50.0f, 50.0f)); + _camera->SetPos(glm::vec3(50.0f, 50.0f, 50.0f)); _camera->SetDir(-IdentityVector); _lastFreePos = _camera->GetPos(); _lastFreeRot = _camera->GetRot(); @@ -73,7 +73,7 @@ bool CameraManager::Control::OnMouseMoveEvent(const MouseMove& mMove) { graph::Camera* camera = _manager->_camera; glm::quat rot = camera->GetRot(); - D3DXVECTOR3 right = camera->GetRight(); + glm::vec3 right = camera->GetRight(); if (_manager->_style == csLights && _manager->_light) { @@ -147,7 +147,7 @@ void CameraManager::Control::OnInputFrame(float deltaTime) alpha = _flyAlpha = _flyAlpha + std::max((alpha - _flyAlpha) * deltaTime * 4.0f, 0.001f); alpha = lsl::ClampValue(alpha / _manager->_flyTime, 0.0f, 1.0f); - D3DXVECTOR3 pos; + glm::vec3 pos; D3DXVec3Lerp(&pos, &_manager->_flySPos, &_manager->_flyPos, alpha); glm::quat rot = glm::slerp(_manager->_flySRot, _manager->_flyRot, alpha); @@ -230,20 +230,20 @@ void CameraManager::Control::OnInputFrame(float deltaTime) const float angleSpeed = D3DX_PI / 2.0f * deltaTime; const float retAngleSpeed = angleSpeed * 2.0f; const float maxAngle = D3DX_PI / 6; - const D3DXVECTOR3 cCamTargetOff(-4.6f, 0.0f, 2.4f); + const glm::vec3 cCamTargetOff(-4.6f, 0.0f, 2.4f); ControlManager* control = _manager->_world->GetControl(); - D3DXVECTOR3 pos = camera->GetPos(); + glm::vec3 pos = camera->GetPos(); glm::quat rot = camera->GetRot(); - D3DXVECTOR3 dir = camera->GetDir(); - D3DXVECTOR3 right = camera->GetRight(); + glm::vec3 dir = camera->GetDir(); + glm::vec3 right = camera->GetRight(); - D3DXVECTOR3 targetPos = NullVector; - D3DXVECTOR3 targetDir = XVector; + glm::vec3 targetPos = NullVector; + glm::vec3 targetDir = XVector; glm::quat targetRot = NullQuaternion; float targetSize = 0.0f; - D3DXVECTOR3 targetVel = NullVector; + glm::vec3 targetVel = NullVector; float targetDrivenSpeed = 0.0f; Player* player = _manager->_player; @@ -277,7 +277,7 @@ void CameraManager::Control::OnInputFrame(float deltaTime) } else { - targetPos = D3DXVECTOR3(_manager->_target.x, _manager->_target.y, _manager->_target.z); + targetPos = glm::vec3(_manager->_target.x, _manager->_target.y, _manager->_target.z); } if (_manager->_light && _manager->_style == csLights) @@ -296,9 +296,9 @@ void CameraManager::Control::OnInputFrame(float deltaTime) { if (_manager->_style == csIsoView) { - dir = D3DXVECTOR3(1, 1, 0); + dir = glm::vec3(1, 1, 0); D3DXVec3Normalize(&dir, &dir); - right = D3DXVECTOR3(-1, 1, 0); + right = glm::vec3(-1, 1, 0); D3DXVec3Normalize(&right, &right); rot = cIsoRot; } @@ -322,20 +322,20 @@ void CameraManager::Control::OnInputFrame(float deltaTime) case csThirdPerson: { float velocityLen = D3DXVec3Length(&targetVel); - D3DXVECTOR3 velocity = targetDir + targetVel * 0.1f; + glm::vec3 velocity = targetDir + targetVel * 0.1f; D3DXVec3Normalize(&velocity, &velocity); //строим матрицу поворота относительно скорости - D3DXVECTOR3 xVec; + glm::vec3 xVec; D3DXVec3Normalize(&xVec, &velocity); - D3DXVECTOR3 yVec; + glm::vec3 yVec; D3DXVec3Cross(&yVec, &ZVector, &xVec); if (D3DXVec3Length(&yVec) < 0.001f) { //D3DXVec3Cross(&yVec, &xVec, &ZVector); } D3DXVec3Normalize(&yVec, &yVec); - D3DXVECTOR3 zVec; + glm::vec3 zVec; D3DXVec3Cross(&zVec, &xVec, &yVec); D3DXVec3Normalize(&zVec, &zVec); @@ -349,11 +349,11 @@ void CameraManager::Control::OnInputFrame(float deltaTime) glm::quat camQuat2 = velRot; glm::quat camQuat = glm::slerp(camQuat1, camQuat2, 6.0f * deltaTime); - /*D3DXVECTOR3 camPos; + /*glm::vec3 camPos; Vec3Rotate(cCamTargetOff, camQuat, camPos); camPos += targetPos;*/ - D3DXVECTOR3 camDir; + glm::vec3 camDir; Vec3Rotate(XVector, camQuat, camDir); const float minSpeed = 0.0f; const float maxSpeed = 150.0f * 1000.0f / 3600.0f; @@ -363,13 +363,13 @@ void CameraManager::Control::OnInputFrame(float deltaTime) float distTarget = minDist + speedK * speedK * (maxDist - minDist); _staticFloat1 = _staticFloat1 + (distTarget - _staticFloat1) * lsl::ClampValue(deltaTime * 5.0f, 0.0f, 1.0f); - D3DXVECTOR3 camOff; - Vec3Rotate(cCamTargetOff + D3DXVECTOR3(-1.0f, 0.0f, 0.0f), camQuat, camOff); - D3DXVECTOR3 camPos = targetPos - camDir * _staticFloat1 + camOff; + glm::vec3 camOff; + Vec3Rotate(cCamTargetOff + glm::vec3(-1.0f, 0.0f, 0.0f), camQuat, camOff); + glm::vec3 camPos = targetPos - camDir * _staticFloat1 + camOff; - /*D3DXVECTOR3 camPos; - D3DXVECTOR3 camPos1 = pos; - D3DXVECTOR3 camPos2; + /*glm::vec3 camPos; + glm::vec3 camPos1 = pos; + glm::vec3 camPos2; Vec3Rotate(cCamTargetOff, camQuat2, camPos2); camPos2 += targetPos; D3DXVec3Lerp(&camPos, &camPos1, &camPos2, 8.0f * deltaTime);*/ @@ -395,11 +395,11 @@ void CameraManager::Control::OnInputFrame(float deltaTime) glm::quat cIsoInvRot = glm::inverse(cIsoRot); //Направление камеры в мировом пространстве - D3DXVECTOR3 isoDir; + glm::vec3 isoDir; Vec3Rotate(XVector, cIsoRot, isoDir); //Преобразуем в пространство камеры, чтобы вычислять смещение отностиельно центра экрана. Для перспективной проекции это дает артефакт удаления-приближения камеры, поэтому может быть опущено - D3DXVECTOR3 targOff = targetDir; + glm::vec3 targOff = targetDir; targOff.z = 0.0f; Vec3Rotate(targOff, cIsoInvRot, targOff); //Проецируем на плоскость смещения @@ -408,7 +408,7 @@ void CameraManager::Control::OnInputFrame(float deltaTime) targOff.z = 0.0f; D3DXVec3Normalize(&targOff, &targOff); // - float yTargetDot = D3DXVec3Dot(&targOff, &D3DXVECTOR3(0.0f, 1.0f, 0.0f)); + float yTargetDot = D3DXVec3Dot(&targOff, &glm::vec3(0.0f, 1.0f, 0.0f)); //Формируем вектор смещения targOff *= camSize; @@ -447,10 +447,10 @@ void CameraManager::Control::OnInputFrame(float deltaTime) D3DXVec3Lerp(&_staticVec1, &_staticVec1, &targOff, deltaTime); //_staticVec1 = targOff; //Позиция камеры - D3DXVECTOR3 camPos = targetPos + (-isoDir) * targDist + _staticVec1; + glm::vec3 camPos = targetPos + (-isoDir) * targDist + _staticVec1; //Плавная интерполяция при скачках машины - D3DXVECTOR3 dTargetPos = targetPos - _staticVec2; + glm::vec3 dTargetPos = targetPos - _staticVec2; _staticVec2 = targetPos; float dTargetLength = D3DXVec3Length(&dTargetPos); @@ -478,7 +478,7 @@ void CameraManager::Control::OnInputFrame(float deltaTime) { glm::vec2 mPos = control->GetMouseVec(); glm::vec2 dMPos = mPos - glm::vec2(_staticVec1.x, _staticVec1.y); - _staticVec1 = D3DXVECTOR3(mPos.x, mPos.y, 0); + _staticVec1 = glm::vec3(mPos.x, mPos.y, 0); bool leftDown = control->IsMouseDown(mkLeft) == akDown; if (leftDown && _staticVec2.z == 0.0f) @@ -491,7 +491,7 @@ void CameraManager::Control::OnInputFrame(float deltaTime) } else if (!leftDown) { - _staticVec2 = D3DXVECTOR3(mPos.x, mPos.y, 0.0f); + _staticVec2 = glm::vec3(mPos.x, mPos.y, 0.0f); } bool dragX = leftDown && dMPos.x != 0; @@ -538,7 +538,7 @@ void CameraManager::Control::StyleChanged(Style style, Style newStyle) if (newStyle == csAutoObserver) { lsl::Point pos = _manager->_world->GetControl()->GetMousePos(); - _staticVec2 = _staticVec1 = D3DXVECTOR3(static_cast(pos.x), static_cast(pos.y), 0); + _staticVec2 = _staticVec1 = glm::vec3(static_cast(pos.x), static_cast(pos.y), 0); } else if (newStyle == csIsometric) { @@ -565,7 +565,7 @@ void CameraManager::Control::FlyCompleted() if (_manager->_style == csAutoObserver) { lsl::Point pos = _manager->_world->GetControl()->GetMousePos(); - _staticVec2 = _staticVec1 = D3DXVECTOR3(static_cast(pos.x), static_cast(pos.y), 0); + _staticVec2 = _staticVec1 = glm::vec3(static_cast(pos.x), static_cast(pos.y), 0); _staticQuat1 = _manager->_camera->GetRot(); _staticFloat1 = 3.0f; } @@ -579,37 +579,37 @@ void CameraManager::Control::TargetChanged() if (_manager->_player) _staticVec2 = _manager->_player && _manager->_player->GetCar().mapObj ? _manager->_player->GetCar().grActor->GetWorldPos() : _manager->_player->GetCar().pos3; else - _staticVec2 = D3DXVECTOR3(_manager->_target); + _staticVec2 = glm::vec3(_manager->_target); } } -D3DXVECTOR3 CameraManager::ScreenToWorld(const lsl::Point& coord, float z) +glm::vec3 CameraManager::ScreenToWorld(const lsl::Point& coord, float z) { return _camera->GetContextInfo().ScreenToWorld(glm::vec2(static_cast(coord.x), static_cast(coord.y)), z, _world->GetView()->GetVPSize()); } -glm::vec2 CameraManager::WorldToScreen(const D3DXVECTOR3& coord) +glm::vec2 CameraManager::WorldToScreen(const glm::vec3& coord) { return _camera->GetContextInfo().WorldToScreen(coord, _world->GetView()->GetVPSize()); } -void CameraManager::ScreenToRay(const lsl::Point& coord, D3DXVECTOR3& rayStart, D3DXVECTOR3& rayVec) +void CameraManager::ScreenToRay(const lsl::Point& coord, glm::vec3& rayStart, glm::vec3& rayVec) { rayStart = ScreenToWorld(coord, 0); rayVec = ScreenToWorld(coord, 1) - rayStart; D3DXVec3Normalize(&rayVec, &rayVec); } -bool CameraManager::ScreenPixelRayCastWithPlaneXY(const lsl::Point& coord, D3DXVECTOR3& outVec) +bool CameraManager::ScreenPixelRayCastWithPlaneXY(const lsl::Point& coord, glm::vec3& outVec) { - D3DXVECTOR3 rayStart; - D3DXVECTOR3 rayVec; + glm::vec3 rayStart; + glm::vec3 rayVec; ScreenToRay(coord, rayStart, rayVec); return RayCastIntersectPlane(rayStart, rayVec, ZPlane, outVec); } -void CameraManager::FlyTo(const D3DXVECTOR3& pos, const glm::quat& rot, float time) +void CameraManager::FlyTo(const glm::vec3& pos, const glm::quat& rot, float time) { _flySPos = _camera->GetPos(); _flySRot = _camera->GetRot(); @@ -642,22 +642,22 @@ void CameraManager::SetClampAngle(const D3DXVECTOR4& value) _clampAngle = value; } -const D3DXVECTOR3& CameraManager::GetAngleSpeed() +const glm::vec3& CameraManager::GetAngleSpeed() { return _angleSpeed; } -void CameraManager::SetAngleSpeed(const D3DXVECTOR3& value) +void CameraManager::SetAngleSpeed(const glm::vec3& value) { _angleSpeed = value; } -const D3DXVECTOR3& CameraManager::GetStableAngle() +const glm::vec3& CameraManager::GetStableAngle() { return _stableAngle; } -void CameraManager::SetStableAngle(const D3DXVECTOR3& value) +void CameraManager::SetStableAngle(const glm::vec3& value) { _stableAngle = value; } @@ -721,7 +721,7 @@ void CameraManager::ChangeStyle(Style value) { _camera->SetRot(_lastFreeRot); - D3DXVECTOR3 pos = _lastFreePos; + glm::vec3 pos = _lastFreePos; pos.z = std::max(pos.z, 10.0f); _camera->SetPos(pos); } @@ -746,17 +746,17 @@ void CameraManager::SetAspect(float value) _camera->SetAspect(value); } -D3DXVECTOR3 CameraManager::GetPos() const +glm::vec3 CameraManager::GetPos() const { return _camera->GetWorldPos(); } -D3DXVECTOR3 CameraManager::GetDir() const +glm::vec3 CameraManager::GetDir() const { return _camera->GetWorldDir(); } -D3DXVECTOR3 CameraManager::GetRight() const +glm::vec3 CameraManager::GetRight() const { return _camera->GetRight(); } @@ -819,7 +819,7 @@ void CameraManager::SetLight(GraphManager::LightSrc* value) _light = value; } -void CameraManager::GetObserverCoord(const D3DXVECTOR3& targetPos, float targetDist, D3DXVECTOR3* pos, glm::quat& rot, const glm::vec2& dMPos, float deltaTime, bool dragX, bool dragY, bool restoreY, D3DXVECTOR3* camPos, glm::quat* camRot, float* dir) +void CameraManager::GetObserverCoord(const glm::vec3& targetPos, float targetDist, glm::vec3* pos, glm::quat& rot, const glm::vec2& dMPos, float deltaTime, bool dragX, bool dragY, bool restoreY, glm::vec3* camPos, glm::quat* camRot, float* dir) { float camDist = targetDist; @@ -839,11 +839,11 @@ void CameraManager::GetObserverCoord(const D3DXVECTOR3& targetPos, float targetD if (_clampAngle.x != 0 || _clampAngle.y != 0) { - D3DXVECTOR3 yAxis; + glm::vec3 yAxis; QuatRotateVec3(yAxis, YVector, rot); D3DXVec3Normalize(&yAxis, &yAxis); - D3DXVECTOR3 norm; + glm::vec3 norm; D3DXVec3Cross(&norm, &YVector, &yAxis); D3DXVec3Normalize(&norm, &norm); @@ -866,7 +866,7 @@ void CameraManager::GetObserverCoord(const D3DXVECTOR3& targetPos, float targetD QuatRotateVec3(yAxis, YVector, dRotZ); D3DXVec3Normalize(&yAxis, &yAxis); - D3DXVECTOR3 zAxis; + glm::vec3 zAxis; QuatRotateVec3(zAxis, ZVector, rot); D3DXVec3Normalize(&zAxis, &zAxis); @@ -874,7 +874,7 @@ void CameraManager::GetObserverCoord(const D3DXVECTOR3& targetPos, float targetD glm::quat dRotY = glm::angleAxis(ang, Vec3DxToGlm(yAxis)); QuatRotateVec3(zAxis, ZVector, dRotY); - D3DXVECTOR3 xAxis; + glm::vec3 xAxis; D3DXVec3Cross(&xAxis, &yAxis, &zAxis); D3DXVec3Normalize(&xAxis, &xAxis); @@ -904,7 +904,7 @@ void CameraManager::GetObserverCoord(const D3DXVECTOR3& targetPos, float targetD float angUp = _stableAngle.x; glm::quat dRotY; - D3DXVECTOR3 yAxis; + glm::vec3 yAxis; QuatRotateVec3(yAxis, YVector, rot); if (dragY) @@ -917,11 +917,11 @@ void CameraManager::GetObserverCoord(const D3DXVECTOR3& targetPos, float targetD rot = dRotY * rot; } - D3DXVECTOR3 xAxis; + glm::vec3 xAxis; QuatRotateVec3(xAxis, XVector, rot); D3DXVec3Normalize(&xAxis, &xAxis); - D3DXVECTOR3 norm; + glm::vec3 norm; D3DXVec3Cross(&norm, &(-ZVector), &yAxis); D3DXVec3Normalize(&norm, &norm); float ang = 0; @@ -944,7 +944,7 @@ void CameraManager::GetObserverCoord(const D3DXVECTOR3& targetPos, float targetD dRotY = glm::angleAxis(-ang, Vec3DxToGlm(yAxis)); QuatRotateVec3(xAxis, -ZVector, dRotY); D3DXVec3Normalize(&xAxis, &xAxis); - D3DXVECTOR3 zAxis; + glm::vec3 zAxis; D3DXVec3Cross(&zAxis, &xAxis, &yAxis); D3DXVec3Normalize(&zAxis, &zAxis); D3DXMATRIX rotMat; @@ -956,7 +956,7 @@ void CameraManager::GetObserverCoord(const D3DXVECTOR3& targetPos, float targetD if (pos != NULL) { - D3DXVECTOR3 camDir; + glm::vec3 camDir; Vec3Rotate(XVector, rot, camDir); *pos = targetPos - camDir * camDist; } @@ -968,7 +968,7 @@ void CameraManager::GetObserverCoord(const D3DXVECTOR3& targetPos, float targetD if (camPos != NULL && camRot != NULL) { - D3DXVECTOR3 camDir; + glm::vec3 camDir; Vec3Rotate(XVector, *camRot, camDir); *camPos = targetPos - camDir * camDist; } diff --git a/src/Rock3dGame/source/game/DataBase.cpp b/src/Rock3dGame/source/game/DataBase.cpp index 56c6d6ff..f058abf1 100644 --- a/src/Rock3dGame/source/game/DataBase.cpp +++ b/src/Rock3dGame/source/game/DataBase.cpp @@ -287,9 +287,9 @@ px::BoxShape* DataBase::AddPxBox(MapObj* mapObj) return AddPxBox(mapObj, aabb); } -px::CapsuleShape* DataBase::AddPxCapsule(MapObj* mapObj, float radius, float height, const D3DXVECTOR3& dir, const D3DXVECTOR3& up) +px::CapsuleShape* DataBase::AddPxCapsule(MapObj* mapObj, float radius, float height, const glm::vec3& dir, const glm::vec3& up) { - D3DXVECTOR3 right; + glm::vec3 right; D3DXVec3Cross(&right, &dir, &up); NxCapsuleShapeDesc desc; @@ -312,7 +312,7 @@ px::CapsuleShape* DataBase::AddPxCapsule(MapObj* mapObj) { AABB aabb = mapObj->GetGameObj().GetGrActor().GetLocalAABB(false); - return AddPxCapsule(mapObj, aabb.GetSizes().y/2.0f, aabb.GetSizes().x, D3DXVECTOR3(1, 0, 0), D3DXVECTOR3(0, 0, 1)); + return AddPxCapsule(mapObj, aabb.GetSizes().y/2.0f, aabb.GetSizes().x, glm::vec3(1, 0, 0), glm::vec3(0, 0, 1)); } px::SphereShape* DataBase::AddPxSpere(MapObj* mapObj, float radius) @@ -354,7 +354,7 @@ px::Body* DataBase::AddPxBody(MapObj* mapObj, const NxBodyDesc& desc) return mapObj->GetGameObj().GetPxActor().GetBody(); } -px::Body* DataBase::AddPxBody(MapObj* mapObj, float mass, const D3DXVECTOR3* massPos) +px::Body* DataBase::AddPxBody(MapObj* mapObj, float mass, const glm::vec3* massPos) { NxBodyDesc body; body.mass = mass; @@ -369,7 +369,7 @@ px::Body* DataBase::AddPxBody(MapObj* mapObj, float mass, const D3DXVECTOR3* mas return AddPxBody(mapObj, body); } -CarWheel* DataBase::AddWheel(unsigned index, GameCar& car, const std::string& meshName, const std::string& matName, const D3DXVECTOR3& pos, bool steer, bool lead, CarWheel* master, const CarDesc& carDesc) +CarWheel* DataBase::AddWheel(unsigned index, GameCar& car, const std::string& meshName, const std::string& matName, const glm::vec3& pos, bool steer, bool lead, CarWheel* master, const CarDesc& carDesc) { game::CarWheel* wheel = &car.GetWheels().Add(); wheel->SetLead(lead); @@ -387,7 +387,7 @@ CarWheel* DataBase::AddWheel(unsigned index, GameCar& car, const std::string& me if (pos.y < 0) { - meshNode->SetScale(D3DXVECTOR3(carDesc.wheelScaleModel.x, -carDesc.wheelScaleModel.y, carDesc.wheelScaleModel.z)); + meshNode->SetScale(glm::vec3(carDesc.wheelScaleModel.x, -carDesc.wheelScaleModel.y, carDesc.wheelScaleModel.z)); meshNode->material.SetCullMode(D3DCULL_CCW); } else @@ -561,7 +561,7 @@ void DataBase::LoadCar(const std::string& name, const std::string& mesh, const s carShape->SetMaterialIndex(carDesc.wakeFrictionModel ? _nxCarMaterial2->getMaterialIndex() : _nxCarMaterial1->getMaterialIndex()); - std::vector posWheels; + std::vector posWheels; CarWheels::LoadPosTo("Data\\" + wheelCoords, posWheels); for (unsigned i = 0; i < posWheels.size(); ++i) @@ -621,7 +621,7 @@ void DataBase::LoadCar(const std::string& name, const std::string& mesh, const s { game::MapObj* mapObj = NewMapObj(); AddToGraph(mapObj, gtDefFixPipe, true); - mapObj->GetGameObj().SetPos(D3DXVECTOR3(0, 0, 1.5f)); + mapObj->GetGameObj().SetPos(glm::vec3(0, 0, 1.5f)); mapObj->GetGameObj().SetMaxTimeLife(10); graph::IVBMeshNode* node = AddMeshNode(mapObj, carDesc.bodyDestr + ".r3d"); @@ -630,8 +630,8 @@ void DataBase::LoadCar(const std::string& name, const std::string& mesh, const s AddPxBox(mapObj); AddPxBody(mapObj, 1200.0f, 0); - NewChildMapObj(mapObj, MapObjLib::ctEffects, "fire1")->GetGameObj().SetPos(D3DXVECTOR3(1.0f, 0.0f, 0.3f)); - NewChildMapObj(mapObj, MapObjLib::ctEffects, "fire1")->GetGameObj().SetPos(D3DXVECTOR3(-1.0f, -0.5f, 0.5f)); + NewChildMapObj(mapObj, MapObjLib::ctEffects, "fire1")->GetGameObj().SetPos(glm::vec3(1.0f, 0.0f, 0.3f)); + NewChildMapObj(mapObj, MapObjLib::ctEffects, "fire1")->GetGameObj().SetPos(glm::vec3(-1.0f, -0.5f, 0.5f)); SaveMapObj(mapObj, MapObjLib::ctEffects, carDesc.bodyDestr); record = GetRecord(MapObjLib::ctEffects, carDesc.bodyDestr); @@ -644,7 +644,7 @@ void DataBase::LoadCar(const std::string& name, const std::string& mesh, const s { ImmortalEffect& effect = gameObj->GetBehaviors().Add(); effect.SetEffect(GetRecord(MapObjLib::ctEffects, "shield1")); - effect.SetScaleK(D3DXVECTOR3(1.3f, 1.7f, 1.7f)); + effect.SetScaleK(glm::vec3(1.3f, 1.7f, 1.7f)); } { @@ -839,15 +839,15 @@ void DataBase::LoadEffects() desc.startTime = 0; desc.density = 3.0f; desc.life = 0; - desc.startPos = Vec3Range(D3DXVECTOR3(-0.1f, -0.1f, -0.1f), D3DXVECTOR3(0.1f, 0.1f, 0.1f), Vec3Range::vdVolume, Point3U(100, 100, 100)); + desc.startPos = Vec3Range(glm::vec3(-0.1f, -0.1f, -0.1f), glm::vec3(0.1f, 0.1f, 0.1f), Vec3Range::vdVolume, Point3U(100, 100, 100)); desc.startScale = Vec3Range(IdentityVector * 0.9f, IdentityVector * 1.1f); graph::FxFlowEmitter::FlowDesc descFlow; - descFlow.speedPos = Vec3Range(D3DXVECTOR3(-1.5f, -1.5f, 1.0f), D3DXVECTOR3(1.5f, 1.5f, 5.0f), Vec3Range::vdVolume) * 3.0f; + descFlow.speedPos = Vec3Range(glm::vec3(-1.5f, -1.5f, 1.0f), glm::vec3(1.5f, 1.5f, 5.0f), Vec3Range::vdVolume) * 3.0f; glm::quat spRot1 = glm::angleAxis(D3DX_PI, Vec3DxToGlm(-IdentityVector)); glm::quat spRot2 = glm::angleAxis(2.0f * D3DX_PI, Vec3DxToGlm(IdentityVector)); descFlow.speedRot = QuatRange(spRot1, spRot2, QuatRange::vdVolume, Point2U(100, 100)); - descFlow.gravitation = D3DXVECTOR3(0, 0, -9.80f); + descFlow.gravitation = glm::vec3(0, 0, -9.80f); LoadFxFlow("wheels1", "", _fxWheelManager, desc, descFlow, true); } @@ -860,15 +860,15 @@ void DataBase::LoadEffects() desc.startTime = 0; desc.density = 1.0f; desc.life = 0; - desc.startPos = Vec3Range(D3DXVECTOR3(-0.1f, -0.1f, -0.1f), D3DXVECTOR3(0.1f, 0.1f, 0.1f), Vec3Range::vdVolume, Point3U(100, 100, 100)); + desc.startPos = Vec3Range(glm::vec3(-0.1f, -0.1f, -0.1f), glm::vec3(0.1f, 0.1f, 0.1f), Vec3Range::vdVolume, Point3U(100, 100, 100)); desc.startScale = Vec3Range(IdentityVector * 0.9f, IdentityVector * 1.1f); graph::FxFlowEmitter::FlowDesc descFlow; - descFlow.speedPos = Vec3Range(D3DXVECTOR3(-1.5f, -1.5f, 4.0f), D3DXVECTOR3(1.5f, 1.5f, 5.0f), Vec3Range::vdVolume) * 3.0f; + descFlow.speedPos = Vec3Range(glm::vec3(-1.5f, -1.5f, 4.0f), glm::vec3(1.5f, 1.5f, 5.0f), Vec3Range::vdVolume) * 3.0f; glm::quat spRot1 = glm::angleAxis(D3DX_PI, Vec3DxToGlm(-IdentityVector)); glm::quat spRot2 = glm::angleAxis(2.0f * D3DX_PI, Vec3DxToGlm(IdentityVector)); descFlow.speedRot = QuatRange(spRot1, spRot2, QuatRange::vdVolume, Point2U(100, 100)); - descFlow.gravitation = D3DXVECTOR3(0, 0, -9.80f); + descFlow.gravitation = glm::vec3(0, 0, -9.80f); LoadFxFlow("truba1", "", _fxTrubaManager, desc, descFlow, true); } @@ -881,13 +881,13 @@ void DataBase::LoadEffects() desc.startTime = 0; desc.density = 30; desc.life = 1.0f; - desc.startPos = Vec3Range(D3DXVECTOR3(-0.1f, -0.1f, -0.1f), D3DXVECTOR3(0.1f, 0.1f, 0.1f), Vec3Range::vdVolume); - desc.startScale = Vec3Range(D3DXVECTOR3(1.0f, 0.70f, 0.70f), D3DXVECTOR3(1.5f, 1.0f, 1.0f)); + desc.startPos = Vec3Range(glm::vec3(-0.1f, -0.1f, -0.1f), glm::vec3(0.1f, 0.1f, 0.1f), Vec3Range::vdVolume); + desc.startScale = Vec3Range(glm::vec3(1.0f, 0.70f, 0.70f), glm::vec3(1.5f, 1.0f, 1.0f)); graph::FxFlowEmitter::FlowDesc descFlow; - descFlow.speedPos = Vec3Range(D3DXVECTOR3(-12.0f, -12.0f, 0.0f), D3DXVECTOR3(12.0f, 12.0f, 12.0f), Vec3Range::vdVolume); + descFlow.speedPos = Vec3Range(glm::vec3(-12.0f, -12.0f, 0.0f), glm::vec3(12.0f, 12.0f, 12.0f), Vec3Range::vdVolume); descFlow.autoRot = true; - descFlow.gravitation = D3DXVECTOR3(0, 0, -5.0f); + descFlow.gravitation = glm::vec3(0, 0, -5.0f); LoadFxFlow("spark1", "Effect\\spark1", _fxDirSpriteManager, desc, descFlow, true, 1.0f); } @@ -906,13 +906,13 @@ void DataBase::LoadEffects() desc.startTime = 0.1f; desc.density = FloatRange(7.0f, 10.0f); desc.life = FloatRange(0.3f, 0.7f); - desc.startPos = Vec3Range(D3DXVECTOR3(-0.1f, -0.1f, -0.1f), D3DXVECTOR3(0.1f, 0.1f, 0.1f), Vec3Range::vdVolume); - desc.startScale = Vec3Range(D3DXVECTOR3(0.2f, 0.40f, 0.40f), D3DXVECTOR3(0.9f, 0.5f, 0.5f)); + desc.startPos = Vec3Range(glm::vec3(-0.1f, -0.1f, -0.1f), glm::vec3(0.1f, 0.1f, 0.1f), Vec3Range::vdVolume); + desc.startScale = Vec3Range(glm::vec3(0.2f, 0.40f, 0.40f), glm::vec3(0.9f, 0.5f, 0.5f)); graph::FxFlowEmitter::FlowDesc descFlow; - descFlow.speedPos = Vec3Range(D3DXVECTOR3(-6.0f, -6.0f, -6.0f), D3DXVECTOR3(6.0f, 6.0f, 6.0f), Vec3Range::vdVolume); + descFlow.speedPos = Vec3Range(glm::vec3(-6.0f, -6.0f, -6.0f), glm::vec3(6.0f, 6.0f, 6.0f), Vec3Range::vdVolume); descFlow.autoRot = true; - descFlow.gravitation = D3DXVECTOR3(0, 0, -2.0f); + descFlow.gravitation = glm::vec3(0, 0, -2.0f); mapObj->GetGameObj().GetBehaviors().Add(); graph::FxFlowEmitter* emitter = AddFxFlowEmitter(fxSystem, desc, descFlow, true); @@ -927,13 +927,13 @@ void DataBase::LoadEffects() desc.startTime = 0; desc.density = 30; desc.life = 0.7f; - desc.startPos = Vec3Range(D3DXVECTOR3(-0.1f, -0.1f, -0.1f), D3DXVECTOR3(0.1f, 0.1f, 0.1f), Vec3Range::vdVolume); - desc.startScale = Vec3Range(D3DXVECTOR3(0.5f, 0.4f, 0.4f), D3DXVECTOR3(0.6f, 0.5f, 0.5f)); + desc.startPos = Vec3Range(glm::vec3(-0.1f, -0.1f, -0.1f), glm::vec3(0.1f, 0.1f, 0.1f), Vec3Range::vdVolume); + desc.startScale = Vec3Range(glm::vec3(0.5f, 0.4f, 0.4f), glm::vec3(0.6f, 0.5f, 0.5f)); graph::FxFlowEmitter::FlowDesc descFlow; - descFlow.speedPos = Vec3Range(D3DXVECTOR3(-12.0f, -12.0f, 0.0f), D3DXVECTOR3(12.0f, 12.0f, 12.0f), Vec3Range::vdVolume); + descFlow.speedPos = Vec3Range(glm::vec3(-12.0f, -12.0f, 0.0f), glm::vec3(12.0f, 12.0f, 12.0f), Vec3Range::vdVolume); descFlow.autoRot = true; - descFlow.gravitation = D3DXVECTOR3(0, 0, -5.0f); + descFlow.gravitation = glm::vec3(0, 0, -5.0f); LoadFxFlow("spark3", "Effect\\spark1", _fxDirSpriteManager, desc, descFlow, true, 0.7f); } @@ -946,12 +946,12 @@ void DataBase::LoadEffects() desc.startTime = 0; desc.density = 15; desc.life = 0.7f; - desc.startPos = Vec3Range(D3DXVECTOR3(-0.1f, -0.1f, -0.1f), D3DXVECTOR3(0.1f, 0.1f, 0.1f), Vec3Range::vdVolume); - desc.startScale = Vec3Range(D3DXVECTOR3(1.3f, 0.4f, 0.4f), D3DXVECTOR3(1.6f, 0.4f, 0.4f)); + desc.startPos = Vec3Range(glm::vec3(-0.1f, -0.1f, -0.1f), glm::vec3(0.1f, 0.1f, 0.1f), Vec3Range::vdVolume); + desc.startScale = Vec3Range(glm::vec3(1.3f, 0.4f, 0.4f), glm::vec3(1.6f, 0.4f, 0.4f)); graph::FxFlowEmitter::FlowDesc descFlow; - descFlow.speedPos = Vec3Range(D3DXVECTOR3(-10.0f, -10.0f, -10.0f), D3DXVECTOR3(10.0f, 10.0f, 10.0f), Vec3Range::vdVolume); - descFlow.speedScale = Vec3Range(D3DXVECTOR3(7.5f, 0.0f, 0.0f), D3DXVECTOR3(10.5f, 0.0f, 0.0f)); + descFlow.speedPos = Vec3Range(glm::vec3(-10.0f, -10.0f, -10.0f), glm::vec3(10.0f, 10.0f, 10.0f), Vec3Range::vdVolume); + descFlow.speedScale = Vec3Range(glm::vec3(7.5f, 0.0f, 0.0f), glm::vec3(10.5f, 0.0f, 0.0f)); descFlow.autoRot = true; LoadFxFlow("streak1", "Effect\\streak1", _fxDirSpriteManager, desc, descFlow, true, 0.7f); @@ -971,13 +971,13 @@ void DataBase::LoadEffects() desc.startTime = 0.1f; desc.density = FloatRange(7.0f, 10.0f); desc.life = FloatRange(0.3f, 0.7f); - desc.startPos = Vec3Range(D3DXVECTOR3(-0.1f, -0.1f, -0.1f), D3DXVECTOR3(0.1f, 0.1f, 0.1f), Vec3Range::vdVolume); - desc.startScale = Vec3Range(D3DXVECTOR3(0.4f, 0.6f, 0.6f), D3DXVECTOR3(1.1f, 0.7f, 0.7f)); + desc.startPos = Vec3Range(glm::vec3(-0.1f, -0.1f, -0.1f), glm::vec3(0.1f, 0.1f, 0.1f), Vec3Range::vdVolume); + desc.startScale = Vec3Range(glm::vec3(0.4f, 0.6f, 0.6f), glm::vec3(1.1f, 0.7f, 0.7f)); graph::FxFlowEmitter::FlowDesc descFlow; - descFlow.speedPos = Vec3Range(D3DXVECTOR3(-6.0f, -6.0f, -6.0f), D3DXVECTOR3(6.0f, 6.0f, 6.0f), Vec3Range::vdVolume); + descFlow.speedPos = Vec3Range(glm::vec3(-6.0f, -6.0f, -6.0f), glm::vec3(6.0f, 6.0f, 6.0f), Vec3Range::vdVolume); descFlow.autoRot = true; - descFlow.gravitation = D3DXVECTOR3(0, 0, -2.0f); + descFlow.gravitation = glm::vec3(0, 0, -2.0f); mapObj->GetGameObj().GetBehaviors().Add(); graph::FxFlowEmitter* emitter = AddFxFlowEmitter(fxSystem, desc, descFlow, true); @@ -992,12 +992,12 @@ void DataBase::LoadEffects() desc.startTime = 0; desc.density = 15; desc.life = 0.5f; - desc.startPos = Vec3Range(D3DXVECTOR3(-0.1f, -0.1f, -0.1f), D3DXVECTOR3(0.1f, 0.1f, 0.1f), Vec3Range::vdVolume); - desc.startScale = Vec3Range(D3DXVECTOR3(0.5f, 0.5f, 0.5f), D3DXVECTOR3(0.7f, 0.7f, 0.7f)); + desc.startPos = Vec3Range(glm::vec3(-0.1f, -0.1f, -0.1f), glm::vec3(0.1f, 0.1f, 0.1f), Vec3Range::vdVolume); + desc.startScale = Vec3Range(glm::vec3(0.5f, 0.5f, 0.5f), glm::vec3(0.7f, 0.7f, 0.7f)); graph::FxFlowEmitter::FlowDesc descFlow; - descFlow.speedPos = Vec3Range(D3DXVECTOR3(-10.0f, -10.0f, -10.0f), D3DXVECTOR3(10.0f, 10.0f, 10.0f), Vec3Range::vdVolume); - //descFlow.speedScale = Vec3Range(D3DXVECTOR3(13.5f, 0.0f, 0.0f), D3DXVECTOR3(16.5f, 0.0f, 0.0f)); + descFlow.speedPos = Vec3Range(glm::vec3(-10.0f, -10.0f, -10.0f), glm::vec3(10.0f, 10.0f, 10.0f), Vec3Range::vdVolume); + //descFlow.speedScale = Vec3Range(glm::vec3(13.5f, 0.0f, 0.0f), glm::vec3(16.5f, 0.0f, 0.0f)); descFlow.autoRot = true; LoadFxFlow("blink", "Effect\\blink", _fxSpriteManager, desc, descFlow, true, 0.5f); @@ -1011,8 +1011,8 @@ void DataBase::LoadEffects() desc.startTime = 0; desc.density = 1; desc.life = 0.25f; - desc.startPos = Vec3Range(D3DXVECTOR3(-0.1f, -0.1f, -0.1f), D3DXVECTOR3(0.1f, 0.1f, 0.1f), Vec3Range::vdVolume); - desc.startScale = Vec3Range(D3DXVECTOR3(0.8f, 0.8f, 0.8f), D3DXVECTOR3(1.1f, 1.1f, 1.1f)); + desc.startPos = Vec3Range(glm::vec3(-0.1f, -0.1f, -0.1f), glm::vec3(0.1f, 0.1f, 0.1f), Vec3Range::vdVolume); + desc.startScale = Vec3Range(glm::vec3(0.8f, 0.8f, 0.8f), glm::vec3(1.1f, 1.1f, 1.1f)); glm::quat rot1 = glm::angleAxis(0.0f, glm::vec3(0.0f, 0.0f, 1.0f)); glm::quat rot2 = glm::angleAxis(2 * D3DX_PI, glm::vec3(0.0f, 0.0f, 1.0f)); @@ -1030,12 +1030,12 @@ void DataBase::LoadEffects() desc.startType = graph::FxEmitter::sotDist; desc.startTime = FloatRange(1.0f, 1.1f); desc.density = FloatRange(1.0f, 3.0f); - desc.startPos = Vec3Range(D3DXVECTOR3(-0.1f, -0.1f, -0.1f), D3DXVECTOR3(0.1f, 0.1f, 0.1f), Vec3Range::vdVolume); - desc.startScale = D3DXVECTOR3(IdentityVector) / 2; + desc.startPos = Vec3Range(glm::vec3(-0.1f, -0.1f, -0.1f), glm::vec3(0.1f, 0.1f, 0.1f), Vec3Range::vdVolume); + desc.startScale = glm::vec3(IdentityVector) / 2; graph::FxFlowEmitter::FlowDesc descFlow; - descFlow.speedScale = D3DXVECTOR3(1.0f, 1.0f, 1.0f); - descFlow.speedPos = Vec3Range(D3DXVECTOR3(-0.5f, -0.5f, 2.0f), D3DXVECTOR3(0.5f, 0.5f, 2.0f), Vec3Range::vdVolume, Point3U(100, 100, 100)); + descFlow.speedScale = glm::vec3(1.0f, 1.0f, 1.0f); + descFlow.speedPos = Vec3Range(glm::vec3(-0.5f, -0.5f, 2.0f), glm::vec3(0.5f, 0.5f, 2.0f), Vec3Range::vdVolume, Point3U(100, 100, 100)); LoadFxFlow("smoke1", "Effect\\smoke1", _fxSpriteManager, desc, descFlow, true); } @@ -1073,9 +1073,9 @@ void DataBase::LoadEffects() graph::FxFlowEmitter::FlowDesc descFlow; descFlow.speedScale = IdentityVector * 3.0f; - descFlow.speedPos = Vec3Range(D3DXVECTOR3(15.0f, -2.0f, -2.0f), D3DXVECTOR3(19.0f, 2.0f, 2.0f), Vec3Range::vdVolume); - descFlow.acceleration = D3DXVECTOR3(-20.0f, 0.0f, 0.0f); - descFlow.gravitation = D3DXVECTOR3(0, 0, 1.0f); + descFlow.speedPos = Vec3Range(glm::vec3(15.0f, -2.0f, -2.0f), glm::vec3(19.0f, 2.0f, 2.0f), Vec3Range::vdVolume); + descFlow.acceleration = glm::vec3(-20.0f, 0.0f, 0.0f); + descFlow.gravitation = glm::vec3(0, 0, 1.0f); LoadFxFlow("smoke3", "Effect\\smoke1", _fxSpriteManager, desc, descFlow, true, 1.0f); } @@ -1126,13 +1126,13 @@ void DataBase::LoadEffects() desc.life = FloatRange(0.2f, 0.3f); desc.startTime = FloatRange(1.0f); desc.density = FloatRange(1.0f, 1.0f); - desc.startPos = Vec3Range(D3DXVECTOR3(-0.2f, -0.2f, -0.2f), D3DXVECTOR3(0.2f, 0.2f, 0.2f), Vec3Range::vdVolume); + desc.startPos = Vec3Range(glm::vec3(-0.2f, -0.2f, -0.2f), glm::vec3(0.2f, 0.2f, 0.2f), Vec3Range::vdVolume); desc.startRot = QuatRange(glm::quat(-1, -1, -1, -1), glm::quat(1, 1, 1, 1), QuatRange::vdVolume); - desc.startScale = D3DXVECTOR3(IdentityVector) * 1.5f; + desc.startScale = glm::vec3(IdentityVector) * 1.5f; graph::FxFlowEmitter::FlowDesc descFlow; descFlow.speedScale = IdentityVector * (-2.0f); - descFlow.speedPos = Vec3Range(D3DXVECTOR3(-1.0f, -0.5f, 5.0f), D3DXVECTOR3(-1.3f, 0.5f, 6.0f), Vec3Range::vdVolume); + descFlow.speedPos = Vec3Range(glm::vec3(-1.0f, -0.5f, 5.0f), glm::vec3(-1.3f, 0.5f, 6.0f), Vec3Range::vdVolume); LoadFxFlow("smoke6", "Effect\\smoke6", _fxSpriteManager, desc, descFlow, true); } @@ -1151,13 +1151,13 @@ void DataBase::LoadEffects() desc.life = FloatRange(0.5f, 0.6f); desc.startTime = FloatRange(1.0f); desc.density = 1.0f; - desc.startPos = Vec3Range(D3DXVECTOR3(-0.2f, -0.2f, -0.2f), D3DXVECTOR3(0.2f, 0.2f, 0.2f), Vec3Range::vdVolume); + desc.startPos = Vec3Range(glm::vec3(-0.2f, -0.2f, -0.2f), glm::vec3(0.2f, 0.2f, 0.2f), Vec3Range::vdVolume); desc.startRot = QuatRange(glm::quat(-1, -1, -1, -1), glm::quat(1, 1, 1, 1), QuatRange::vdVolume); - desc.startScale = D3DXVECTOR3(IdentityVector) * 1.5f; + desc.startScale = glm::vec3(IdentityVector) * 1.5f; graph::FxFlowEmitter::FlowDesc descFlow; descFlow.speedScale = IdentityVector * (3.0f); - descFlow.speedPos = Vec3Range(D3DXVECTOR3(0.0f, 0.0f, 0.8f), D3DXVECTOR3(0.0f, 0.0f, 1.0f)); + descFlow.speedPos = Vec3Range(glm::vec3(0.0f, 0.0f, 0.8f), glm::vec3(0.0f, 0.0f, 1.0f)); mapObj->GetGameObj().GetBehaviors().Add(); graph::FxFlowEmitter* emitter = AddFxFlowEmitter(fxSystem, desc, descFlow, true); @@ -1201,19 +1201,19 @@ void DataBase::LoadEffects() } //explosion2 - LoadFxSprite("explosion2", "Effect\\explosion2", NullVector, Vec3Range(NullVector, D3DXVECTOR3(25.0f, 25.0f, 25.0f)), NullQuaternion, false, graph::SceneNode::amOnce, 1.0f, 0.0f, 1.0f); + LoadFxSprite("explosion2", "Effect\\explosion2", NullVector, Vec3Range(NullVector, glm::vec3(25.0f, 25.0f, 25.0f)), NullQuaternion, false, graph::SceneNode::amOnce, 1.0f, 0.0f, 1.0f); //explosion3 - LoadFxSprite("explosion3", "Effect\\explosion3", NullVector, D3DXVECTOR3(6.0f, 6.0f, 6.0f), NullQuaternion, false, graph::SceneNode::amOnce, 0.8f, 0.0f, 0.8f); + LoadFxSprite("explosion3", "Effect\\explosion3", NullVector, glm::vec3(6.0f, 6.0f, 6.0f), NullQuaternion, false, graph::SceneNode::amOnce, 0.8f, 0.0f, 0.8f); //explosion4 - LoadFxSprite("explosion4", "Effect\\explosion4", NullVector, D3DXVECTOR3(6.0f, 6.0f, 6.0f), NullQuaternion, false, graph::SceneNode::amOnce, 0.7f, 0.0f, 0.7f); + LoadFxSprite("explosion4", "Effect\\explosion4", NullVector, glm::vec3(6.0f, 6.0f, 6.0f), NullQuaternion, false, graph::SceneNode::amOnce, 0.7f, 0.0f, 0.7f); //boom1 - LoadFxSprite("boom1", "Effect\\boom1", NullVector, D3DXVECTOR3(1.5f, 1.5f, 1.5f), NullQuaternion, false, graph::SceneNode::amOnce, 0.7f, 0.0f, 0.7f); + LoadFxSprite("boom1", "Effect\\boom1", NullVector, glm::vec3(1.5f, 1.5f, 1.5f), NullQuaternion, false, graph::SceneNode::amOnce, 0.7f, 0.0f, 0.7f); //boom2 - LoadFxSprite("boom2", "Effect\\boom2", NullVector, D3DXVECTOR3(1.2f, 1.2f, 1.2f), NullQuaternion, false, graph::SceneNode::amOnce, 0.7f, 0.0f, 0.7f); + LoadFxSprite("boom2", "Effect\\boom2", NullVector, glm::vec3(1.2f, 1.2f, 1.2f), NullQuaternion, false, graph::SceneNode::amOnce, 0.7f, 0.0f, 0.7f); //boomSpark1 - LoadFxSprite("boomSpark1", "Effect\\boomSpark1", NullVector, Vec3Range(D3DXVECTOR3(1.0f, 1.0f, 1.0f), D3DXVECTOR3(10.0f, 10.0f, 10.0f)), NullQuaternion, false, graph::SceneNode::amOnce, 0.5f, 0.0f, 0.5f); + LoadFxSprite("boomSpark1", "Effect\\boomSpark1", NullVector, Vec3Range(glm::vec3(1.0f, 1.0f, 1.0f), glm::vec3(10.0f, 10.0f, 10.0f)), NullQuaternion, false, graph::SceneNode::amOnce, 0.5f, 0.0f, 0.5f); //boomSpark2 - LoadFxSprite("boomSpark2", "Effect\\boomSpark2", NullVector, Vec3Range(D3DXVECTOR3(1.0f, 1.0f, 1.0f), D3DXVECTOR3(10.0f, 10.0f, 10.0f)), NullQuaternion, false, graph::SceneNode::amOnce, 0.5f, 0.0f, 0.5f); + LoadFxSprite("boomSpark2", "Effect\\boomSpark2", NullVector, Vec3Range(glm::vec3(1.0f, 1.0f, 1.0f), glm::vec3(10.0f, 10.0f, 10.0f)), NullQuaternion, false, graph::SceneNode::amOnce, 0.5f, 0.0f, 0.5f); //refr1 LoadFxSprite("refr1", "Effect\\j_swell", NullVector, Vec3Range(NullVector, IdentityVector * 100.0f), NullQuaternion, false, graph::SceneNode::amOnce, 0.5f, 0.0f, 0.5f, false, IdentityVec2, gtRefrEffect); //flare1 @@ -1276,16 +1276,16 @@ void DataBase::LoadEffects() desc.life = FloatRange(0.5f, 0.6f); desc.startTime = FloatRange(0.1f, 0.2f); desc.density = FloatRange(2.0f, 3.0f); - desc.startPos = Vec3Range(D3DXVECTOR3(-0.1f, -0.1f, -0.5f), D3DXVECTOR3(0.1f, 0.1f, 0.1f), Vec3Range::vdVolume); + desc.startPos = Vec3Range(glm::vec3(-0.1f, -0.1f, -0.5f), glm::vec3(0.1f, 0.1f, 0.1f), Vec3Range::vdVolume); glm::quat spRot1 = glm::angleAxis(D3DX_PI, Vec3DxToGlm(-ZVector)); glm::quat spRot2 = glm::angleAxis(2.0f * D3DX_PI, Vec3DxToGlm(ZVector)); desc.startRot = QuatRange(spRot1, spRot2, QuatRange::vdVolume); graph::FxFlowEmitter::FlowDesc descFlow; - descFlow.speedPos = Vec3Range(D3DXVECTOR3(-1, -1, 7), D3DXVECTOR3(1, 1, 7), Vec3Range::vdVolume) * 0.4f; + descFlow.speedPos = Vec3Range(glm::vec3(-1, -1, 7), glm::vec3(1, 1, 7), Vec3Range::vdVolume) * 0.4f; graph::FxFlowEmitter* emitter = AddFxFlowEmitter(fxSystem, desc, descFlow, true); - NewChildMapObj(mapObj, MapObjLib::ctEffects, "smoke1")->GetGameObj().SetPos(D3DXVECTOR3(0.0f, 0.0f, 0.5f)); + NewChildMapObj(mapObj, MapObjLib::ctEffects, "smoke1")->GetGameObj().SetPos(glm::vec3(0.0f, 0.0f, 0.5f)); SaveMapObj(mapObj, MapObjLib::ctEffects, "fire1"); } @@ -1306,16 +1306,16 @@ void DataBase::LoadEffects() desc.startDuration = 0.0f; desc.startType = graph::FxEmitter::sotDist; desc.density = 1.0f; - desc.startPos = Vec3Range(D3DXVECTOR3(-0.0f, -0.2f, -0.2f), D3DXVECTOR3(0.0f, 0.2f, 0.2f), Vec3Range::vdVolume); - desc.startScale = D3DXVECTOR3(0.7f, 0.7f, 0.7f); + desc.startPos = Vec3Range(glm::vec3(-0.0f, -0.2f, -0.2f), glm::vec3(0.0f, 0.2f, 0.2f), Vec3Range::vdVolume); + desc.startScale = glm::vec3(0.7f, 0.7f, 0.7f); desc.startRot = QuatRange(glm::quat(-1, -1, -1, -1), glm::quat(1, 1, 1, 1), QuatRange::vdVolume); graph::FxFlowEmitter::FlowDesc descFlow; - descFlow.speedPos = Vec3Range(D3DXVECTOR3(11.0f, -0.5f, 0.0f), D3DXVECTOR3(13.0f, 0.5f, 0.1f), Vec3Range::vdVolume); + descFlow.speedPos = Vec3Range(glm::vec3(11.0f, -0.5f, 0.0f), glm::vec3(13.0f, 0.5f, 0.1f), Vec3Range::vdVolume); descFlow.speedRot = NullQuaternion; - descFlow.speedScale = Vec3Range(D3DXVECTOR3(2.0f, 2.0f, 2.0f), D3DXVECTOR3(2.4f, 2.4f, 2.4f)); - descFlow.acceleration = D3DXVECTOR3(-7.0f, 0.0f, 0.0f); - descFlow.gravitation = D3DXVECTOR3(0.0f, 0.0f, 1.0f); + descFlow.speedScale = Vec3Range(glm::vec3(2.0f, 2.0f, 2.0f), glm::vec3(2.4f, 2.4f, 2.4f)); + descFlow.acceleration = glm::vec3(-7.0f, 0.0f, 0.0f); + descFlow.gravitation = glm::vec3(0.0f, 0.0f, 1.0f); descFlow.autoRot = false; graph::FxFlowEmitter* emitter = AddFxFlowEmitter(fxSystem, desc, descFlow, true); @@ -1329,7 +1329,7 @@ void DataBase::LoadEffects() //Death2 { game::MapObj* mapObj = NewMapObj(); - mapObj->GetGameObj().SetPos(D3DXVECTOR3(0, 0, 1.5f)); + mapObj->GetGameObj().SetPos(glm::vec3(0, 0, 1.5f)); mapObj->GetGameObj().SetMaxTimeLife(10); AddToGraph(mapObj, gtEffect, true); @@ -1349,17 +1349,17 @@ void DataBase::LoadEffects() desc.startTime = 0; desc.density = 3; desc.life = 0; - desc.startPos = Vec3Range(D3DXVECTOR3(-0.1f, -0.1f, -0.1f), D3DXVECTOR3(0.1f, 0.1f, 0.1f), Vec3Range::vdVolume, Point3U(100, 100, 100)); + desc.startPos = Vec3Range(glm::vec3(-0.1f, -0.1f, -0.1f), glm::vec3(0.1f, 0.1f, 0.1f), Vec3Range::vdVolume, Point3U(100, 100, 100)); desc.startScale = Vec3Range(IdentityVector * 0.9f, IdentityVector * 1.1f); graph::FxFlowEmitter::FlowDesc descFlow; - descFlow.speedPos = Vec3Range(D3DXVECTOR3(-1.5f, -1.5f, 2.0f), D3DXVECTOR3(1.5f, 1.5f, 5.0f), Vec3Range::vdVolume) * 3.0f; + descFlow.speedPos = Vec3Range(glm::vec3(-1.5f, -1.5f, 2.0f), glm::vec3(1.5f, 1.5f, 5.0f), Vec3Range::vdVolume) * 3.0f; // glm::quat spRot1 = glm::angleAxis(D3DX_PI, Vec3DxToGlm(-IdentityVector)); glm::quat spRot2 = glm::angleAxis(2.0f * D3DX_PI, Vec3DxToGlm(IdentityVector)); descFlow.speedRot = QuatRange(spRot1, spRot2, QuatRange::vdVolume, Point2U(100, 100)); // - descFlow.gravitation = D3DXVECTOR3(0, 0, -9.80f); + descFlow.gravitation = glm::vec3(0, 0, -9.80f); AddFxFlowEmitter(fxSystem, desc, descFlow, true); @@ -1374,12 +1374,12 @@ void DataBase::LoadEffects() desc.startType = graph::FxEmitter::sotDist; desc.startTime = FloatRange(1.0f, 1.1f); desc.density = FloatRange(1.0f, 3.0f); - desc.startPos = Vec3Range(D3DXVECTOR3(-0.1f, -0.1f, -0.1f), D3DXVECTOR3(0.1f, 0.1f, 0.1f), Vec3Range::vdVolume); - desc.startScale = D3DXVECTOR3(IdentityVector); + desc.startPos = Vec3Range(glm::vec3(-0.1f, -0.1f, -0.1f), glm::vec3(0.1f, 0.1f, 0.1f), Vec3Range::vdVolume); + desc.startScale = glm::vec3(IdentityVector); graph::FxFlowEmitter::FlowDesc descFlow = smoke->GetFlowDesc(); descFlow.speedScale = IdentityVector * 3.0f; - descFlow.speedPos = Vec3Range(D3DXVECTOR3(-0.5f, -0.5f, 2.0f), D3DXVECTOR3(0.5f, 0.5f, 2.0f), Vec3Range::vdVolume, Point3U(100, 100, 100)); + descFlow.speedPos = Vec3Range(glm::vec3(-0.5f, -0.5f, 2.0f), glm::vec3(0.5f, 0.5f, 2.0f), Vec3Range::vdVolume, Point3U(100, 100, 100)); AddFxFlowEmitter(smokeSys, desc, descFlow, true); } @@ -1396,13 +1396,13 @@ void DataBase::LoadEffects() //Death3 { game::MapObj* mapObj = NewMapObj(); - mapObj->GetGameObj().SetPos(D3DXVECTOR3(0, 0, 0.3f)); + mapObj->GetGameObj().SetPos(glm::vec3(0, 0, 0.3f)); mapObj->GetGameObj().SetMaxTimeLife(0.7f); AddToGraph(mapObj, gtEffect, true); { MapObj* child = NewChildMapObj(mapObj, MapObjLib::ctEffects, "explosion3"); - child->GetGameObj().SetPos(D3DXVECTOR3(0.0f, 0.0f, 2.0f)); + child->GetGameObj().SetPos(glm::vec3(0.0f, 0.0f, 2.0f)); } NewChildMapObj(mapObj, MapObjLib::ctEffects, "explosionRing"); NewChildMapObj(mapObj, MapObjLib::ctEffects, "spark3"); @@ -1549,7 +1549,7 @@ void DataBase::LoadEffects() desc.startScale = IdentityVector * 0.6f; desc.startRot = NullQuaternion; desc.rangeLife = FloatRange(0.0f, -0.6f); - desc.rangePos = Vec3Range(D3DXVECTOR3(1.0f, 0, 0), D3DXVECTOR3(-1.0f, 0, 0)); + desc.rangePos = Vec3Range(glm::vec3(1.0f, 0, 0), glm::vec3(-1.0f, 0, 0)); graph::FxFlowEmitter::FlowDesc descFlow; descFlow.speedPos = XVector * 2.0f; @@ -1633,7 +1633,7 @@ void DataBase::LoadEffects() MapObj* mapObj = NewMapObj(); { MapObj* eff = NewChildMapObj(mapObj, MapObjLib::ctEffects, "flareLaser1"); - eff->GetGameObj().SetPos(D3DXVECTOR3(0.4f, 0.0f, 0.0f)); + eff->GetGameObj().SetPos(glm::vec3(0.4f, 0.0f, 0.0f)); } SaveMapObj(mapObj, MapObjLib::ctEffects, "laserShot"); } @@ -1666,12 +1666,12 @@ void DataBase::LoadEffects() desc.startDuration = 0.0f; desc.startType = graph::FxEmitter::sotTime; desc.density = FloatRange(20.0f, 30.0f); - desc.startPos = Vec3Range(D3DXVECTOR3(-6.0f, -8.0f, 2.0f), D3DXVECTOR3(6.0f, 4.0f, 3.0f), Vec3Range::vdVolume); - desc.startScale = D3DXVECTOR3(1.0f, 0.1f, 1.0f); + desc.startPos = Vec3Range(glm::vec3(-6.0f, -8.0f, 2.0f), glm::vec3(6.0f, 4.0f, 3.0f), Vec3Range::vdVolume); + desc.startScale = glm::vec3(1.0f, 0.1f, 1.0f); desc.startRot = NullQuaternion; graph::FxFlowEmitter::FlowDesc descFlow; - descFlow.speedPos = Vec3Range(D3DXVECTOR3(0.0f, 4.0f, -12.0f), D3DXVECTOR3(0.0f, 2.0f, -12.0f), Vec3Range::vdVolume); + descFlow.speedPos = Vec3Range(glm::vec3(0.0f, 4.0f, -12.0f), glm::vec3(0.0f, 2.0f, -12.0f), Vec3Range::vdVolume); descFlow.speedRot = NullQuaternion; descFlow.speedScale = NullVector; descFlow.autoRot = true; @@ -1696,12 +1696,12 @@ void DataBase::LoadEffects() desc.startDuration = 0.0f; desc.startType = graph::FxEmitter::sotTime; desc.density = FloatRange(20.0f, 25.0f); - desc.startPos = Vec3Range(D3DXVECTOR3(40.0f, 1.0f, 17.0f), D3DXVECTOR3(-2.4f, 22.05f, 13.0f), Vec3Range::vdVolume); - desc.startScale = Vec3Range(D3DXVECTOR3(3.0f, 0.3f, 1.0f), D3DXVECTOR3(3.5f, 0.25f, 1.0f), Vec3Range::vdVolume); + desc.startPos = Vec3Range(glm::vec3(40.0f, 1.0f, 17.0f), glm::vec3(-2.4f, 22.05f, 13.0f), Vec3Range::vdVolume); + desc.startScale = Vec3Range(glm::vec3(3.0f, 0.3f, 1.0f), glm::vec3(3.5f, 0.25f, 1.0f), Vec3Range::vdVolume); desc.startRot = NullQuaternion; graph::FxFlowEmitter::FlowDesc descFlow; - descFlow.speedPos = Vec3Range(D3DXVECTOR3(0.0f, 15.0f, -45.0f), D3DXVECTOR3(0.0f, 7.5f, -45.0f), Vec3Range::vdVolume); + descFlow.speedPos = Vec3Range(glm::vec3(0.0f, 15.0f, -45.0f), glm::vec3(0.0f, 7.5f, -45.0f), Vec3Range::vdVolume); descFlow.speedRot = NullQuaternion; descFlow.speedScale = NullVector; descFlow.autoRot = true; @@ -1725,14 +1725,14 @@ void DataBase::LoadEffects() desc.life = FloatRange(1.5f, 1.6f); desc.startTime = FloatRange(0.7f); desc.density = FloatRange(1.0f, 1.0f); - desc.startPos = Vec3Range(D3DXVECTOR3(-0.6f, -0.6f, -0.6f), D3DXVECTOR3(0.6f, 0.6f, 0.6f), Vec3Range::vdVolume); + desc.startPos = Vec3Range(glm::vec3(-0.6f, -0.6f, -0.6f), glm::vec3(0.6f, 0.6f, 0.6f), Vec3Range::vdVolume); glm::quat rot = glm::angleAxis(D3DX_PI, Vec3DxToGlm(ZVector)); desc.startRot = QuatRange(NullQuaternion, rot, QuatRange::vdLinear); - desc.startScale = D3DXVECTOR3(IdentityVector) * 4.0f; + desc.startScale = glm::vec3(IdentityVector) * 4.0f; graph::FxFlowEmitter::FlowDesc descFlow; descFlow.speedScale = -IdentityVector * 1.0f; - descFlow.speedPos = Vec3Range(D3DXVECTOR3(-0.5f, -0.5f, 3.0f), D3DXVECTOR3(0.5f, 0.5f, 3.5f), Vec3Range::vdVolume); + descFlow.speedPos = Vec3Range(glm::vec3(-0.5f, -0.5f, 3.0f), glm::vec3(0.5f, 0.5f, 3.5f), Vec3Range::vdVolume); graph::FxFlowEmitter* emitter = AddFxFlowEmitter(fxSystem, desc, descFlow, true); mapObj->GetGameObj().GetBehaviors().Add(); @@ -1755,14 +1755,14 @@ void DataBase::LoadEffects() desc.life = FloatRange(0.7f, 0.9f); desc.startTime = 0.5f; desc.density = FloatRange(1.0f, 1.0f); - desc.startPos = Vec3Range(D3DXVECTOR3(-0.3f, -0.3f, -0.3f), D3DXVECTOR3(0.3f, 0.3f, 0.3f), Vec3Range::vdVolume); + desc.startPos = Vec3Range(glm::vec3(-0.3f, -0.3f, -0.3f), glm::vec3(0.3f, 0.3f, 0.3f), Vec3Range::vdVolume); glm::quat rot = glm::angleAxis(D3DX_PI, Vec3DxToGlm(ZVector)); desc.startRot = QuatRange(NullQuaternion, rot, QuatRange::vdLinear); - desc.startScale = D3DXVECTOR3(IdentityVector) * 1.5f; + desc.startScale = glm::vec3(IdentityVector) * 1.5f; graph::FxFlowEmitter::FlowDesc descFlow; descFlow.speedScale = IdentityVector * 2.0f; - descFlow.speedPos = Vec3Range(D3DXVECTOR3(-0.5f, -0.5f, 1.0f), D3DXVECTOR3(0.5f, 0.5f, 1.2f), Vec3Range::vdVolume); + descFlow.speedPos = Vec3Range(glm::vec3(-0.5f, -0.5f, 1.0f), glm::vec3(0.5f, 0.5f, 1.2f), Vec3Range::vdVolume); graph::FxFlowEmitter* emitter = AddFxFlowEmitter(fxSystem, desc, descFlow, true); mapObj->GetGameObj().GetBehaviors().Add(); @@ -1822,7 +1822,7 @@ void DataBase::LoadEffects() desc.density = FloatRange(1.0f, 1.0f); desc.startPos = NullVector; desc.startRot = NullQuaternion; - desc.startScale = D3DXVECTOR3(0.5f, 1.0f, 1.0f); + desc.startScale = glm::vec3(0.5f, 1.0f, 1.0f); graph::FxFlowEmitter::FlowDesc descFlow; descFlow.speedScale = IdentityVector * 2.0f; @@ -1864,11 +1864,11 @@ void DataBase::LoadEffects() desc.life = FloatRange(0.5f, 1.0f); desc.startTime = 0; desc.density = 5.0f; - desc.startPos = Vec3Range(D3DXVECTOR3(-2.0f, -2.0f, 0.0f), D3DXVECTOR3(2.0f, 2.0f, 0.0f), Vec3Range::vdVolume); + desc.startPos = Vec3Range(glm::vec3(-2.0f, -2.0f, 0.0f), glm::vec3(2.0f, 2.0f, 0.0f), Vec3Range::vdVolume); glm::quat rot1 = glm::angleAxis(-D3DX_PI / 3.0f, Vec3DxToGlm(ZVector)); glm::quat rot2 = glm::angleAxis(D3DX_PI / 3.0f, Vec3DxToGlm(ZVector)); desc.startRot = QuatRange(rot1, rot2, QuatRange::vdLinear); - desc.startScale = D3DXVECTOR3(1.0f, 1.0f, 1.0f); + desc.startScale = glm::vec3(1.0f, 1.0f, 1.0f); graph::FxFlowEmitter::FlowDesc descFlow; descFlow.speedScale = NullVector; @@ -1887,8 +1887,8 @@ void DataBase::LoadEffects() projDesc.type = Proj::ptCrater; projDesc.SetModel(GetRecord(MapObjLib::ctEffects, "crater")); - projDesc.pos = D3DXVECTOR3(0, 0.0f, 0.1f); - projDesc.size = D3DXVECTOR3(6.0f, 6.0f, 0.1f); + projDesc.pos = glm::vec3(0, 0.0f, 0.1f); + projDesc.size = glm::vec3(6.0f, 6.0f, 0.1f); projDesc.modelSize = false; projDesc.speed = 0.0f; projDesc.maxDist = 20.0f; @@ -1973,7 +1973,7 @@ void DataBase::LoadWorld1() D3DXPLANE plane; float cosAng = cos(15.0f * D3DX_PI/180.0f); - D3DXPlaneFromPointNormal(&plane, &D3DXVECTOR3(0, 0, 6.2f), &D3DXVECTOR3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng)); + D3DXPlaneFromPointNormal(&plane, &glm::vec3(0, 0, 6.2f), &glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng)); D3DXVECTOR4 vec1 = plane; D3DXVECTOR4 vec3(0.0f, -0.15f, 0.075f, 0.0f); @@ -2046,7 +2046,7 @@ void DataBase::LoadWorld2() D3DXPLANE plane; float cosAng = cos(15.0f * D3DX_PI/180.0f); - D3DXPlaneFromPointNormal(&plane, &D3DXVECTOR3(0, 0, 6.2f), &D3DXVECTOR3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng)); + D3DXPlaneFromPointNormal(&plane, &glm::vec3(0, 0, 6.2f), &glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng)); D3DXVECTOR4 vec1 = plane; D3DXVECTOR4 vec3(0.0f, -0.15f, 0.10f, 0.0f); @@ -2100,10 +2100,10 @@ void DataBase::LoadWorld3() D3DXPLANE plane; float cosAng = cos(15.0f * D3DX_PI/180.0f); - D3DXPlaneFromPointNormal(&plane, &D3DXVECTOR3(0, 0, 6.2f), &D3DXVECTOR3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng)); + D3DXPlaneFromPointNormal(&plane, &glm::vec3(0, 0, 6.2f), &glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng)); D3DXVECTOR4 vec1 = plane; - D3DXPlaneFromPointNormal(&plane, &D3DXVECTOR3(0, 0, 6.2f), &ZVector); + D3DXPlaneFromPointNormal(&plane, &glm::vec3(0, 0, 6.2f), &ZVector); D3DXVECTOR4 vec1Up = plane; D3DXVECTOR4 vec3(0.0f, -0.15f, 0.125f, 0.0f); @@ -2140,7 +2140,7 @@ void DataBase::LoadWorld4() D3DXPLANE plane; float cosAng = cos(15.0f * D3DX_PI/180.0f); - D3DXPlaneFromPointNormal(&plane, &D3DXVECTOR3(0, 0, 6.2f), &D3DXVECTOR3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng)); + D3DXPlaneFromPointNormal(&plane, &glm::vec3(0, 0, 6.2f), &glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng)); D3DXVECTOR4 vec1 = plane; D3DXVECTOR4 vec3(0.0f, -0.25f, 0.25f, 0.0f); @@ -2174,11 +2174,11 @@ void DataBase::LoadWorld5() D3DXPLANE plane; - D3DXPlaneFromPointNormal(&plane, &D3DXVECTOR3(0, 0, 6.2f), &ZVector); + D3DXPlaneFromPointNormal(&plane, &glm::vec3(0, 0, 6.2f), &ZVector); D3DXVECTOR4 plane1 = plane; float cosAng = cos(20.0f * D3DX_PI/180.0f); - D3DXPlaneFromPointNormal(&plane, &D3DXVECTOR3(0, 0, 6.2f), &D3DXVECTOR3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng)); + D3DXPlaneFromPointNormal(&plane, &glm::vec3(0, 0, 6.2f), &glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng)); D3DXVECTOR4 plane2 = plane; D3DXVECTOR4 vec3(0.0f, -0.15f, 0.125f, 0.0f); @@ -2210,10 +2210,10 @@ void DataBase::LoadWorld6() D3DXPLANE plane; float cosAng = cos(15.0f * D3DX_PI/180.0f); - D3DXPlaneFromPointNormal(&plane, &D3DXVECTOR3(0, 0, 6.2f), &D3DXVECTOR3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng)); + D3DXPlaneFromPointNormal(&plane, &glm::vec3(0, 0, 6.2f), &glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng)); D3DXVECTOR4 vec1 = plane; - D3DXPlaneFromPointNormal(&plane, &D3DXVECTOR3(0, 0, 6.2f), &ZVector); + D3DXPlaneFromPointNormal(&plane, &glm::vec3(0, 0, 6.2f), &ZVector); D3DXVECTOR4 vec1Up = plane; D3DXVECTOR4 vec3(0.0f, -0.15f, 0.125f, 0.0f); @@ -2265,7 +2265,7 @@ void DataBase::LoadMisc() { MapObj* child = &mapObj->GetGameObj().GetIncludeList().Add(gotGameObj); AddToGraph(child, gtEffect, true); - child->GetGameObj().SetPos(D3DXVECTOR3(-0.4f, 0.0f, 0.0f)); + child->GetGameObj().SetPos(glm::vec3(-0.4f, 0.0f, 0.0f)); { @@ -2343,19 +2343,19 @@ void DataBase::LoadMisc() { game::MapObj* eff = NewChildMapObj(mapObj, MapObjLib::ctEffects, "smoke2"); - eff->GetGameObj().SetPos(D3DXVECTOR3(-0.5f, 0.0f, 0.0f)); + eff->GetGameObj().SetPos(glm::vec3(-0.5f, 0.0f, 0.0f)); eff->GetGameObj().GetBehaviors().Add(); //eff->GetGameObj().rescOnTime = 1.5f; //eff->GetGameObj().sendToDeathList = true; } { game::MapObj* eff = NewChildMapObj(mapObj, MapObjLib::ctEffects, "flare1"); - eff->GetGameObj().SetPos(D3DXVECTOR3(-1.1f, 0.0f, 0.0f)); + eff->GetGameObj().SetPos(glm::vec3(-1.1f, 0.0f, 0.0f)); eff->GetGameObj().SetScale(2.0f); } { game::MapObj* eff = NewChildMapObj(mapObj, MapObjLib::ctEffects, "engine1"); - eff->GetGameObj().SetPos(D3DXVECTOR3(-2.3f, 0.0f, 0.05f)); + eff->GetGameObj().SetPos(glm::vec3(-2.3f, 0.0f, 0.05f)); } { DeathEffect& deathEff = mapObj->GetGameObj().GetBehaviors().Add(); @@ -2377,17 +2377,17 @@ void DataBase::LoadMisc() { game::MapObj* eff = NewChildMapObj(mapObj, MapObjLib::ctEffects, "smoke4"); - eff->GetGameObj().SetPos(D3DXVECTOR3(-0.5f, 0.0f, 0.0f)); + eff->GetGameObj().SetPos(glm::vec3(-0.5f, 0.0f, 0.0f)); eff->GetGameObj().GetBehaviors().Add(); } { game::MapObj* eff = NewChildMapObj(mapObj, MapObjLib::ctEffects, "flare1"); - eff->GetGameObj().SetPos(D3DXVECTOR3(-1.1f, 0.0f, 0.0f)); + eff->GetGameObj().SetPos(glm::vec3(-1.1f, 0.0f, 0.0f)); eff->GetGameObj().SetScale(2.0f); } { game::MapObj* eff = NewChildMapObj(mapObj, MapObjLib::ctEffects, "engine1"); - eff->GetGameObj().SetPos(D3DXVECTOR3(-2.3f, 0.0f, 0.05f)); + eff->GetGameObj().SetPos(glm::vec3(-2.3f, 0.0f, 0.05f)); } { DeathEffect& deathEff = mapObj->GetGameObj().GetBehaviors().Add(); @@ -2410,7 +2410,7 @@ void DataBase::LoadMisc() { game::MapObj* eff = NewChildMapObj(mapObj, MapObjLib::ctEffects, "smoke5"); - eff->GetGameObj().SetPos(D3DXVECTOR3(0.0f, 0.0f, 0.0f)); + eff->GetGameObj().SetPos(glm::vec3(0.0f, 0.0f, 0.0f)); eff->GetGameObj().GetBehaviors().Add(); } { @@ -2440,7 +2440,7 @@ void DataBase::LoadMisc() { game::MapObj* eff = NewChildMapObj(mapObj, MapObjLib::ctEffects, "smoke8"); - eff->GetGameObj().SetPos(D3DXVECTOR3(0.0f, 0.0f, 0.0f)); + eff->GetGameObj().SetPos(glm::vec3(0.0f, 0.0f, 0.0f)); eff->GetGameObj().GetBehaviors().Add(); } { @@ -2467,7 +2467,7 @@ void DataBase::LoadMisc() { game::MapObj* eff = NewChildMapObj(mapObj, MapObjLib::ctEffects, "flare3"); - eff->GetGameObj().SetPos(D3DXVECTOR3(-1.0f, 0.0f, 0.0f)); + eff->GetGameObj().SetPos(glm::vec3(-1.0f, 0.0f, 0.0f)); eff->GetGameObj().SetScale(2.0f); } { @@ -2492,11 +2492,11 @@ void DataBase::LoadMisc() { game::MapObj* eff = NewChildMapObj(mapObj, MapObjLib::ctEffects, "resonanseBolt"); - eff->GetGameObj().SetPos(D3DXVECTOR3(0.0f, 0.5f, 0.0f)); + eff->GetGameObj().SetPos(glm::vec3(0.0f, 0.5f, 0.0f)); } { game::MapObj* eff = NewChildMapObj(mapObj, MapObjLib::ctEffects, "resonanseBolt"); - eff->GetGameObj().SetPos(D3DXVECTOR3(0.0f, -0.5f, 0.0f)); + eff->GetGameObj().SetPos(glm::vec3(0.0f, -0.5f, 0.0f)); } { DeathEffect& deathEff = mapObj->GetGameObj().GetBehaviors().Add(); @@ -2565,7 +2565,7 @@ void DataBase::LoadMisc() { game::MapObj* eff = NewChildMapObj(mapObj, MapObjLib::ctEffects, "flare2"); - eff->GetGameObj().SetPos(D3DXVECTOR3(0.0f, 0.0f, 0.25f)); + eff->GetGameObj().SetPos(glm::vec3(0.0f, 0.0f, 0.25f)); } DeathEffect& deathEffect = gameObj.GetBehaviors().Add(); @@ -2667,7 +2667,7 @@ void DataBase::LoadMisc() game::GameObject& gameObj = mapObj->GetGameObj(); graph::PlaneNode* node = AddPlaneNode(mapObj, IdentityVec2); - node->SetScale(D3DXVECTOR3(5.0f, 3.0f, 1.0f)); + node->SetScale(glm::vec3(5.0f, 3.0f, 1.0f)); AddLibMat(&node->material, "Bonus\\speedArrow"); AddToGraph(mapObj, gtEffect, true); @@ -2682,7 +2682,7 @@ void DataBase::LoadMisc() //glm::quat rot; //D3DXQuaternionRotationAxis(&rot, &ZVector, -D3DX_PI/2); //node->SetRot(rot); - node->SetScale(D3DXVECTOR3(4.0f, 3.0f, 1.0f)); + node->SetScale(glm::vec3(4.0f, 3.0f, 1.0f)); node->animMode(graph::SceneNode::amRepeat); node->animDuration = 1.0f; AddLibMat(&node->material, "Bonus\\strelkaAnim"); @@ -2696,7 +2696,7 @@ void DataBase::LoadMisc() game::GameObject& gameObj = mapObj->GetGameObj(); graph::PlaneNode* node = AddPlaneNode(mapObj, IdentityVec2); - node->SetScale(D3DXVECTOR3(4.5f, 4.0f, 1.0f)); + node->SetScale(glm::vec3(4.5f, 4.0f, 1.0f)); AddLibMat(&node->material, "Bonus\\lusha"); AddToGraph(mapObj, gtEffect, true); @@ -2708,7 +2708,7 @@ void DataBase::LoadMisc() game::GameObject& gameObj = mapObj->GetGameObj(); graph::PlaneNode* node = AddPlaneNode(mapObj, IdentityVec2); - node->SetScale(D3DXVECTOR3(4.0f, 4.0f, 1.0f)); + node->SetScale(glm::vec3(4.0f, 4.0f, 1.0f)); AddLibMat(&node->material, "Bonus\\snowLusha"); AddToGraph(mapObj, gtEffect, true); @@ -2720,7 +2720,7 @@ void DataBase::LoadMisc() game::GameObject& gameObj = mapObj->GetGameObj(); graph::PlaneNode* node = AddPlaneNode(mapObj, IdentityVec2); - node->SetScale(D3DXVECTOR3(4.0f, 4.0f, 1.0f)); + node->SetScale(glm::vec3(4.0f, 4.0f, 1.0f)); AddLibMat(&node->material, "Bonus\\hellLusha"); AddToGraph(mapObj, gtEffect, true); @@ -2732,7 +2732,7 @@ void DataBase::LoadMisc() game::GameObject& gameObj = mapObj->GetGameObj(); graph::PlaneNode* node = AddPlaneNode(mapObj, IdentityVec2); - node->SetScale(D3DXVECTOR3(2.5f, 2.5f, 1.0f)); + node->SetScale(glm::vec3(2.5f, 2.5f, 1.0f)); AddLibMat(&node->material, "Bonus\\maslo"); AddToGraph(mapObj, gtEffect, true); @@ -2749,11 +2749,11 @@ void DataBase::LoadMisc() } { game::MapObj* eff = NewChildMapObj(mapObj, MapObjLib::ctEffects, "flare5"); - eff->GetGameObj().SetPos(D3DXVECTOR3(-2.5f, 0.0f, 0.0f)); + eff->GetGameObj().SetPos(glm::vec3(-2.5f, 0.0f, 0.0f)); } { game::MapObj* eff = NewChildMapObj(mapObj, MapObjLib::ctEffects, "flare5"); - eff->GetGameObj().SetPos(D3DXVECTOR3(2.5f, 0.0f, 0.0f)); + eff->GetGameObj().SetPos(glm::vec3(2.5f, 0.0f, 0.0f)); } { DeathEffect& deathEffect = gameObj.GetBehaviors().Add(); @@ -2938,7 +2938,7 @@ void DataBase::LoadBonus() desc.type = Proj::ptMine; desc.SetModel(GetRecord(MapObjLib::ctDecoration, "Misc\\mine1")); desc.pos = NullVector; - desc.size = D3DXVECTOR3(0.0f, 0.0f, 1.7f); + desc.size = glm::vec3(0.0f, 0.0f, 1.7f); desc.modelSize = true; desc.damage = 11.0f; desc.maxDist = 0.0f; @@ -2961,7 +2961,7 @@ void DataBase::LoadBonus() desc.type = Proj::ptMine; desc.SetModel(GetRecord(MapObjLib::ctDecoration, "Misc\\mine2Kern")); desc.pos = NullVector; - desc.size = D3DXVECTOR3(0.0f, 0.0f, 1.7f); + desc.size = glm::vec3(0.0f, 0.0f, 1.7f); desc.modelSize = true; desc.damage = 10.0f; desc.maxDist = 0.0f; @@ -2985,7 +2985,7 @@ void DataBase::LoadBonus() desc.type = Proj::ptMinePiece; desc.SetModel(GetRecord(MapObjLib::ctDecoration, "Misc\\mine2Piece")); desc.pos = NullVector; - desc.size = D3DXVECTOR3(1.0f, 1.0f, 1.7f); + desc.size = glm::vec3(1.0f, 1.0f, 1.7f); desc.modelSize = true; desc.damage = 4.0f; desc.maxDist = 0.0f; @@ -3008,8 +3008,8 @@ void DataBase::LoadBonus() desc.type = Proj::ptMineProton; desc.SetModel(GetRecord(MapObjLib::ctDecoration, "Misc\\mine3")); - desc.pos = D3DXVECTOR3(0.0f, 0.0f, 0.2f); - desc.size = D3DXVECTOR3(5.0f, 5.0f, 1.7f); + desc.pos = glm::vec3(0.0f, 0.0f, 0.2f); + desc.size = glm::vec3(5.0f, 5.0f, 1.7f); desc.modelSize = false; desc.damage = 25.0f; desc.maxDist = 0.0f; @@ -3034,7 +3034,7 @@ void DataBase::LoadBonus() desc.type = Proj::ptMedpack; desc.SetModel(GetRecord(MapObjLib::ctDecoration, "Misc\\medpack")); desc.pos = NullVector; - desc.size = D3DXVECTOR3(0.0f, 0.0f, 1.7f); + desc.size = glm::vec3(0.0f, 0.0f, 1.7f); desc.modelSize = true; desc.damage = 0.0f; desc.maxDist = 0.0f; @@ -3056,7 +3056,7 @@ void DataBase::LoadBonus() desc.type = Proj::ptMoney; desc.SetModel(GetRecord(MapObjLib::ctDecoration, "Misc\\money")); desc.pos = NullVector; - desc.size = D3DXVECTOR3(0.0f, 0.0f, 1.7f); + desc.size = glm::vec3(0.0f, 0.0f, 1.7f); desc.modelSize = true; desc.damage = 2000.0f; desc.maxDist = 0.0f; @@ -3078,7 +3078,7 @@ void DataBase::LoadBonus() desc.type = Proj::ptCharge; desc.SetModel(GetRecord(MapObjLib::ctDecoration, "Misc\\ammo")); desc.pos = NullVector; - desc.size = D3DXVECTOR3(0.0f, 0.0f, 1.7f); + desc.size = glm::vec3(0.0f, 0.0f, 1.7f); desc.modelSize = true; desc.damage = 1.0f; desc.maxDist = 0.0f; @@ -3100,7 +3100,7 @@ void DataBase::LoadBonus() desc.type = Proj::ptImmortal; desc.SetModel(GetRecord(MapObjLib::ctDecoration, "Misc\\shield")); desc.pos = NullVector; - desc.size = D3DXVECTOR3(0.0f, 0.0f, 1.7f); + desc.size = glm::vec3(0.0f, 0.0f, 1.7f); desc.modelSize = true; desc.damage = 10.0f; desc.maxDist = 0.0f; @@ -3123,7 +3123,7 @@ void DataBase::LoadBonus() desc.SetModel(GetRecord(MapObjLib::ctDecoration, "Misc\\strelkaAnim")); desc.pos = NullVector; desc.modelSize = true; - desc.size = D3DXVECTOR3(0.0f, 0.0f, 1.7f); + desc.size = glm::vec3(0.0f, 0.0f, 1.7f); desc.damage = 200.0f * 1000.0f / 3600; gameObj.SetDesc(desc); @@ -3144,7 +3144,7 @@ void DataBase::LoadBonus() desc.SetModel(GetRecord(MapObjLib::ctDecoration, "Misc\\lusha")); desc.pos = NullVector; desc.modelSize = false; - desc.size = D3DXVECTOR3(1.25f, 1.25f, 1.7f); + desc.size = glm::vec3(1.25f, 1.25f, 1.7f); desc.damage = 20.0f * 1000.0f / 3600; gameObj.SetDesc(desc); @@ -3165,7 +3165,7 @@ void DataBase::LoadBonus() desc.SetModel(GetRecord(MapObjLib::ctDecoration, "Misc\\snowLusha")); desc.pos = NullVector; desc.modelSize = false; - desc.size = D3DXVECTOR3(1.25f, 1.25f, 1.7f); + desc.size = glm::vec3(1.25f, 1.25f, 1.7f); desc.damage = 20.0f * 1000.0f / 3600; gameObj.SetDesc(desc); @@ -3186,7 +3186,7 @@ void DataBase::LoadBonus() desc.SetModel(GetRecord(MapObjLib::ctDecoration, "Misc\\hellLusha")); desc.pos = NullVector; desc.modelSize = false; - desc.size = D3DXVECTOR3(1.25f, 1.25f, 1.7f); + desc.size = glm::vec3(1.25f, 1.25f, 1.7f); desc.damage = 20.0f * 1000.0f / 3600; gameObj.SetDesc(desc); @@ -3207,7 +3207,7 @@ void DataBase::LoadBonus() desc.SetModel(GetRecord(MapObjLib::ctDecoration, "Misc\\maslo")); desc.pos = NullVector; desc.modelSize = false; - desc.size = D3DXVECTOR3(1.25f, 1.25f, 1.7f); + desc.size = glm::vec3(1.25f, 1.25f, 1.7f); desc.damage = 1.5f; gameObj.SetDesc(desc); @@ -3597,7 +3597,7 @@ void DataBase::LoadWeapons() ShotEffect& effect = gameObj.GetBehaviors().Add(); effect.SetSound(&GetSound("Sounds\\turel.ogg")); effect.SetEffect(GetRecord(MapObjLib::ctEffects, "powerShot1")); - effect.SetPos(D3DXVECTOR3(1.4f, 0.0f, 0.1f)); + effect.SetPos(glm::vec3(1.4f, 0.0f, 0.1f)); } SaveMapObj(mapObj, MapObjLib::ctWeapon, "turel"); @@ -3617,7 +3617,7 @@ void DataBase::LoadWeapons() ShotEffect& effect = gameObj.GetBehaviors().Add(); effect.SetSound(&GetSound("Sounds\\mortira.ogg")); effect.SetEffect(GetRecord(MapObjLib::ctEffects, "powerShot1")); - effect.SetPos(D3DXVECTOR3(1.7f, 0.0f, 0.0f)); + effect.SetPos(glm::vec3(1.7f, 0.0f, 0.0f)); } SaveMapObj(mapObj, MapObjLib::ctWeapon, "mortira"); @@ -3662,18 +3662,18 @@ void DataBase::LoadCars() { CarDesc desc; desc.mass = 2000.0f; - desc.bodyAABB = AABB(D3DXVECTOR3(-1.55339f, -0.793131f, -0.438524f), D3DXVECTOR3(1.79646f, 0.768305f, 0.847951f)); - desc.bodyOffsetModel = D3DXVECTOR3(0, 0, 0); - desc.bodyScaleModel = D3DXVECTOR3(1.0f, 1.0f, 0.95f); - desc.bodyScale = D3DXVECTOR3(0.95f, 1.1f, 1.0f); - desc.bodyOffset = D3DXVECTOR3(-0.05f, 0.0f, -0.17f); - desc.centerMassPos = D3DXVECTOR3(0.1f, 0, -0.75f); + desc.bodyAABB = AABB(glm::vec3(-1.55339f, -0.793131f, -0.438524f), glm::vec3(1.79646f, 0.768305f, 0.847951f)); + desc.bodyOffsetModel = glm::vec3(0, 0, 0); + desc.bodyScaleModel = glm::vec3(1.0f, 1.0f, 0.95f); + desc.bodyScale = glm::vec3(0.95f, 1.1f, 1.0f); + desc.bodyOffset = glm::vec3(-0.05f, 0.0f, -0.17f); + desc.centerMassPos = glm::vec3(0.1f, 0, -0.75f); desc.wheelRadius = 0.42947042f; - desc.wheelOffsetModel.push_back(D3DXVECTOR3(0.05f, 0, 0)); - desc.wheelOffsetModel.push_back(D3DXVECTOR3(0.05f, 0, 0)); - desc.wheelOffsetModel.push_back(D3DXVECTOR3(0.0f, 0, 0)); - desc.wheelOffsetModel.push_back(D3DXVECTOR3(0.0f, 0, 0)); + desc.wheelOffsetModel.push_back(glm::vec3(0.05f, 0, 0)); + desc.wheelOffsetModel.push_back(glm::vec3(0.05f, 0, 0)); + desc.wheelOffsetModel.push_back(glm::vec3(0.0f, 0, 0)); + desc.wheelOffsetModel.push_back(glm::vec3(0.0f, 0, 0)); desc.inverseWheelMass = 0.1f; desc.maxSpeed = 0.0f; desc.tireSpring = 0.0f; @@ -3698,13 +3698,13 @@ void DataBase::LoadCars() { CarDesc desc; desc.mass = 2000.0f; - desc.bodyAABB = AABB(D3DXVECTOR3(-2.08688f, -0.887617f, -0.367699f), D3DXVECTOR3(1.59955f, 0.851927f, 1.05358f)); - desc.bodyOffsetModel = D3DXVECTOR3(-0.09f, 0.0f, 0.06f); - //desc.bodyOffsetModel = D3DXVECTOR3(-0.09f, 0.0f, 0.05f); - //desc.bodyScaleModel = D3DXVECTOR3(1.1f, 1.1f, 1.1f); - desc.bodyScale = D3DXVECTOR3(0.9f, 1.0f, 0.95f); - desc.bodyOffset = D3DXVECTOR3(0.18f, 0.0f, -0.10f); - desc.centerMassPos = D3DXVECTOR3(0.1f, 0, -0.60f); + desc.bodyAABB = AABB(glm::vec3(-2.08688f, -0.887617f, -0.367699f), glm::vec3(1.59955f, 0.851927f, 1.05358f)); + desc.bodyOffsetModel = glm::vec3(-0.09f, 0.0f, 0.06f); + //desc.bodyOffsetModel = glm::vec3(-0.09f, 0.0f, 0.05f); + //desc.bodyScaleModel = glm::vec3(1.1f, 1.1f, 1.1f); + desc.bodyScale = glm::vec3(0.9f, 1.0f, 0.95f); + desc.bodyOffset = glm::vec3(0.18f, 0.0f, -0.10f); + desc.centerMassPos = glm::vec3(0.1f, 0, -0.60f); desc.wheelRadius = 0.37786922f; desc.inverseWheelMass = 0.1f; @@ -3731,17 +3731,17 @@ void DataBase::LoadCars() { CarDesc desc; desc.mass = 2000.0f; - desc.bodyAABB = AABB(D3DXVECTOR3(-1.77654f, -1.21723f, -0.425364f), D3DXVECTOR3(1.92265f, 1.21507f, 0.868031f)); - desc.bodyOffsetModel = D3DXVECTOR3(0.0f, 0.0f, 0.13f); - desc.bodyScale = D3DXVECTOR3(0.95f, 1.0f, 1.0f); - desc.bodyOffset = D3DXVECTOR3(-0.2f, 0.0f, 0.0f); - desc.centerMassPos = D3DXVECTOR3(0.0f, 0, -0.55f); + desc.bodyAABB = AABB(glm::vec3(-1.77654f, -1.21723f, -0.425364f), glm::vec3(1.92265f, 1.21507f, 0.868031f)); + desc.bodyOffsetModel = glm::vec3(0.0f, 0.0f, 0.13f); + desc.bodyScale = glm::vec3(0.95f, 1.0f, 1.0f); + desc.bodyOffset = glm::vec3(-0.2f, 0.0f, 0.0f); + desc.centerMassPos = glm::vec3(0.0f, 0, -0.55f); desc.wheelRadius = 0.34159720f; - desc.wheelOffsetModel.push_back(D3DXVECTOR3(0.22f, 0, -0.01f)); - desc.wheelOffsetModel.push_back(D3DXVECTOR3(0.22f, 0, -0.01f)); - desc.wheelOffsetModel.push_back(D3DXVECTOR3(0.09f, 0, 0.08f)); - desc.wheelOffsetModel.push_back(D3DXVECTOR3(0.09f, 0, 0.08f)); + desc.wheelOffsetModel.push_back(glm::vec3(0.22f, 0, -0.01f)); + desc.wheelOffsetModel.push_back(glm::vec3(0.22f, 0, -0.01f)); + desc.wheelOffsetModel.push_back(glm::vec3(0.09f, 0, 0.08f)); + desc.wheelOffsetModel.push_back(glm::vec3(0.09f, 0, 0.08f)); desc.inverseWheelMass = 0.1f; desc.maxSpeed = 0.0f; desc.tireSpring = 0.0f; @@ -3767,17 +3767,17 @@ void DataBase::LoadCars() { CarDesc desc; desc.mass = 2000.0f; - desc.bodyAABB = AABB(D3DXVECTOR3(-1.77654f, -1.21723f, -0.425364f), D3DXVECTOR3(1.92265f, 1.21507f, 0.868031f)); - desc.bodyOffsetModel = D3DXVECTOR3(0.0f, 0.0f, 0.13f); - desc.bodyScale = D3DXVECTOR3(0.95f, 1.0f, 1.0f); - desc.bodyOffset = D3DXVECTOR3(-0.2f, 0.0f, 0.0f); - desc.centerMassPos = D3DXVECTOR3(0.0f, 0, -0.55f); + desc.bodyAABB = AABB(glm::vec3(-1.77654f, -1.21723f, -0.425364f), glm::vec3(1.92265f, 1.21507f, 0.868031f)); + desc.bodyOffsetModel = glm::vec3(0.0f, 0.0f, 0.13f); + desc.bodyScale = glm::vec3(0.95f, 1.0f, 1.0f); + desc.bodyOffset = glm::vec3(-0.2f, 0.0f, 0.0f); + desc.centerMassPos = glm::vec3(0.0f, 0, -0.55f); desc.wheelRadius = 0.34159720f; - desc.wheelOffsetModel.push_back(D3DXVECTOR3(0.22f, 0, -0.01f)); - desc.wheelOffsetModel.push_back(D3DXVECTOR3(0.22f, 0, -0.01f)); - desc.wheelOffsetModel.push_back(D3DXVECTOR3(0.09f, 0, 0.08f)); - desc.wheelOffsetModel.push_back(D3DXVECTOR3(0.09f, 0, 0.08f)); + desc.wheelOffsetModel.push_back(glm::vec3(0.22f, 0, -0.01f)); + desc.wheelOffsetModel.push_back(glm::vec3(0.22f, 0, -0.01f)); + desc.wheelOffsetModel.push_back(glm::vec3(0.09f, 0, 0.08f)); + desc.wheelOffsetModel.push_back(glm::vec3(0.09f, 0, 0.08f)); desc.inverseWheelMass = 0.1f; desc.maxSpeed = 0.0f; desc.tireSpring = 0.0f; @@ -3803,9 +3803,9 @@ void DataBase::LoadCars() { CarDesc desc; desc.mass = 2000.0f; - desc.bodyScale = D3DXVECTOR3(0.95f, 0.85f, 0.8f); - desc.bodyOffset = D3DXVECTOR3(-0.056f, 0.0f, -0.2f); - desc.centerMassPos = D3DXVECTOR3(0, 0, -1.05f); + desc.bodyScale = glm::vec3(0.95f, 0.85f, 0.8f); + desc.bodyOffset = glm::vec3(-0.056f, 0.0f, -0.2f); + desc.centerMassPos = glm::vec3(0, 0, -1.05f); //desc.bump = true; desc.wheelRadius = 0.0f; @@ -3834,9 +3834,9 @@ void DataBase::LoadCars() { CarDesc desc; desc.mass = 2000.0f; - desc.bodyAABB = AABB(D3DXVECTOR3(-1.72021f, -1.43783f, -0.435831f), D3DXVECTOR3(1.71345f, 1.43783f, 0.441906f)); - desc.bodyScale = D3DXVECTOR3(1.0f, 0.85f, 1.0f); - desc.centerMassPos = D3DXVECTOR3(0.0f, 0, -0.47f); + desc.bodyAABB = AABB(glm::vec3(-1.72021f, -1.43783f, -0.435831f), glm::vec3(1.71345f, 1.43783f, 0.441906f)); + desc.bodyScale = glm::vec3(1.0f, 0.85f, 1.0f); + desc.centerMassPos = glm::vec3(0.0f, 0, -0.47f); desc.wheelRadius = 0.34f; desc.inverseWheelMass = 0.1f; @@ -3868,9 +3868,9 @@ void DataBase::LoadCars() { CarDesc desc; desc.mass = 2000.0f; - desc.bodyAABB = AABB(D3DXVECTOR3(-1.72021f, -1.43783f, -0.435831f), D3DXVECTOR3(1.71345f, 1.43783f, 0.441906f)); - desc.bodyScale = D3DXVECTOR3(1.0f, 0.85f, 1.0f); - desc.centerMassPos = D3DXVECTOR3(0.0f, 0, -0.47f); + desc.bodyAABB = AABB(glm::vec3(-1.72021f, -1.43783f, -0.435831f), glm::vec3(1.71345f, 1.43783f, 0.441906f)); + desc.bodyScale = glm::vec3(1.0f, 0.85f, 1.0f); + desc.centerMassPos = glm::vec3(0.0f, 0, -0.47f); desc.wheelRadius = 0.34f; desc.inverseWheelMass = 0.1f; @@ -3899,11 +3899,11 @@ void DataBase::LoadCars() { CarDesc desc; desc.mass = 2000.0f; - desc.bodyAABB = AABB(D3DXVECTOR3(-1.93629f, -0.882337f, -0.554882f), D3DXVECTOR3(2.13104f, 0.885529f, 0.624387f)); - desc.bodyOffsetModel = D3DXVECTOR3(0.0f, 0.0f, -0.09f); - desc.bodyScale = D3DXVECTOR3(0.9f, 0.9f, 0.9f); - desc.bodyOffset = D3DXVECTOR3(-0.1f, 0.0f, 0.0f); - desc.centerMassPos = D3DXVECTOR3(0.15f, 0, -0.52f); + desc.bodyAABB = AABB(glm::vec3(-1.93629f, -0.882337f, -0.554882f), glm::vec3(2.13104f, 0.885529f, 0.624387f)); + desc.bodyOffsetModel = glm::vec3(0.0f, 0.0f, -0.09f); + desc.bodyScale = glm::vec3(0.9f, 0.9f, 0.9f); + desc.bodyOffset = glm::vec3(-0.1f, 0.0f, 0.0f); + desc.centerMassPos = glm::vec3(0.15f, 0, -0.52f); desc.wheelRadius = 0.34f; desc.inverseWheelMass = 0.1f; @@ -3935,11 +3935,11 @@ void DataBase::LoadCars() { CarDesc desc; desc.mass = 2000.0f; - desc.bodyAABB = AABB(D3DXVECTOR3(-1.93629f, -0.882337f, -0.554882f), D3DXVECTOR3(2.13104f, 0.885529f, 0.624387f)); - desc.bodyOffsetModel = D3DXVECTOR3(0.0f, 0.0f, -0.09f); - desc.bodyScale = D3DXVECTOR3(0.9f, 0.9f, 0.9f); - desc.bodyOffset = D3DXVECTOR3(-0.1f, 0.0f, 0.0f); - desc.centerMassPos = D3DXVECTOR3(0.15f, 0, -0.52f); + desc.bodyAABB = AABB(glm::vec3(-1.93629f, -0.882337f, -0.554882f), glm::vec3(2.13104f, 0.885529f, 0.624387f)); + desc.bodyOffsetModel = glm::vec3(0.0f, 0.0f, -0.09f); + desc.bodyScale = glm::vec3(0.9f, 0.9f, 0.9f); + desc.bodyOffset = glm::vec3(-0.1f, 0.0f, 0.0f); + desc.centerMassPos = glm::vec3(0.15f, 0, -0.52f); desc.wheelRadius = 0.34f; desc.inverseWheelMass = 0.1f; @@ -3971,18 +3971,18 @@ void DataBase::LoadCars() { CarDesc desc; desc.mass = 2500.0f; - desc.bodyScale = D3DXVECTOR3(1.0f, 1.1f, 0.9f); - desc.bodyOffset = D3DXVECTOR3(-0.2f, 0.0f, -0.1f); - desc.centerMassPos = D3DXVECTOR3(0.0f, 0, -1.2f); - desc.bodyOffsetModel = D3DXVECTOR3(0.0f, 0.0f, 0.1f); + desc.bodyScale = glm::vec3(1.0f, 1.1f, 0.9f); + desc.bodyOffset = glm::vec3(-0.2f, 0.0f, -0.1f); + desc.centerMassPos = glm::vec3(0.0f, 0, -1.2f); + desc.bodyOffsetModel = glm::vec3(0.0f, 0.0f, 0.1f); desc.frontWheelDrive = true; desc.backWheelDrive = true; desc.wheelRadius = 0.62686455f; - desc.wheelOffsetModel.push_back(D3DXVECTOR3(-0.09f, 0, 0.0f)); - desc.wheelOffsetModel.push_back(D3DXVECTOR3(-0.09f, 0, 0.0f)); - desc.wheelOffsetModel.push_back(D3DXVECTOR3(0.24f, 0, 0.0f)); - desc.wheelOffsetModel.push_back(D3DXVECTOR3(0.24f, 0, 0.0f)); + desc.wheelOffsetModel.push_back(glm::vec3(-0.09f, 0, 0.0f)); + desc.wheelOffsetModel.push_back(glm::vec3(-0.09f, 0, 0.0f)); + desc.wheelOffsetModel.push_back(glm::vec3(0.24f, 0, 0.0f)); + desc.wheelOffsetModel.push_back(glm::vec3(0.24f, 0, 0.0f)); desc.inverseWheelMass = 0.1f; desc.maxSpeed = 48.0f; desc.tireSpring = 0.0f; @@ -4009,9 +4009,9 @@ void DataBase::LoadCars() { CarDesc desc; desc.mass = 2500.0f; - desc.bodyScale = D3DXVECTOR3(1.0f, 1.1f, 0.9f); - desc.bodyOffset = D3DXVECTOR3(-0.2f, 0.0f, -0.1f); - desc.centerMassPos = D3DXVECTOR3(0.0f, 0, -1.2f); + desc.bodyScale = glm::vec3(1.0f, 1.1f, 0.9f); + desc.bodyOffset = glm::vec3(-0.2f, 0.0f, -0.1f); + desc.centerMassPos = glm::vec3(0.0f, 0, -1.2f); desc.frontWheelDrive = true; desc.backWheelDrive = true; @@ -4042,8 +4042,8 @@ void DataBase::LoadCars() { CarDesc desc; desc.mass = 2000.0f; - desc.bodyScale = D3DXVECTOR3(0.9f, 0.85f, 0.9f); - desc.centerMassPos = D3DXVECTOR3(0.0f, 0, -0.75f); + desc.bodyScale = glm::vec3(0.9f, 0.85f, 0.9f); + desc.centerMassPos = glm::vec3(0.0f, 0, -0.75f); desc.frontWheelDrive = true; desc.backWheelDrive = true; desc.gravEngine = true; @@ -4077,8 +4077,8 @@ void DataBase::LoadCars() { CarDesc desc; desc.mass = 2000.0f; - desc.bodyScale = D3DXVECTOR3(0.9f, 0.85f, 0.9f); - desc.centerMassPos = D3DXVECTOR3(0.0f, 0, -0.75f); + desc.bodyScale = glm::vec3(0.9f, 0.85f, 0.9f); + desc.centerMassPos = glm::vec3(0.0f, 0, -0.75f); desc.frontWheelDrive = true; desc.backWheelDrive = true; desc.gravEngine = true; @@ -4112,9 +4112,9 @@ void DataBase::LoadCars() { CarDesc desc; desc.mass = 1500.0f; - desc.bodyScale = D3DXVECTOR3(0.95f, 1.0f, 0.95f); - desc.bodyOffset = D3DXVECTOR3(0.1f, 0.0f, 0.0f); - desc.centerMassPos = D3DXVECTOR3(0.1f, 0, -0.55f); + desc.bodyScale = glm::vec3(0.95f, 1.0f, 0.95f); + desc.bodyOffset = glm::vec3(0.1f, 0.0f, 0.0f); + desc.centerMassPos = glm::vec3(0.1f, 0, -0.55f); desc.wheelRadius = 0.0f; desc.inverseWheelMass = 0.1f; @@ -4140,9 +4140,9 @@ void DataBase::LoadCars() { CarDesc desc; desc.mass = 2000.0f; - desc.bodyScale = D3DXVECTOR3(0.9f, 0.85f, 0.9f); - desc.bodyOffset = D3DXVECTOR3(0.15f, 0.0f, 0.08f); - desc.centerMassPos = D3DXVECTOR3(0.1f, 0, -0.45f); + desc.bodyScale = glm::vec3(0.9f, 0.85f, 0.9f); + desc.bodyOffset = glm::vec3(0.15f, 0.0f, 0.08f); + desc.centerMassPos = glm::vec3(0.1f, 0, -0.45f); desc.wheelRadius = 0.0f; desc.inverseWheelMass = 0.1f; @@ -4168,9 +4168,9 @@ void DataBase::LoadCars() { CarDesc desc; desc.mass = 2000.0f; - desc.bodyScale = D3DXVECTOR3(0.95f, 1.0f, 1.0f); - desc.bodyOffset = D3DXVECTOR3(0.17f, 0.0f, 0.0f); - desc.centerMassPos = D3DXVECTOR3(0.2f, 0, -0.70f); + desc.bodyScale = glm::vec3(0.95f, 1.0f, 1.0f); + desc.bodyOffset = glm::vec3(0.17f, 0.0f, 0.0f); + desc.centerMassPos = glm::vec3(0.2f, 0, -0.70f); desc.frontWheelDrive = true; desc.backWheelDrive = true; @@ -4199,11 +4199,11 @@ void DataBase::LoadCars() { CarDesc desc; desc.mass = 2000.0f; - desc.bodyAABB = AABB(D3DXVECTOR3(-1.93629f, -0.882337f, -0.554882f), D3DXVECTOR3(2.13104f, 0.885529f, 0.624387f)); - desc.bodyOffsetModel = D3DXVECTOR3(0.0f, 0.0f, 0.0f); - desc.bodyScale = D3DXVECTOR3(0.9f, 0.9f, 0.9f); - desc.bodyOffset = D3DXVECTOR3(-0.1f, 0.0f, 0.0f); - desc.centerMassPos = D3DXVECTOR3(0.15f, 0, -0.52f); + desc.bodyAABB = AABB(glm::vec3(-1.93629f, -0.882337f, -0.554882f), glm::vec3(2.13104f, 0.885529f, 0.624387f)); + desc.bodyOffsetModel = glm::vec3(0.0f, 0.0f, 0.0f); + desc.bodyScale = glm::vec3(0.9f, 0.9f, 0.9f); + desc.bodyOffset = glm::vec3(-0.1f, 0.0f, 0.0f); + desc.centerMassPos = glm::vec3(0.15f, 0, -0.52f); desc.wheelRadius = 0.34f; desc.inverseWheelMass = 0.1f; diff --git a/src/Rock3dGame/source/game/Environment.cpp b/src/Rock3dGame/source/game/Environment.cpp index 5ee0d5f1..339435ee 100644 --- a/src/Rock3dGame/source/game/Environment.cpp +++ b/src/Rock3dGame/source/game/Environment.cpp @@ -51,7 +51,7 @@ std::pair Environment::cEnvGrap Environment::Environment(World* world): _world(world), _wheater(ewClody), _worldType(wtWorld1), _syncFrameRate(sfrFixed), _sun(0), _shadowQuality(eqLow), _lightQuality(eqLow), _postEffQuality(eqLow), _envQuality(eqLow), _filtering(efLinear), _multisampling(emNone), _editMode(false), _startScene(false), _enableRain(false), _rain(0) { - _sunPos = D3DXVECTOR3(150, 150, 150.0f); + _sunPos = glm::vec3(150, 150, 150.0f); _sunRot = NullQuaternion; ZeroMemory(_lamp, sizeof(_lamp)); @@ -724,7 +724,7 @@ void Environment::ProcessScene(float dt) graph::FxEmitter::ParticleDesc desc = em->GetParticleDesc(); bool dir = _world->GetControl()->GetAsyncKey(VK_CONTROL); - D3DXVECTOR3 vec = dir ? desc.startPos.GetMax() : desc.startPos.GetMin(); + glm::vec3 vec = dir ? desc.startPos.GetMax() : desc.startPos.GetMin(); if (_world->GetControl()->GetAsyncKey('W')) vec.x += 3.0f * dt; @@ -748,7 +748,7 @@ void Environment::ProcessScene(float dt) }*/ } -const D3DXVECTOR3& Environment::GetSunPos() const +const glm::vec3& Environment::GetSunPos() const { if (_sun) _sunPos = _sun->GetSource()->GetPos(); @@ -756,7 +756,7 @@ const D3DXVECTOR3& Environment::GetSunPos() const return _sunPos; } -void Environment::SetSunPos(const D3DXVECTOR3& value) +void Environment::SetSunPos(const glm::vec3& value) { _sunPos = value; @@ -780,12 +780,12 @@ void Environment::SetSunRot(const glm::quat& value) _sun->GetSource()->SetRot(_sunRot); } -const D3DXVECTOR3& Environment::GetLampPos(int index) const +const glm::vec3& Environment::GetLampPos(int index) const { return _lampPos[index]; } -void Environment::SetLampPos(const D3DXVECTOR3& value, int index) +void Environment::SetLampPos(const glm::vec3& value, int index) { _lampPos[index] = value; diff --git a/src/Rock3dGame/source/game/GameBase.cpp b/src/Rock3dGame/source/game/GameBase.cpp index b489a114..ab8eb64b 100644 --- a/src/Rock3dGame/source/game/GameBase.cpp +++ b/src/Rock3dGame/source/game/GameBase.cpp @@ -118,7 +118,7 @@ void ResurrectObj::Resurrect() { owner->LockDestr(); - D3DXVECTOR3 pos = gameObj->GetWorldPos(); + glm::vec3 pos = gameObj->GetWorldPos(); glm::quat rot = gameObj->GetWorldRot(); owner->Delete(mapObj); @@ -196,7 +196,7 @@ void FxSystemSrcSpeed::OnProgress(float deltaTime) { graph::FxParticleSystem* fxSystem = iter->GetItem(); - D3DXVECTOR3 speed(GetGameObj()->GetPxActor().GetNxActor()->getLinearVelocity().get()); + glm::vec3 speed(GetGameObj()->GetPxActor().GetNxActor()->getLinearVelocity().get()); if (GetGameObj()->GetParent()) GetGameObj()->GetParent()->GetGrActor().WorldToLocalNorm(speed, speed); @@ -536,22 +536,22 @@ void EventEffect::SetSound(snd::Sound* value) AddSound(value); } -const D3DXVECTOR3& EventEffect::GetPos() const +const glm::vec3& EventEffect::GetPos() const { return _pos; } -void EventEffect::SetPos(const D3DXVECTOR3& value) +void EventEffect::SetPos(const glm::vec3& value) { _pos = value; } -const D3DXVECTOR3& EventEffect::GetImpulse() const +const glm::vec3& EventEffect::GetImpulse() const { return _impulse; } -void EventEffect::SetImpulse(const D3DXVECTOR3& value) +void EventEffect::SetImpulse(const glm::vec3& value) { _impulse = value; } @@ -797,7 +797,7 @@ void PxWheelSlipEffect::OnProgress(float deltaTime) if (slip > 0) { EffectDesc desc; - desc.pos = D3DXVECTOR3(contactDesc.contactPoint.get()); + desc.pos = glm::vec3(contactDesc.contactPoint.get()); desc.child = false; if (GetMakeEffect()) GetMakeEffect()->GetGameObj().SetPos(GetPos() + desc.pos); @@ -828,7 +828,7 @@ ShotEffect::ShotEffect(Behaviors* owner): _MyBase(owner) { } -void ShotEffect::OnShot(const D3DXVECTOR3& pos) +void ShotEffect::OnShot(const glm::vec3& pos) { if (GetEffect()) { @@ -954,12 +954,12 @@ void ImmortalEffect::OnProgress(float deltaTime) } } -const D3DXVECTOR3& ImmortalEffect::GetScaleK() const +const glm::vec3& ImmortalEffect::GetScaleK() const { return _scaleK; } -void ImmortalEffect::SetScaleK(const D3DXVECTOR3& value) +void ImmortalEffect::SetScaleK(const glm::vec3& value) { _scaleK = value; } @@ -1180,7 +1180,7 @@ void GusenizaAnim::OnProgress(float deltaTime) _xAnimOff -= linSpeed * deltaTime / gusLength; //выделяем дробную часть _xAnimOff = _xAnimOff - floor(_xAnimOff); - D3DXVECTOR3 offset(1.0f - _xAnimOff, 0, 0.0f); + glm::vec3 offset(1.0f - _xAnimOff, 0, 0.0f); mat->SetOffset(offset); } @@ -1220,7 +1220,7 @@ void PodushkaAnim::OnProgress(float deltaTime) D3DXMATRIX rotMat = Matrix4GlmToDx(glm::transpose(glm::mat4_cast(rotQuat))); const res::FaceGroup& fg = _target->GetMesh()->GetData()->faceGroups[_target->GetMeshId()]; - D3DXVECTOR3 offset = (fg.minPos + fg.maxPos) / 2; + glm::vec3 offset = (fg.minPos + fg.maxPos) / 2; D3DXMATRIX matOffs1; D3DXMatrixTranslation(&matOffs1, -offset.x, -offset.y, -offset.z); @@ -1315,7 +1315,7 @@ void Behaviors::OnProgress(float deltaTime) } } -void Behaviors::OnShot(const D3DXVECTOR3& pos) +void Behaviors::OnShot(const glm::vec3& pos) { for (iterator iter = begin(); iter != end(); ++iter) (*iter)->OnShot(pos); diff --git a/src/Rock3dGame/source/game/GameCar.cpp b/src/Rock3dGame/source/game/GameCar.cpp index bca57ac9..7e23c750 100644 --- a/src/Rock3dGame/source/game/GameCar.cpp +++ b/src/Rock3dGame/source/game/GameCar.cpp @@ -206,7 +206,7 @@ void CarWheel::PxSyncWheel(float alpha) } GetGrActor().SetRot(resRot); - D3DXVECTOR3 resPos((t - dir * st).get()); + glm::vec3 resPos((t - dir * st).get()); if (alpha < 1.0f) D3DXVec3Lerp(&resPos, &_pxPrevPos, &resPos, alpha); else @@ -248,7 +248,7 @@ void CarWheel::OnProgress(float deltaTime) _actTrail->AddRef(); } - _actTrail->GetGameObj().SetWorldPos(D3DXVECTOR3(contactDesc.contactPoint.get()) + ZVector * 0.001f); + _actTrail->GetGameObj().SetWorldPos(glm::vec3(contactDesc.contactPoint.get()) + ZVector * 0.001f); //Во время установки следа время жизни не меняется _actTrail->GetGameObj().SetTimeLife(0); } @@ -339,12 +339,12 @@ void CarWheel::SetSteer(bool value) } } -const D3DXVECTOR3& CarWheel::GetOffset() const +const glm::vec3& CarWheel::GetOffset() const { return _offset; } -void CarWheel::SetOffset(const D3DXVECTOR3& value) +void CarWheel::SetOffset(const glm::vec3& value) { _offset = value; } @@ -358,14 +358,14 @@ CarWheels::~CarWheels() SetSteerContactModify(0); } -void CarWheels::LoadPosTo(const std::string& fileName, std::vector& pos) +void CarWheels::LoadPosTo(const std::string& fileName, std::vector& pos) { std::istream* file = lsl::FileSystem::GetInstance()->NewInStream(fileName, lsl::FileSystem::omText, 0); try { while (*file && !file->eof()) { - D3DXVECTOR3 res; + glm::vec3 res; *file >> res.x >> res.y >> res.z; pos.push_back(res); } @@ -636,7 +636,7 @@ void GameCar::WheelsProgress(float deltaTime, float motorTorque, float breakTorq glm::quat rot; fixRot.getXYZW(rot); - D3DXVECTOR3 xAxis; + glm::vec3 xAxis; D3DXQuaternionToAxisAngle(&rot, &xAxis, &dFixAngle); dFixAxis.set(xAxis); dFixAxis.normalize(); @@ -1363,12 +1363,12 @@ void GameCar::SetSteerRot(float value) _steerRot = value; } -D3DXVECTOR3 GameCar::GetAngDamping() const +glm::vec3 GameCar::GetAngDamping() const { return _angDamping; } -void GameCar::SetAngDamping(D3DXVECTOR3 value) +void GameCar::SetAngDamping(glm::vec3 value) { _angDamping = value; } @@ -1497,11 +1497,11 @@ GameCar::Wheels& GameCar::GetWheels() return *_wheels; } -float GameCar::GetSpeed(NxActor* nxActor, const D3DXVECTOR3& dir) +float GameCar::GetSpeed(NxActor* nxActor, const glm::vec3& dir) { if (nxActor) { - float speed = D3DXVec3Dot(&dir, &D3DXVECTOR3(nxActor->getLinearVelocity().get())); + float speed = D3DXVec3Dot(&dir, &glm::vec3(nxActor->getLinearVelocity().get())); //погрешность 1 м/с if (abs(speed) < 1.0f) speed = 0.0f; diff --git a/src/Rock3dGame/source/game/GameObject.cpp b/src/Rock3dGame/source/game/GameObject.cpp index 7dbde10c..eb9dd860 100644 --- a/src/Rock3dGame/source/game/GameObject.cpp +++ b/src/Rock3dGame/source/game/GameObject.cpp @@ -151,7 +151,7 @@ void GameObject::UnregFixedStepEvent() _logic->UnregFixedStepEvent(this); } -D3DXVECTOR3 GameObject::GetContactPoint(const px::Scene::OnContactEvent& contact) +glm::vec3 GameObject::GetContactPoint(const px::Scene::OnContactEvent& contact) { NxContactStreamIterator contIter(contact.stream); @@ -194,7 +194,7 @@ void GameObject::OnSleep() SetBodyProgressEvent(false); } -void GameObject::RayCastClosestActor(const D3DXVECTOR3& rayStart, const D3DXVECTOR3& rayDir, NxShapesType shapesType, RayCastHit& hit, unsigned groups, unsigned mask, float maxDist) +void GameObject::RayCastClosestActor(const glm::vec3& rayStart, const glm::vec3& rayDir, NxShapesType shapesType, RayCastHit& hit, unsigned groups, unsigned mask, float maxDist) { NxRaycastHit nxHit; hit.gameActor = 0; @@ -231,7 +231,7 @@ void GameObject::OnPxSync(float alpha) if (nxActor == NULL) return; - D3DXVECTOR3 pxVelocityLerp = nxActor->getLinearVelocity().get(); + glm::vec3 pxVelocityLerp = nxActor->getLinearVelocity().get(); if (alpha < 1.0f) { @@ -391,8 +391,8 @@ void GameObject::SaveProxy(lsl::SWriter* writer) void GameObject::LoadProxy(lsl::SReader* reader) { - D3DXVECTOR3 pos; - D3DXVECTOR3 scale; + glm::vec3 pos; + glm::vec3 scale; glm::quat rot; reader->ReadValue("pos", pos, 3); @@ -742,24 +742,24 @@ GameCar* GameObject::IsCar() return 0; } -const D3DXVECTOR3& GameObject::GetPos() const +const glm::vec3& GameObject::GetPos() const { return _grActor->GetPos(); } -void GameObject::SetPos(const D3DXVECTOR3& value) +void GameObject::SetPos(const glm::vec3& value) { _grActor->SetPos(value); _pxActor->SetPos(value); _pxPrevPos = value; } -const D3DXVECTOR3& GameObject::GetScale() const +const glm::vec3& GameObject::GetScale() const { return _grActor->GetScale(); } -void GameObject::SetScale(const D3DXVECTOR3& value) +void GameObject::SetScale(const glm::vec3& value) { float len = D3DXVec3Length(&value); @@ -769,7 +769,7 @@ void GameObject::SetScale(const D3DXVECTOR3& value) void GameObject::SetScale(float value) { - SetScale(D3DXVECTOR3(value, value, value)); + SetScale(glm::vec3(value, value, value)); } const glm::quat& GameObject::GetRot() const @@ -784,12 +784,12 @@ void GameObject::SetRot(const glm::quat& value) _pxPrevRot = value; } -D3DXVECTOR3 GameObject::GetWorldPos() const +glm::vec3 GameObject::GetWorldPos() const { return _grActor->GetWorldPos(); } -void GameObject::SetWorldPos(const D3DXVECTOR3& value) +void GameObject::SetWorldPos(const glm::vec3& value) { _grActor->SetWorldPos(value); _pxActor->SetPos(_grActor->GetPos()); @@ -808,9 +808,9 @@ void GameObject::SetWorldRot(const glm::quat& value) _pxPrevRot = _grActor->GetRot(); } -void GameObject::SetWorldDir(const D3DXVECTOR3& value) +void GameObject::SetWorldDir(const glm::vec3& value) { - D3DXVECTOR3 vec3 = value; + glm::vec3 vec3 = value; if (_grActor->GetParent()) _grActor->GetParent()->WorldToLocalNorm(vec3, vec3); @@ -819,9 +819,9 @@ void GameObject::SetWorldDir(const D3DXVECTOR3& value) _pxPrevRot = _grActor->GetRot(); } -void GameObject::SetWorldUp(const D3DXVECTOR3& value) +void GameObject::SetWorldUp(const glm::vec3& value) { - D3DXVECTOR3 vec3 = value; + glm::vec3 vec3 = value; if (_grActor->GetParent()) _grActor->GetParent()->WorldToLocalNorm(vec3, vec3); @@ -830,12 +830,12 @@ void GameObject::SetWorldUp(const D3DXVECTOR3& value) _pxPrevRot = _grActor->GetRot(); } -const D3DXVECTOR3& GameObject::GetPosSync() const +const glm::vec3& GameObject::GetPosSync() const { return _posSync; } -void GameObject::SetPosSync(const D3DXVECTOR3& value) +void GameObject::SetPosSync(const glm::vec3& value) { _posSync = value; D3DXVec3Normalize(&_posSyncDir, &value); @@ -864,12 +864,12 @@ void GameObject::SetRotSync(const glm::quat& value) SetSyncFrameEvent(true); } -const D3DXVECTOR3& GameObject::GetPosSync2() const +const glm::vec3& GameObject::GetPosSync2() const { return _posSync2; } -void GameObject::SetPosSync2(const D3DXVECTOR3& curSync, const D3DXVECTOR3& newSync) +void GameObject::SetPosSync2(const glm::vec3& curSync, const glm::vec3& newSync) { _posSyncDir2 = curSync - newSync; _posSyncDist2 = D3DXVec3Length(&_posSyncDir2); @@ -899,13 +899,13 @@ void GameObject::SetRotSync2(const glm::quat& curSync, const glm::quat& newSync) } _rotSync2 = newSync; - D3DXVECTOR3 axis = Vec3GlmToDx(glm::axis(_rotSync2)); + glm::vec3 axis = Vec3GlmToDx(glm::axis(_rotSync2)); _rotSyncLength2 = glm::angle(_rotSync2); SetSyncFrameEvent(true); } -const D3DXVECTOR3& GameObject::GetPxPosLerp() const +const glm::vec3& GameObject::GetPxPosLerp() const { return !_bodyProgressEvent && _parent ? _parent->GetPxPosLerp() : _pxPosLerp; } @@ -915,12 +915,12 @@ const glm::quat& GameObject::GetPxRotLerp() const return !_bodyProgressEvent && _parent ? _parent->GetPxRotLerp() : _pxRotLerp; } -const D3DXVECTOR3& GameObject::GetPxVelocityLerp() const +const glm::vec3& GameObject::GetPxVelocityLerp() const { return !_bodyProgressEvent && _parent ? _parent->GetPxVelocityLerp() : _pxVelocityLerp; } -const D3DXVECTOR3& GameObject::GetPxPrevPos() const +const glm::vec3& GameObject::GetPxPrevPos() const { return _pxPrevPos; } @@ -930,7 +930,7 @@ const glm::quat& GameObject::GetPxPrevRot() const return _pxPrevRot; } -const D3DXVECTOR3& GameObject::GetPxPrevVelocity() const +const glm::vec3& GameObject::GetPxPrevVelocity() const { return _pxPrevVelocity; } diff --git a/src/Rock3dGame/source/game/HudMenu.cpp b/src/Rock3dGame/source/game/HudMenu.cpp index f80307fb..bc59870d 100644 --- a/src/Rock3dGame/source/game/HudMenu.cpp +++ b/src/Rock3dGame/source/game/HudMenu.cpp @@ -435,11 +435,11 @@ void PlayerStateFrame::ProccessCarLifeBar(float deltaTime) value = _carLifes[i].target->GetCar().gameObj->GetLife() / maxValue; _carLifes[i].bar->SetProgress(value); - D3DXVECTOR3 pos = _carLifes[i].target->GetCar().gameObj->GetPos() + D3DXVECTOR3(0.0f, 0.0f, 0.0f); + glm::vec3 pos = _carLifes[i].target->GetCar().gameObj->GetPos() + glm::vec3(0.0f, 0.0f, 0.0f); D3DXVECTOR4 projVec; D3DXVec3Transform(&projVec, &pos, &menu()->GetGUI()->GetCamera3d()->GetContextInfo().GetViewProj()); //glm::vec2 vec = projVec / projVec.w; - glm::vec2 vec = glm::vec2((projVec / projVec.w).x, (projVec / projVec.w).y); // remove after D3DXVECTOR3 replacement + glm::vec2 vec = glm::vec2((projVec / projVec.w).x, (projVec / projVec.w).y); // remove after glm::vec3 replacement if (projVec.z < 0) { @@ -685,12 +685,12 @@ void PlayerStateFrame::UpdateState(float deltaTime) AABB2 aabb = opponent.label->GetTextAABB(); - D3DXVECTOR3 pos = opponent.player->GetCar().gameObj->GetWorldPos() + D3DXVECTOR3(1.0f, -0.5f, 0); + glm::vec3 pos = opponent.player->GetCar().gameObj->GetWorldPos() + glm::vec3(1.0f, -0.5f, 0); D3DXVECTOR4 projVec; D3DXVec3Transform(&projVec, &pos, &menu()->GetGUI()->GetCamera3d()->GetContextInfo().GetViewProj()); //glm::vec2 vec = projVec / projVec.w; glm::vec2 vec = - glm::vec2((projVec / projVec.w).x, (projVec / projVec.w).y); // remove after D3DXVECTOR3 replacement + glm::vec2((projVec / projVec.w).x, (projVec / projVec.w).y); // remove after glm::vec3 replacement if (projVec.z < 0) { @@ -1069,10 +1069,10 @@ void MiniMapFrame::BuildPath(WayPath& path, res::VertexData& data) pos[0] = node.pos + node.midNorm * node.nodeRadius; pos[1] = node.pos - node.midNorm * node.nodeRadius; - *pVert.Pos3() = D3DXVECTOR3(pos[0].x, pos[0].y, 0.0f); + *pVert.Pos3() = glm::vec3(pos[0].x, pos[0].y, 0.0f); *pVert.Tex0() = glm::vec2(static_cast(i % 2), 0.0f); ++pVert; - *pVert.Pos3() = D3DXVECTOR3(pos[1].x, pos[1].y, 0.0f); + *pVert.Pos3() = glm::vec3(pos[1].x, pos[1].y, 0.0f); *pVert.Tex0() = glm::vec2(static_cast(i % 2), 1.0f); ++pVert; } @@ -1138,7 +1138,7 @@ void MiniMapFrame::UpdatePlayers(float deltaTime) { for (Players::iterator iter = _players.begin(); iter != _players.end(); ++iter) { - D3DXVECTOR3 pos3 = iter->player->GetCar().GetMapPos(); + glm::vec3 pos3 = iter->player->GetCar().GetMapPos(); pos3.z = 0.0f; iter->plane->SetPos(pos3); iter->plane->GetMaterial()->SetColor(iter->player->GetCar().color); @@ -1180,7 +1180,7 @@ void MiniMapFrame::UpdateMap() start->SetPos(node->GetPos()); glm::quat rot; - QuatShortestArc(XVector, D3DXVECTOR3(node->GetTile().GetDir().x, node->GetTile().GetDir().y, 0.0f), rot); + QuatShortestArc(XVector, glm::vec3(node->GetTile().GetDir().x, node->GetTile().GetDir().y, 0.0f), rot); start->SetRot(rot); start->SetSize(glm::vec2(node->GetSize()/4.0f, node->GetSize()/2.0f)); } diff --git a/src/Rock3dGame/source/game/Logic.cpp b/src/Rock3dGame/source/game/Logic.cpp index dea284e4..48ffc441 100644 --- a/src/Rock3dGame/source/game/Logic.cpp +++ b/src/Rock3dGame/source/game/Logic.cpp @@ -142,12 +142,12 @@ void LogicEventEffect::SetEffect(MapObjRec* value) _effect = value; } -const D3DXVECTOR3& LogicEventEffect::GetPos() const +const glm::vec3& LogicEventEffect::GetPos() const { return _pos; } -void LogicEventEffect::SetPos(const D3DXVECTOR3& value) +void LogicEventEffect::SetPos(const glm::vec3& value) { _pos = value; } @@ -189,7 +189,7 @@ PairPxContactEffect::ContactMap::iterator PairPxContactEffect::GetOrCreateContac return res.first; } -void PairPxContactEffect::InsertContact(ContactMap::iterator iter, NxShape* shape1, NxShape* shape2, const D3DXVECTOR3& point) +void PairPxContactEffect::InsertContact(ContactMap::iterator iter, NxShape* shape1, NxShape* shape2, const glm::vec3& point) { ContactNode* node = iter->second; @@ -649,7 +649,7 @@ bool Logic::TakeBonus(GameObject* sender, GameObject* bonus, GameObject::BonusTy return true; } -bool Logic::MineContact(Proj* sender, GameObject* target, const D3DXVECTOR3& point) +bool Logic::MineContact(Proj* sender, GameObject* target, const glm::vec3& point) { LSL_ASSERT(sender && target && target->GetMapObj()); if (target == NULL) diff --git a/src/Rock3dGame/source/game/Map.cpp b/src/Rock3dGame/source/game/Map.cpp index 1f8be6bf..629d9efa 100644 --- a/src/Rock3dGame/source/game/Map.cpp +++ b/src/Rock3dGame/source/game/Map.cpp @@ -83,7 +83,7 @@ void Map::Load(lsl::SReader* reader) reader->ReadValue("trace", _trace); - D3DXVECTOR3 sunPos; + glm::vec3 sunPos; if (lsl::SReadValue(reader, "sunPos", sunPos)) _world->GetEnv()->SetSunPos(sunPos); diff --git a/src/Rock3dGame/source/game/Player.cpp b/src/Rock3dGame/source/game/Player.cpp index cd754c42..d715b415 100644 --- a/src/Rock3dGame/source/game/Player.cpp +++ b/src/Rock3dGame/source/game/Player.cpp @@ -186,12 +186,12 @@ void SlotItem::SetTexture(graph::Tex2DResource* value) _texture = value; } -const D3DXVECTOR3& SlotItem::GetPos() const +const glm::vec3& SlotItem::GetPos() const { return _pos; } -void SlotItem::SetPos(const D3DXVECTOR3& value) +void SlotItem::SetPos(const glm::vec3& value) { _pos = value; TransformChanged(); @@ -915,9 +915,9 @@ void Player::CarState::Update(float deltaTime) Vec3Rotate(XVector, rot3, dir3); //pos = glm::vec2(pos3); - pos = glm::vec2(pos3.x, pos3.y); // remove after D3DXVECTOR3 replacement + pos = glm::vec2(pos3.x, pos3.y); // remove after glm::vec3 replacement //dir = glm::vec2(dir3); - dir = glm::vec2(dir3.x, dir3.y); // remove after D3DXVECTOR3 replacement + dir = glm::vec2(dir3.x, dir3.y); // remove after glm::vec3 replacement speed = GameCar::GetSpeed(nxActor, dir3); dir = glm::normalize(dir); @@ -1099,9 +1099,9 @@ float Player::CarState::GetLap(bool lastCorectDist) const return numLaps + dist/GetPathLength(lastCorectDist); } -D3DXVECTOR3 Player::CarState::GetMapPos() const +glm::vec3 Player::CarState::GetMapPos() const { - D3DXVECTOR3 res = NullVector; + glm::vec3 res = NullVector; if (curTile) { res = curTile->GetTile().GetPoint(curTile->GetTile().ComputeCoordX(pos)); @@ -1155,7 +1155,7 @@ void Player::ClearBonusProjs() RemoveBonusProj(_bonusProjs.begin()); } -void Player::InitLight(HeadLight headLight, const D3DXVECTOR3& pos, const glm::quat& rot) +void Player::InitLight(HeadLight headLight, const glm::vec3& pos, const glm::quat& rot) { if (!_lights[headLight]) { @@ -1209,10 +1209,10 @@ void Player::CreateNightLights(MapObj* mapObj) if (mapObj == NULL) return; - //{D3DXVECTOR3(1.7f, 0.4f, 0.02f), glm::vec2(1.5f, 1.5f), true}, - //{D3DXVECTOR3(1.7f, -0.4f, 0.02f), glm::vec2(1.5f, 1.5f), true}, - //{D3DXVECTOR3(-1.57f, 0.45f, 0.28f), glm::vec2(1.0f, 1.0f), false}, - //{D3DXVECTOR3(-1.57f, -0.45f, 0.28f), glm::vec2(1.0f, 1.0f), false} + //{glm::vec3(1.7f, 0.4f, 0.02f), glm::vec2(1.5f, 1.5f), true}, + //{glm::vec3(1.7f, -0.4f, 0.02f), glm::vec2(1.5f, 1.5f), true}, + //{glm::vec3(-1.57f, 0.45f, 0.28f), glm::vec2(1.0f, 1.0f), false}, + //{glm::vec3(-1.57f, -0.45f, 0.28f), glm::vec2(1.0f, 1.0f), false} Garage::Car* car = _race->GetGarage().FindCar(_car.record); if (car == NULL) @@ -1560,11 +1560,11 @@ Player* Player::FindClosestEnemy(float viewAngle, bool zTest) continue; } - D3DXVECTOR3 carPos = _car.pos3; - D3DXVECTOR3 carDir = _car.dir3; - D3DXVECTOR3 enemyPos = tCar.pos3; + glm::vec3 carPos = _car.pos3; + glm::vec3 carDir = _car.dir3; + glm::vec3 enemyPos = tCar.pos3; - D3DXVECTOR3 dir; + glm::vec3 dir; D3DXVec3Normalize(&dir, &(enemyPos - carPos)); float angle = D3DXVec3Dot(&dir, &carDir); @@ -1678,7 +1678,7 @@ void Player::ResetCar() if (lastNode && _car.mapObj) { - /*D3DXVECTOR3 pos = lastNode->GetTile().GetPoint(_car.lastNodeCoordX) + ZVector * lastNode->GetTile().ComputeHeight(0.5f) * 0.5f; + /*glm::vec3 pos = lastNode->GetTile().GetPoint(_car.lastNodeCoordX) + ZVector * lastNode->GetTile().ComputeHeight(0.5f) * 0.5f; glm::vec2 dir2 = lastNode->GetTile().GetDir(); NxRay nxRay(NxVec3(pos), NxVec3(-ZVector)); @@ -1688,7 +1688,7 @@ void Player::ResetCar() if (hitShape == NULL) pos = lastNode->GetTile().GetPoint(0.0f) + ZVector * lastNode->GetTile().ComputeHeight(0.5f) * 0.5f;*/ - D3DXVECTOR3 pos = NullVector; + glm::vec3 pos = NullVector; glm::vec2 dir2 = NullVec2; WayNode* node = lastNode; @@ -1698,14 +1698,14 @@ void Player::ResetCar() for (int i = 0; i < 5; ++i) { - D3DXVECTOR3 newPos; + glm::vec3 newPos; glm::vec2 newDir2; bool isFind = false; for (int j = 0; j < 3; ++j) { float coordX = node->GetTile().ComputeCoordX(distX + offs[j]); - D3DXVECTOR3 rayPos = node->GetTile().GetPoint(coordX) + ZVector * node->GetTile().ComputeHeight(0.5f) * 0.5f; + glm::vec3 rayPos = node->GetTile().GetPoint(coordX) + ZVector * node->GetTile().ComputeHeight(0.5f) * 0.5f; if (i == 0 && j == 0) { @@ -1762,7 +1762,7 @@ void Player::ResetCar() _car.gameObj->SetWorldPos(pos); _car.gameObj->SetWorldRot(NullQuaternion); - _car.gameObj->SetWorldDir(D3DXVECTOR3(dir2.x, dir2.y, 0.0f)); + _car.gameObj->SetWorldDir(glm::vec3(dir2.x, dir2.y, 0.0f)); _car.gameObj->GetPxActor().GetNxActor()->setLinearVelocity(NxVec3(NullVector)); _car.gameObj->GetPxActor().GetNxActor()->setLinearMomentum(NxVec3(NullVector)); @@ -1879,15 +1879,15 @@ void Player::SetHeadlight(HeadLightMode value) case hlmOne: { - InitLight(hlFirst, D3DXVECTOR3(0.3f, 0.0f, 3.190f), glm::quat(0.939f, 0.0009f, 0.344f, -0.029f)); + InitLight(hlFirst, glm::vec3(0.3f, 0.0f, 3.190f), glm::quat(0.939f, 0.0009f, 0.344f, -0.029f)); FreeLight(hlSecond); break; } case hlmTwo: { - InitLight(hlFirst, D3DXVECTOR3(0.3f, 1.0f, 3.190f), glm::quat(0.939f, 0.0009f, 0.344f, -0.029f)); - InitLight(hlSecond, D3DXVECTOR3(0.3f, -1.0f, 3.190f), glm::quat(0.939f, 0.0009f, 0.344f, -0.029f)); + InitLight(hlFirst, glm::vec3(0.3f, 1.0f, 3.190f), glm::quat(0.939f, 0.0009f, 0.344f, -0.029f)); + InitLight(hlSecond, glm::vec3(0.3f, -1.0f, 3.190f), glm::quat(0.939f, 0.0009f, 0.344f, -0.029f)); break; } } @@ -1935,7 +1935,7 @@ Record* Player::GetSlot(SlotType type) return _slot[type] ? _slot[type]->GetRecord() : 0; } -void Player::SetSlot(SlotType type, Record* record, const D3DXVECTOR3& pos, const glm::quat& rot) +void Player::SetSlot(SlotType type, Record* record, const glm::vec3& pos, const glm::quat& rot) { lsl::SafeDelete(_slot[type]); diff --git a/src/Rock3dGame/source/game/Race.cpp b/src/Rock3dGame/source/game/Race.cpp index 8b38d716..572430b1 100644 --- a/src/Rock3dGame/source/game/Race.cpp +++ b/src/Rock3dGame/source/game/Race.cpp @@ -1057,8 +1057,8 @@ void Workshop::LoadWeapons() projDesc.type = Proj::ptRocket; projDesc.SetModel(_race->GetDB()->GetRecord(MapObjLib::ctDecoration, "Misc\\bulletProj")); - projDesc.pos = D3DXVECTOR3(0.4f, 0.0f, 0.1f); - projDesc.size = D3DXVECTOR3(2.0f, 0.25f, 1.3f); + projDesc.pos = glm::vec3(0.4f, 0.0f, 0.1f); + projDesc.size = glm::vec3(2.0f, 0.25f, 1.3f); projDesc.modelSize = false; projDesc.speed = 50.0f; projDesc.speedRelative = true; @@ -1103,10 +1103,10 @@ void Workshop::LoadWeapons() projDesc.mass = 100.0f; projDesc.damage = 10.0f/2; - projDesc.pos = D3DXVECTOR3(0.2f, -0.7f, 0.0f); + projDesc.pos = glm::vec3(0.2f, -0.7f, 0.0f); desc.projList.push_back(projDesc); - projDesc.pos = D3DXVECTOR3(0.2f, 0.7f, 0.0f); + projDesc.pos = glm::vec3(0.2f, 0.7f, 0.0f); desc.projList.push_back(projDesc); desc.shotDelay = 0.2f; @@ -1136,8 +1136,8 @@ void Workshop::LoadWeapons() projDesc.type = Proj::ptRocket; projDesc.SetModel(_race->GetDB()->GetRecord(MapObjLib::ctDecoration, "Misc\\blaster")); - projDesc.pos = D3DXVECTOR3(0.3f, -0.6f, 0.0f); - projDesc.size = D3DXVECTOR3(1.0f, 0.5f, 0.5f); + projDesc.pos = glm::vec3(0.3f, -0.6f, 0.0f); + projDesc.size = glm::vec3(1.0f, 0.5f, 0.5f); projDesc.modelSize = false; projDesc.speed = 40.0f; projDesc.speedRelative = true; @@ -1146,7 +1146,7 @@ void Workshop::LoadWeapons() projDesc.damage = 12.0f/2; desc.projList.push_back(projDesc); - projDesc.pos = D3DXVECTOR3(0.3f, 0.6f, 0.0f); + projDesc.pos = glm::vec3(0.3f, 0.6f, 0.0f); desc.projList.push_back(projDesc); desc.shotDelay = 0.2f; @@ -1177,7 +1177,7 @@ void Workshop::LoadWeapons() projDesc.type = Proj::ptLaser; projDesc.SetLibMat(_race->GetLibMat("Effect\\laser3-red2")); - projDesc.pos = D3DXVECTOR3(0.0f, 0.0f, 0.0f); + projDesc.pos = glm::vec3(0.0f, 0.0f, 0.0f); projDesc.size = IdentityVector * 1.0f; projDesc.maxDist = 100.0f; projDesc.damage = 19.0f/0.5f; @@ -1213,8 +1213,8 @@ void Workshop::LoadWeapons() projDesc.type = Proj::ptSonar; projDesc.SetModel(_race->GetDB()->GetRecord(MapObjLib::ctEffects, "sonar")); - projDesc.pos = D3DXVECTOR3(0.0f, 0.0f, 0.2f); - projDesc.size = D3DXVECTOR3(3.0f, 2.0f, 2.0f); + projDesc.pos = glm::vec3(0.0f, 0.0f, 0.2f); + projDesc.size = glm::vec3(3.0f, 2.0f, 2.0f); projDesc.modelSize = false; projDesc.maxDist = 15.0f; projDesc.mass = 75.0f; @@ -1253,8 +1253,8 @@ void Workshop::LoadWeapons() projDesc.type = Proj::ptRocket; projDesc.SetModel(_race->GetDB()->GetRecord(MapObjLib::ctDecoration, "Misc\\shotBall")); - projDesc.pos = D3DXVECTOR3(0, 0.0f, 0.1f); - projDesc.size = D3DXVECTOR3(0.5f, 0.5f, 1.0f); + projDesc.pos = glm::vec3(0, 0.0f, 0.1f); + projDesc.size = glm::vec3(0.5f, 0.5f, 1.0f); projDesc.modelSize = true; projDesc.speed = 45.0f; projDesc.speedRelative = true; @@ -1292,8 +1292,8 @@ void Workshop::LoadWeapons() projDesc.type = Proj::ptImpulse; projDesc.SetModel(_race->GetDB()->GetRecord(MapObjLib::ctEffects, "phaseRing")); - projDesc.pos = D3DXVECTOR3(0, 0.0f, 0.0f); - projDesc.size = D3DXVECTOR3(0.5f, 0.5f, 1.0f); + projDesc.pos = glm::vec3(0, 0.0f, 0.0f); + projDesc.size = glm::vec3(0.5f, 0.5f, 1.0f); projDesc.modelSize = false; projDesc.speed = 20.0f; projDesc.speedRelative = true; @@ -1332,8 +1332,8 @@ void Workshop::LoadWeapons() projDesc.type = Proj::ptRocket; projDesc.SetModel(_race->GetDB()->GetRecord(MapObjLib::ctDecoration, "Misc\\rocket")); - projDesc.pos = D3DXVECTOR3(0, 0.0f, 0.0f); - projDesc.size = D3DXVECTOR3(0.0f, 0.0f, 1.3f); + projDesc.pos = glm::vec3(0, 0.0f, 0.0f); + projDesc.size = glm::vec3(0.0f, 0.0f, 1.3f); projDesc.modelSize = true; projDesc.speed = 40.0f; projDesc.speedRelative = true; @@ -1370,8 +1370,8 @@ void Workshop::LoadWeapons() projDesc.type = Proj::ptRocket; projDesc.SetModel(_race->GetDB()->GetRecord(MapObjLib::ctDecoration, "Misc\\laserPulse")); - projDesc.pos = D3DXVECTOR3(0.0f, 0.0f, 0.1f); - projDesc.size = D3DXVECTOR3(3.5f, 0.6f, 1.8f); + projDesc.pos = glm::vec3(0.0f, 0.0f, 0.1f); + projDesc.size = glm::vec3(3.5f, 0.6f, 1.8f); projDesc.modelSize = false; projDesc.speed = 40.0f; projDesc.speedRelative = true; @@ -1409,9 +1409,9 @@ void Workshop::LoadWeapons() projDesc.type = Proj::ptFire; projDesc.SetModel(_race->GetDB()->GetRecord(MapObjLib::ctEffects, "fire2")); - projDesc.pos = D3DXVECTOR3(0.4f, 0.0f, 0.1f); - projDesc.size = D3DXVECTOR3(12.0, 1.5f, 1.5f); - projDesc.offset = D3DXVECTOR3(6.0, 0.0f, 0.0f); + projDesc.pos = glm::vec3(0.4f, 0.0f, 0.1f); + projDesc.size = glm::vec3(12.0, 1.5f, 1.5f); + projDesc.offset = glm::vec3(6.0, 0.0f, 0.0f); projDesc.modelSize = false; projDesc.speed = 0.0f; projDesc.maxDist = 12.0f; @@ -1448,8 +1448,8 @@ void Workshop::LoadWeapons() projDesc.type = Proj::ptDrobilka; projDesc.SetModel(_race->GetDB()->GetRecord(MapObjLib::ctEffects, "spark2")); - projDesc.pos = D3DXVECTOR3(1.3f, 0.0f, 0.0f); - projDesc.size = D3DXVECTOR3(2.1f, 0.5f, 0.5f); + projDesc.pos = glm::vec3(1.3f, 0.0f, 0.0f); + projDesc.size = glm::vec3(2.1f, 0.5f, 0.5f); projDesc.modelSize = true; projDesc.maxDist = 3.0f; projDesc.mass = 100.0f; @@ -1487,8 +1487,8 @@ void Workshop::LoadWeapons() projDesc.type = Proj::ptTorpeda; projDesc.SetModel(_race->GetDB()->GetRecord(MapObjLib::ctDecoration, "Misc\\spherePulse")); - projDesc.pos = D3DXVECTOR3(0.1f, 0.0f, 0.15f); - projDesc.size = D3DXVECTOR3(0.5f, 0.5f, 0.5f); + projDesc.pos = glm::vec3(0.1f, 0.0f, 0.15f); + projDesc.size = glm::vec3(0.5f, 0.5f, 0.5f); projDesc.modelSize = false; projDesc.speed = 30.0f; projDesc.speedRelativeMin = 20; @@ -1526,7 +1526,7 @@ void Workshop::LoadWeapons() projDesc.type = Proj::ptTorpeda; projDesc.SetModel(_race->GetDB()->GetRecord(MapObjLib::ctDecoration, "Misc\\torpeda")); - projDesc.pos = D3DXVECTOR3(0, 0.0f, 0.2f); + projDesc.pos = glm::vec3(0, 0.0f, 0.2f); projDesc.size = NullVector; projDesc.modelSize = true; projDesc.speed = 30.0f; @@ -1566,8 +1566,8 @@ void Workshop::LoadWeapons() projDesc.type = Proj::ptMortira; projDesc.SetModel(_race->GetDB()->GetRecord(MapObjLib::ctEffects, "mortiraBall")); - projDesc.pos = D3DXVECTOR3(0, 0.0f, 0.1f); - projDesc.size = D3DXVECTOR3(0.5f, 0.5f, 1.0f); + projDesc.pos = glm::vec3(0, 0.0f, 0.1f); + projDesc.size = glm::vec3(0.5f, 0.5f, 1.0f); projDesc.modelSize = true; projDesc.speed = 40.0f; projDesc.speedRelative = true; @@ -1607,9 +1607,9 @@ void Workshop::LoadWeapons() projDesc.SetLibMat(_race->GetLibMat("Effect\\frostRay")); projDesc.SetModel(_race->GetDB()->GetRecord(MapObjLib::ctEffects, "frostHit")); projDesc.SetModel2(_race->GetDB()->GetRecord(MapObjLib::ctEffects, "frost")); - projDesc.pos = D3DXVECTOR3(0.7f, 0.0f, 0.3f); + projDesc.pos = glm::vec3(0.7f, 0.0f, 0.3f); projDesc.rot = glm::angleAxis(D3DX_PI / 24.0f, Vec3DxToGlm(YVector)); - projDesc.size = D3DXVECTOR3(0.5f, 0.5f, 0.0f); + projDesc.size = glm::vec3(0.5f, 0.5f, 0.0f); projDesc.maxDist = 100.0f; projDesc.damage = 19.0f/0.5f; projDesc.minTimeLife = 1.0f; @@ -1643,8 +1643,8 @@ void Workshop::LoadWeapons() projDesc.type = Proj::ptRocket; projDesc.SetModel(_race->GetDB()->GetRecord(MapObjLib::ctEffects, "hyperBlaster")); - projDesc.pos = D3DXVECTOR3(1.0f, 0.0f, 0.1f); - projDesc.size = D3DXVECTOR3(3.5f, 0.75f, 1.0f); + projDesc.pos = glm::vec3(1.0f, 0.0f, 0.1f); + projDesc.size = glm::vec3(3.5f, 0.75f, 1.0f); projDesc.modelSize = false; projDesc.speed = 40.0f; projDesc.speedRelative = true; @@ -1682,9 +1682,9 @@ void Workshop::LoadWeapons() projDesc.type = Proj::ptMaslo; projDesc.SetModel(_race->GetDB()->GetRecord(MapObjLib::ctDecoration, "Misc\\maslo")); - projDesc.pos = D3DXVECTOR3(0.0f, 0.0f, 0.2f); + projDesc.pos = glm::vec3(0.0f, 0.0f, 0.2f); projDesc.modelSize = false; - projDesc.size = D3DXVECTOR3(1.5f, 1.5f, 1.7f); + projDesc.size = glm::vec3(1.5f, 1.5f, 1.7f); projDesc.damage = 1.5f; desc.projList.push_back(projDesc); @@ -1717,8 +1717,8 @@ void Workshop::LoadWeapons() projDesc.type = Proj::ptMine; projDesc.SetModel(_race->GetDB()->GetRecord(MapObjLib::ctDecoration, "Misc\\mine1")); - projDesc.pos = D3DXVECTOR3(0.0f, 0.0f, 0.2f); - projDesc.size = D3DXVECTOR3(0.0f, 0.0f, 1.7f); + projDesc.pos = glm::vec3(0.0f, 0.0f, 0.2f); + projDesc.size = glm::vec3(0.0f, 0.0f, 1.7f); projDesc.modelSize = true; projDesc.damage = 11.0f; projDesc.maxDist = 0.0f; @@ -1756,8 +1756,8 @@ void Workshop::LoadWeapons() projDesc.SetModel(_race->GetDB()->GetRecord(MapObjLib::ctDecoration, "Misc\\mine2")); projDesc.SetModel2(_race->GetDB()->GetRecord(MapObjLib::ctBonus, "mineRipKern")); projDesc.SetModel3(_race->GetDB()->GetRecord(MapObjLib::ctBonus, "mineRipPiece")); - projDesc.pos = D3DXVECTOR3(0.0f, 0.0f, 0.2f); - projDesc.size = D3DXVECTOR3(0.0f, 0.0f, 1.7f); + projDesc.pos = glm::vec3(0.0f, 0.0f, 0.2f); + projDesc.size = glm::vec3(0.0f, 0.0f, 1.7f); projDesc.modelSize = true; projDesc.damage = 20.0f; projDesc.maxDist = 0.0f; @@ -1794,8 +1794,8 @@ void Workshop::LoadWeapons() projDesc.type = Proj::ptMine; projDesc.SetModel(_race->GetDB()->GetRecord(MapObjLib::ctDecoration, "Misc\\mine3")); - projDesc.pos = D3DXVECTOR3(0.0f, 0.0f, 0.2f); - projDesc.size = D3DXVECTOR3(5.0f, 5.0f, 1.7f); + projDesc.pos = glm::vec3(0.0f, 0.0f, 0.2f); + projDesc.size = glm::vec3(5.0f, 5.0f, 1.7f); projDesc.modelSize = false; projDesc.damage = 25.0f; projDesc.maxDist = 0.0f; @@ -1865,7 +1865,7 @@ void Workshop::LoadWeapons() projDesc.type = Proj::ptHyper; projDesc.SetModel(_race->GetDB()->GetRecord(MapObjLib::ctEffects, "accelEff")); - projDesc.pos = D3DXVECTOR3(0.4f, 0.0f, 0.0f); + projDesc.pos = glm::vec3(0.4f, 0.0f, 0.0f); projDesc.size = NullVector; projDesc.modelSize = true; projDesc.speed = 10.0f; @@ -2462,7 +2462,7 @@ void Garage::Car::SetSlot(Player::SlotType type, const PlaceSlot& value) _slot[type].defItem->AddRef(); } -void Garage::FillStandartSlots(Car* car, const std::string& wheel, bool truba, const D3DXVECTOR3* hyperDrive, bool spring, bool maslo, bool mineSpike, bool mineRip, bool mineProton, bool lockedMax) +void Garage::FillStandartSlots(Car* car, const std::string& wheel, bool truba, const glm::vec3* hyperDrive, bool spring, bool maslo, bool mineSpike, bool mineRip, bool mineProton, bool lockedMax) { for (int i = 0; i < Player::cSlotTypeEnd; ++i) { @@ -2565,22 +2565,22 @@ void Garage::FillStandartSlots(Car* car, const std::string& wheel, bool truba, c if (maslo) { place.items.push_back(&GetShop().GetSlot("maslo")); - place.pos = D3DXVECTOR3(0.0f, 0.0f, 0.0f); + place.pos = glm::vec3(0.0f, 0.0f, 0.0f); } if (mineSpike) { place.items.push_back(&GetShop().GetSlot("mine1")); - place.pos = D3DXVECTOR3(-1.0f, 0.0f, 0.0f); + place.pos = glm::vec3(-1.0f, 0.0f, 0.0f); } if (mineRip) { place.items.push_back(&GetShop().GetSlot("mine2")); - place.pos = D3DXVECTOR3(-1.0f, 0.0f, 0.0f); + place.pos = glm::vec3(-1.0f, 0.0f, 0.0f); } if (mineProton) { place.items.push_back(&GetShop().GetSlot("mine3")); - place.pos = D3DXVECTOR3(-1.0f, 0.0f, 0.0f); + place.pos = glm::vec3(-1.0f, 0.0f, 0.0f); } if (!place.items.empty()) place.defItem = place.items.back().slot; @@ -2640,7 +2640,7 @@ void Garage::LoadCars() PlaceSlot place; place.active = true; place.show = true; - place.pos = D3DXVECTOR3(-0.65f, 0.0f, 0.7f); + place.pos = glm::vec3(-0.65f, 0.0f, 0.7f); place.items.push_back(&GetShop().GetSlot("bulletGun")); place.defItem = place.items.front().slot; @@ -2667,7 +2667,7 @@ void Garage::LoadCars() PlaceSlot place; place.active = true; place.show = true; - place.pos = D3DXVECTOR3(1.6f, 0.0f, 0.0f); + place.pos = glm::vec3(1.6f, 0.0f, 0.0f); place.items.push_back(&GetShop().GetSlot("rifleWeapon")); place.defItem = place.items.front().slot; @@ -2679,7 +2679,7 @@ void Garage::LoadCars() PlaceSlot place; place.active = true; place.show = true; - place.pos = D3DXVECTOR3(-0.38f, 0.0f, 1.1f); + place.pos = glm::vec3(-0.38f, 0.0f, 1.1f); place.items.push_back(&GetShop().GetSlot("rocketLauncher")); @@ -2700,13 +2700,13 @@ void Garage::LoadCars() car->SetWheels("Data\\Car\\manticoraWheel.txt"); car->SetCost(90000); - FillStandartSlots(car, "wheel", true, &D3DXVECTOR3(-1.5f, 0.0f, 0.35f), false, false, true, false, false, false); + FillStandartSlots(car, "wheel", true, &glm::vec3(-1.5f, 0.0f, 0.35f), false, false, true, false, false, false); { PlaceSlot place; place.active = true; place.show = true; - place.pos = D3DXVECTOR3(1.7f, 0.0f, 0.08f); + place.pos = glm::vec3(1.7f, 0.0f, 0.08f); place.items.push_back(&GetShop().GetSlot("blasterGun")); place.defItem = place.items.front().slot; @@ -2718,8 +2718,8 @@ void Garage::LoadCars() PlaceSlot place; place.active = true; place.show = true; - place.pos = D3DXVECTOR3(0.0f, 1.0f, 0.3f); - D3DXVECTOR3 offset; + place.pos = glm::vec3(0.0f, 1.0f, 0.3f); + glm::vec3 offset; glm::quat rot = glm::angleAxis(-D3DX_PI / 3.0f, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("rocketLauncher"), rot)); @@ -2730,7 +2730,7 @@ void Garage::LoadCars() rot = glm::angleAxis(-D3DX_PI, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("fireGun"), rot)); - offset = D3DXVECTOR3(1.25f, -0.3f, 0.05f); + offset = glm::vec3(1.25f, -0.3f, 0.05f); place.items.push_back(PlaceItem(&GetShop().GetSlot("drobilka"), NullQuaternion, offset)); car->SetSlot(Player::stWeapon2, place); @@ -2739,8 +2739,8 @@ void Garage::LoadCars() PlaceSlot place; place.active = true; place.show = true; - place.pos = D3DXVECTOR3(0.0f, -1.0f, 0.3f); - D3DXVECTOR3 offset; + place.pos = glm::vec3(0.0f, -1.0f, 0.3f); + glm::vec3 offset; glm::quat rot = glm::angleAxis(D3DX_PI / 3.0f, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("rocketLauncher"), rot)); @@ -2750,7 +2750,7 @@ void Garage::LoadCars() place.items.push_back(&GetShop().GetSlot("fireGun")); - offset = D3DXVECTOR3(1.25f, 0.3f, 0.05f); + offset = glm::vec3(1.25f, 0.3f, 0.05f); place.items.push_back(PlaceItem(&GetShop().GetSlot("drobilka"), NullQuaternion, offset)); car->SetSlot(Player::stWeapon3, place); @@ -2775,13 +2775,13 @@ void Garage::LoadCars() car->SetWheels("Data\\Car\\gusenizaWheel.txt"); car->SetCost(140000); - FillStandartSlots(car, "gusWheel", true, &D3DXVECTOR3(-1.5f, 0.0f, 0.25f), false, false, false, true, false, false); + FillStandartSlots(car, "gusWheel", true, &glm::vec3(-1.5f, 0.0f, 0.25f), false, false, false, true, false, false); { PlaceSlot place; place.active = true; place.show = true; - place.pos = D3DXVECTOR3(-0.27f, 0.0f, 0.36f); + place.pos = glm::vec3(-0.27f, 0.0f, 0.36f); place.items.push_back(&GetShop().GetSlot("tankLaser")); @@ -2795,8 +2795,8 @@ void Garage::LoadCars() PlaceSlot place; place.active = true; place.show = true; - place.pos = D3DXVECTOR3(0.0f, 1.4f, 0.0f); - D3DXVECTOR3 offset; + place.pos = glm::vec3(0.0f, 1.4f, 0.0f); + glm::vec3 offset; glm::quat rot = glm::angleAxis(-D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("rocketLauncher"), rot)); @@ -2807,7 +2807,7 @@ void Garage::LoadCars() rot = glm::angleAxis(-D3DX_PI, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("fireGun"), rot)); - offset = D3DXVECTOR3(0.85f, -0.8f, 0.0f); + offset = glm::vec3(0.85f, -0.8f, 0.0f); place.items.push_back(PlaceItem(&GetShop().GetSlot("drobilka"), NullQuaternion, offset)); place.items.push_back(&GetShop().GetSlot("torpedaWeapon")); @@ -2819,7 +2819,7 @@ void Garage::LoadCars() place.items.push_back(PlaceItem(&GetShop().GetSlot("phaseImpulse"), rot)); rot = glm::angleAxis(-D3DX_PI / 24.0f, Vec3DxToGlm(YVector)); - offset = D3DXVECTOR3(0.85f, -0.6f, 0.0f); + offset = glm::vec3(0.85f, -0.6f, 0.0f); place.items.push_back(PlaceItem(&GetShop().GetSlot("mortira"), rot, offset)); rot = glm::angleAxis(-D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); @@ -2831,8 +2831,8 @@ void Garage::LoadCars() PlaceSlot place; place.active = true; place.show = true; - place.pos = D3DXVECTOR3(0.0f, -1.4f, 0.0f); - D3DXVECTOR3 offset; + place.pos = glm::vec3(0.0f, -1.4f, 0.0f); + glm::vec3 offset; glm::quat rot = glm::angleAxis(D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("rocketLauncher"), rot)); @@ -2842,7 +2842,7 @@ void Garage::LoadCars() place.items.push_back(&GetShop().GetSlot("fireGun")); - offset = D3DXVECTOR3(0.85f, 0.8f, 0.0f); + offset = glm::vec3(0.85f, 0.8f, 0.0f); place.items.push_back(PlaceItem(&GetShop().GetSlot("drobilka"), NullQuaternion, offset)); place.items.push_back(&GetShop().GetSlot("torpedaWeapon")); @@ -2854,7 +2854,7 @@ void Garage::LoadCars() place.items.push_back(PlaceItem(&GetShop().GetSlot("phaseImpulse"), rot)); rot = glm::angleAxis(-D3DX_PI / 24.0f, Vec3DxToGlm(YVector)); - offset = D3DXVECTOR3(0.85f, 0.6f, 0.0f); + offset = glm::vec3(0.85f, 0.6f, 0.0f); place.items.push_back(PlaceItem(&GetShop().GetSlot("mortira"), rot, offset)); rot = glm::angleAxis(D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); @@ -2882,13 +2882,13 @@ void Garage::LoadCars() car->SetWheels("Data\\Car\\podushkaWheel.txt"); car->SetCost(165000); - FillStandartSlots(car, "", true, &D3DXVECTOR3(-1.5f, 0.0f, 0.35f), false, false, false, false, true, false); + FillStandartSlots(car, "", true, &glm::vec3(-1.5f, 0.0f, 0.35f), false, false, false, false, true, false); { PlaceSlot place; place.active = true; place.show = true; - place.pos = D3DXVECTOR3(-0.27f, 0.0f, 0.65f); + place.pos = glm::vec3(-0.27f, 0.0f, 0.65f); place.items.push_back(&GetShop().GetSlot("sphereGun")); place.defItem = place.items.front().slot; @@ -2900,8 +2900,8 @@ void Garage::LoadCars() PlaceSlot place; place.active = true; place.show = true; - place.pos = D3DXVECTOR3(0.2f, 0.6f, 0.25f); - D3DXVECTOR3 offset; + place.pos = glm::vec3(0.2f, 0.6f, 0.25f); + glm::vec3 offset; glm::quat rot = glm::angleAxis(-D3DX_PI / 3.0f, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("rocketLauncher"), rot)); @@ -2912,7 +2912,7 @@ void Garage::LoadCars() rot = glm::angleAxis(-D3DX_PI, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("fireGun"), rot)); - //offset = D3DXVECTOR3(1.2f, -0.05f, -0.1f); + //offset = glm::vec3(1.2f, -0.05f, -0.1f); //place.items.push_back(PlaceItem(&GetShop().GetSlot("drobilka"), NullQuaternion, offset)); place.items.push_back(&GetShop().GetSlot("torpedaWeapon")); @@ -2935,8 +2935,8 @@ void Garage::LoadCars() PlaceSlot place; place.active = true; place.show = true; - place.pos = D3DXVECTOR3(0.2f, -0.6f, 0.25f); - D3DXVECTOR3 offset; + place.pos = glm::vec3(0.2f, -0.6f, 0.25f); + glm::vec3 offset; glm::quat rot = glm::angleAxis(D3DX_PI / 3.0f, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("rocketLauncher"), rot)); @@ -2946,7 +2946,7 @@ void Garage::LoadCars() place.items.push_back(&GetShop().GetSlot("fireGun")); - //offset = D3DXVECTOR3(1.2f, 0.05f, -0.1f); + //offset = glm::vec3(1.2f, 0.05f, -0.1f); //place.items.push_back(PlaceItem(&GetShop().GetSlot("drobilka"), NullQuaternion, offset)); place.items.push_back(&GetShop().GetSlot("torpedaWeapon")); @@ -2978,13 +2978,13 @@ void Garage::LoadCars() car->SetWheels("Data\\Car\\monstertruckWheelGUI.txt"); car->SetCost(200000); - FillStandartSlots(car, "wheel", true, &D3DXVECTOR3(-1.5f, 0.0f, 0.35f), false, false, false, true, false, false); + FillStandartSlots(car, "wheel", true, &glm::vec3(-1.5f, 0.0f, 0.35f), false, false, false, true, false, false); { PlaceSlot place; place.active = true; place.show = true; - place.pos = D3DXVECTOR3(-0.8f, 0.0f, 0.65f); + place.pos = glm::vec3(-0.8f, 0.0f, 0.65f); place.items.push_back(&GetShop().GetSlot("asyncFrost")); place.defItem = place.items.front().slot; @@ -2997,8 +2997,8 @@ void Garage::LoadCars() PlaceSlot place; place.active = true; place.show = true; - place.pos = D3DXVECTOR3(0.3f, 0.8f, 0.4f); - D3DXVECTOR3 offset; + place.pos = glm::vec3(0.3f, 0.8f, 0.4f); + glm::vec3 offset; glm::quat rot = glm::angleAxis(-D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("rocketLauncher"), rot)); @@ -3009,7 +3009,7 @@ void Garage::LoadCars() rot = glm::angleAxis(-D3DX_PI, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("fireGun"), rot)); - offset = D3DXVECTOR3(0.95f, -0.1f, -0.1f); + offset = glm::vec3(0.95f, -0.1f, -0.1f); place.items.push_back(PlaceItem(&GetShop().GetSlot("drobilka"), NullQuaternion, offset)); place.items.push_back(&GetShop().GetSlot("torpedaWeapon")); @@ -3032,8 +3032,8 @@ void Garage::LoadCars() PlaceSlot place; place.active = true; place.show = true; - place.pos = D3DXVECTOR3(0.3f, -0.8f, 0.4f); - D3DXVECTOR3 offset; + place.pos = glm::vec3(0.3f, -0.8f, 0.4f); + glm::vec3 offset; glm::quat rot = glm::angleAxis(D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); place.items.push_back(PlaceItem(&GetShop().GetSlot("rocketLauncher"), rot)); @@ -3043,7 +3043,7 @@ void Garage::LoadCars() place.items.push_back(&GetShop().GetSlot("fireGun")); - offset = D3DXVECTOR3(0.95f, 0.1f, -0.1f); + offset = glm::vec3(0.95f, 0.1f, -0.1f); place.items.push_back(PlaceItem(&GetShop().GetSlot("drobilka"), NullQuaternion, offset)); place.items.push_back(&GetShop().GetSlot("torpedaWeapon")); @@ -3067,8 +3067,8 @@ void Garage::LoadCars() PlaceSlot place; place.active = true; place.show = true; - place.pos = D3DXVECTOR3(1.4f, 0.0f, 0.6f); - //D3DXVECTOR3 offset; + place.pos = glm::vec3(1.4f, 0.0f, 0.6f); + //glm::vec3 offset; place.items.push_back(&GetShop().GetSlot("rocketLauncher")); @@ -3076,7 +3076,7 @@ void Garage::LoadCars() //place.items.push_back(&GetShop().GetSlot("fireGun")); // - //offset = D3DXVECTOR3(0.1f, 0.0f, -0.15f); + //offset = glm::vec3(0.1f, 0.0f, -0.15f); //place.items.push_back(PlaceItem(&GetShop().GetSlot("drobilka"), NullQuaternion, offset)); place.items.push_back(&GetShop().GetSlot("torpedaWeapon")); @@ -3105,13 +3105,13 @@ void Garage::LoadCars() car->SetWheels("Data\\Car\\devildriverWheel.txt"); car->SetCost(300000); - FillStandartSlots(car, "", false, &D3DXVECTOR3(-1.5f, 0.0f, 0.35f), false, false, false, false, true, false); + FillStandartSlots(car, "", false, &glm::vec3(-1.5f, 0.0f, 0.35f), false, false, false, false, true, false); { PlaceSlot place; place.active = true; place.show = true; - place.pos = D3DXVECTOR3(-0.27f, 0.0f, 0.65f); + place.pos = glm::vec3(-0.27f, 0.0f, 0.65f); place.items.push_back(&GetShop().GetSlot("sonar")); place.defItem = place.items.front().slot; @@ -3144,7 +3144,7 @@ void Garage::LoadCars() PlaceSlot place; place.active = true; place.show = true; - place.pos = D3DXVECTOR3(1.2f, 0.02f, 0.53f); + place.pos = glm::vec3(1.2f, 0.02f, 0.53f); place.items.push_back(&GetShop().GetSlot("bulletGun")); place.defItem = place.items.front().slot; @@ -3171,7 +3171,7 @@ void Garage::LoadCars() PlaceSlot place; place.active = true; place.show = true; - place.pos = D3DXVECTOR3(1.88f, 0.0f, -0.22f); + place.pos = glm::vec3(1.88f, 0.0f, -0.22f); place.items.push_back(&GetShop().GetSlot("rifleWeapon")); place.defItem = place.items.front().slot; @@ -3183,7 +3183,7 @@ void Garage::LoadCars() PlaceSlot place; place.active = true; place.show = true; - place.pos = D3DXVECTOR3(-0.41f, 0.08f, 1.1f); + place.pos = glm::vec3(-0.41f, 0.08f, 1.1f); place.items.push_back(&GetShop().GetSlot("rocketLauncher")); place.defItem = place.items.front().slot; @@ -3340,7 +3340,7 @@ Slot* Garage::InstalSlot(Player* player, Player::SlotType type, Car* car, Slot* { LSL_ASSERT(car->GetRecord() == player->GetCar().record); - D3DXVECTOR3 pos; + glm::vec3 pos; glm::quat rot = NullQuaternion; if (slot) { @@ -7468,9 +7468,9 @@ void Race::ResetCarPos() const unsigned cRowLength = 4; const float rowSpace = 7.0f; - D3DXVECTOR3 stPos = ZVector * 7.0f; - D3DXVECTOR3 dirVec = XVector; - D3DXVECTOR3 lineVec = YVector; + glm::vec3 stPos = ZVector * 7.0f; + glm::vec3 dirVec = XVector; + glm::vec3 lineVec = YVector; float nodeWidth = 10.0f; if (!GetMap()->GetTrace().GetPoints().empty()) @@ -7486,8 +7486,8 @@ void Race::ResetCarPos() glm::vec2 dir2 = node->GetTile().GetDir(); glm::vec2 norm2 = node->GetTile().GetNorm(); - dirVec = D3DXVECTOR3(dir2.x, dir2.y, 0); - lineVec = D3DXVECTOR3(norm2.x, norm2.y, 0); + dirVec = glm::vec3(dir2.x, dir2.y, 0); + lineVec = glm::vec3(norm2.x, norm2.y, 0); } } @@ -7523,7 +7523,7 @@ void Race::ResetCarPos() if (mapObj) { AABB aabb = gameObj->GetGrActor().GetLocalAABB(true); - D3DXVECTOR3 size = aabb.GetSizes(); + glm::vec3 size = aabb.GetSizes(); //dirVec начинается с небольшого порога чтобы машина не оказалась на последнем тайле gameObj->SetWorldPos(stPos + dirVec * (0.1f - i / 4 * rowSpace) + lineVec * (-nodeWidth / 2.0f + spaceY + size.y/2.0f + stepY)); diff --git a/src/Rock3dGame/source/game/RaceMenu2.cpp b/src/Rock3dGame/source/game/RaceMenu2.cpp index b5de6360..2bcb78c2 100644 --- a/src/Rock3dGame/source/game/RaceMenu2.cpp +++ b/src/Rock3dGame/source/game/RaceMenu2.cpp @@ -21,7 +21,7 @@ CarFrame::CarFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent): MenuFra record = menu->GetDB()->GetRecord(MapObjLib::ctDecoration, "Misc\\question"); _secretMapObj = &menu->GetRace()->GetMap()->AddMapObj(record); - _secretMapObj->GetGameObj().SetWorldPos(D3DXVECTOR3(0, 0, 0.39f)); + _secretMapObj->GetGameObj().SetWorldPos(glm::vec3(0, 0, 0.39f)); _secretMapObj->GetGameObj().GetGrActor().SetVisible(false); } @@ -61,12 +61,12 @@ void CarFrame::OnShow(bool value) _camStyle = cCamStyleEnd; SetCamStyle(csCar, true); - menu()->GetEnv()->SetLampPos(D3DXVECTOR3(-0.94673467f, 3.0021181f, 2.9447727f), 0); + menu()->GetEnv()->SetLampPos(glm::vec3(-0.94673467f, 3.0021181f, 2.9447727f), 0); menu()->GetEnv()->SetLampRot(glm::quat(0.79532242f, 0.19748747f, 0.34095559f, -0.46066701f), 0); menu()->GetEnv()->SetLampColor(clrWhite, 0); menu()->GetEnv()->SwitchOnLamp(0, true); - menu()->GetEnv()->SetLampPos(D3DXVECTOR3(6.0344887f, -5.2521329f, 1.6322796f), 1); + menu()->GetEnv()->SetLampPos(glm::vec3(6.0344887f, -5.2521329f, 1.6322796f), 1); menu()->GetEnv()->SetLampRot(glm::quat(0.25379914f, -0.17059785f, 0.045529708f, 0.95100683f), 1); menu()->GetEnv()->SetLampColor(clrWhite, 1); menu()->GetEnv()->SwitchOnLamp(1, true); @@ -98,7 +98,7 @@ void CarFrame::SetCar(Garage::Car* value, const D3DXCOLOR& color, bool secret) for (GameCar::Wheels::const_iterator iter = gameCar.GetWheels().begin(); iter != gameCar.GetWheels().end(); ++iter) { - (*iter)->SetPos((*iter)->GetPos() + D3DXVECTOR3(0, 0, -0.5f) * (*iter)->GetShape()->GetSuspensionTravel() + (*iter)->GetOffset()); + (*iter)->SetPos((*iter)->GetPos() + glm::vec3(0, 0, -0.5f) * (*iter)->GetShape()->GetSuspensionTravel() + (*iter)->GetOffset()); if ((*iter)->invertWheel) { @@ -109,7 +109,7 @@ void CarFrame::SetCar(Garage::Car* value, const D3DXCOLOR& color, bool secret) wheelOffs = abs((*iter)->GetPos().z) + (*iter)->GetShape()->GetRadius() + (*iter)->GetOffset().z; } - _carMapObj->GetGameObj().SetWorldPos(D3DXVECTOR3(0, 0, wheelOffs - 0.71f)); + _carMapObj->GetGameObj().SetWorldPos(glm::vec3(0, 0, wheelOffs - 0.71f)); _carMapObj->GetGameObj().GetGrActor().SetVisible(visible()); SetCarColor(color); @@ -203,7 +203,7 @@ void CarFrame::SetCamStyle(CamStyle value, bool instant) CamStyle lastCamStyle = _camStyle; _camStyle = value; - D3DXVECTOR3 pos = NullVector; + glm::vec3 pos = NullVector; glm::quat rot = NullQuaternion; CameraManager* camera = menu()->GetRace()->GetWorld()->GetCamera(); graph::Camera* cameraInst = menu()->GetRace()->GetWorld()->GetGraph()->GetCamera(); @@ -221,28 +221,28 @@ void CarFrame::SetCamStyle(CamStyle value, bool instant) } else { - pos = D3DXVECTOR3(2.9176455f, 3.8489482f, 1.2934232f); + pos = glm::vec3(2.9176455f, 3.8489482f, 1.2934232f); rot = glm::quat(0.44111854f, 0.11683256f, 0.058045074f, -0.88791621f); } camera->SetTarget(D3DXVECTOR4(0, 0, 0, 5.0f)); camera->SetClampAngle(D3DXVECTOR4(0.0f, 0.0f, 25.0f * D3DX_PI/180, 80.0f * D3DX_PI/180)); - camera->SetAngleSpeed(D3DXVECTOR3(D3DX_PI/48, 0, 0)); - camera->SetStableAngle(D3DXVECTOR3(75.0f * D3DX_PI/180, 0, 0)); + camera->SetAngleSpeed(glm::vec3(D3DX_PI/48, 0, 0)); + camera->SetStableAngle(glm::vec3(75.0f * D3DX_PI/180, 0, 0)); break; } case csSlots: { - D3DXVECTOR3 posList[8] = { - D3DXVECTOR3(-5.6156259f, 4.3894496f, 1.3072476f), - D3DXVECTOR3(1.0063084f, 6.9253764f, 1.7360222f), - D3DXVECTOR3(5.6724834f, 4.9537153f, 1.3952403f), - D3DXVECTOR3(7.0655332f, -1.0402107f, 1.2024049f), - D3DXVECTOR3(5.4610982f, -5.3067584f, 1.2650701f), - D3DXVECTOR3(-1.1062316f, -7.5020962f, 1.1599010f), - D3DXVECTOR3(-5.9399834f, -4.8825927f, 1.0367264f), - D3DXVECTOR3(-7.4102926f, 0.61909121f, 1.1492375f) + glm::vec3 posList[8] = { + glm::vec3(-5.6156259f, 4.3894496f, 1.3072476f), + glm::vec3(1.0063084f, 6.9253764f, 1.7360222f), + glm::vec3(5.6724834f, 4.9537153f, 1.3952403f), + glm::vec3(7.0655332f, -1.0402107f, 1.2024049f), + glm::vec3(5.4610982f, -5.3067584f, 1.2650701f), + glm::vec3(-1.1062316f, -7.5020962f, 1.1599010f), + glm::vec3(-5.9399834f, -4.8825927f, 1.0367264f), + glm::vec3(-7.4102926f, 0.61909121f, 1.1492375f) }; glm::quat rotList[8] = { @@ -294,14 +294,14 @@ void CarFrame::SetCamStyle(CamStyle value, bool instant) if (lastCamStyle == csCar) { D3DXVECTOR4 target = camera->GetTarget(); - camera->GetObserverCoord(D3DXVECTOR3(target.x, target.y, target.z), target.w, &_camLastPos, _camLastRot, NullVec2, 0, false, false, true, NULL, NULL, NULL); + camera->GetObserverCoord(glm::vec3(target.x, target.y, target.z), target.w, &_camLastPos, _camLastRot, NullVec2, 0, false, false, true, NULL, NULL, NULL); } } SpaceshipFrame::SpaceshipFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent): MenuFrame(menu, parent), _raceMenu(raceMenu), _redLampTime(0.0f) { { - D3DXVECTOR3 center = D3DXVECTOR3(63.0f, 0.0f, 23.0f); + glm::vec3 center = glm::vec3(63.0f, 0.0f, 23.0f); MapObjRec* record = menu->GetDB()->GetRecord(MapObjLib::ctDecoration, "Misc\\space2"); _spaceMapObj = &menu->GetRace()->GetMap()->AddMapObj(record); @@ -312,7 +312,7 @@ SpaceshipFrame::SpaceshipFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* pare glm::vec2 imageSize = static_cast(spaceSprite->material.Get()->samplers.front()).GetSize(); float aspect = imageSize.x/imageSize.y; spaceSprite->SetPos(center); - spaceSprite->SetScale(D3DXVECTOR3(aspect * 70.0f, 70.0f, 1.0f)); + spaceSprite->SetScale(glm::vec3(aspect * 70.0f, 70.0f, 1.0f)); spaceSprite->SetPitchAngle(-D3DX_PI/2); spaceSprite->SetRollAngle(-D3DX_PI/2); } @@ -356,17 +356,17 @@ void SpaceshipFrame::OnShow(bool value) menu()->GetEnv()->SetWheater(Environment::ewAngar); menu()->GetEnv()->StartScene(); - menu()->GetEnv()->SetLampPos(D3DXVECTOR3(22.169474f, -5.9075522f, 35.802311f), 0); + menu()->GetEnv()->SetLampPos(glm::vec3(22.169474f, -5.9075522f, 35.802311f), 0); menu()->GetEnv()->SetLampRot(glm::quat(0.14267041f, -0.47304764f, 0.077942163f, 0.86590993f), 0); menu()->GetEnv()->SetLampColor(clrWhite, 0); menu()->GetEnv()->SwitchOnLamp(0, true); - menu()->GetEnv()->SetLampPos(D3DXVECTOR3(-20.881384f, -21.184746f, 26.121809f), 1); + menu()->GetEnv()->SetLampPos(glm::vec3(-20.881384f, -21.184746f, 26.121809f), 1); menu()->GetEnv()->SetLampRot(glm::quat(0.83397770f, -0.16464995f, 0.34524971f, 0.39772648f), 1); menu()->GetEnv()->SetLampColor(clrRed * 0.8f, 1); menu()->GetEnv()->SwitchOnLamp(1, false); - menu()->GetEnv()->SetLampPos(D3DXVECTOR3(52.307316f, 24.327570f, 32.772705f), 2); + menu()->GetEnv()->SetLampPos(glm::vec3(52.307316f, 24.327570f, 32.772705f), 2); menu()->GetEnv()->SetLampRot(glm::quat(0.61423278f, 0.21948183f, 0.18329506f, -0.73549527f), 2); menu()->GetEnv()->SetLampColor(D3DXCOLOR(0xff88fefe), 2); menu()->GetEnv()->SwitchOnLamp(2, true); @@ -375,14 +375,14 @@ void SpaceshipFrame::OnShow(bool value) graph::Camera* cameraInst = menu()->GetRace()->GetWorld()->GetGraph()->GetCamera(); camera->StopFly(); - cameraInst->SetPos(D3DXVECTOR3(-43.756214f, -11.786510f, 21.129881f)); + cameraInst->SetPos(glm::vec3(-43.756214f, -11.786510f, 21.129881f)); cameraInst->SetRot(glm::quat(0.96786171f, -0.028391786f, 0.21455817f, 0.12807286f)); camera->ChangeStyle(CameraManager::csAutoObserver); camera->SetTarget(D3DXVECTOR4(0, 0, 0, 50.0f)); camera->SetClampAngle(D3DXVECTOR4(40.0f * D3DX_PI/180, 30.0f * D3DX_PI/180, 45.0f * D3DX_PI/180, 80.0f * D3DX_PI/180)); - camera->SetAngleSpeed(D3DXVECTOR3(D3DX_PI/96, 0, 0)); - camera->SetStableAngle(D3DXVECTOR3(65.0f * D3DX_PI/180, 0, 0)); + camera->SetAngleSpeed(glm::vec3(D3DX_PI/96, 0, 0)); + camera->SetStableAngle(glm::vec3(65.0f * D3DX_PI/180, 0, 0)); _redLampTime = 0.0f; } @@ -3809,7 +3809,7 @@ void RaceMenu::CreateCar(gui::ViewPort3d* viewport, Garage::Car* car, const D3DX if (!car->GetWheels().empty() && car->GetWheel()) { - std::vector wheels; + std::vector wheels; CarWheels::LoadPosTo(car->GetWheels(), wheels); for (unsigned i = 0; i < wheels.size(); ++i) { @@ -3819,7 +3819,7 @@ void RaceMenu::CreateCar(gui::ViewPort3d* viewport, Garage::Car* car, const D3DX wheel->SetPos(wheels[i]); if (wheels[i].y < 0) { - wheel->SetScale(D3DXVECTOR3(1.0f, -1.0f, 1.0f)); + wheel->SetScale(glm::vec3(1.0f, -1.0f, 1.0f)); wheel->invertCullFace = true; } } @@ -3842,7 +3842,7 @@ void RaceMenu::CreateCar(gui::ViewPort3d* viewport, Garage::Car* car, const D3DX if (wpn != NULL && wpn->GetMapObj() == NULL) continue; - D3DXVECTOR3 pos = placeSlot.pos + placeItem->offset; + glm::vec3 pos = placeSlot.pos + placeItem->offset; glm::quat rot = placeItem ? placeItem->rot : NullQuaternion; gui::Mesh3d* carMesh = _menu->CreateMesh3d(viewport, slot->GetItem().GetMesh(), slot->GetItem().GetTexture()); diff --git a/src/Rock3dGame/source/game/ResourceManager.cpp b/src/Rock3dGame/source/game/ResourceManager.cpp index 6e11ba9b..add9b9bf 100644 --- a/src/Rock3dGame/source/game/ResourceManager.cpp +++ b/src/Rock3dGame/source/game/ResourceManager.cpp @@ -1496,15 +1496,15 @@ void ResourceManager::LoadEffects() LoadImage2dLibMat("Effect\\engine1", "Effect\\engine1.dds", true, graph::Material::bmAdditive, 1.0f, clrWhite, Vec2Range(NullVec2, IdentityVec2), Point2U(5, 2)); LoadImage2dLibMat("Effect\\shield1", "Effect\\shield1.dds", true, graph::Material::bmAdditive, FloatRange(0.0f, 1.0f), clrWhite, Vec2Range(NullVec2, IdentityVec2), Point2U(5, 2)); LoadImage2dLibMatAnim("Effect\\shield2", "Effect\\shield2.dds", true, graph::Material::bmAdditive, 0.4f, clrWhite, Vec3Range(NullVector, IdentityVector)).SetAnisoFlt(); - LoadImage2dLibMatAnim("Effect\\shield2Hor", "Effect\\shield2.dds", true, graph::Material::bmAdditive, 0.4f, clrWhite, Vec3Range(NullVector, D3DXVECTOR3(1, 0, 0))).SetAnisoFlt(); - LoadImage2dLibMatAnim("Effect\\shield2Vert", "Effect\\shield2.dds", true, graph::Material::bmAdditive, 0.4f, clrWhite, Vec3Range(NullVector, D3DXVECTOR3(0, 1, 0))).SetAnisoFlt(); + LoadImage2dLibMatAnim("Effect\\shield2Hor", "Effect\\shield2.dds", true, graph::Material::bmAdditive, 0.4f, clrWhite, Vec3Range(NullVector, glm::vec3(1, 0, 0))).SetAnisoFlt(); + LoadImage2dLibMatAnim("Effect\\shield2Vert", "Effect\\shield2.dds", true, graph::Material::bmAdditive, 0.4f, clrWhite, Vec3Range(NullVector, glm::vec3(0, 1, 0))).SetAnisoFlt(); LoadImage2dLibMatAnim("Effect\\phaserBolt", "Effect\\shield2.dds", true, graph::Material::bmAdditive, 1.0f, clrWhite, Vec3Range(NullVector, IdentityVector)).SetAnisoFlt(); LoadLibMat("Effect\\gravBall", true, graph::Material::bmOpaque, 1.0f, clrRed); { graph::LibMaterial& libMat = LoadImage2dLibMat("Effect\\laserRay", "Effect\\lazerbeam1_blue1_blend7b.dds", true, graph::Material::bmAdditive, FloatRange(1.0f, 1.0f)); - libMat.samplers[0].SetOffset(Vec3Range(NullVector, D3DXVECTOR3(-3.0f/1.2f, 0.0f, 0.0f))); + libMat.samplers[0].SetOffset(Vec3Range(NullVector, glm::vec3(-3.0f/1.2f, 0.0f, 0.0f))); libMat.samplers[0].samplerStates.Set(graph::ssAddressU, D3DTADDRESS_WRAP); libMat.samplers[0].samplerStates.Set(graph::ssAddressV, D3DTADDRESS_CLAMP); } diff --git a/src/Rock3dGame/source/game/Trace.cpp b/src/Rock3dGame/source/game/Trace.cpp index 9025bdeb..4a6c12d6 100644 --- a/src/Rock3dGame/source/game/Trace.cpp +++ b/src/Rock3dGame/source/game/Trace.cpp @@ -34,12 +34,12 @@ void WayPoint::Changed() (*iter)->Changed(); } -bool WayPoint::RayCast(const D3DXVECTOR3& rayPos, const D3DXVECTOR3& rayVec, float* dist) const +bool WayPoint::RayCast(const glm::vec3& rayPos, const glm::vec3& rayVec, float* dist) const { return RayCastIntersectSphere(rayPos, rayVec, _pos, _size / 2.0f, dist); } -bool WayPoint::IsContains(const D3DXVECTOR3& point, float* dist) const +bool WayPoint::IsContains(const glm::vec3& point, float* dist) const { float midDist = D3DXVec3Length(&(point - _pos)); if (dist) @@ -53,12 +53,12 @@ unsigned WayPoint::GetId() const return _id; } -const D3DXVECTOR3& WayPoint::GetPos() const +const glm::vec3& WayPoint::GetPos() const { return _pos; } -void WayPoint::SetPos(const D3DXVECTOR3& value) +void WayPoint::SetPos(const glm::vec3& value) { _pos = value; Changed(); @@ -75,12 +75,12 @@ void WayPoint::SetSize(float value) Changed(); } -const D3DXVECTOR3& WayPoint::GetOff() const +const glm::vec3& WayPoint::GetOff() const { return _off; } -void WayPoint::SetOff(const D3DXVECTOR3& value) +void WayPoint::SetOff(const glm::vec3& value) { _off = value; Changed(); @@ -158,11 +158,11 @@ void WayNode::Tile::ApplyChanges() const _changed = false; //glm::vec2 sPos = GetPos(); - glm::vec2 sPos = glm::vec2(GetPos().x, GetPos().y); // remove after D3DXVECTOR3 replacement + glm::vec2 sPos = glm::vec2(GetPos().x, GetPos().y); // remove after glm::vec3 replacement if (_node->GetNext()) { //_dir = glm::vec2(GetNextPos()) - sPos; - _dir = glm::vec2(GetNextPos().x, GetNextPos().y) - sPos; // remove after D3DXVECTOR3 replacement + _dir = glm::vec2(GetNextPos().x, GetNextPos().y) - sPos; // remove after glm::vec3 replacement _dirLength = glm::length(_dir); _dir = glm::normalize(_dir); } @@ -211,7 +211,7 @@ void WayNode::Tile::ApplyChanges() const } } -const D3DXVECTOR3& WayNode::Tile::GetPos() const +const glm::vec3& WayNode::Tile::GetPos() const { return _node->GetPoint()->GetPos(); } @@ -221,7 +221,7 @@ float WayNode::Tile::GetHeight() const return _node->GetPoint()->GetSize() / 2.0f; } -const D3DXVECTOR3& WayNode::Tile::GetNextPos() const +const glm::vec3& WayNode::Tile::GetNextPos() const { return _node->GetNext() ? _node->GetNext()->GetTile().GetPos() : GetPos(); } @@ -247,7 +247,7 @@ const glm::vec2& WayNode::Tile::GetNextMidNorm() const return tile->_midNorm; } -const D3DXVECTOR3& WayNode::Tile::GetNextNormLine() const +const glm::vec3& WayNode::Tile::GetNextNormLine() const { const Tile* tile = _node->GetNext() ? &_node->GetNext()->GetTile() : this; @@ -268,7 +268,7 @@ void WayNode::Tile::Changed() _changed = true; } -void WayNode::Tile::GetVBuf(D3DXVECTOR3* vBuf, unsigned length, const D3DXVECTOR3* upVec) const +void WayNode::Tile::GetVBuf(glm::vec3* vBuf, unsigned length, const glm::vec3* upVec) const { LSL_ASSERT(length >= 4); @@ -276,10 +276,10 @@ void WayNode::Tile::GetVBuf(D3DXVECTOR3* vBuf, unsigned length, const D3DXVECTOR glm::vec2 nextMidNorm = GetNextMidNorm(); - vBuf[0] = GetPos() + D3DXVECTOR3(_midNorm.x, _midNorm.y, 0.0f) * _nodeRadius; - vBuf[1] = GetPos() - D3DXVECTOR3(_midNorm.x, _midNorm.y, 0.0f) * _nodeRadius; - vBuf[2] = GetNextPos() + D3DXVECTOR3(nextMidNorm.x, nextMidNorm.y, 0.0f) * GetNextNodeRadius(); - vBuf[3] = GetNextPos() - D3DXVECTOR3(nextMidNorm.x, nextMidNorm.y, 0.0f) * GetNextNodeRadius(); + vBuf[0] = GetPos() + glm::vec3(_midNorm.x, _midNorm.y, 0.0f) * _nodeRadius; + vBuf[1] = GetPos() - glm::vec3(_midNorm.x, _midNorm.y, 0.0f) * _nodeRadius; + vBuf[2] = GetNextPos() + glm::vec3(nextMidNorm.x, nextMidNorm.y, 0.0f) * GetNextNodeRadius(); + vBuf[3] = GetNextPos() - glm::vec3(nextMidNorm.x, nextMidNorm.y, 0.0f) * GetNextNodeRadius(); if (!upVec) vBuf[0].z = vBuf[1].z = vBuf[2].z = vBuf[3].z = 0; @@ -325,17 +325,17 @@ glm::vec2 WayNode::Tile::ComputeTrackNormOff(const glm::vec2& point, unsigned tr return _norm * trackOff; } -void PlaneFromDirVec(const D3DXVECTOR3& dir, const D3DXVECTOR3& norm, const D3DXVECTOR3& pos, D3DXPLANE& plane) +void PlaneFromDirVec(const glm::vec3& dir, const glm::vec3& norm, const glm::vec3& pos, D3DXPLANE& plane) { - D3DXVECTOR3 right, up; + glm::vec3 right, up; D3DXVec3Cross(&right, &dir, &norm); D3DXVec3Cross(&up, &right, &dir); D3DXPlaneFromPointNormal(&plane, &pos, &up); } -bool WayNode::Tile::RayCast(const D3DXVECTOR3& rayPos, const D3DXVECTOR3& rayVec, float* dist) const +bool WayNode::Tile::RayCast(const glm::vec3& rayPos, const glm::vec3& rayVec, float* dist) const { - D3DXVECTOR3 dir = GetNextPos() - GetPos(); + glm::vec3 dir = GetNextPos() - GetPos(); D3DXVec3Normalize(&dir, &dir); D3DXPLANE plane; @@ -356,16 +356,16 @@ bool WayNode::Tile::RayCast(const D3DXVECTOR3& rayPos, const D3DXVECTOR3& rayVec return res; } -bool WayNode::Tile::IsContains(const D3DXVECTOR3& point, bool lengthClamp, float* dist, float widthErr) const +bool WayNode::Tile::IsContains(const glm::vec3& point, bool lengthClamp, float* dist, float widthErr) const { ApplyChanges(); - D3DXVECTOR3 pos1 = GetPos(); - D3DXVECTOR3 pos2 = GetNextPos(); + glm::vec3 pos1 = GetPos(); + glm::vec3 pos2 = GetNextPos(); //Расстояние в 2д плоскости //glm::vec2 point2 = point; - glm::vec2 point2 = glm::vec2(point.x, point.y); // remove after D3DXVECTOR3 replacement + glm::vec2 point2 = glm::vec2(point.x, point.y); // remove after glm::vec3 replacement float dist1 = Line2DistToPoint(_midNormLine, point2); float dist2 = Line2DistToPoint(GetNextNormLine(), point2); float dirDist = Line2DistToPoint(_dirLine, point2); @@ -385,12 +385,12 @@ bool WayNode::Tile::IsContains(const D3DXVECTOR3& point, bool lengthClamp, float return (!lengthClamp || dist1 * dist2 < 0) && abs(dirDist) < (halfWidth + widthErr) && abs(coordZ - point.z) < height; } -bool WayNode::Tile::IsZLevelContains(const D3DXVECTOR3& point, float* dist) const +bool WayNode::Tile::IsZLevelContains(const glm::vec3& point, float* dist) const { ApplyChanges(); //glm::vec2 pos = glm::vec2(point); - glm::vec2 pos = glm::vec2(point.x, point.y); // remove after D3DXVECTOR3 replacement + glm::vec2 pos = glm::vec2(point.x, point.y); // remove after glm::vec3 replacement float height = GetHeight(pos); float coordZ = GetZCoord(pos); @@ -416,7 +416,7 @@ const glm::vec2& WayNode::Tile::GetNorm() const return _norm; } -const D3DXVECTOR3& WayNode::Tile::GetDirLine() const +const glm::vec3& WayNode::Tile::GetDirLine() const { ApplyChanges(); return _dirLine; @@ -434,7 +434,7 @@ const glm::vec2& WayNode::Tile::GetMidNorm() const return _midNorm; } -const D3DXVECTOR3& WayNode::Tile::GetMidNormLine() const +const glm::vec3& WayNode::Tile::GetMidNormLine() const { ApplyChanges(); return _midNormLine; @@ -452,7 +452,7 @@ float WayNode::Tile::GetNodeRadius() const return _nodeRadius; } -const D3DXVECTOR3& WayNode::Tile::GetEdgeLine() const +const glm::vec3& WayNode::Tile::GetEdgeLine() const { ApplyChanges(); return _edgeLine; @@ -540,12 +540,12 @@ float WayNode::Tile::GetZCoord(const glm::vec2& point) const return ComputeZCoord(ComputeCoordX(point)); } -D3DXVECTOR3 WayNode::Tile::GetPoint(float coordX) const +glm::vec3 WayNode::Tile::GetPoint(float coordX) const { return GetPos() + (GetNextPos() - GetPos()) * coordX; } -D3DXVECTOR3 WayNode::Tile::GetCenter3() const +glm::vec3 WayNode::Tile::GetCenter3() const { ApplyChanges(); @@ -597,7 +597,7 @@ void WayNode::Changed() } } -bool WayNode::RayCast(const D3DXVECTOR3& rayPos, const D3DXVECTOR3& rayVec, float* dist) const +bool WayNode::RayCast(const glm::vec3& rayPos, const glm::vec3& rayVec, float* dist) const { return RayCastIntersectSphere(rayPos, rayVec, _point->GetPos(), _tile->GetNodeRadius(), dist); } @@ -605,14 +605,14 @@ bool WayNode::RayCast(const D3DXVECTOR3& rayPos, const D3DXVECTOR3& rayVec, floa bool WayNode::IsContains2(const glm::vec2& point, float* dist) const { //float midDist = D3DXVec2Length(&(point - glm::vec2(_point->GetPos()))); - float midDist = glm::length(point - glm::vec2(_point->GetPos().x, _point->GetPos().y)); // remove after D3DXVECTOR3 replacement + float midDist = glm::length(point - glm::vec2(_point->GetPos().x, _point->GetPos().y)); // remove after glm::vec3 replacement if (dist) *dist = midDist; return midDist < _tile->GetNodeRadius(); } -bool WayNode::IsContains(const D3DXVECTOR3& point, float* dist) const +bool WayNode::IsContains(const glm::vec3& point, float* dist) const { float midDist = D3DXVec3Length(&(point - _point->GetPos())); if (dist) @@ -648,7 +648,7 @@ WayNode* WayNode::GetNext() return _next; } -const D3DXVECTOR3& WayNode::GetPos() const +const glm::vec3& WayNode::GetPos() const { return _point->GetPos(); } @@ -656,7 +656,7 @@ const D3DXVECTOR3& WayNode::GetPos() const glm::vec2 WayNode::GetPos2() const { //return glm::vec2(GetPos()); - return glm::vec2(GetPos().x, GetPos().y); // remove after D3DXVECTOR3 replacement + return glm::vec2(GetPos().x, GetPos().y); // remove after glm::vec3 replacement } float WayNode::GetSize() const @@ -773,7 +773,7 @@ void WayPath::Enclosed(bool value) } } -WayNode* WayPath::RayCast(const D3DXVECTOR3& rayPos, const D3DXVECTOR3& rayVec, WayNode* mWhere, float* dist) const +WayNode* WayPath::RayCast(const glm::vec3& rayPos, const glm::vec3& rayVec, WayNode* mWhere, float* dist) const { float minDist = 0; WayNode* resNode = 0; @@ -817,7 +817,7 @@ WayNode* WayPath::RayCast(const D3DXVECTOR3& rayPos, const D3DXVECTOR3& rayVec, return resNode; } -WayNode* WayPath::IsTileContains(const D3DXVECTOR3& point, WayNode* mWhere) const +WayNode* WayPath::IsTileContains(const glm::vec3& point, WayNode* mWhere) const { WayNode* resNode = 0; @@ -846,7 +846,7 @@ WayNode* WayPath::IsTileContains(const D3DXVECTOR3& point, WayNode* mWhere) cons return resNode; } -void WayPath::GetTriStripVBuf(res::VertexData& data, const D3DXVECTOR3* upVec) +void WayPath::GetTriStripVBuf(res::VertexData& data, const glm::vec3* upVec) { data.SetFormat(res::VertexData::vtPos3, true); @@ -968,7 +968,7 @@ void Trace::Load(SReader* reader) while (sPoint) { const lsl::SIOTraits::ValueDesc* val; - D3DXVECTOR3 vec3; + glm::vec3 vec3; float fVal; game::WayPoint* point; @@ -1063,7 +1063,7 @@ void Trace::Clear() ClearPoints(); } -WayNode* Trace::RayCast(const D3DXVECTOR3& rayPos, const D3DXVECTOR3& rayVec, float* dist) const +WayNode* Trace::RayCast(const glm::vec3& rayPos, const glm::vec3& rayVec, float* dist) const { float minDist = 0; WayNode* resNode = 0; @@ -1085,7 +1085,7 @@ WayNode* Trace::RayCast(const D3DXVECTOR3& rayPos, const D3DXVECTOR3& rayVec, fl return resNode; } -WayNode* Trace::IsTileContains(const D3DXVECTOR3& point, WayNode* mWhere) const +WayNode* Trace::IsTileContains(const glm::vec3& point, WayNode* mWhere) const { WayPath* wPath = 0; if (mWhere) @@ -1115,7 +1115,7 @@ WayPoint* Trace::FindPoint(unsigned id) return 0; } -WayNode* Trace::FindClosestNode(const D3DXVECTOR3& point) +WayNode* Trace::FindClosestNode(const glm::vec3& point) { float minDist; WayNode* res = 0; diff --git a/src/Rock3dGame/source/game/TraceGfx.cpp b/src/Rock3dGame/source/game/TraceGfx.cpp index d5eec3f9..a1f30100 100644 --- a/src/Rock3dGame/source/game/TraceGfx.cpp +++ b/src/Rock3dGame/source/game/TraceGfx.cpp @@ -48,7 +48,7 @@ TraceGfx::~TraceGfx() _trace->Release(); } -void TraceGfx::DrawNodes(graph::Engine& engine, D3DXVECTOR3* vBuf, unsigned triCnt, const D3DXCOLOR& color) +void TraceGfx::DrawNodes(graph::Engine& engine, glm::vec3* vBuf, unsigned triCnt, const D3DXCOLOR& color) { _libMat->material.SetDiffuse(color); _libMat->Apply(engine); @@ -58,7 +58,7 @@ void TraceGfx::DrawNodes(graph::Engine& engine, D3DXVECTOR3* vBuf, unsigned triC engine.GetContext().SetRenderState(graph::rsCullMode, D3DCULL_NONE); engine.GetDriver().GetDevice()->SetFVF(D3DFVF_XYZ); - engine.GetDriver().GetDevice()->DrawPrimitiveUP(D3DPT_TRIANGLESTRIP, triCnt, vBuf, sizeof(D3DXVECTOR3)); + engine.GetDriver().GetDevice()->DrawPrimitiveUP(D3DPT_TRIANGLESTRIP, triCnt, vBuf, sizeof(glm::vec3)); engine.GetContext().RestoreRenderState(graph::rsCullMode); engine.EndDraw(false); @@ -79,8 +79,8 @@ void TraceGfx::DoRender(graph::Engine& engine) } //Отрисовка связей между путями - Vec3Range resColor(D3DXVECTOR3(clrWhite / 2.0f), D3DXVECTOR3(clrWhite), Vec3Range::vdVolume); - D3DXVECTOR3 upVec = engine.GetContext().GetCamera().GetDesc().dir; + Vec3Range resColor(glm::vec3(clrWhite / 2.0f), glm::vec3(clrWhite), Vec3Range::vdVolume); + glm::vec3 upVec = engine.GetContext().GetCamera().GetDesc().dir; float iPath = 0.0f; float pathCnt = static_cast(_trace->GetPathes().size()); @@ -97,7 +97,7 @@ void TraceGfx::DoRender(graph::Engine& engine) //Для выделенного узла свой цикл отрисовки if (_selNode && _selNode->GetNext()) { - D3DXVECTOR3 vBuf[4]; + glm::vec3 vBuf[4]; _selNode->GetTile().GetVBuf(vBuf, 4, &upVec); DrawNodes(engine, vBuf, 4 - 2, clrGreen); } @@ -105,9 +105,9 @@ void TraceGfx::DoRender(graph::Engine& engine) //Отрисовка связи выделения if (_pointLink) { - D3DXVECTOR3 pos1 = _pointLink->GetPoint()->GetPos(); - D3DXVECTOR3 pos2 = _pointLink->GetPos(); - D3DXVECTOR3 dir = pos1 - pos2; + glm::vec3 pos1 = _pointLink->GetPoint()->GetPos(); + glm::vec3 pos2 = _pointLink->GetPos(); + glm::vec3 dir = pos1 - pos2; glm::vec2 sizes(D3DXVec3Length(&dir), _pointLink->GetPoint()->GetSize()); D3DXVec3Normalize(&dir, &dir); diff --git a/src/Rock3dGame/source/game/Weapon.cpp b/src/Rock3dGame/source/game/Weapon.cpp index f5e91879..0ba8c370 100644 --- a/src/Rock3dGame/source/game/Weapon.cpp +++ b/src/Rock3dGame/source/game/Weapon.cpp @@ -26,11 +26,11 @@ Proj::~Proj() SetShot(ShotDesc()); } -void Proj::LocateProj(GameObject* weapon, bool pos, bool rot, const D3DXVECTOR3* speed) +void Proj::LocateProj(GameObject* weapon, bool pos, bool rot, const glm::vec3* speed) { if (pos) { - D3DXVECTOR3 pos = _desc.pos; + glm::vec3 pos = _desc.pos; if (weapon) weapon->GetGrActor().LocalToWorldCoord(pos, pos); this->SetPos(pos); @@ -42,7 +42,7 @@ void Proj::LocateProj(GameObject* weapon, bool pos, bool rot, const D3DXVECTOR3* if (speed && D3DXVec3Length(speed) > 1.0f) { - D3DXVECTOR3 dir; + glm::vec3 dir; D3DXVec3Normalize(&dir, speed); rot = QuatShortestArc(XVector, dir) * weapon->GetRot() * rot; } @@ -182,14 +182,14 @@ void Proj::CreatePxBox(NxCollisionGroup group) this->_pxBox->AssignFromDesc(boxDesc); } -void Proj::AddContactForce(GameObject* target, const D3DXVECTOR3& point, const D3DXVECTOR3& force, NxForceMode mode) +void Proj::AddContactForce(GameObject* target, const glm::vec3& point, const glm::vec3& force, NxForceMode mode) { target->GetPxActor().GetNxActor()->addForceAtPos(NxVec3(force), NxVec3(point), mode); } -void Proj::AddContactForce(GameObject* target, const px::Scene::OnContactEvent& contact, const D3DXVECTOR3& force, NxForceMode mode) +void Proj::AddContactForce(GameObject* target, const px::Scene::OnContactEvent& contact, const glm::vec3& force, NxForceMode mode) { - D3DXVECTOR3 point = GetContactPoint(contact); + glm::vec3 point = GetContactPoint(contact); AddContactForce(target, point, force, mode); } @@ -319,9 +319,9 @@ void Proj::DisableFilter(GameObject* target) target->GetPxActor().GetScene()->GetNxScene()->setFilterOps(NX_FILTEROP_AND, NX_FILTEROP_AND, NX_FILTEROP_AND); } -D3DXVECTOR3 Proj::CalcSpeed(GameObject* weapon) +glm::vec3 Proj::CalcSpeed(GameObject* weapon) { - D3DXVECTOR3 dir = weapon->GetGrActor().GetWorldDir(); + glm::vec3 dir = weapon->GetGrActor().GetWorldDir(); float speed = _desc.speed; if (_desc.speedRelative) @@ -333,7 +333,7 @@ D3DXVECTOR3 Proj::CalcSpeed(GameObject* weapon) speed = std::max(speed, _desc.speedRelativeMin + std::max(D3DXVec3Dot(&dir, &weapon->GetPxVelocityLerp()), 0.0f)); } - float cosa = abs(D3DXVec3Dot(&dir, &D3DXVECTOR3(0, 0, 1))); + float cosa = abs(D3DXVec3Dot(&dir, &glm::vec3(0, 0, 1))); if (cosa < 0.707f) { dir.z = 0; @@ -343,11 +343,11 @@ D3DXVECTOR3 Proj::CalcSpeed(GameObject* weapon) return dir * speed; } -bool Proj::RocketPrepare(GameObject* weapon, bool disableGravity, D3DXVECTOR3* speedVec, NxCollisionGroup pxGroup) +bool Proj::RocketPrepare(GameObject* weapon, bool disableGravity, glm::vec3* speedVec, NxCollisionGroup pxGroup) { _vec1.z = 0.0f; - D3DXVECTOR3 speed = CalcSpeed(weapon); + glm::vec3 speed = CalcSpeed(weapon); if (speedVec) *speedVec = speed; @@ -383,14 +383,14 @@ void Proj::RocketContact(const px::Scene::OnContactEvent& contact) DamageTarget(target, _desc.damage); - D3DXVECTOR3 dir = D3DXVECTOR3(this->GetPxActor().GetNxActor()->getLinearVelocity().get()); + glm::vec3 dir = glm::vec3(this->GetPxActor().GetNxActor()->getLinearVelocity().get()); float dirLength = D3DXVec3Length(&dir); if (dirLength > 1.0f) { dir /= dirLength; - D3DXVECTOR3 contactDir = GetContactPoint(contact); + glm::vec3 contactDir = GetContactPoint(contact); //D3DXVec3Normalize(&contactDir, &contactDir); D3DXVec3Cross(&contactDir, &contactDir, &dir); @@ -414,7 +414,7 @@ void Proj::RocketUpdate(float deltaTime) { const float cTrackHeight = 4.0f; - D3DXVECTOR3 size = _pxBox->GetDimensions(); + glm::vec3 size = _pxBox->GetDimensions(); NxVec3 pos = GetPxActor().GetNxActor()->getGlobalPosition(); NxRay nxRay(pos + NxVec3(0, 0, cTrackHeight), NxVec3(0, 0, -1.0f)); @@ -578,7 +578,7 @@ bool Proj::MinePrepare(const ShotContext& ctx, bool lockMine) } else { - D3DXVECTOR3 rayPos = _desc.pos; + glm::vec3 rayPos = _desc.pos; if (_weapon) _weapon->GetGrActor().LocalToWorldCoord(rayPos, rayPos); NxRay nxRay(NxVec3(rayPos) + NxVec3(0, 0, 2.0f), NxVec3(-ZVector)); @@ -589,9 +589,9 @@ bool Proj::MinePrepare(const ShotContext& ctx, bool lockMine) if (hitShape && hitShape->getGroup() != px::Scene::cdgShotTrack) //&& hit.distance < _desc.projMaxDist) { float offs = std::max(-aabb.min.z, 0.01f); - D3DXVECTOR3 normal = hit.worldNormal.get(); + glm::vec3 normal = hit.worldNormal.get(); - SetWorldPos(D3DXVECTOR3(hit.worldImpact.get()) + ZVector * offs); + SetWorldPos(glm::vec3(hit.worldImpact.get()) + ZVector * offs); SetWorldUp(normal); if (lockMine) @@ -700,7 +700,7 @@ void Proj::MineRipUpdate(float deltaTime) } if (_desc.GetModel3()) { - Vec3Range vec(D3DXVECTOR3(-3.0f, -3.0f, 3.0f), D3DXVECTOR3(3.0f, 3.0f, 1.0f), Vec3Range::vdVolume); + Vec3Range vec(glm::vec3(-3.0f, -3.0f, 3.0f), glm::vec3(3.0f, 3.0f, 1.0f), Vec3Range::vdVolume); for (int i = 0; i < 5; ++i) { @@ -780,10 +780,10 @@ void Proj::TorpedaUpdate(float deltaTime) MapObj* target = _shot.GetTargetMapObj(); if (target && _time1 == 0.0f) { - D3DXVECTOR3 targPos = target->GetGameObj().GetWorldPos(); - D3DXVECTOR3 pos = this->GetWorldPos(); + glm::vec3 targPos = target->GetGameObj().GetWorldPos(); + glm::vec3 pos = this->GetWorldPos(); - D3DXVECTOR3 dir = targPos - pos; + glm::vec3 dir = targPos - pos; float dist = D3DXVec3Length(&dir); if (dist > 1.0f) D3DXVec3Normalize(&dir, &dir); @@ -838,8 +838,8 @@ GameObject* Proj::LaserUpdate(float deltaTime, bool distort) if (_weapon == 0) return 0; - D3DXVECTOR3 shotPos = GetWorldPos(); - D3DXVECTOR3 shotDir = GetGrActor().GetWorldDir(); + glm::vec3 shotPos = GetWorldPos(); + glm::vec3 shotDir = GetGrActor().GetWorldDir(); float scaleLaser = _desc.maxDist; EnableFilter(_weapon, px::Scene::gmTemp); @@ -859,7 +859,7 @@ GameObject* Proj::LaserUpdate(float deltaTime, bool distort) if (rayHitActor) { scaleLaser = std::min(rayhit.distance, _desc.maxDist); - D3DXVECTOR3 hitPos = shotPos + shotDir * scaleLaser; + glm::vec3 hitPos = shotPos + shotDir * scaleLaser; if (_model2) _model2->GetGameObj().SetWorldPos(hitPos); @@ -881,7 +881,7 @@ GameObject* Proj::LaserUpdate(float deltaTime, bool distort) alpha = lsl::ClampValue((alpha - 0.0f)/0.5f * 1.5f + 0.5f, 0.0f, 2.0f) - lsl::ClampValue((alpha - 0.6f)/0.4f * 2.0f, 0.0f, 2.0f); size.y = size.y * alpha; - sprite->material.Get()->samplers[0].SetScale(D3DXVECTOR3(scaleLaser/10.0f, 1.0f, 1.0f)); + sprite->material.Get()->samplers[0].SetScale(glm::vec3(scaleLaser/10.0f, 1.0f, 1.0f)); } sprite->SetPos(XVector * scaleLaser/2.0f); @@ -911,7 +911,7 @@ void Proj::FireUpdate(float deltaTime) { GetPxActor().GetNxActor()->setLinearVelocity(_weapon->GetPxActor().GetNxActor()->getLinearVelocity()); - D3DXVECTOR3 pos; + glm::vec3 pos; _weapon->GetGrActor().LocalToWorldCoord(_desc.pos, pos); SetPos(pos); @@ -945,7 +945,7 @@ void Proj::DrobilkaContact(const px::Scene::OnContactEvent& contact) InitModel(); if (_model) { - D3DXVECTOR3 pnt = GetContactPoint(contact); + glm::vec3 pnt = GetContactPoint(contact); _model->GetGameObj().SetWorldPos(pnt); } @@ -957,7 +957,7 @@ void Proj::DrobilkaUpdate(float deltaTime) { if (_weapon) { - D3DXVECTOR3 pos; + glm::vec3 pos; _weapon->GetGrActor().LocalToWorldCoord(_desc.pos, pos); SetWorldPos(pos); SetWorldRot(_weapon->GetWorldRot()); @@ -984,7 +984,7 @@ void Proj::SonarContact(const px::Scene::OnContactEvent& contact) if (target) { DamageTarget(target, _desc.damage * contact.deltaTime, dtEnergy); - AddContactForce(target, contact, _desc.mass * D3DXVECTOR3(this->GetPxActor().GetNxActor()->getLinearVelocity().get()), NX_IMPULSE); + AddContactForce(target, contact, _desc.mass * glm::vec3(this->GetPxActor().GetNxActor()->getLinearVelocity().get()), NX_IMPULSE); } } @@ -1191,11 +1191,11 @@ void Proj::ThunderContact(const px::Scene::OnContactEvent& contact) if (abs(angle) > 0.1f) { D3DXPLANE plane; - D3DXPlaneFromPointNormal(&plane, &NullVector, &D3DXVECTOR3(norm.get())); + D3DXPlaneFromPointNormal(&plane, &NullVector, &glm::vec3(norm.get())); D3DXMATRIX mat; D3DXMatrixReflect(&mat, &plane); - D3DXVECTOR3 vel(velocity.get()); + glm::vec3 vel(velocity.get()); D3DXVec3TransformNormal(&vel, &vel, &mat); velocity = NxVec3(vel); } @@ -1584,7 +1584,7 @@ bool Proj::PrepareProj(GameObject* weapon, const ShotContext& ctx) return res; } -void Proj::MineContact(GameObject* target, const D3DXVECTOR3& point) +void Proj::MineContact(GameObject* target, const glm::vec3& point) { this->Death(); @@ -1595,7 +1595,7 @@ void Proj::MineContact(GameObject* target, const D3DXVECTOR3& point) } DamageTarget(target, _desc.damage, dtMine); - AddContactForce(target, point, D3DXVECTOR3(0.0f, 0.0f, _desc.speed), NX_IMPULSE); + AddContactForce(target, point, glm::vec3(0.0f, 0.0f, _desc.speed), NX_IMPULSE); } const Proj::Desc& Proj::GetDesc() const @@ -1633,7 +1633,7 @@ void AutoProj::InitProj() { _prepare = true; - D3DXVECTOR3 pos = GetPos(); + glm::vec3 pos = GetPos(); glm::quat rot = GetRot(); Proj::ShotContext ctx; @@ -1725,7 +1725,7 @@ bool Weapon::Shot(const ShotDesc& shotDesc, ProjList* projList) return CreateShot(this, _desc, ctx, projList); } -bool Weapon::Shot(const D3DXVECTOR3& target, ProjList* projList) +bool Weapon::Shot(const glm::vec3& target, ProjList* projList) { ShotDesc desc; desc.target = target; diff --git a/src/Rock3dGame/source/net/NetPlayer.cpp b/src/Rock3dGame/source/net/NetPlayer.cpp index 70fa3dee..be4e7f4f 100644 --- a/src/Rock3dGame/source/net/NetPlayer.cpp +++ b/src/Rock3dGame/source/net/NetPlayer.cpp @@ -217,7 +217,7 @@ void NetPlayer::DoShot(MapObj* target, ShotSlots& slots, unsigned projId, CoordL LSL_ASSERT(projList.size() > 0); Proj* proj = projList.front(); - D3DXVECTOR3 worldPos = proj->GetWorldPos(); + glm::vec3 worldPos = proj->GetWorldPos(); if (!readMode) { @@ -405,7 +405,7 @@ void NetPlayer::OnShot(const net::NetMessage& msg, const net::NetCmdHeader& head for (unsigned i = 0; i < coordCount; ++i) { - D3DXVECTOR3 worldPos; + glm::vec3 worldPos; net::Read(stream, &worldPos, sizeof(worldPos)); coordList.push_back(worldPos); @@ -442,7 +442,7 @@ void NetPlayer::OnMineContact1(const net::NetMessage& msg, const net::NetCmdHead { unsigned plrId; unsigned projId; - D3DXVECTOR3 point; + glm::vec3 point; net::Read(stream, plrId); net::Read(stream, projId); @@ -472,7 +472,7 @@ void NetPlayer::OnMineContact2(const net::NetMessage& msg, const net::NetCmdHead { unsigned projId; - D3DXVECTOR3 point; + glm::vec3 point; net::Read(stream, projId); net::Read(stream, point); @@ -520,10 +520,10 @@ void NetPlayer::ResponseStream(const net::NetMessage& msg, net::BitStream& strea if (car == NULL) return; - D3DXVECTOR3 pos = car->GetPxActor().GetPos(); + glm::vec3 pos = car->GetPxActor().GetPos(); glm::quat rot = car->GetPxActor().GetRot(); - D3DXVECTOR3 linVel = car->GetNxActor()->getLinearMomentum().get(); - D3DXVECTOR3 angVel = car->GetNxActor()->getAngularMomentum().get(); + glm::vec3 linVel = car->GetNxActor()->getLinearMomentum().get(); + glm::vec3 angVel = car->GetNxActor()->getAngularMomentum().get(); BYTE moveState = car->GetMoveCar(); BYTE steerState = car->GetSteerWheel(); float steerWheelsAngle = car->GetSteerWheelAngle(); @@ -540,7 +540,7 @@ void NetPlayer::ResponseStream(const net::NetMessage& msg, net::BitStream& strea { _dAlpha = 1.0f; - D3DXVECTOR3 dPos = pos - car->GetPxActor().GetPos(); + glm::vec3 dPos = pos - car->GetPxActor().GetPos(); float dPosLength = D3DXVec3Length(&dPos); if (dPosLength > 4.0f) { @@ -550,7 +550,7 @@ void NetPlayer::ResponseStream(const net::NetMessage& msg, net::BitStream& strea else if (dPosLength > 0.1f) linVel += dPos * 2.0f * car->GetNxActor()->getMass(); - /*D3DXVECTOR3 dPos = pos - car->GetPxActor().GetPos(); + /*glm::vec3 dPos = pos - car->GetPxActor().GetPos(); float dPosLength = D3DXVec3Length(&dPos); if (dPosLength > 4.0f) //>2.0f { @@ -559,8 +559,8 @@ void NetPlayer::ResponseStream(const net::NetMessage& msg, net::BitStream& strea } else { - D3DXVECTOR3 dPos1 = car->GetGrActor().GetPos() - car->GetPxPosLerp(); - D3DXVECTOR3 dPos2 = pos - car->GetPxPosLerp(); + glm::vec3 dPos1 = car->GetGrActor().GetPos() - car->GetPxPosLerp(); + glm::vec3 dPos2 = pos - car->GetPxPosLerp(); if (D3DXVec3Length(&(dPos1 - dPos2)) > 0.5f) car->SetPosSync2(dPos1, dPos2); @@ -570,7 +570,7 @@ void NetPlayer::ResponseStream(const net::NetMessage& msg, net::BitStream& strea } }*/ - /*D3DXVECTOR3 dPos = pos - car->GetGrActor().GetPos(); + /*glm::vec3 dPos = pos - car->GetGrActor().GetPos(); float dPosLength = D3DXVec3Length(&dPos); if (D3DXVec3Length(&(car->GetPxActor().GetPos() - pos)) > 1.0f) { @@ -579,7 +579,7 @@ void NetPlayer::ResponseStream(const net::NetMessage& msg, net::BitStream& strea }*/ glm::quat dRot = QuatRotation(car->GetGrActor().GetRot(), rot); - D3DXVECTOR3 dRotAxis = Vec3GlmToDx(glm::axis(dRot)); + glm::vec3 dRotAxis = Vec3GlmToDx(glm::axis(dRot)); float dRotAngle = glm::angle(dRot); if (abs(dRotAngle) > D3DX_PI/24) { @@ -730,7 +730,7 @@ void NetPlayer::TakeBonus(MapObj* bonus, GameObject::BonusType type, float value } } -void NetPlayer::MineContact(Proj* sender, const D3DXVECTOR3& point) +void NetPlayer::MineContact(Proj* sender, const glm::vec3& point) { if (owner()) { diff --git a/src/Rock3dGame/source/snd/Audio.cpp b/src/Rock3dGame/source/snd/Audio.cpp index 35bcd5ff..bfc8cc78 100644 --- a/src/Rock3dGame/source/snd/Audio.cpp +++ b/src/Rock3dGame/source/snd/Audio.cpp @@ -1639,7 +1639,7 @@ void Source3d::ApplyX3dEffect() if (!(GetProxy() && listener && _play)) return; - D3DXVECTOR3 listDist = _pos3d - listener->pos; + glm::vec3 listDist = _pos3d - listener->pos; float listDistLen = D3DXVec3Length(&listDist); if (listDistLen > distScaller + stopLag) @@ -1666,8 +1666,8 @@ void Source3d::ApplyX3dEffect() ZeroMemory(&xList, sizeof(xList)); xList.Position = listener->pos; D3DXMATRIX rotMat = Matrix4GlmToDx(glm::transpose(glm::mat4_cast(listener->rot))); - xList.OrientFront = D3DXVECTOR3(rotMat.m[0]); - xList.OrientTop = D3DXVECTOR3(rotMat.m[2]); + xList.OrientFront = glm::vec3(rotMat.m[0]); + xList.OrientTop = glm::vec3(rotMat.m[2]); _xEmitter.ChannelCount = nSrcChannels; _xEmitter.CurveDistanceScaler = distScaller; @@ -1777,12 +1777,12 @@ bool Source3d::IsPlaying() const return _play; } -const D3DXVECTOR3& Source3d::GetPos3d() +const glm::vec3& Source3d::GetPos3d() { return _pos3d; } -void Source3d::SetPos3d(const D3DXVECTOR3& value) +void Source3d::SetPos3d(const glm::vec3& value) { _pos3d = value; Changed3d(); diff --git a/src/XPlatform/source/d3dx9math.cpp b/src/XPlatform/source/d3dx9math.cpp index 9f2cd64c..1ed27071 100644 --- a/src/XPlatform/source/d3dx9math.cpp +++ b/src/XPlatform/source/d3dx9math.cpp @@ -6,7 +6,7 @@ //This file contains parts of WINE project source code for d3dx9math licensed under GPLv2 //Implementation copied from WINE project d3dx9_36/math.c -D3DXVECTOR3* D3DXVec3Normalize(D3DXVECTOR3* out, const D3DXVECTOR3* pv) { +glm::vec3* D3DXVec3Normalize(glm::vec3* out, const glm::vec3* pv) { FLOAT norm = pv->norm(); if (!norm) { out->x = 0.0f; @@ -22,7 +22,7 @@ D3DXVECTOR3* D3DXVec3Normalize(D3DXVECTOR3* out, const D3DXVECTOR3* pv) { } //Implementation copied from WINE project d3dx9_36/math.c -D3DXVECTOR4* D3DXVec3Transform(D3DXVECTOR4* out, const D3DXVECTOR3* pv, const D3DXMATRIX* pm) { +D3DXVECTOR4* D3DXVec3Transform(D3DXVECTOR4* out, const glm::vec3* pv, const D3DXMATRIX* pm) { D3DXVECTOR4 result; result.x = pm->m[0][0] * pv->x + pm->m[1][0] * pv->y + pm->m[2][0] * pv->z + pm->m[3][0]; @@ -34,8 +34,8 @@ D3DXVECTOR4* D3DXVec3Transform(D3DXVECTOR4* out, const D3DXVECTOR3* pv, const D3 } //Implementation copied from WINE project d3dx9_36/math.c -D3DXVECTOR3* D3DXVec3TransformNormal(D3DXVECTOR3* out, const D3DXVECTOR3* pv, const D3DXMATRIX* pm) { - const D3DXVECTOR3 v = *pv; +glm::vec3* D3DXVec3TransformNormal(glm::vec3* out, const glm::vec3* pv, const D3DXMATRIX* pm) { + const glm::vec3 v = *pv; out->x = pm->m[0][0] * v.x + pm->m[1][0] * v.y + pm->m[2][0] * v.z; out->y = pm->m[0][1] * v.x + pm->m[1][1] * v.y + pm->m[2][1] * v.z; @@ -175,8 +175,8 @@ D3DXMATRIX* D3DXMatrixTranspose(D3DXMATRIX* out, const D3DXMATRIX* pm) { } //Implementation copied from WINE project d3dx9_36/math.c -D3DXMATRIX * D3DXMatrixLookAtLH(D3DXMATRIX *out, const D3DXVECTOR3 *eye, const D3DXVECTOR3 *at, const D3DXVECTOR3 *up) { - D3DXVECTOR3 right, upn, vec; +D3DXMATRIX * D3DXMatrixLookAtLH(D3DXMATRIX *out, const glm::vec3 *eye, const glm::vec3 *at, const glm::vec3 *up) { + glm::vec3 right, upn, vec; vec = *at - *eye; D3DXVec3Normalize(&vec, &vec); From 98d3880755c45160f6448ca356a84e8812584ba0 Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Fri, 28 Oct 2022 15:52:11 +0300 Subject: [PATCH 34/55] math: fix build after replace D3DXVECTOR3 with glm::vec3 --- src/LexStd/header/lslSerialValue.h | 4 +- src/MathLib/header/MathCommon.h | 7 +- src/MathLib/header/lslMath.h | 9 +- src/MathLib/header/lslMath.inl | 85 +++++++---- src/MathLib/header/r3dMath.h | 1 - src/MathLib/source/r3dMath.cpp | 60 ++++---- src/NetLib/source/net/BitStream.cpp | 2 +- src/Rock3dEngine/header/res/GraphResource.h | 4 +- src/Rock3dEngine/source/GraphManager.cpp | 58 ++++---- .../source/graph/ActorManager.cpp | 11 +- src/Rock3dEngine/source/graph/ContextInfo.cpp | 43 +++--- src/Rock3dEngine/source/graph/Engine.cpp | 12 +- src/Rock3dEngine/source/graph/FxManager.cpp | 31 ++-- src/Rock3dEngine/source/graph/GrassField.cpp | 12 +- src/Rock3dEngine/source/graph/OctreeSort.cpp | 2 +- .../source/graph/SceneManager.cpp | 136 +++++++++--------- .../source/graph/ShadowMapRender.cpp | 2 +- src/Rock3dEngine/source/graph/StdNode.cpp | 18 +-- src/Rock3dEngine/source/graph/SunShaft.cpp | 10 +- src/Rock3dEngine/source/graph/WaterPlane.cpp | 6 +- src/Rock3dEngine/source/gui/GUI.cpp | 12 +- src/Rock3dEngine/source/px/Physx.cpp | 76 +++++----- src/Rock3dEngine/source/res/GraphResource.cpp | 42 +++--- src/Rock3dGame/source/edit/EditMap.cpp | 2 +- src/Rock3dGame/source/edit/EditTrace.cpp | 2 +- src/Rock3dGame/source/edit/SceneControl.cpp | 14 +- src/Rock3dGame/source/game/AIPlayer.cpp | 2 +- src/Rock3dGame/source/game/CameraManager.cpp | 89 ++++++------ src/Rock3dGame/source/game/DataBase.cpp | 58 ++++---- src/Rock3dGame/source/game/Environment.cpp | 4 +- src/Rock3dGame/source/game/GameBase.cpp | 20 +-- src/Rock3dGame/source/game/GameCar.cpp | 16 +-- src/Rock3dGame/source/game/GameObject.cpp | 38 ++--- src/Rock3dGame/source/game/HudMenu.cpp | 6 +- src/Rock3dGame/source/game/Logic.cpp | 10 +- src/Rock3dGame/source/game/Menu.cpp | 6 +- src/Rock3dGame/source/game/Player.cpp | 24 ++-- src/Rock3dGame/source/game/Race.cpp | 100 ++++++------- src/Rock3dGame/source/game/RaceMenu2.cpp | 26 ++-- src/Rock3dGame/source/game/Trace.cpp | 16 +-- src/Rock3dGame/source/game/TraceGfx.cpp | 6 +- src/Rock3dGame/source/game/Weapon.cpp | 73 +++++----- src/Rock3dGame/source/net/NetPlayer.cpp | 22 +-- src/Rock3dGame/source/snd/Audio.cpp | 14 +- 44 files changed, 605 insertions(+), 586 deletions(-) diff --git a/src/LexStd/header/lslSerialValue.h b/src/LexStd/header/lslSerialValue.h index c62bda00..b62a2945 100644 --- a/src/LexStd/header/lslSerialValue.h +++ b/src/LexStd/header/lslSerialValue.h @@ -43,11 +43,11 @@ template<> struct SerialValue static void Write(SWriter* writer, const char* name, const _Value& value) { - writer->WriteValue(name, value, 3); + writer->WriteValue(name, glm::value_ptr(value), 3); } static SReader* Read(SReader* reader, const char* name, _Value& value) { - return reader->ReadValue(name, value, 3); + return reader->ReadValue(name, glm::value_ptr(value), 3); } }; diff --git a/src/MathLib/header/MathCommon.h b/src/MathLib/header/MathCommon.h index b1fdf6aa..63dc1d6d 100644 --- a/src/MathLib/header/MathCommon.h +++ b/src/MathLib/header/MathCommon.h @@ -2,9 +2,10 @@ #include "d3dx9math.h" -#include // glm::vec2 -#include // glm::vec3 -#include // glm::vec4 +#include // glm::vec2 +#include // glm::vec3 +#include // glm::vec4 #include // glm::mat4 #include // glm::quat +#include // glm::value_ptr, glm::make_vec3, ... #include // glm::length2 diff --git a/src/MathLib/header/lslMath.h b/src/MathLib/header/lslMath.h index 025b491f..a8d09751 100644 --- a/src/MathLib/header/lslMath.h +++ b/src/MathLib/header/lslMath.h @@ -30,9 +30,6 @@ void MatrixScale(const glm::vec3& vec, D3DXMATRIX& outMat); void MatGetPos(const D3DXMATRIX& mat, glm::vec3& outPos); glm::vec3 MatGetPos(const D3DXMATRIX& mat); -glm::vec3 Vec3DxToGlm(glm::vec3 v3); -glm::vec3 Vec3GlmToDx(glm::vec3 v3); - // glm::vec2 Vec2TransformCoord(const glm::vec2 &vec, const glm::mat4 &mat); void Vec2NormCCW(const glm::vec2& vec2, glm::vec2& outVec); @@ -420,10 +417,10 @@ template<> struct ValueRange _step.x = _freq.x > 1 ? leng.x / (_freq.x - 1) : 0; _step.y = _freq.y > 1 ? leng.y / (_freq.y - 1) : 0; - _minAngle = Vec3GlmToDx(glm::axis(_min)); + _minAngle = glm::axis(_min); _minAngle.z = glm::angle(_min); // - _maxAngle = Vec3GlmToDx(glm::axis(_max)); + _maxAngle = glm::axis(_max); _maxAngle.z = glm::angle(_max); } } @@ -508,7 +505,7 @@ template<> struct ValueRange if (range > 0.5f) value.z = -value.z; - glm::quat res = glm::angleAxis(_minAngle.z + (_maxAngle.z - _minAngle.z) * range, Vec3DxToGlm(value)); + glm::quat res = glm::angleAxis(_minAngle.z + (_maxAngle.z - _minAngle.z) * range, value); return res; } diff --git a/src/MathLib/header/lslMath.inl b/src/MathLib/header/lslMath.inl index eec3f8c2..da414d15 100644 --- a/src/MathLib/header/lslMath.inl +++ b/src/MathLib/header/lslMath.inl @@ -46,15 +46,17 @@ inline float NumAbsAdd(float absVal, float addVal) inline glm::mat4 Matrix4DxToGlm(const D3DXMATRIX &mat) { - glm::mat4 mat4glm(mat._11, mat._21, mat._31, mat._41, - mat._12, mat._22, mat._32, mat._42, - mat._13, mat._23, mat._33, mat._43, - mat._14, mat._24, mat._34, mat._44); + // mat - DX, mat.m[0] 1-st row, mat.m[0][1] = mat._12 - 1-st row 2-nd column + glm::mat4 mat4glm(mat._11, mat._21, mat._31, mat._41, // 1-st column + mat._12, mat._22, mat._32, mat._42, // 2-nd column + mat._13, mat._23, mat._33, mat._43, // 3-rd column + mat._14, mat._24, mat._34, mat._44);// 4-th column return mat4glm; } inline D3DXMATRIX Matrix4GlmToDx(const glm::mat4 &mat) { + // mat - GLM, mat[0] 1-st column, mat[0][1] = mat[0].y - 1-st column 2-nd row D3DXMATRIX matrix(mat[0].x, mat[1].x, mat[2].x, mat[3].x, mat[0].y, mat[1].y, mat[2].y, mat[3].y, mat[0].z, mat[1].z, mat[2].z, mat[3].z, @@ -62,22 +64,48 @@ inline D3DXMATRIX Matrix4GlmToDx(const glm::mat4 &mat) return matrix; } -inline glm::vec3 Vec3DxToGlm(glm::vec3 v3) +inline glm::vec3 Vec3DxToGlm(const D3DXVECTOR3 v3) { glm::vec3 v3glm(v3.x, v3.y, v3.z); return v3glm; } -inline glm::vec3 Vec3GlmToDx(glm::vec3 v3) +inline D3DXVECTOR3 Vec3GlmToDx(const glm::vec3 v3) { - glm::vec3 v3dx(v3.x, v3.y, v3.z); + D3DXVECTOR3 v3dx(v3.x, v3.y, v3.z); return v3dx; } +inline glm::vec4 Vec4DxToGlm(const D3DXVECTOR4 v4) +{ + glm::vec4 v4glm(v4.x, v4.y, v4.z, v4.w); + return v4glm; +} + +inline D3DXVECTOR4 Vec4GlmToDx(const glm::vec4 v4) +{ + D3DXVECTOR4 v4Dx(v4.x, v4.y, v4.z, v4.w); + return v4Dx; +} + +inline glm::vec3 Vec3TransformCoord(const glm::vec3 &vec, const D3DXMATRIX &mat) +{ + D3DXVECTOR3 res; + D3DXVec3TransformCoord(&res, &Vec3GlmToDx(vec), &mat); + return Vec3DxToGlm(res); +} + +inline glm::vec3 Vec3TransformNormal(const glm::vec3 &vec, const D3DXMATRIX &mat) +{ + D3DXVECTOR3 res; + D3DXVec3TransformNormal(&res, &Vec3GlmToDx(vec), &mat); + return Vec3DxToGlm(res); +} + inline float ScalarTransform(float scalar, const glm::vec3& vec, const D3DXMATRIX& mat) { - glm::vec3 res; - D3DXVec3TransformNormal(&res, &(vec * scalar), &mat); + D3DXVECTOR3 res; + D3DXVec3TransformNormal(&res, &Vec3GlmToDx(vec * scalar), &mat); float len = D3DXVec3Length(&res); return scalar < 0 ? -len : len; } @@ -152,7 +180,7 @@ inline void MatrixScale(const glm::vec3& vec, D3DXMATRIX& outMat) inline void MatGetPos(const D3DXMATRIX& mat, glm::vec3& outPos) { - outPos = mat.m[3]; + outPos = Vec3DxToGlm(mat.m[3]); } inline glm::vec3 MatGetPos(const D3DXMATRIX& mat) @@ -287,13 +315,6 @@ inline glm::vec3 Vec3Invert(const glm::vec3& vec) return res; }; -inline glm::vec3 Vec3TransformCoord(const glm::vec3& vec, const D3DXMATRIX& mat) -{ - glm::vec3 res; - D3DXVec3TransformCoord(&res, &vec, &mat); - return res; -} - inline void Vec3Abs(const glm::vec3& vec, glm::vec3& rOut) { rOut.x = abs(vec.x); @@ -308,6 +329,16 @@ inline glm::vec3 Vec3Abs(const glm::vec3& vec) return res; } +// It's possible to use glm:mix, but it gives a bit different result for Z axe. +inline glm::vec3 Vec3Lerp(const glm::vec3 &vec1, const glm::vec3 &vec2, float scalar) +{ + glm::vec3 res; + res.x = vec1.x + scalar * (vec2.x - vec1.x); + res.y = vec1.y + scalar * (vec2.y - vec1.y); + res.z = vec1.z + scalar * (vec2.z - vec1.z); + return res; +} + inline void Vec3Rotate(const glm::vec3& v, const glm::quat& quat, glm::vec3& outVec) { glm::quat q(v.x * quat.x + v.y * quat.y + v.z * quat.z, @@ -408,7 +439,7 @@ inline D3DXCOLOR operator*(const D3DXCOLOR& vec1, const D3DXCOLOR& vec2) inline void QuatShortestArc(const glm::vec3& from, const glm::vec3& to, glm::quat& outQuat) { - float angle = D3DXVec3Dot(&from, &to); + float angle = glm::dot(from, to); if (abs(angle) > 1.0f) { outQuat = NullQuaternion; @@ -419,18 +450,16 @@ inline void QuatShortestArc(const glm::vec3& from, const glm::vec3& to, glm::qua if (abs(angle) > 0.1f) { - glm::vec3 axe; - D3DXVec3Cross(&axe, &from, &to); - outQuat = glm::angleAxis(angle, Vec3DxToGlm(axe)); + glm::vec3 axe = glm::cross(from, to); + outQuat = glm::angleAxis(angle, axe); } else outQuat = NullQuaternion; /*const float TINY = 1e8; - glm::vec3 c; - D3DXVec3Cross(&c, &from, &to); - outQuat = D3DXQUATERNION(c.x, c.y, c.z, D3DXVec3Dot(&from, &to)); + glm::vec3 c = glm::cross(from, to); + outQuat = D3DXQUATERNION(c.x, c.y, c.z, glm::dot(from, to)); outQuat.w += 1.0f; // reducing angle to halfangle if(outQuat.w <= TINY ) // angle close to PI @@ -542,7 +571,7 @@ inline glm::vec2 Line2GetNorm(const glm::vec3& line) inline float Line2DistToPoint(const glm::vec3& line, const glm::vec2& point) { - return D3DXVec3Dot(&line, &glm::vec3(point.x, point.y, 1.0f)); + return glm::dot(line, glm::vec3(point.x, point.y, 1.0f)); } inline void Line2NormVecToPoint(const glm::vec3& line, const glm::vec2& point, glm::vec2& outNormVec) @@ -581,8 +610,8 @@ inline bool RayCastIntersectSphere(const glm::vec3& rayPos, const glm::vec3& ray { glm::vec3 v = rayPos - spherePos; - float b = 2.0f * D3DXVec3Dot(&rayVec, &v); - float c = D3DXVec3Dot(&v, &v) - sphereRadius * sphereRadius; + float b = 2.0f * glm::dot(rayVec, v); + float c = glm::dot(v, v) - sphereRadius * sphereRadius; // Находим дискриминант float discriminant = (b * b) - (4.0f * c); @@ -605,7 +634,7 @@ inline bool RayCastIntersectSphere(const glm::vec3& rayPos, const glm::vec3& ray inline float PlaneDistToPoint(const D3DXPLANE& plane, const glm::vec3& point) { - return D3DXPlaneDotCoord(&plane, &point); + return D3DXPlaneDotCoord(&plane, &Vec3GlmToDx(point)); }; //} \ No newline at end of file diff --git a/src/MathLib/header/r3dMath.h b/src/MathLib/header/r3dMath.h index c2e5981e..9e6979b5 100644 --- a/src/MathLib/header/r3dMath.h +++ b/src/MathLib/header/r3dMath.h @@ -16,7 +16,6 @@ struct AABB2 explicit AABB2(const glm::vec2& size); AABB2(const glm::vec2& mMin, const glm::vec2& mMax); - //static void Transform(const AABB2 &aabb, const glm::mat4 &m, AABB2 &rOut); static void Transform(const AABB2 &aabb, const D3DXMATRIX &m, AABB2 &rOut); static void Include(const AABB2& aabb, const glm::vec2& vec, AABB2& rOut); static void Add(const AABB2& aabb1, const AABB2& aabb2, AABB2& rOut); diff --git a/src/MathLib/source/r3dMath.cpp b/src/MathLib/source/r3dMath.cpp index 7d6330df..17abeb80 100644 --- a/src/MathLib/source/r3dMath.cpp +++ b/src/MathLib/source/r3dMath.cpp @@ -45,7 +45,6 @@ AABB2::AABB2(const glm::vec2& mMin, const glm::vec2& mMax): min(mMin), max(mMax) { } -//void AABB2::Transform(const AABB2 &aabb, const glm::mat4 &m, AABB2 &rOut) void AABB2::Transform(const AABB2 &aabb, const D3DXMATRIX &mIn, AABB2 &rOut) { auto m = Matrix4DxToGlm(mIn); // remove after D3DXMATRIX replacement @@ -161,7 +160,7 @@ inline void AABB::Transform(const AABB& aabb, const D3DXMATRIX& m, AABB& rOut) { glm::vec3 oldMin = aabb.min; glm::vec3 oldMax = aabb.max; - D3DXVec3TransformCoord(&rOut.min, &oldMin, &m); + rOut.min = Vec3TransformCoord(oldMin, m); rOut.max = rOut.min; rOut.Include(Vec3TransformCoord(glm::vec3(oldMin[0], oldMin[1], oldMax[2]), m)); @@ -181,14 +180,14 @@ inline void AABB::Offset(const AABB& aabb, const glm::vec3& vec, AABB& rOut) inline void AABB::Add(const AABB& aabb1, const AABB& aabb2, AABB& rOut) { - D3DXVec3Minimize(&rOut.min, &aabb1.min, &aabb2.min); - D3DXVec3Maximize(&rOut.max, &aabb1.max, &aabb2.max); + rOut.min = glm::min(aabb1.min, aabb2.min); + rOut.max = glm::max(aabb1.max, aabb2.max); } inline void AABB::Include(const AABB& aabb, const glm::vec3& vec, AABB& rOut) { - D3DXVec3Minimize(&rOut.min, &aabb.min, &vec); - D3DXVec3Maximize(&rOut.max, &aabb.max, &vec); + rOut.min = glm::min(aabb.min, vec); + rOut.max = glm::max(aabb.max, vec); } inline void AABB::Scale(const AABB& aabb, const glm::vec3& vec, AABB& rOut) @@ -205,13 +204,13 @@ inline void AABB::Scale(const AABB& aabb, float f, AABB& rOut) void AABB::FromPoints(const glm::vec3& pnt1, const glm::vec3& pnt2) { - D3DXVec3Minimize(&min, &pnt1, &pnt2); - D3DXVec3Maximize(&max, &pnt1, &pnt2); + min = glm::min(pnt1, pnt2); + max = glm::max(pnt1, pnt2); } void AABB::FromDimensions(const glm::vec3& dimensions) { - D3DXVec3Maximize(&max, &dimensions, &NullVector); + max = glm::max(dimensions, NullVector); min = -max; } @@ -294,9 +293,9 @@ inline bool AABB::LineCastIntersect(const glm::vec3& lineStart, const glm::vec3& glm::vec3 oMax = (max - lineStart) / lineVec; glm::vec3 tMin; - D3DXVec3Minimize(&tMin, &oMin, &oMax); + tMin = glm::min(oMin, oMax); glm::vec3 tMax; - D3DXVec3Maximize(&tMax, &oMin, &oMax); + tMax = glm::max(oMin, oMax); tNear = std::max(tMin.x, std::max(tMin.y, tMin.z)); tFar = std::min(tMax.x, std::min(tMax.y, tMax.z)); @@ -405,8 +404,7 @@ bool AABB::AABBLineCastIntersect(const AABB& start, const glm::vec3& vec, const BoundBox testBB(*this); testBB.Transform(localToStart); - glm::vec3 localVec; - D3DXVec3TransformNormal(&localVec, &vec, &startTolocal); + glm::vec3 localVec = Vec3TransformNormal(vec, startTolocal); bool res = false; for (int i = 0; i < 8; ++i) @@ -433,8 +431,8 @@ bool AABB::AABBLineCastIntersect(const AABB& start, const glm::vec3& vec, const glm::vec3 centerFar; if (start.LineCastIntersect(start.GetCenter(), vec, centerNear, centerFar)) { - D3DXVec3TransformCoord(¢erNear, ¢erNear, &startTolocal); - D3DXVec3TransformCoord(¢erFar, ¢erFar, &startTolocal); + centerNear = Vec3TransformCoord(centerNear, startTolocal); + centerFar = Vec3TransformCoord(centerFar, startTolocal); float tNear; float tFar; //Ближняя проекция @@ -508,7 +506,7 @@ glm::vec3 AABB::GetSizes() const float AABB::GetDiameter() const { - return D3DXVec3Length(&GetSizes()); + return glm::length(GetSizes()); } float AABB::GetRadius() const @@ -556,27 +554,27 @@ D3DXPLANE AABB::GetPlane(unsigned index) const switch (index) { case cLeftPlane: - D3DXPlaneFromPointNormal(&res, &min, &(-XVector)); + D3DXPlaneFromPointNormal(&res, &Vec3GlmToDx(min), &Vec3GlmToDx(-XVector)); break; case cTopPlane: - D3DXPlaneFromPointNormal(&res, &min, &(-YVector)); + D3DXPlaneFromPointNormal(&res, &Vec3GlmToDx(min), &Vec3GlmToDx(-YVector)); break; case cBackPlane: - D3DXPlaneFromPointNormal(&res, &min, &(-ZVector)); + D3DXPlaneFromPointNormal(&res, &Vec3GlmToDx(min), &Vec3GlmToDx(-ZVector)); break; case cRightPlane: - D3DXPlaneFromPointNormal(&res, &max, &(XVector)); + D3DXPlaneFromPointNormal(&res, &Vec3GlmToDx(max), &Vec3GlmToDx(XVector)); break; case cBottomPlane: - D3DXPlaneFromPointNormal(&res, &max, &(YVector)); + D3DXPlaneFromPointNormal(&res, &Vec3GlmToDx(max), &Vec3GlmToDx(YVector)); break; case cFrontPlane: - D3DXPlaneFromPointNormal(&res, &max, &(ZVector)); + D3DXPlaneFromPointNormal(&res, &Vec3GlmToDx(max), &Vec3GlmToDx(ZVector)); break; } @@ -671,7 +669,7 @@ BoundBox::BoundBox(const AABB& aabb) void BoundBox::Transform(const BoundBox& bb, const D3DXMATRIX& m, BoundBox& rOut) { for (int i = 0; i < 8; ++i) - D3DXVec3TransformCoord(&rOut.v[i], &bb.v[i], &m); + rOut.v[i] = Vec3TransformCoord(bb.v[i], m); } void BoundBox::SetPlan(const int numPlan, const float valeur) @@ -703,7 +701,7 @@ void Frustum::CalculateCorners(Corners& pPoints, const D3DXMATRIX& invViewProj) for (float fy = -1.0f; fy <= 1.0f; fy += 2.0f) for (float fz = 0.0f; fz <= 1.0f; fz += 1.0f, ++i) { - D3DXVec3TransformCoord(&pPoints[i], &glm::vec3(fx, fy, fz), &invViewProj); + pPoints[i] = Vec3TransformCoord(glm::vec3(fx, fy, fz), invViewProj); } } @@ -773,7 +771,7 @@ Frustum::SpaceContains Frustum::ContainsAABB(const AABB& aabb) const PointIn = true; for (int iCorner = 0; iCorner < 8; ++iCorner) - if (D3DXPlaneDotCoord(&planes[iPlane], &corners[iCorner]) < 0) + if (D3DXPlaneDotCoord(&planes[iPlane], &Vec3GlmToDx(corners[iCorner])) < 0) { PointIn = false; --inCount; @@ -796,10 +794,10 @@ bool RayCastIntersectPlane(const glm::vec3& rayStart, const glm::vec3& rayVec, c { const float EPSILON = 1.0e-10f; - float d = D3DXPlaneDotNormal(&plane, &rayVec); + float d = D3DXPlaneDotNormal(&plane, &Vec3GlmToDx(rayVec)); if (abs(d) > EPSILON) { - outT = -D3DXPlaneDotCoord(&plane, &rayStart) / d; + outT = -D3DXPlaneDotCoord(&plane, &Vec3GlmToDx(rayStart)) / d; return outT > 0; } return false; @@ -823,12 +821,12 @@ bool RayCastIntersectSquare(const glm::vec3& rayStart, const glm::vec3& rayVec, { glm::vec3 intPnt = rayStart + rayVec * t; glm::vec3 plDiag = max - min; - D3DXVec3Normalize(&plDiag, &plDiag); + plDiag = glm::normalize(plDiag); glm::vec3 intPnt1 = intPnt - min; - D3DXVec3Normalize(&intPnt1, &intPnt1); + intPnt1 = glm::normalize(intPnt1); glm::vec3 intPnt2 = intPnt - max; - D3DXVec3Normalize(&intPnt2, &intPnt2); - bool res = D3DXVec3Dot(&intPnt1, &plDiag) > Arad45 && D3DXVec3Dot(&intPnt2, &(-plDiag)) > Arad45; + intPnt2 = glm::normalize(intPnt2); + bool res = glm::dot(intPnt1, plDiag) > Arad45 && glm::dot(intPnt2, (-plDiag)) > Arad45; if (res) { if (outT) diff --git a/src/NetLib/source/net/BitStream.cpp b/src/NetLib/source/net/BitStream.cpp index d03e5abd..cae3615d 100644 --- a/src/NetLib/source/net/BitStream.cpp +++ b/src/NetLib/source/net/BitStream.cpp @@ -314,7 +314,7 @@ void BitStream::Serialize(glm::vec2& value, float err) void BitStream::Serialize(glm::vec3& value, float err) { - Serialize(value, 3, err); + Serialize((float *)(&value), 3, err); } void BitStream::Serialize(D3DXVECTOR4& value, float err) diff --git a/src/Rock3dEngine/header/res/GraphResource.h b/src/Rock3dEngine/header/res/GraphResource.h index 29a49b07..d8efb899 100644 --- a/src/Rock3dEngine/header/res/GraphResource.h +++ b/src/Rock3dEngine/header/res/GraphResource.h @@ -74,8 +74,8 @@ struct VertexPNT { static const DWORD fvf = D3DFVF_XYZ | D3DFVF_NORMAL | D3DFVF_TEX1; - D3DVECTOR pos; - D3DVECTOR norm; + glm::vec3 pos; + glm::vec3 norm; glm::vec2 tex; VertexPNT(); diff --git a/src/Rock3dEngine/source/GraphManager.cpp b/src/Rock3dEngine/source/GraphManager.cpp index 8bc175a0..6745fffe 100644 --- a/src/Rock3dEngine/source/GraphManager.cpp +++ b/src/Rock3dEngine/source/GraphManager.cpp @@ -1498,10 +1498,10 @@ bool LineCastIntersPlane(const glm::vec3& rayStart, const glm::vec3& rayVec, con { const float EPSILON = 1.0e-10f; - float d = D3DXPlaneDotNormal(&plane, &rayVec); + float d = D3DXPlaneDotNormal(&plane, &Vec3GlmToDx(rayVec)); if (abs(d) > EPSILON) { - outT = -D3DXPlaneDotCoord(&plane, &rayStart) / d; + outT = -D3DXPlaneDotCoord(&plane, &Vec3GlmToDx(rayStart)) / d; return true; } return false; @@ -1520,8 +1520,8 @@ unsigned PlaneBBIntersect(const BoundBox& bb, const D3DXPLANE& plane, glm::vec3 glm::vec3 v2 = bb.v[lines[i][1]]; glm::vec3 vec = v2 - v1; - float vec3Len = D3DXVec3Length(&vec); - D3DXVec3Normalize(&vec, &vec); + float vec3Len = glm::length(vec); + vec = glm::normalize(vec); float dist; //есть пересечение if (LineCastIntersPlane(v1, vec, plane, dist) && dist > 0.0f && dist < vec3Len) @@ -1548,22 +1548,22 @@ bool ComputeZBounds(graph::Engine& engine, const graph::CameraCI& camera, const bool res = false; D3DXPLANE posNearPlane; - D3DXPlaneFromPointNormal(&posNearPlane, &camera.GetDesc().pos, &camera.GetDesc().dir); + D3DXPlaneFromPointNormal(&posNearPlane, &Vec3GlmToDx(camera.GetDesc().pos), &Vec3GlmToDx(camera.GetDesc().dir)); glm::vec3 rayVec[4] = {glm::vec3(-1.0f, -1.0f, 1.0f), glm::vec3(1.0f, -1.0f, 1.0f), glm::vec3(-1.0f, 1.0f, 1.0f), glm::vec3(1.0f, 1.0f, 1.0f)}; glm::vec3 rayPos[4] = {glm::vec3(-1.0f, -1.0f, 0.0f), glm::vec3(1.0f, -1.0f, 0.0f), glm::vec3(-1.0f, 1.0f, 0.0f), glm::vec3(1.0f, 1.0f, 0.0f)}; for (int i = 0; i < 4; ++i) { - D3DXVec3TransformCoord(&rayVec[i], &rayVec[i], &camera.GetInvViewProj()); - D3DXVec3TransformCoord(&rayPos[i], &rayPos[i], &camera.GetInvViewProj()); - D3DXVec3Normalize(&rayVec[i], &(rayVec[i] - rayPos[i])); + rayVec[i] = Vec3TransformCoord(rayVec[i], camera.GetInvViewProj()); + rayPos[i] = Vec3TransformCoord(rayPos[i], camera.GetInvViewProj()); + rayVec[i] = glm::normalize(rayVec[i] - rayPos[i]); float tNear, tFar; if (aabb.LineCastIntersect(rayPos[i], rayVec[i], tNear, tFar)) { - tNear = D3DXPlaneDotCoord(&posNearPlane, &(rayPos[i] + rayVec[i] * tNear)); - tFar = D3DXPlaneDotCoord(&posNearPlane, &(rayPos[i] + rayVec[i] * tFar)); + tNear = D3DXPlaneDotCoord(&posNearPlane, &Vec3GlmToDx(rayPos[i] + rayVec[i] * tNear)); + tFar = D3DXPlaneDotCoord(&posNearPlane, &Vec3GlmToDx(rayPos[i] + rayVec[i] * tFar)); if (tNear < minZ || !res) minZ = tNear; @@ -1754,15 +1754,15 @@ void GraphManager::RenderPlanarReflScene(graph::CameraCI& camera) { glm::vec3 norm = (*iter2)->vec1(); glm::vec3 lightDir = _engine->GetContext().GetLights().front()->GetDesc().dir; - float dot = D3DXVec3Dot(&norm, &ZVector); + float dot = glm::dot(norm, ZVector); if (dot < 0.99f) { glm::vec3 right1, right2; - D3DXVec3Cross(&right1, &norm, &ZVector); - D3DXVec3Cross(&right2, &(-lightDir), &ZVector); + right1 = glm::cross(norm, ZVector); + right2 = glm::cross((-lightDir), ZVector); - float b = D3DXVec3Dot(&right1, &right2) > 0; + float b = glm::dot(right1, right2) > 0; dot = 1.0f + 0.25f * (-1.0f + 2.0f * b); _planarReflShader->SetTexDiffK(dot); @@ -1811,7 +1811,7 @@ void GraphManager::RenderPlanarReflScene(graph::CameraCI& camera) graph::Actor* actor = *iter; glm::vec3 norm = actor->vec1(); - float cosb = D3DXVec3Dot(&norm, &ZVector); + float cosb = glm::dot(norm, ZVector); float sinb = sqrt(1.0f - cosb * cosb); float height = -actor->vec1().w; actor->LocalToWorldNorm(norm, norm); @@ -1834,7 +1834,7 @@ void GraphManager::RenderPlanarReflScene(graph::CameraCI& camera) actor->LocalToWorldCoord(aabb.min, aabb.min); actor->LocalToWorldCoord(aabb.max, aabb.max); glm::vec3 right = actor->GetWorldRight(); - glm::vec3 dir = *D3DXVec3Cross(&dir, &right, &norm); + glm::vec3 dir = *dir = glm::cross(right, norm); graph::ReflRender::ClipPlanes clipPlanes; D3DXPlaneFromPointNormal(&plane, &aabb.min, &dir); @@ -2048,7 +2048,7 @@ void GraphManager::RenderShadow(graph::CameraCI& camera) if (camDesc.style == graph::csOrtho) { glm::vec3 pos = _camera->GetPos() + _camera->GetDir() * _shadowMaxFar; - maxFar = std::min(D3DXVec3Length(&(pos - camDesc.pos)), camDesc.farDist); + maxFar = std::min(glm::length(pos - camDesc.pos), camDesc.farDist); } shadowMap->SetMaxFar(maxFar); @@ -2292,13 +2292,13 @@ bool GraphManager::Render(float deltaTime, bool pause) //наложение glm::vec3 lightPos = _engine->GetContext().GetLight(0).GetDesc().pos; glm::vec3 radVec; - D3DXVec3Normalize(&radVec, &(lightPos - _actorManager->GetWorldAABB().GetCenter())); - D3DXVec3Cross(&radVec, &glm::vec3(0, 0, 1), &radVec); - if (D3DXVec3Length(&radVec) < 0.1f) + radVec = glm::normalize(lightPos - _actorManager->GetWorldAABB().GetCenter()); + radVec = glm::cross(glm::vec3(0, 0, 1), radVec); + if (glm::length(radVec) < 0.1f) { radVec = glm::vec3(1, 0, 0); } - glm::quat radQuat = glm::angleAxis(D3DX_PI / 2.5f, Vec3DxToGlm(radVec)); + glm::quat radQuat = glm::angleAxis(D3DX_PI / 2.5f, radVec); Vec3Rotate(glm::vec3(0, 0, 1), radQuat, radVec); radVec = radVec * 1000.0f; @@ -2457,19 +2457,19 @@ void GraphManager::BuildOctree() if ((abs(texDiffK.x) + abs(texDiffK.y)) > 0.0f && _lightList.size() > 0 && _lightList.front()->GetSource()->GetType() == D3DLIGHT_DIRECTIONAL) { - glm::vec3 norm = (*iter)->GetActor()->vec1(); + glm::vec3 norm = Vec4DxToGlm((*iter)->GetActor()->vec1()); glm::vec3 lightDir = _lightList.front()->GetSource()->GetDir(); - float dot = D3DXVec3Dot(&norm, &ZVector); + float dot = glm::dot(norm, ZVector); if (dot < 0.99f) { (*iter)->GetActor()->LocalToWorldNorm(norm, norm); glm::vec3 right = (*iter)->GetActor()->GetWorldRight(); glm::vec3 binormal; - D3DXVec3Cross(&binormal, &right, &ZVector); + binormal = glm::cross(right, ZVector); - float d1 = D3DXVec3Dot(&binormal, &norm); - float d2 = D3DXVec3Dot(&binormal, &(-lightDir)); + float d1 = glm::dot(binormal, norm); + float d2 = glm::dot(binormal, (-lightDir)); int b = (d1 > 0.0f) == (d2 > 0.0f); dot = 1.0f + texDiffK[b]; @@ -2502,13 +2502,13 @@ glm::vec3 GraphManager::ScreenToWorld(const lsl::Point& coord, const float z) glm::vec3 screenVec(coord.x / width, coord.y / height, 0); //Приводим к диапазону [-1, 1] - screenVec = screenVec * 2 - IdentityVector; + screenVec = screenVec * 2.0f - IdentityVector; screenVec.z = z; //Ось Y у экрана и у заднего буфера(или иначе говоря экранной D3D поверхности) не совпадают screenVec.y = -screenVec.y; //Переводим в мировое пространство(домножая на инв. матрицу), что соотв. точке на near плоскости камеры - D3DXVec3TransformCoord(&screenVec, &screenVec, &_camera->GetContextInfo().GetInvViewProj()); + screenVec = Vec3TransformCoord(screenVec, _camera->GetContextInfo().GetInvViewProj()); return screenVec; @@ -2536,7 +2536,7 @@ void GraphManager::ScreenToRay(const lsl::Point& coord, glm::vec3& rayStart, glm rayStart = ScreenToWorld(coord, 0); rayVec = ScreenToWorld(coord, 1) - rayStart; - D3DXVec3Normalize(&rayVec, &rayVec); + rayVec = glm::normalize(rayVec); } bool GraphManager::ScreenPixelRayCastWithPlaneXY(const lsl::Point& coord, glm::vec3& outVec) diff --git a/src/Rock3dEngine/source/graph/ActorManager.cpp b/src/Rock3dEngine/source/graph/ActorManager.cpp index bfbebca7..fee750d7 100644 --- a/src/Rock3dEngine/source/graph/ActorManager.cpp +++ b/src/Rock3dEngine/source/graph/ActorManager.cpp @@ -143,13 +143,12 @@ bool ActorManager::PullInRayTargetGroup(User* user, unsigned scene, const graph: if (iter != _rayUsers.end()) iter->second.draw = true; - glm::vec3 vec3; - D3DXVec3TransformCoord(&vec3, &rayTarget, &camera->GetViewProj()); + glm::vec3 vec3 = Vec3TransformCoord(rayTarget, camera->GetViewProj()); vec3.z = 0.0f; - D3DXVec3TransformCoord(&vec3, &vec3, &camera->GetInvViewProj()); + vec3 = Vec3TransformCoord(vec3, camera->GetInvViewProj()); glm::vec3 ray = rayTarget - vec3; - float rayLen = D3DXVec3Length(&ray); - D3DXVec3Normalize(&ray, &ray); + float rayLen = glm::length(ray); + ray = glm::normalize(ray); float nearDist, farDist; if (user->GetAABB().LineCastIntersect(vec3, ray, nearDist, farDist) && rayLen - farDist > rayTargetSize * 1.5f) @@ -317,7 +316,7 @@ const ActorManager::Planar& ActorManager::GetPlanar(Actor* actor) { const D3DXPLANE& testPlane = iter->plane; float dist = abs(testPlane.d - plane.d); - float angle = abs(D3DXPlaneDotNormal(&testPlane, &glm::vec3(plane))); + float angle = abs(D3DXPlaneDotNormal(&testPlane, &D3DXVECTOR3(plane))); if (dist < 0.5f && angle > 0.99f //&& (planarIter == _planars.end() || diff --git a/src/Rock3dEngine/source/graph/ContextInfo.cpp b/src/Rock3dEngine/source/graph/ContextInfo.cpp index 865df519..8d0b05c4 100644 --- a/src/Rock3dEngine/source/graph/ContextInfo.cpp +++ b/src/Rock3dEngine/source/graph/ContextInfo.cpp @@ -198,9 +198,9 @@ Intersect FrustumAABBIntersect(const Frustum& frustum, bool incZ, const AABB& aa vMax.z = aabb.min.z; } - if (D3DXPlaneDotCoord(&frustum.planes[i], &vMin) > 0) + if (D3DXPlaneDotCoord(&frustum.planes[i], &Vec3GlmToDx(vMin)) > 0) return fiOutside; - if (D3DXPlaneDotCoord(&frustum.planes[i], &vMax) >= 0) + if (D3DXPlaneDotCoord(&frustum.planes[i], &Vec3GlmToDx(vMax)) >= 0) ret = fiIntersect; } @@ -211,10 +211,10 @@ bool LineCastIntersPlane(const glm::vec3& rayStart, const glm::vec3& rayVec, con { const float EPSILON = 1.0e-10f; - float d = D3DXPlaneDotNormal(&plane, &rayVec); + float d = D3DXPlaneDotNormal(&plane, &Vec3GlmToDx(rayVec)); if (abs(d) > EPSILON) { - outT = -D3DXPlaneDotCoord(&plane, &rayStart) / d; + outT = -D3DXPlaneDotCoord(&plane, &Vec3GlmToDx(rayStart)) / d; return true; } return false; @@ -233,8 +233,8 @@ unsigned PlaneBBIntersect(const BoundBox& bb, const D3DXPLANE& plane, glm::vec3 glm::vec3 v2 = bb.v[lines[i][1]]; glm::vec3 vec = v2 - v1; - float vec3Len = D3DXVec3Length(&vec); - D3DXVec3Normalize(&vec, &vec); + float vec3Len = glm::length(vec); + vec = glm::normalize(vec); float dist; //есть пересечение if (LineCastIntersPlane(v1, vec, plane, dist) && dist > 0.0f && dist < vec3Len) @@ -260,7 +260,7 @@ bool CameraCI::ComputeZBounds(const AABB& aabb, float& minZ, float& maxZ) const { bool res = false; D3DXPLANE posNearPlane; - D3DXPlaneFromPointNormal(&posNearPlane, &_desc.pos, &_desc.dir); + D3DXPlaneFromPointNormal(&posNearPlane, &Vec3GlmToDx(_desc.pos), &Vec3GlmToDx(_desc.dir)); BoundBox box(aabb); BoundBox viewBox, projBox; @@ -288,15 +288,15 @@ bool CameraCI::ComputeZBounds(const AABB& aabb, float& minZ, float& maxZ) const for (int i = 0; i < 4; ++i) { - D3DXVec3TransformCoord(&rayVec[i], &rayVec[i], &GetInvViewProj()); - D3DXVec3TransformCoord(&rayPos[i], &rayPos[i], &GetInvViewProj()); - D3DXVec3Normalize(&rayVec[i], &(rayVec[i] - rayPos[i])); + rayVec[i] = Vec3TransformCoord(rayVec[i], GetInvViewProj()); + rayPos[i] = Vec3TransformCoord(rayPos[i], GetInvViewProj()); + rayVec[i] = glm::normalize(rayVec[i] - rayPos[i]); float tNear, tFar; if (aabb.LineCastIntersect(rayPos[i], rayVec[i], tNear, tFar)) { - tNear = D3DXPlaneDotCoord(&posNearPlane, &(rayPos[i] + rayVec[i] * tNear)); - tFar = D3DXPlaneDotCoord(&posNearPlane, &(rayPos[i] + rayVec[i] * tFar)); + tNear = D3DXPlaneDotCoord(&posNearPlane, &Vec3GlmToDx(rayPos[i] + rayVec[i] * tNear)); + tFar = D3DXPlaneDotCoord(&posNearPlane, &Vec3GlmToDx(rayPos[i] + rayVec[i] * tFar)); if (tNear < minZ || !res) minZ = tNear; @@ -316,8 +316,7 @@ bool CameraCI::ComputeZBounds(const AABB& aabb, float& minZ, float& maxZ) const { if (abs(points[i].x) < 1.1f && abs(points[i].y) < 1.1f) { - glm::vec3 vec; - D3DXVec3TransformCoord(&vec, &points[i], &GetInvProj()); + glm::vec3 vec = Vec3TransformCoord(points[i], GetInvProj()); if (vec.z < minZ || !res) minZ = vec.z; @@ -342,7 +341,7 @@ bool CameraCI::ComputeZBounds(const AABB& aabb, float& minZ, float& maxZ) const for (int k = 0; k < 3; ++k) { int numPlane = (i + k + 1) % 4; - float planeDot = D3DXPlaneDotCoord(&frustum.planes[numPlane], &points[j]); + float planeDot = D3DXPlaneDotCoord(&frustum.planes[numPlane], &Vec3GlmToDx(points[j])); if (k == 0) fContain = planeDot; //лежит вне @@ -355,7 +354,7 @@ bool CameraCI::ComputeZBounds(const AABB& aabb, float& minZ, float& maxZ) const if (contain) { - float z = D3DXPlaneDotCoord(&posNearPlane, &points[j]); + float z = D3DXPlaneDotCoord(&posNearPlane, &Vec3GlmToDx(points[j])); if (z < minZ || !res) minZ = z; @@ -429,15 +428,14 @@ glm::vec3 CameraCI::ScreenToWorld(const glm::vec2& coord, float z, const glm::ve glm::vec2 projCoord = ViewToProj(coord, viewSize); glm::vec3 screenVec(projCoord.x, projCoord.y, z); //Переводим в мировое пространство(домножая на инв. матрицу), что соотв. точке на near плоскости камеры - D3DXVec3TransformCoord(&screenVec, &screenVec, &GetInvViewProj()); + screenVec = Vec3TransformCoord(screenVec, GetInvViewProj()); return screenVec; } glm::vec2 CameraCI::WorldToScreen(const glm::vec3& coord, const glm::vec2& viewSize) const { - glm::vec3 screenVec; - D3DXVec3TransformCoord(&screenVec, &coord, &GetViewProj()); + glm::vec3 screenVec = Vec3TransformCoord(coord, GetViewProj()); glm::vec2 vec(screenVec.x, screenVec.y); return ProjToView(vec, viewSize); @@ -472,7 +470,8 @@ const D3DXMATRIX& CameraCI::GetTransform(Transform transform) const default: //Используется правостороння система координат (как в 3dMax-e) - D3DXMatrixLookAtRH(&_matrices[transform], &_desc.pos, &(_desc.pos + _desc.dir), &_desc.up); + D3DXMatrixLookAtRH(&_matrices[transform], &Vec3GlmToDx(_desc.pos), &Vec3GlmToDx(_desc.pos + _desc.dir), + &Vec3GlmToDx(_desc.up)); } break; @@ -732,10 +731,10 @@ void ContextInfo::SetLight(LightCI* light, DWORD lightIndex) d3dLight.Attenuation1 = light->_desc.attenuation1; d3dLight.Attenuation2 = light->_desc.attenuation2; d3dLight.Diffuse = light->_desc.diffuse; - d3dLight.Direction = light->_desc.dir; + d3dLight.Direction = Vec3GlmToDx(light->_desc.dir); d3dLight.Falloff = light->_desc.falloff; d3dLight.Phi = light->_desc.phi; - d3dLight.Position = light->_desc.pos; + d3dLight.Position = Vec3GlmToDx(light->_desc.pos); d3dLight.Range = light->_desc.range; d3dLight.Specular = light->_desc.specular; d3dLight.Theta = light->_desc.theta; diff --git a/src/Rock3dEngine/source/graph/Engine.cpp b/src/Rock3dEngine/source/graph/Engine.cpp index c8953afb..fda80406 100644 --- a/src/Rock3dEngine/source/graph/Engine.cpp +++ b/src/Rock3dEngine/source/graph/Engine.cpp @@ -519,7 +519,7 @@ void Engine::RenderSpritePT(const glm::vec3& pos, const glm::vec3& scale, float { case csPerspective: viewVec = pos - camera.GetDesc().pos; - D3DXVec3Normalize(&viewVec, &viewVec); + viewVec = glm::normalize(viewVec); break; case csOrtho: @@ -528,12 +528,10 @@ void Engine::RenderSpritePT(const glm::vec3& pos, const glm::vec3& scale, float } // - glm::vec3 yVec; - D3DXVec3Cross(&yVec, &xVec, &viewVec); - D3DXVec3Normalize(&yVec, &yVec); + glm::vec3 yVec = glm::cross(xVec, viewVec); + yVec = glm::normalize(yVec); // - glm::vec3 zVec; - D3DXVec3Cross(&zVec, &xVec, &yVec); + glm::vec3 zVec = glm::cross(xVec, yVec); MatrixRotationFromAxis(xVec, yVec, zVec, rotMat); } @@ -545,7 +543,7 @@ void Engine::RenderSpritePT(const glm::vec3& pos, const glm::vec3& scale, float //Локальный поворот спрайта (только для не направленных) D3DXMATRIX rotZ; - D3DXMatrixRotationAxis(&rotZ, &camera.GetDesc().dir, turnAngle); + D3DXMatrixRotationAxis(&rotZ, &Vec3GlmToDx(camera.GetDesc().dir), turnAngle); rotMat *= rotZ; } diff --git a/src/Rock3dEngine/source/graph/FxManager.cpp b/src/Rock3dEngine/source/graph/FxManager.cpp index 14b04b83..9b04fe36 100644 --- a/src/Rock3dEngine/source/graph/FxManager.cpp +++ b/src/Rock3dEngine/source/graph/FxManager.cpp @@ -366,7 +366,7 @@ void FxEmitter::QueryCreateGroup(float deltaTime, const glm::vec3& offPos) AABB FxEmitter::LocalDimensions() const { - glm::vec3 dimens = IdentityVector / 2 * _particleDesc.startScale.GetMax(); + glm::vec3 dimens = IdentityVector / 2.0f * _particleDesc.startScale.GetMax(); AABB res(_particleDesc.startPos.GetMin() - dimens, _particleDesc.startPos.GetMax() + dimens); return res; @@ -440,7 +440,7 @@ if (!_modeFading) FxParticle* particle = _groupList.back()->back(); glm::vec3 pos = GetLocalPos(particle); glm::vec3 dist = pos; - float distLen = D3DXVec3Length(&dist); + float distLen = glm::length(dist); //оставание более чем в 20 раз недопустимо float dDist = std::min(distLen - _nextDistCreate, _particleDesc.startTime.GetMax() * 20.0f); @@ -984,7 +984,7 @@ void FxPointSpritesManager::RenderGroup(graph::Engine& engine, FxEmitter* emitte LSL_ASSERT(false); } - vertex->size = D3DXVec3Length(&particle->GetScale()) * camScale; + vertex->size = glm::length(particle->GetScale()) * camScale; } engine.GetDriver().GetDevice()->DrawPrimitiveUP(D3DPT_POINTLIST, group->Size(), vertexBuf, sizeof(VertexPSize)); @@ -1040,7 +1040,7 @@ void FxSpritesManager::RenderGroup(graph::Engine& engine, FxEmitter* emitter, Fx } else { - glm::vec3 axe = Vec3GlmToDx(glm::axis(particle->GetRot())); + glm::vec3 axe = glm::axis(particle->GetRot()); float angle = glm::angle(particle->GetRot()); engine.RenderSpritePT(emitter->GetWorldPos(particle), particle->GetScale(), angle, 0, IdentityMatrix); @@ -1062,7 +1062,7 @@ void FxPlaneManager::RenderGroup(graph::Engine& engine, FxEmitter* emitter, FxPa { FxParticle* particle = *iter; - glm::vec3 axe = Vec3GlmToDx(glm::axis(particle->GetRot())); + glm::vec3 axe = glm::axis(particle->GetRot()); float angle = glm::angle(particle->GetRot()); D3DXMATRIX worldMat = particle->GetMatrix() * emitter->GetMatrix(); @@ -1118,16 +1118,16 @@ void FxTrailManager::BuildVertexLine(res::VertexPT* vertex, const glm::vec3& pos if (fixedUp) { - D3DXVec3Cross(&yVec, &fixedUpVec, &dir); - D3DXVec3Normalize(&yVec, &yVec); + yVec = glm::cross(fixedUpVec, dir); + yVec = glm::normalize(yVec); } else { glm::vec3 viewVec = pos - camPos; - D3DXVec3Normalize(&viewVec, &viewVec); + viewVec = glm::normalize(viewVec); - D3DXVec3Cross(&yVec, &dir, &viewVec); - D3DXVec3Normalize(&yVec, &yVec); + yVec = glm::cross(dir, viewVec); + yVec = glm::normalize(yVec); } vertex[0].pos = yVec * _trailWidth + pos; @@ -1189,7 +1189,7 @@ void FxTrailManager::RenderEmitter(graph::Engine& engine, FxEmitter* emitter) else pos2 = worldPos; glm::vec3 dir = pos2 - pos1; - D3DXVec3Normalize(&dir, &dir); + dir = glm::normalize(dir); //Последняя позиция для вычисления направления glm::vec3 lastPos = pos1 - dir; @@ -1214,7 +1214,7 @@ void FxTrailManager::RenderEmitter(graph::Engine& engine, FxEmitter* emitter) // dir = pos - lastPos; - D3DXVec3Normalize(&dir, &dir); + dir = glm::normalize(dir); lastPos = pos; // if ((xTex += 1) > 1) @@ -1239,7 +1239,7 @@ void FxTrailManager::RenderEmitter(graph::Engine& engine, FxEmitter* emitter) //Обращаемся к последней частице в роли которой выступает сам емиттер, и также строим линию из двух вершин dir = worldPos - lastPos; - D3DXVec3Normalize(&dir, &dir); + dir = glm::normalize(dir); BuildVertexLine(vertex, worldPos, dir, camPos, xTex); ++numPartDraw; @@ -1319,7 +1319,7 @@ void FxFlowEmitter::UpdateParticle(FxParticle* value, float dTime, bool init) if (_flowDesc.autoRot) { glm::vec3 dir; - D3DXVec3Normalize(&dir, &speed); + dir = glm::normalize(speed); glm::quat rot; QuatShortestArc(XVector, dir, rot); particle->SetRot(particle->speedRot * rot); @@ -1402,7 +1402,8 @@ void FxPhysicsEmitter::UpdateParticle(FxParticle* value, float dTime, bool init) if (init) { NxBoxShapeDesc boxShape; - boxShape.dimensions.set(IdentityVector * value->GetScale()); + glm::vec3 tVec = IdentityVector * value->GetScale(); + boxShape.dimensions.set(reinterpret_cast(&tVec.x)); px::BoxShape& bbShape = particle->pxActor.GetShapes().Add(); bbShape.AssignFromDesc(boxShape); diff --git a/src/Rock3dEngine/source/graph/GrassField.cpp b/src/Rock3dEngine/source/graph/GrassField.cpp index f2424512..f721bf09 100644 --- a/src/Rock3dEngine/source/graph/GrassField.cpp +++ b/src/Rock3dEngine/source/graph/GrassField.cpp @@ -82,23 +82,23 @@ void GrassField::BuildField() pos.x += _disp * Random(); pos.y += _disp * Random(); - *data[vert + 0].Pos4() = D3DXVECTOR4(pos, 0); + *data[vert + 0].Pos4() = D3DXVECTOR4(Vec3GlmToDx(pos), 0); *data[vert + 0].Tex0() = glm::vec2(tex[0], tex[1]); - *data[vert + 1].Pos4() = D3DXVECTOR4(pos, 1); + *data[vert + 1].Pos4() = D3DXVECTOR4(Vec3GlmToDx(pos), 1); *data[vert + 1].Tex0() = glm::vec2(tex[2], tex[1]); - *data[vert + 2].Pos4() = D3DXVECTOR4(pos, 2); + *data[vert + 2].Pos4() = D3DXVECTOR4(Vec3GlmToDx(pos), 2); *data[vert + 2].Tex0() = glm::vec2(tex[2], tex[3]); // - *data[vert + 3].Pos4() = D3DXVECTOR4(pos, 0); + *data[vert + 3].Pos4() = D3DXVECTOR4(Vec3GlmToDx(pos), 0); *data[vert + 3].Tex0() = glm::vec2(tex[0], tex[1]); - *data[vert + 4].Pos4() = D3DXVECTOR4(pos, 2); + *data[vert + 4].Pos4() = D3DXVECTOR4(Vec3GlmToDx(pos), 2); *data[vert + 4].Tex0() = glm::vec2(tex[2], tex[3]); - *data[vert + 5].Pos4() = D3DXVECTOR4(pos, 3); + *data[vert + 5].Pos4() = D3DXVECTOR4(Vec3GlmToDx(pos), 3); *data[vert + 5].Tex0() = glm::vec2(tex[0], tex[3]); } diff --git a/src/Rock3dEngine/source/graph/OctreeSort.cpp b/src/Rock3dEngine/source/graph/OctreeSort.cpp index 131fadbc..753b4f10 100644 --- a/src/Rock3dEngine/source/graph/OctreeSort.cpp +++ b/src/Rock3dEngine/source/graph/OctreeSort.cpp @@ -415,7 +415,7 @@ void OctreeSort::BuildOctree(Node& node, const UserList& userList) for (int i = 0; i < cOctNum; ++i) { AABB aabb(nodeSize); - aabb.Offset(node.GetAABB().GetCenter() + _nodeOff[i] * nodeSize/2); + aabb.Offset(node.GetAABB().GetCenter() + _nodeOff[i] * nodeSize/2.0f); UserList list; //Ищем подходящих пользователей diff --git a/src/Rock3dEngine/source/graph/SceneManager.cpp b/src/Rock3dEngine/source/graph/SceneManager.cpp index b2525487..5be258fc 100644 --- a/src/Rock3dEngine/source/graph/SceneManager.cpp +++ b/src/Rock3dEngine/source/graph/SceneManager.cpp @@ -135,8 +135,8 @@ void BaseSceneNode::ExtractRotation(_RotationStyle style) const break; case rsVectors: - _direction = glm::vec3(_rotMat.m[0]); - _up = glm::vec3(_rotMat.m[2]); + _direction = glm::vec3(_rotMat.m[0][0], _rotMat.m[0][1], _rotMat.m[0][2]); + _up = glm::vec3(_rotMat.m[2][0], _rotMat.m[2][1], _rotMat.m[2][2]); break; } _rotInvalidate.reset(style); @@ -318,8 +318,8 @@ void BaseSceneNode::Save(lsl::SWriter* writer) if (storeCoords) { - writer->WriteValue("pos", GetPos(), 3); - writer->WriteValue("scale", GetScale(), 3); + writer->WriteValue("pos", reinterpret_cast(&GetPos().x), 3); + writer->WriteValue("scale", reinterpret_cast(&GetScale().x), 3); writer->WriteValue("rot", reinterpret_cast(&GetRot().x), 4); } @@ -344,8 +344,8 @@ void BaseSceneNode::Save(lsl::SWriter* writer) writer->WriteValue("animDuration", animDuration); writer->WriteValue("frame", frame); - writer->WriteValue("speedPos", speedPos, 3); - writer->WriteValue("speedScale", speedScale, 3); + writer->WriteValue("speedPos", reinterpret_cast(&speedPos.x), 3); + writer->WriteValue("speedScale", reinterpret_cast(&speedScale.x), 3); writer->WriteValue("speedRot", reinterpret_cast(&speedRot.x), 4); //writer->WriteValue("options", _options.to_string()); @@ -359,8 +359,8 @@ void BaseSceneNode::Load(lsl::SReader* reader) if (storeCoords) { - reader->ReadValue("pos", _position, 3); - reader->ReadValue("scale", _scale, 3); + reader->ReadValue("pos", reinterpret_cast(&_position.x), 3); + reader->ReadValue("scale", reinterpret_cast(&_scale.x), 3); reader->ReadValue("rot", reinterpret_cast(&_rot.x), 4); } @@ -388,8 +388,8 @@ void BaseSceneNode::Load(lsl::SReader* reader) reader->ReadValue("animDuration", animDuration); reader->ReadValue("frame", frame); - reader->ReadValue("speedPos", speedPos, 3); - reader->ReadValue("speedScale", speedScale, 3); + reader->ReadValue("speedPos", reinterpret_cast(&speedPos.x), 3); + reader->ReadValue("speedScale", reinterpret_cast(&speedScale.x), 3); reader->ReadValue("speedRot", reinterpret_cast(&speedRot.x), 4); //std::string optsStr; @@ -460,8 +460,7 @@ void BaseSceneNode::OnProgress(float deltaTime) if (autoRot) { - glm::vec3 dir; - D3DXVec3Normalize(&dir, &speedPos); + glm::vec3 dir = glm::normalize(speedPos); glm::quat rot; QuatShortestArc(XVector, dir, rot); SetRot(speedRot * rot); @@ -498,20 +497,19 @@ void BaseSceneNode::MoveAroundTarget(const glm::vec3& worldTarget, float pitchDe // normalT2C points away from the direction the camera is looking glm::vec3 originalT2C = GetWorldPos() - worldTarget; glm::vec3 normalT2C = originalT2C; - float dist = D3DXVec3Length(&normalT2C); - D3DXVec3Normalize(&normalT2C, &normalT2C); + float dist = glm::length(normalT2C); + normalT2C = glm::normalize(normalT2C); // normalRight points to the camera's right // the camera is pitching around this axis. - glm::vec3 normalCameraRight; glm::vec3 worldUp = GetWorldUp(); - D3DXVec3Cross(&normalCameraRight, &worldUp, &normalT2C); - if (D3DXVec3Length(&normalCameraRight) < 0.001f) + glm::vec3 normalCameraRight = glm::cross(worldUp, normalT2C); + if (glm::length(normalCameraRight) < 0.001f) normalCameraRight = XVector; else - D3DXVec3Normalize(&normalCameraRight, &normalCameraRight); + normalCameraRight = glm::normalize(normalCameraRight); // calculate the current pitch. - // 0 is looking down and PI is looking up - float pitchNow = acos(D3DXVec3Dot(&worldUp, &normalT2C)); + // 0 is looking down and PI is looking up + float pitchNow = acos(glm::dot(worldUp, normalT2C)); pitchNow = lsl::ClampValue(pitchNow + pitchDelta, 0 + 0.025f, D3DX_PI - 0.025f); // create a new vector pointing up and then rotate it down // into the new position @@ -519,10 +517,10 @@ void BaseSceneNode::MoveAroundTarget(const glm::vec3& worldTarget, float pitchDe D3DXMATRIX turnMat; normalT2C = GetWorldUp(); - D3DXMatrixRotationAxis(&pitchMat, &normalCameraRight, pitchNow); - D3DXMatrixRotationAxis(&turnMat, &worldUp, -turnDelta); - D3DXVec3TransformNormal(&normalT2C, &normalT2C, &pitchMat); - D3DXVec3TransformNormal(&normalT2C, &normalT2C, &turnMat); + D3DXMatrixRotationAxis(&pitchMat, &Vec3GlmToDx(normalCameraRight), pitchNow); + D3DXMatrixRotationAxis(&turnMat, &Vec3GlmToDx(worldUp), -turnDelta); + normalT2C = Vec3TransformNormal(normalT2C, pitchMat); + normalT2C = Vec3TransformNormal(normalT2C, turnMat); normalT2C *= dist; glm::vec3 newPos = GetWorldPos() + (normalT2C - originalT2C); if (_parent) @@ -543,12 +541,12 @@ void BaseSceneNode::WorldToLocal(const D3DXVECTOR4& vec, D3DXVECTOR4& out) const void BaseSceneNode::WorldToLocalCoord(const glm::vec3& vec, glm::vec3& out) const { - D3DXVec3TransformCoord(&out, &vec, &GetInvWorldMat()); + out = Vec3TransformCoord(vec, GetInvWorldMat()); } void BaseSceneNode::WorldToLocalNorm(const glm::vec3& vec, glm::vec3& out) const { - D3DXVec3TransformNormal(&out, &vec, &GetInvWorldMat()); + out = Vec3TransformNormal(vec, GetInvWorldMat()); } void BaseSceneNode::LocalToWorld(const D3DXVECTOR4& vec, D3DXVECTOR4& out) const @@ -558,12 +556,12 @@ void BaseSceneNode::LocalToWorld(const D3DXVECTOR4& vec, D3DXVECTOR4& out) const void BaseSceneNode::LocalToWorldCoord(const glm::vec3& vec, glm::vec3& out) const { - D3DXVec3TransformCoord(&out, &vec, &GetWorldMat()); + out = Vec3TransformCoord(vec, GetWorldMat()); } void BaseSceneNode::LocalToWorldNorm(const glm::vec3& vec, glm::vec3& out) const { - D3DXVec3TransformNormal(&out, &vec, &GetWorldMat()); + out = Vec3TransformNormal(vec, GetWorldMat()); } void BaseSceneNode::ParentToLocal(const D3DXVECTOR4& vec, D3DXVECTOR4& out) const @@ -752,20 +750,20 @@ void BaseSceneNode::SetDir(const glm::vec3& value) { ExtractRotation(rsVectors); - if (D3DXVec3Length(&value) == 0) + if (glm::length(value) == 0) _direction = XVector; else - D3DXVec3Normalize(&_direction, &value); + _direction = glm::normalize(value); glm::vec3 right = GetRight(); - if (D3DXVec3Length(&right) < floatErrComp) + if (glm::length(right) < floatErrComp) { - D3DXVec3Cross(&right, &ZVector, &_up); - if (D3DXVec3Length(&right) < floatErrComp) - D3DXVec3Cross(&right, &XVector, &_up); + right = glm::cross(ZVector, _up); + if (glm::length(right) < floatErrComp) + right = glm::cross(XVector, _up); } - D3DXVec3Normalize(&right, &right); - D3DXVec3Cross(&_up, &_direction, &right); + right = glm::normalize(right); + _up = glm::cross(_direction, right); ChangedRotation(rsVectors); } @@ -773,8 +771,7 @@ void BaseSceneNode::SetDir(const glm::vec3& value) glm::vec3 BaseSceneNode::GetRight() const { ExtractRotation(rsVectors); - glm::vec3 tmp; - D3DXVec3Cross(&tmp, &_up, &_direction); + glm::vec3 tmp = glm::cross(_up, _direction); return tmp; } @@ -783,20 +780,20 @@ void BaseSceneNode::SetRight(const glm::vec3& value) ExtractRotation(rsVectors); glm::vec3 right; - if (D3DXVec3Length(&value) == 0) + if (glm::length(value) == 0) right = YVector; else - D3DXVec3Normalize(&right, &value); + right = glm::normalize(value); - D3DXVec3Cross(&_up, &right, &_direction); - if (D3DXVec3Length(&_up) < floatErrComp) + _up = glm::cross(right, _direction); + if (glm::length(_up) < floatErrComp) { - D3DXVec3Cross(&_up, &_direction, &XVector); - if (D3DXVec3Length(&_up) < floatErrComp) - D3DXVec3Cross(&_up, &_direction, &YVector); + _up = glm::cross(_direction, XVector); + if (glm::length(_up) < floatErrComp) + _up = glm::cross(_direction, YVector); } - D3DXVec3Normalize(&_up, &_up); - D3DXVec3Cross(&_direction, &_up, &right); + _up = glm::normalize(_up); + _direction = glm::cross(_up, right); ChangedRotation(rsVectors); } @@ -811,18 +808,18 @@ void BaseSceneNode::SetUp(const glm::vec3& value) { ExtractRotation(rsVectors); - if (D3DXVec3Length(&value) == 0) + if (glm::length(value) == 0) _up = ZVector; - D3DXVec3Normalize(&_up, &value); + _up = glm::normalize(value); glm::vec3 right = GetRight(); - if (D3DXVec3Length(&right) < floatErrComp) + if (glm::length(right) < floatErrComp) { - D3DXVec3Cross(&right, &ZVector, &_up); - if (D3DXVec3Length(&right) < floatErrComp) - D3DXVec3Cross(&right, &XVector, &_up); + right = glm::cross(ZVector, _up); + if (glm::length(right) < floatErrComp) + right = glm::cross(XVector, _up); } - D3DXVec3Normalize(&right, &right); - D3DXVec3Cross(&_direction, &right, &_up); + right = glm::normalize(right); + _direction = glm::cross(right, _up); ChangedRotation(rsVectors); } @@ -882,7 +879,7 @@ D3DXMATRIX BaseSceneNode::GetScaleMat() const { glm::vec3 vec = _scale; //Если масштабирование слишком мало, то матрица может оказаться вырожденной. Поэтому подменяем на вектор самой допустимо малой длины - //if (D3DXVec3Length(&vec) < 0.0001f) + //if (glm::length(vec) < 0.0001f) // vec = IdentityVector * 0.0005f; D3DXMATRIX scaleMat; @@ -955,13 +952,13 @@ const D3DXMATRIX& BaseSceneNode::GetMat() const void BaseSceneNode::SetLocalMat(const D3DXMATRIX& value) { - _direction = value.m[0]; - glm::vec3 right = value.m[1]; - _up = value.m[2]; - _position = value.m[3]; + _direction = glm::vec3(value.m[0][0], value.m[0][1], value.m[0][2]); + glm::vec3 right = glm::vec3(value.m[1][0], value.m[1][1], value.m[1][2]); + _up = glm::vec3(value.m[2][0], value.m[2][1], value.m[2][2]); + _position = glm::vec3(value.m[3][0], value.m[3][1], value.m[3][2]); - D3DXVec3Normalize(&_direction, &_direction); - D3DXVec3Normalize(&_up, &_up); + _direction = glm::normalize(_direction); + _up = glm::normalize(_up); ChangedRotation(rsVectors); TransformationChanged(); @@ -1049,7 +1046,8 @@ D3DXMATRIX BaseSceneNode::GetWorldCombMat(CombMatType type) const glm::vec3 BaseSceneNode::GetWorldPos() const { - return GetWorldMat().m[3]; + D3DXMATRIX tMat = GetWorldMat(); + return glm::vec3(tMat.m[3][0], tMat.m[3][1], tMat.m[3][2]); } void BaseSceneNode::SetWorldPos(const glm::vec3& value) @@ -1108,19 +1106,21 @@ D3DXMATRIX BaseSceneNode::GetWorldScale() const glm::vec3 BaseSceneNode::GetWorldDir() const { - glm::vec3 res; - D3DXVec3Normalize(&res, &glm::vec3(GetWorldMat().m[0])); + D3DXMATRIX tMat = GetWorldMat(); + glm::vec3 res = glm::normalize(glm::vec3(tMat.m[0][0], tMat.m[0][1], tMat.m[0][2])); return res; } glm::vec3 BaseSceneNode::GetWorldRight() const { - return GetWorldMat().m[1]; + D3DXMATRIX tMat = GetWorldMat(); + return glm::vec3(tMat.m[1][0], tMat.m[1][1], tMat.m[1][2]); } glm::vec3 BaseSceneNode::GetWorldUp() const { - return GetWorldMat().m[2]; + D3DXMATRIX tMat = GetWorldMat(); + return glm::vec3(tMat.m[2][0], tMat.m[2][1], tMat.m[2][2]); } glm::vec3 BaseSceneNode::GetWorldSizes(bool includeChild) const @@ -1137,7 +1137,7 @@ glm::vec3 BaseSceneNode::GetWorldCenterPos(bool includeChild) const bool AABBAreEqual(const AABB& bb1, const AABB& bb2) { - return D3DXVec3Length(&(bb1.min - bb2.min)) < floatErrComp && D3DXVec3Length(&(bb1.max - bb2.max)) < floatErrComp; + return glm::length(bb1.min - bb2.min) < floatErrComp && glm::length(bb1.max - bb2.max) < floatErrComp; } const AABB& BaseSceneNode::GetLocalAABB(bool includeChild) const diff --git a/src/Rock3dEngine/source/graph/ShadowMapRender.cpp b/src/Rock3dEngine/source/graph/ShadowMapRender.cpp index 91331345..d56c5f65 100644 --- a/src/Rock3dEngine/source/graph/ShadowMapRender.cpp +++ b/src/Rock3dEngine/source/graph/ShadowMapRender.cpp @@ -83,7 +83,7 @@ void ShadowMapRender::ComputeCropMatrix(unsigned numSplit, const LightCI& light, { // transform point D3DXVECTOR4 vTransformed; - D3DXVec3Transform(&vTransformed, &pCorners[i], &mLightViewProj); + D3DXVec3Transform(&vTransformed, &Vec3GlmToDx(pCorners[i]), &mLightViewProj); // project x and y vTransformed.x /= vTransformed.w; diff --git a/src/Rock3dEngine/source/graph/StdNode.cpp b/src/Rock3dEngine/source/graph/StdNode.cpp index 9e51035d..735eeac3 100644 --- a/src/Rock3dEngine/source/graph/StdNode.cpp +++ b/src/Rock3dEngine/source/graph/StdNode.cpp @@ -11,7 +11,7 @@ namespace graph const glm::vec3 MovCoordSys::arUp[3] = {XVector, YVector, ZVector}; const float MovCoordSys::arSize = 2.0f; -const glm::vec3 MovCoordSys::arPos[3] = {2 * XVector, 2 * YVector, 2 * ZVector}; +const glm::vec3 MovCoordSys::arPos[3] = {2.0f * XVector, 2.0f * YVector, 2.0f * ZVector}; const D3DXCOLOR MovCoordSys::arCol[3] = {clrRed, clrGreen, clrBlue}; const D3DXCOLOR MovCoordSys::colSel = clrYellow; @@ -487,7 +487,7 @@ AABB IVBMeshNode::LocalDimensions() const bMin = true; } else - D3DXVec3Minimize(&min, &min, &vec); + min = glm::min(min, vec); if (!bMax) { @@ -495,7 +495,7 @@ AABB IVBMeshNode::LocalDimensions() const bMax = true; } else - D3DXVec3Maximize(&max, &max, &vec); + max = glm::max(max, vec); } } @@ -690,7 +690,7 @@ AABB MeshXNode::LocalDimensions() const bMin = true; } else - D3DXVec3Minimize(&min, &min, &vec); + min = glm::min(min, vec); if (!bMax) { @@ -698,7 +698,7 @@ AABB MeshXNode::LocalDimensions() const bMax = true; } else - D3DXVec3Maximize(&max, &max, &vec); + max = glm::max(max, vec); } } @@ -1077,7 +1077,7 @@ MovCoordSys::~MovCoordSys() MovCoordSys::DirMove MovCoordSys::CompDirMove(const glm::vec3& rayStart, const glm::vec3& rayVec) { const D3DXPLANE planes[3] = {XPlane, YPlane, ZPlane}; - const glm::vec3 coordOff[3] = {XVector/2, YVector/2, ZVector/2}; + const glm::vec3 coordOff[3] = {XVector / 2.0f, YVector / 2.0f, ZVector / 2.0f}; const DirMove moves[3] = {dmYZ, dmXZ, dmXY}; glm::vec3 localRS; @@ -1144,7 +1144,7 @@ void MovCoordSys::DoRender(Engine& engine) const bool isAxe[3] = {_curMove == dmXY || _curMove == dmXZ || _curMove == dmX, _curMove == dmXY || _curMove == dmYZ || _curMove == dmY, _curMove == dmXZ || _curMove == dmYZ || _curMove == dmZ}; //Скалим перед рендером чтобы не было дерганий - float dist = D3DXVec3Length(&(engine.GetContext().GetCamera().GetDesc().pos - GetWorldPos())); + float dist = glm::length(engine.GetContext().GetCamera().GetDesc().pos - GetWorldPos()); float scaleF = dist / 15.0f; SetScale(scaleF); @@ -1262,7 +1262,7 @@ ScaleCoordSys::DirMove ScaleCoordSys::CompDirMove(const glm::vec3& rayStart, con for (int i = 0; i < 3; ++i) plLine[i] = bbPlanes[i] * plSize; D3DXPLANE upPlane; - D3DXPlaneFromPoints(&upPlane, &plLine[0], &plLine[1], &plLine[2]); + D3DXPlaneFromPoints(&upPlane, &Vec3GlmToDx(plLine[0]), &Vec3GlmToDx(plLine[1]), &Vec3GlmToDx(plLine[2])); // glm::vec3 maxVec = NullVector; for (int i = 0; i < 3; ++i) @@ -1355,7 +1355,7 @@ void ScaleCoordSys::DoRender(Engine& engine) engine.GetContext().RestoreRenderState(graph::rsZWriteEnable); engine.GetContext().RestoreRenderState(graph::rsZEnable); - float dist = D3DXVec3Length(&(engine.GetContext().GetCamera().GetDesc().pos - GetWorldPos())); + float dist = glm::length(engine.GetContext().GetCamera().GetDesc().pos - GetWorldPos()); float scaleF = dist / 15.0f; SetScale(scaleF); } diff --git a/src/Rock3dEngine/source/graph/SunShaft.cpp b/src/Rock3dEngine/source/graph/SunShaft.cpp index 1ea61393..2a8a0911 100644 --- a/src/Rock3dEngine/source/graph/SunShaft.cpp +++ b/src/Rock3dEngine/source/graph/SunShaft.cpp @@ -73,7 +73,7 @@ void SunShaftRender::Render(Engine& engine) engine.GetContext().RestoreSamplerState(0, ssMinFilter); engine.GetContext().RestoreSamplerState(0, ssMipFilter); - D3DXVECTOR4 sunPos(_sunPos, 1.0f); + D3DXVECTOR4 sunPos(Vec3GlmToDx(_sunPos), 1.0f); D3DXVec4Transform(&sunPos, &sunPos, &engine.GetContext().GetCamera().GetViewProj()); sunPos.x /= sunPos.w; sunPos.y /= sunPos.w; @@ -83,15 +83,15 @@ void SunShaftRender::Render(Engine& engine) //Стд. техника учитывающая напрявление ист. света //glm::vec3 posNorm; - //D3DXVec3Normalize(&posNorm, &engine.GetLight()->GetDesc().pos); - //sunPos.w = D3DXVec3Dot(&posNorm, &engine.GetCamera()->GetDesc().dir); + //posNorm = glm::normalize(engine.GetLight()->GetDesc().pos); + //sunPos.w = glm::dot(posNorm, engine.GetCamera()->GetDesc().dir); // if (sunPos.w > 0.0f) { //Не учитвает направление ист. света //glm::vec3 posNorm; - //D3DXVec3Normalize(&posNorm, &glm::vec3(sunPos)); - //sunPos.w = D3DXVec3Dot(&posNorm, &engine.GetCamera()->GetDesc().up); + //posNorm = glm::normalize(glm::vec3(sunPos)); + //sunPos.w = glm::dot(posNorm, engine.GetCamera()->GetDesc().up); // //Без затухания sunPos.w = 1.0f; diff --git a/src/Rock3dEngine/source/graph/WaterPlane.cpp b/src/Rock3dEngine/source/graph/WaterPlane.cpp index 3ecfe61a..18935763 100644 --- a/src/Rock3dEngine/source/graph/WaterPlane.cpp +++ b/src/Rock3dEngine/source/graph/WaterPlane.cpp @@ -20,9 +20,9 @@ void ReflRender::BeginRT(Engine& engine, const RtFlags& flags) _MyBase::BeginRT(engine, flags); CameraDesc desc = engine.GetContext().GetCamera().GetDesc(); - D3DXVec3TransformCoord(&desc.pos, &desc.pos, &_reflMat); - D3DXVec3TransformNormal(&desc.dir, &desc.dir, &_reflMat); - D3DXVec3TransformNormal(&desc.up, &desc.up, &_reflMat); + desc.pos = Vec3TransformCoord(desc.pos, _reflMat); + desc.dir = Vec3TransformNormal(desc.dir, _reflMat); + desc.up = Vec3TransformNormal(desc.up, _reflMat); desc.up = -desc.up; _reflCamera.SetDesc(desc); //reflCamera.AdjustFarPlane(sceneBox, maxFarDist); diff --git a/src/Rock3dEngine/source/gui/GUI.cpp b/src/Rock3dEngine/source/gui/GUI.cpp index 33a392dd..3ce2ad7f 100644 --- a/src/Rock3dEngine/source/gui/GUI.cpp +++ b/src/Rock3dEngine/source/gui/GUI.cpp @@ -1021,10 +1021,10 @@ void Context::DrawView3d(View3d& view3d) DrawPlane(plane);*/ //максимальный осевой размер меша - float maxScale = D3DXVec3Length(&aabb.GetSizes()); + float maxScale = glm::length(aabb.GetSizes()); //с учетом нецентрированности if (!view3d.GetAlign()) - maxScale += D3DXVec3Length(&aabb.GetCenter()); + maxScale += glm::length(aabb.GetCenter()); //размер поля в котором он отображается glm::vec3 viewSize = glm::vec3(view3d.GetSize().x, view3d.GetSize().y, 0.0f); //размер по оси z вычисляет с прикидкой @@ -1036,7 +1036,7 @@ void Context::DrawView3d(View3d& view3d) //центрируем if (view3d.GetAlign()) { - D3DXVec3TransformCoord(&pos, &aabb.GetCenter(), &view3d.GetBox()->GetMat()); + pos = Vec3TransformCoord(aabb.GetCenter(), view3d.GetBox()->GetMat()); pos = pos * scale; } @@ -1257,7 +1257,7 @@ void Widget::BuildMatrix(MatrixChange change) const _pos = _parent->WorldToLocalCoord(_pos); } - glm::quat rot = glm::angleAxis(GetRot(), Vec3DxToGlm(ZVector)); + glm::quat rot = glm::angleAxis(GetRot(), ZVector); glm::vec3 pos = Vec3FromVec2(GetPos()); @@ -3451,7 +3451,7 @@ ViewPort3d::ViewPort3d(Manager* manager): _MyBase(manager), _style(msStatic), _s _view3d->AddRef(); InsertGraphic(_view3d); - _rot3dSpeed = glm::angleAxis(3.0f * D3DX_PI / 4.0f, Vec3DxToGlm(ZVector)); + _rot3dSpeed = glm::angleAxis(3.0f * D3DX_PI / 4.0f, ZVector); } ViewPort3d::~ViewPort3d() @@ -3508,7 +3508,7 @@ bool ViewPort3d::OnMouseOver(const MouseMove& mMove) SetRot3d(GetRot3d() * rotY * rotX);*/ //Вращение по одной оси, совпадающией с up mesh - glm::quat rotZ = glm::angleAxis(D3DX_PI * mMove.dtCoord.x / 200.0f, Vec3DxToGlm(ZVector)); + glm::quat rotZ = glm::angleAxis(D3DX_PI * mMove.dtCoord.x / 200.0f, ZVector); GetBox()->SetRot(GetBox()->GetRot() * rotZ); } } diff --git a/src/Rock3dEngine/source/px/Physx.cpp b/src/Rock3dEngine/source/px/Physx.cpp index 96d131f9..bf2d2d49 100644 --- a/src/Rock3dEngine/source/px/Physx.cpp +++ b/src/Rock3dEngine/source/px/Physx.cpp @@ -137,8 +137,8 @@ void Scene::ContactReport::onContactNotify(NxContactPair& pair, NxU32 events) contact1.events = events; contact1.deltaTime = _scene->_lastDeltaTime; contact1.stream = pair.stream; - contact1.sumNormalForce = glm::vec3(pair.sumNormalForce.get()); - contact1.sumFrictionForce = glm::vec3(pair.sumFrictionForce.get()); + contact1.sumNormalForce = glm::make_vec3(pair.sumNormalForce.get()); + contact1.sumFrictionForce = glm::make_vec3(pair.sumFrictionForce.get()); contact2 = contact1; contact1.actor = !pair.isDeletedActor[0] ? _scene->GetActorFromNx(pair.actors[0]) : 0; @@ -601,7 +601,7 @@ void Shape::SyncPos() { LSL_ASSERT(_nxShape); - _nxShape->setLocalPosition(NxVec3(TransformLocalPos(_pos))); + _nxShape->setLocalPosition(glm::value_ptr(TransformLocalPos(_pos))); } void Shape::SyncRot() @@ -619,9 +619,9 @@ void Shape::SyncScale() void Shape::Save(lsl::SWriter* writer) { - writer->WriteValue("pos", _pos, 3); + writer->WriteValue("pos", glm::value_ptr(_pos), 3); writer->WriteValue("rot", reinterpret_cast(&_rot.x), 4); - writer->WriteValue("scale", _scale, 3); + writer->WriteValue("scale", glm::value_ptr(_scale), 3); writer->WriteValue("materialIndex", _materialIndex); writer->WriteValue("density", _density); @@ -631,9 +631,9 @@ void Shape::Save(lsl::SWriter* writer) void Shape::Load(lsl::SReader* reader) { - reader->ReadValue("pos", _pos, 3); + reader->ReadValue("pos", glm::value_ptr(_pos), 3); reader->ReadValue("rot", reinterpret_cast(&_rot.x), 4); - reader->ReadValue("scale", _scale, 3); + reader->ReadValue("scale", glm::value_ptr(_scale), 3); reader->ReadValue("materialIndex", _materialIndex); reader->ReadValue("density", _density); @@ -643,7 +643,7 @@ void Shape::Load(lsl::SReader* reader) void Shape::AssignFromDesc(const NxShapeDesc& desc, bool reloadShape) { - desc.localPose.t.get(_pos); + desc.localPose.t.get(glm::value_ptr(_pos)); // NxQuat quat; desc.localPose.M.toQuat(quat); @@ -659,7 +659,7 @@ void Shape::AssignFromDesc(const NxShapeDesc& desc, bool reloadShape) void Shape::AssignToDesc(NxShapeDesc& desc) { - desc.localPose.t.set(_pos); + desc.localPose.t.set(glm::value_ptr(_pos)); // NxQuat quat; quat.setXYZW(reinterpret_cast(&_rot.x)); @@ -802,7 +802,7 @@ void PlaneShape::Save(lsl::SWriter* writer) { _MyBase::Save(writer); - writer->WriteValue("normal", _normal, 3); + writer->WriteValue("normal", glm::value_ptr(_normal), 3); writer->WriteValue("dist", _dist); } @@ -810,13 +810,13 @@ void PlaneShape::Load(lsl::SReader* reader) { _MyBase::Load(reader); - reader->ReadValue("normal", _normal, 3); + reader->ReadValue("normal", glm::value_ptr(_normal), 3); reader->ReadValue("dist", _dist); } void PlaneShape::AssignFromDesc(const NxPlaneShapeDesc& desc, bool reloadShape) { - _normal = desc.normal.get(); + _normal = glm::make_vec3(desc.normal.get()); _dist = desc.d; _MyBase::AssignFromDesc(desc, reloadShape); @@ -824,7 +824,7 @@ void PlaneShape::AssignFromDesc(const NxPlaneShapeDesc& desc, bool reloadShape) void PlaneShape::AssignToDesc(NxPlaneShapeDesc& desc) { - desc.normal.set(_normal); + desc.normal.set(glm::value_ptr(_normal)); desc.d = _dist; _MyBase::AssignToDesc(desc); @@ -845,7 +845,7 @@ void PlaneShape::SetNormal(const glm::vec3& value) _normal = value; if (GetNxShape()) - GetNxShape()->setPlane(NxVec3(value), _dist); + GetNxShape()->setPlane(glm::value_ptr(value), _dist); } float PlaneShape::GetDist() const @@ -878,26 +878,26 @@ void BoxShape::Save(lsl::SWriter* writer) { _MyBase::Save(writer); - writer->WriteValue("dimensions", _dimensions, 3); + writer->WriteValue("dimensions", glm::value_ptr(_dimensions), 3); } void BoxShape::Load(lsl::SReader* reader) { _MyBase::Load(reader); - reader->ReadValue("dimensions", _dimensions, 3); + reader->ReadValue("dimensions", glm::value_ptr(_dimensions), 3); } void BoxShape::AssignFromDesc(const NxBoxShapeDesc& desc, bool reloadShape) { - _dimensions = desc.dimensions.get(); + _dimensions = glm::make_vec3(desc.dimensions.get()); _MyBase::AssignFromDesc(desc, reloadShape); } void BoxShape::AssignToDesc(NxBoxShapeDesc& desc) { - desc.dimensions.set(_dimensions); + desc.dimensions.set(glm::value_ptr(_dimensions)); _MyBase::AssignToDesc(desc); } @@ -921,7 +921,7 @@ void BoxShape::SetDimensions(const glm::vec3& value) if (GetNxShape()) { NxVec3 vec3; - vec3.set(_dimensions); + vec3.set(glm::value_ptr(_dimensions)); GetNxShape()->setDimensions(vec3); } } @@ -1555,15 +1555,15 @@ void Body::Save(lsl::SWriter* writer) glm::vec3 massLocalPose[4]; for (int i = 0; i < 3; ++i) - massLocalPose[i] = _desc.massLocalPose.M.getRow(i).get(); - massLocalPose[3] = _desc.massLocalPose.t.get(); - writer->WriteValue("massLocalPose", massLocalPose[0], 12); + massLocalPose[i] = glm::make_vec3(_desc.massLocalPose.M.getRow(i).get()); + massLocalPose[3] = glm::make_vec3(_desc.massLocalPose.t.get()); + writer->WriteValue("massLocalPose", glm::value_ptr(massLocalPose[0]), 12); writer->WriteValue("flags", _desc.flags); writer->WriteValue("sleepEnergyThreshold", _desc.sleepEnergyThreshold); - lsl::SWriteValue(writer, "linearVelocity", glm::vec3(_desc.linearVelocity.get())); + lsl::SWriteValue(writer, "linearVelocity", glm::make_vec3(_desc.linearVelocity.get())); } void Body::Load(lsl::SReader* reader) @@ -1571,11 +1571,11 @@ void Body::Load(lsl::SReader* reader) reader->ReadValue("mass", _desc.mass); glm::vec3 massLocalPose[4]; - if (reader->ReadValue("massLocalPose", massLocalPose[0], 12)) + if (reader->ReadValue("massLocalPose", glm::value_ptr(massLocalPose[0]), 12)) { for (int i = 0; i < 3; ++i) - _desc.massLocalPose.M.setRow(i, NxVec3(massLocalPose[i])); - _desc.massLocalPose.t.set(massLocalPose[3]); + _desc.massLocalPose.M.setRow(i, glm::value_ptr(massLocalPose[i])); + _desc.massLocalPose.t.set(glm::value_ptr(massLocalPose[3])); } reader->ReadValue("flags", _desc.flags); @@ -1584,7 +1584,7 @@ void Body::Load(lsl::SReader* reader) glm::vec3 linearVelocity; lsl::SReadValue(reader, "linearVelocity", linearVelocity); - _desc.linearVelocity = NxVec3(linearVelocity); + _desc.linearVelocity = glm::value_ptr(linearVelocity); } const NxBodyDesc& Body::GetDesc() @@ -1666,8 +1666,8 @@ void Actor::CreateNxShape(Shape* shape) NxShapeDesc* shapeDesc = shape->CreateDesc(); glm::vec3 pos; - LocalToWorldPos(glm::vec3(shapeDesc->localPose.t.get()), pos, true); - shapeDesc->localPose.t.set(pos); + LocalToWorldPos(glm::make_vec3(shapeDesc->localPose.t.get()), pos, true); + shapeDesc->localPose.t.set(glm::value_ptr(pos)); //not all conditions is completed to create nxShape (neccesary params will be set next, NxTriangleMesh for example) if (shapeDesc->isValid()) @@ -1768,7 +1768,7 @@ void Actor::InitRootNxActor() if (actorDesc.shapes.empty()) return; - actorDesc.globalPose.t.set(_pos); + actorDesc.globalPose.t.set(glm::value_ptr(_pos)); NxQuat rot; rot.setXYZW(reinterpret_cast(&_rot.x)); actorDesc.globalPose.M.fromQuat(rot); @@ -1879,9 +1879,9 @@ void Actor::Save(lsl::SWriter* writer) if (storeCoords) { - writer->WriteValue("pos", GetPos(), 3); + writer->WriteValue("pos", glm::value_ptr(GetPos()), 3); writer->WriteValue("rot", reinterpret_cast(&GetRot().x), 4); - writer->WriteValue("scale", GetScale(), 3); + writer->WriteValue("scale", glm::value_ptr(GetScale()), 3); } writer->WriteValue("shapes", _shapes); @@ -1904,9 +1904,9 @@ void Actor::Load(lsl::SReader* reader) if (storeCoords) { - reader->ReadValue("pos", _pos, 3); + reader->ReadValue("pos", glm::value_ptr(_pos), 3); reader->ReadValue("rot", reinterpret_cast(&_rot.x), 4); - reader->ReadValue("scale", _scale, 3); + reader->ReadValue("scale", glm::value_ptr(_scale), 3); } reader->ReadValue("shapes", _shapes); @@ -1966,8 +1966,8 @@ BoxShape& Actor::AddBBShape(const AABB& aabb, const NxBoxShapeDesc& desc) glm::vec3 sizes = aabb.GetSizes(); sizes /= 2.0f; glm::vec3 pos = aabb.GetCenter(); - descShape.dimensions.set(sizes); - descShape.localPose.t.set(pos); + descShape.dimensions.set(glm::value_ptr(sizes)); + descShape.localPose.t.set(glm::value_ptr(pos)); px::BoxShape& bbShape = GetShapes().Add(); bbShape.AssignFromDesc(descShape); @@ -2098,7 +2098,7 @@ void Actor::SetContactReportFlag(unsigned value, bool set) const glm::vec3& Actor::GetPos() const { if (!_parent && _nxActor) - _nxActor->getGlobalPosition().get(_pos); + _nxActor->getGlobalPosition().get(glm::value_ptr(_pos)); return _pos; } @@ -2109,7 +2109,7 @@ void Actor::SetPos(const glm::vec3& value) if (_nxActor) { if (!_parent) - _nxActor->setGlobalPosition(NxVec3(value)); + _nxActor->setGlobalPosition(glm::value_ptr(value)); else for (Shapes::iterator iter = _shapes->begin(); iter != _shapes->end(); ++iter) (*iter)->SyncPos(); diff --git a/src/Rock3dEngine/source/res/GraphResource.cpp b/src/Rock3dEngine/source/res/GraphResource.cpp index 4c502f39..cc570cf6 100644 --- a/src/Rock3dEngine/source/res/GraphResource.cpp +++ b/src/Rock3dEngine/source/res/GraphResource.cpp @@ -85,8 +85,8 @@ void VertexData::CalcDimensions() ++iter; for (unsigned i = 1; i < _vertexCount; ++i, ++iter) { - D3DXVec3Minimize(&_minPos, &_minPos, iter.Pos3()); - D3DXVec3Maximize(&_maxPos, &_maxPos, iter.Pos3()); + _minPos = glm::min(_minPos, *iter.Pos3()); + _maxPos = glm::max(_maxPos, *iter.Pos3()); } } } @@ -533,8 +533,8 @@ void CalcTangentBasis(const glm::vec3 &p1, const glm::vec3 &p2, const glm::vec3 tangent = (e1 * et2.y - e2 * et1.y) * tmp; binormal = (e2 * et1.x - e1 * et2.x) * tmp; - D3DXVec3Normalize(&tangent, &tangent); - D3DXVec3Normalize(&binormal, &binormal); + tangent = glm::normalize(tangent); + binormal = glm::normalize(binormal); } void MeshData::DoInit() @@ -575,8 +575,8 @@ void MeshData::DoUpdate() fg.minPos = fg.maxPos = *pos; else { - D3DXVec3Minimize(&fg.minPos, &fg.minPos, pos); - D3DXVec3Maximize(&fg.maxPos, &fg.maxPos, pos); + fg.minPos = glm::min(fg.minPos, *pos); + fg.maxPos = glm::max(fg.maxPos, *pos); } } } @@ -622,44 +622,44 @@ void MeshData::CalcTangentSpace() for (unsigned i = 0; i < vb.GetVertexCount(); ++i) { - D3DXVec3Normalize(vb[i].Tangent(), vb[i].Tangent()); - D3DXVec3Normalize(vb[i].Binormal(), vb[i].Binormal()); + *vb[i].Tangent() = glm::normalize(*vb[i].Tangent()); + *vb[i].Binormal() = glm::normalize(*vb[i].Binormal()); glm::vec3 tmpT = *vb[i].Tangent(); glm::vec3 tmpB = *vb[i].Binormal(); glm::vec3 tmpN = *vb[i].Normal(); - glm::vec3 newT = tmpT - (D3DXVec3Dot(&tmpN, &tmpT) * tmpN); - glm::vec3 newB = tmpB - (D3DXVec3Dot(&tmpN, &tmpB) * tmpN) - (D3DXVec3Dot(&newT, &tmpB) * newT); - D3DXVec3Normalize(&newT, &newT); - D3DXVec3Normalize(&newB, &newB); + glm::vec3 newT = tmpT - (glm::dot(tmpN, tmpT) * tmpN); + glm::vec3 newB = tmpB - (glm::dot(tmpN, tmpB) * tmpN) - (glm::dot(newT, tmpB) * newT); + newT = glm::normalize(newT); + newB = glm::normalize(newB); *vb[i].Tangent() = newT; *vb[i].Binormal() = newB; - float lenT = D3DXVec3Length(&newT); - float lenB = D3DXVec3Length(&newB); + float lenT = glm::length(newT); + float lenB = glm::length(newB); if (lenT <= 0.0001 || lenB <= 0.0001) { if (lenT > 0.5) - D3DXVec3Cross(vb[i].Binormal(), &tmpN, vb[i].Tangent()); + *vb[i].Binormal() = glm::cross(tmpN, *vb[i].Tangent()); else if (lenB > 0.5) - D3DXVec3Cross(vb[i].Tangent(), vb[i].Binormal(), &tmpN); + *vb[i].Tangent() = glm::cross(*vb[i].Binormal(), tmpN); else { glm::vec3 startAxis; - if (D3DXVec3Dot(&XVector, &tmpN) < D3DXVec3Dot(&YVector, &tmpN)) + if (glm::dot(XVector, tmpN) < glm::dot(YVector, tmpN)) startAxis = XVector; else startAxis = YVector; - D3DXVec3Cross(vb[i].Tangent(), &tmpN, &startAxis); - D3DXVec3Cross(vb[i].Binormal(), &tmpN, vb[i].Tangent()); + *vb[i].Tangent() = glm::cross(tmpN, startAxis); + *vb[i].Binormal() = glm::cross(tmpN, *vb[i].Tangent()); } } else - if (D3DXVec3Dot(vb[i].Binormal(), vb[i].Tangent()) > 0.9999f) - D3DXVec3Cross(vb[i].Binormal(), &tmpN, vb[i].Tangent()); + if (glm::dot(*vb[i].Binormal(), *vb[i].Tangent()) > 0.9999f) + *vb[i].Binormal() = glm::cross(tmpN, *vb[i].Tangent()); } } diff --git a/src/Rock3dGame/source/edit/EditMap.cpp b/src/Rock3dGame/source/edit/EditMap.cpp index 8d0f8b21..2fa26c13 100644 --- a/src/Rock3dGame/source/edit/EditMap.cpp +++ b/src/Rock3dGame/source/edit/EditMap.cpp @@ -115,7 +115,7 @@ game::MapObj* Map::PickInstMapObj(const glm::vec3& rayPos, const glm::vec3& rayV if (item->GetGameObj().GetGrActor().RayCastIntersBB(rayPos, rayVec, nearVec, farVec, true)) { - float dist = D3DXVec3Length(&(rayPos - nearVec)); + float dist = glm::length(rayPos - nearVec); if (minDist > dist || mapObj == 0) { mapObj = item; diff --git a/src/Rock3dGame/source/edit/EditTrace.cpp b/src/Rock3dGame/source/edit/EditTrace.cpp index 02103d2b..d7cc0cd5 100644 --- a/src/Rock3dGame/source/edit/EditTrace.cpp +++ b/src/Rock3dGame/source/edit/EditTrace.cpp @@ -280,7 +280,7 @@ glm::vec3 Trace::NodeControl::GetScale() const void Trace::NodeControl::SetScale(const glm::vec3& value) { - _wayPoint->SetSize(D3DXVec3Length(&value)); + _wayPoint->SetSize(glm::length(value)); } glm::vec3 Trace::NodeControl::GetDir() const diff --git a/src/Rock3dGame/source/edit/SceneControl.cpp b/src/Rock3dGame/source/edit/SceneControl.cpp index be9f46f3..23c73c69 100644 --- a/src/Rock3dGame/source/edit/SceneControl.cpp +++ b/src/Rock3dGame/source/edit/SceneControl.cpp @@ -118,7 +118,7 @@ bool SceneControl::Control::OnMouseMoveEvent(const game::MouseMove& mMove) case smNone: if (_clDrag) { - if (!_startDrag && D3DXVec3Length(&_clDragOff) > 0.1f) + if (!_startDrag && glm::length(_clDragOff) > 0.1f) { _startDrag = true; selNode->OnStartDrag(mMove.scrRayPos, mMove.scrRayVec); @@ -181,8 +181,8 @@ bool SceneControl::Control::OnMouseMoveEvent(const game::MouseMove& mMove) float angleY = -offCoord.y / 400.0f * 2 * D3DX_PI; angleY = ceil(angleY / (D3DX_PI/12.0f)) * (D3DX_PI/12.0f); - glm::quat rotZ = glm::angleAxis(angleZ, Vec3DxToGlm(ZVector)); - glm::quat rotY = glm::angleAxis(angleY, Vec3DxToGlm(_owner->_edit->GetWorld()->GetCamera()->GetRight())); + glm::quat rotZ = glm::angleAxis(angleZ, ZVector); + glm::quat rotY = glm::angleAxis(angleY, _owner->_edit->GetWorld()->GetCamera()->GetRight()); glm::quat rot = abs(angleZ) > abs(angleY) ? rotZ : rotY; selNode->SetRot(rot * _clStartRot); @@ -445,14 +445,14 @@ glm::vec3 SceneControl::ComputePoint(const glm::vec3& curPos, const glm::vec3& r glm::vec3 pos = curPos; D3DXPLANE plane; - D3DXPlaneFromPointNormal(&plane, &pos, &planeNorm); + D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(pos), &Vec3GlmToDx(planeNorm)); glm::vec3 newPos; - if (abs(D3DXVec3Dot(&planeNorm, &rayVec)) < 0.05f || !RayCastIntersectPlane(rayStart, rayVec, plane, newPos)) + if (abs(glm::dot(planeNorm, rayVec)) < 0.05f || !RayCastIntersectPlane(rayStart, rayVec, plane, newPos)) { newPos = NullVector; - D3DXPlaneFromPointNormal(&plane, &pos, &XVector); - if (dirMove == dmZ && abs(D3DXVec3Dot(&XVector, &rayVec)) < 0.05f || !RayCastIntersectPlane(rayStart, rayVec, plane, newPos)) + D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(pos), &Vec3GlmToDx(XVector)); + if (dirMove == dmZ && abs(glm::dot(XVector, rayVec)) < 0.05f || !RayCastIntersectPlane(rayStart, rayVec, plane, newPos)) newPos = NullVector; } diff --git a/src/Rock3dGame/source/game/AIPlayer.cpp b/src/Rock3dGame/source/game/AIPlayer.cpp index f4cbadc5..42c19e12 100644 --- a/src/Rock3dGame/source/game/AIPlayer.cpp +++ b/src/Rock3dGame/source/game/AIPlayer.cpp @@ -455,7 +455,7 @@ void AIDebug::GrActor::DoRender(graph::Engine& engine) glm::vec3 error(contData.error.get()); glm::vec3 errorNorm; - D3DXVec3Normalize(&errorNorm, &error); + errorNorm = glm::normalize(error); //Отрисовка error вектора NxVec3 nxErrNorm = error; //nxErrNorm.normalize(); diff --git a/src/Rock3dGame/source/game/CameraManager.cpp b/src/Rock3dGame/source/game/CameraManager.cpp index 80278da6..2eb25175 100644 --- a/src/Rock3dGame/source/game/CameraManager.cpp +++ b/src/Rock3dGame/source/game/CameraManager.cpp @@ -83,8 +83,8 @@ bool CameraManager::Control::OnMouseMoveEvent(const MouseMove& mMove) if (mMove.click.key == lsl::mkRight && mMove.click.state == lsl::ksDown) { - glm::quat quatZ = glm::angleAxis(0.005f * (-mMove.dtCoord.x), Vec3DxToGlm(ZVector)); - glm::quat quatRight = glm::angleAxis(0.005f * mMove.dtCoord.y, Vec3DxToGlm(right)); + glm::quat quatZ = glm::angleAxis(0.005f * (-mMove.dtCoord.x), ZVector); + glm::quat quatRight = glm::angleAxis(0.005f * mMove.dtCoord.y, right); rot = quatZ * quatRight * rot; camera->SetRot(rot); @@ -147,8 +147,7 @@ void CameraManager::Control::OnInputFrame(float deltaTime) alpha = _flyAlpha = _flyAlpha + std::max((alpha - _flyAlpha) * deltaTime * 4.0f, 0.001f); alpha = lsl::ClampValue(alpha / _manager->_flyTime, 0.0f, 1.0f); - glm::vec3 pos; - D3DXVec3Lerp(&pos, &_manager->_flySPos, &_manager->_flyPos, alpha); + glm::vec3 pos = Vec3Lerp(_manager->_flySPos, _manager->_flyPos, alpha); glm::quat rot = glm::slerp(_manager->_flySRot, _manager->_flyRot, alpha); @@ -221,8 +220,8 @@ void CameraManager::Control::OnInputFrame(float deltaTime) } #endif*/ - glm::quat isoRotY = glm::angleAxis(cIsoAngY, Vec3DxToGlm(YVector)); - glm::quat isoRotZ = glm::angleAxis(cIsoAngZ, Vec3DxToGlm(ZVector)); + glm::quat isoRotY = glm::angleAxis(cIsoAngY, YVector); + glm::quat isoRotZ = glm::angleAxis(cIsoAngZ, ZVector); // glm::quat cIsoRot = isoRotZ * isoRotY; @@ -297,9 +296,9 @@ void CameraManager::Control::OnInputFrame(float deltaTime) if (_manager->_style == csIsoView) { dir = glm::vec3(1, 1, 0); - D3DXVec3Normalize(&dir, &dir); + dir = glm::normalize(dir); right = glm::vec3(-1, 1, 0); - D3DXVec3Normalize(&right, &right); + right = glm::normalize(right); rot = cIsoRot; } @@ -321,23 +320,23 @@ void CameraManager::Control::OnInputFrame(float deltaTime) case csThirdPerson: { - float velocityLen = D3DXVec3Length(&targetVel); + float velocityLen = glm::length(targetVel); glm::vec3 velocity = targetDir + targetVel * 0.1f; - D3DXVec3Normalize(&velocity, &velocity); + velocity = glm::normalize(velocity); //строим матрицу поворота относительно скорости glm::vec3 xVec; - D3DXVec3Normalize(&xVec, &velocity); + xVec = glm::normalize(velocity); glm::vec3 yVec; - D3DXVec3Cross(&yVec, &ZVector, &xVec); - if (D3DXVec3Length(&yVec) < 0.001f) + yVec = glm::cross(ZVector, xVec); + if (glm::length(yVec) < 0.001f) { - //D3DXVec3Cross(&yVec, &xVec, &ZVector); + //yVec = glm::cross(xVec, ZVector); } - D3DXVec3Normalize(&yVec, &yVec); + yVec = glm::normalize(yVec); glm::vec3 zVec; - D3DXVec3Cross(&zVec, &xVec, &yVec); - D3DXVec3Normalize(&zVec, &zVec); + zVec = glm::cross(xVec, yVec); + zVec = glm::normalize(zVec); D3DXMATRIX velMat; MatrixRotationFromAxis(xVec, yVec, zVec, velMat); @@ -406,9 +405,9 @@ void CameraManager::Control::OnInputFrame(float deltaTime) targOff.x = targOff.y; targOff.y = targOff.z; targOff.z = 0.0f; - D3DXVec3Normalize(&targOff, &targOff); + targOff = glm::normalize(targOff); // - float yTargetDot = D3DXVec3Dot(&targOff, &glm::vec3(0.0f, 1.0f, 0.0f)); + float yTargetDot = glm::dot(targOff, glm::vec3(0.0f, 1.0f, 0.0f)); //Формируем вектор смещения targOff *= camSize; @@ -444,7 +443,7 @@ void CameraManager::Control::OnInputFrame(float deltaTime) Vec3Rotate(targOff, cIsoRot, targOff); //Планва интерполяция смещения - D3DXVec3Lerp(&_staticVec1, &_staticVec1, &targOff, deltaTime); + _staticVec1 = Vec3Lerp(_staticVec1, targOff, deltaTime); //_staticVec1 = targOff; //Позиция камеры glm::vec3 camPos = targetPos + (-isoDir) * targDist + _staticVec1; @@ -452,7 +451,7 @@ void CameraManager::Control::OnInputFrame(float deltaTime) //Плавная интерполяция при скачках машины glm::vec3 dTargetPos = targetPos - _staticVec2; _staticVec2 = targetPos; - float dTargetLength = D3DXVec3Length(&dTargetPos); + float dTargetLength = glm::length(dTargetPos); if (dTargetLength > 6.0f) { @@ -579,7 +578,7 @@ void CameraManager::Control::TargetChanged() if (_manager->_player) _staticVec2 = _manager->_player && _manager->_player->GetCar().mapObj ? _manager->_player->GetCar().grActor->GetWorldPos() : _manager->_player->GetCar().pos3; else - _staticVec2 = glm::vec3(_manager->_target); + _staticVec2 = glm::vec3(Vec4DxToGlm(_manager->_target)); } } @@ -597,7 +596,7 @@ void CameraManager::ScreenToRay(const lsl::Point& coord, glm::vec3& rayStart, gl { rayStart = ScreenToWorld(coord, 0); rayVec = ScreenToWorld(coord, 1) - rayStart; - D3DXVec3Normalize(&rayVec, &rayVec); + rayVec = glm::normalize(rayVec); } bool CameraManager::ScreenPixelRayCastWithPlaneXY(const lsl::Point& coord, glm::vec3& outVec) @@ -834,20 +833,20 @@ void CameraManager::GetObserverCoord(const glm::vec3& targetPos, float targetDis dAngZ = lsl::ClampValue(dMPos.x * D3DX_PI * 0.001f, -D3DX_PI/2, D3DX_PI/2); } - glm::quat dRotZ = glm::angleAxis(dAngZ, Vec3DxToGlm(ZVector)); + glm::quat dRotZ = glm::angleAxis(dAngZ, ZVector); rot = dRotZ * rot; if (_clampAngle.x != 0 || _clampAngle.y != 0) { glm::vec3 yAxis; QuatRotateVec3(yAxis, YVector, rot); - D3DXVec3Normalize(&yAxis, &yAxis); + yAxis = glm::normalize(yAxis); glm::vec3 norm; - D3DXVec3Cross(&norm, &YVector, &yAxis); - D3DXVec3Normalize(&norm, &norm); + norm = glm::cross(YVector, yAxis); + norm = glm::normalize(norm); - float ang = acos(D3DXVec3Dot(&YVector, &yAxis)); + float ang = acos(glm::dot(YVector, yAxis)); bool angClamp = false; if (norm.z > 0) { @@ -862,21 +861,21 @@ void CameraManager::GetObserverCoord(const glm::vec3& targetPos, float targetDis if (angClamp) { - dRotZ = glm::angleAxis(ang, Vec3DxToGlm(norm)); + dRotZ = glm::angleAxis(ang, norm); QuatRotateVec3(yAxis, YVector, dRotZ); - D3DXVec3Normalize(&yAxis, &yAxis); + yAxis = glm::normalize(yAxis); glm::vec3 zAxis; QuatRotateVec3(zAxis, ZVector, rot); - D3DXVec3Normalize(&zAxis, &zAxis); + zAxis = glm::normalize(zAxis); - ang = acos(D3DXVec3Dot(&ZVector, &zAxis)); - glm::quat dRotY = glm::angleAxis(ang, Vec3DxToGlm(yAxis)); + ang = acos(glm::dot(ZVector, zAxis)); + glm::quat dRotY = glm::angleAxis(ang, yAxis); QuatRotateVec3(zAxis, ZVector, dRotY); glm::vec3 xAxis; - D3DXVec3Cross(&xAxis, &yAxis, &zAxis); - D3DXVec3Normalize(&xAxis, &xAxis); + xAxis = glm::cross(yAxis, zAxis); + xAxis = glm::normalize(xAxis); D3DXMATRIX rotMat; MatrixRotationFromAxis(xAxis, yAxis, zAxis, rotMat); @@ -913,40 +912,40 @@ void CameraManager::GetObserverCoord(const glm::vec3& targetPos, float targetDis angLow = _clampAngle.z; angUp = _clampAngle.w; - dRotY = glm::angleAxis(dAngY, Vec3DxToGlm(yAxis)); + dRotY = glm::angleAxis(dAngY, yAxis); rot = dRotY * rot; } glm::vec3 xAxis; QuatRotateVec3(xAxis, XVector, rot); - D3DXVec3Normalize(&xAxis, &xAxis); + xAxis = glm::normalize(xAxis); glm::vec3 norm; - D3DXVec3Cross(&norm, &(-ZVector), &yAxis); - D3DXVec3Normalize(&norm, &norm); + norm = glm::cross((-ZVector), yAxis); + norm = glm::normalize(norm); float ang = 0; bool angClamp = false; - if (D3DXVec3Dot(&norm, &xAxis) < 0) + if (glm::dot(norm, xAxis) < 0) { angClamp = true; ang = dMPos.y > 0 ? angUp : angLow; } else { - ang = acos(D3DXVec3Dot(&xAxis, &(-ZVector))); + ang = acos(glm::dot(xAxis, (-ZVector))); angClamp = ang - angLow < -0.001f || ang - angUp > 0.001f; } if (angClamp) { ang = ClampValue(ang, angLow, angUp); - dRotY = glm::angleAxis(-ang, Vec3DxToGlm(yAxis)); + dRotY = glm::angleAxis(-ang, yAxis); QuatRotateVec3(xAxis, -ZVector, dRotY); - D3DXVec3Normalize(&xAxis, &xAxis); + xAxis = glm::normalize(xAxis); glm::vec3 zAxis; - D3DXVec3Cross(&zAxis, &xAxis, &yAxis); - D3DXVec3Normalize(&zAxis, &zAxis); + zAxis = glm::cross(xAxis, yAxis); + zAxis = glm::normalize(zAxis); D3DXMATRIX rotMat; MatrixRotationFromAxis(xAxis, yAxis, zAxis, rotMat); rot = glm::quat_cast(Matrix4DxToGlm(rotMat)); diff --git a/src/Rock3dGame/source/game/DataBase.cpp b/src/Rock3dGame/source/game/DataBase.cpp index f058abf1..9a23b890 100644 --- a/src/Rock3dGame/source/game/DataBase.cpp +++ b/src/Rock3dGame/source/game/DataBase.cpp @@ -290,15 +290,15 @@ px::BoxShape* DataBase::AddPxBox(MapObj* mapObj) px::CapsuleShape* DataBase::AddPxCapsule(MapObj* mapObj, float radius, float height, const glm::vec3& dir, const glm::vec3& up) { glm::vec3 right; - D3DXVec3Cross(&right, &dir, &up); + right = glm::cross(dir, up); NxCapsuleShapeDesc desc; desc.radius = radius; desc.height = height; - desc.localPose.M.setColumn(0, NxVec3(right)); - desc.localPose.M.setColumn(1, NxVec3(dir)); - desc.localPose.M.setColumn(2, NxVec3(up)); + desc.localPose.M.setColumn(0, glm::value_ptr(right)); + desc.localPose.M.setColumn(1, glm::value_ptr(dir)); + desc.localPose.M.setColumn(2, glm::value_ptr(up)); px::CapsuleShape& shape = mapObj->GetGameObj().GetPxActor().GetShapes().Add(); shape.AssignFromDesc(desc); @@ -362,7 +362,7 @@ px::Body* DataBase::AddPxBody(MapObj* mapObj, float mass, const glm::vec3* massP if (massPos) { - body.massLocalPose.t.set(NxVec3(*massPos)); + body.massLocalPose.t.set(glm::value_ptr(*massPos)); mapObj->GetGameObj().GetPxActor().SetFlag(NX_AF_LOCK_COM); } @@ -552,7 +552,7 @@ void DataBase::LoadCar(const std::string& name, const std::string& mesh, const s AABB aabb = carDesc.bodyAABB; - if (D3DXVec3Length(&aabb.GetSizes()) < 0.001f) + if (glm::length(aabb.GetSizes()) < 0.001f) aabb = mapObj->GetGameObj().GetGrActor().GetLocalAABB(false); aabb.Scale(carDesc.bodyScale); @@ -844,8 +844,8 @@ void DataBase::LoadEffects() graph::FxFlowEmitter::FlowDesc descFlow; descFlow.speedPos = Vec3Range(glm::vec3(-1.5f, -1.5f, 1.0f), glm::vec3(1.5f, 1.5f, 5.0f), Vec3Range::vdVolume) * 3.0f; - glm::quat spRot1 = glm::angleAxis(D3DX_PI, Vec3DxToGlm(-IdentityVector)); - glm::quat spRot2 = glm::angleAxis(2.0f * D3DX_PI, Vec3DxToGlm(IdentityVector)); + glm::quat spRot1 = glm::angleAxis(D3DX_PI, -IdentityVector); + glm::quat spRot2 = glm::angleAxis(2.0f * D3DX_PI, IdentityVector); descFlow.speedRot = QuatRange(spRot1, spRot2, QuatRange::vdVolume, Point2U(100, 100)); descFlow.gravitation = glm::vec3(0, 0, -9.80f); @@ -865,8 +865,8 @@ void DataBase::LoadEffects() graph::FxFlowEmitter::FlowDesc descFlow; descFlow.speedPos = Vec3Range(glm::vec3(-1.5f, -1.5f, 4.0f), glm::vec3(1.5f, 1.5f, 5.0f), Vec3Range::vdVolume) * 3.0f; - glm::quat spRot1 = glm::angleAxis(D3DX_PI, Vec3DxToGlm(-IdentityVector)); - glm::quat spRot2 = glm::angleAxis(2.0f * D3DX_PI, Vec3DxToGlm(IdentityVector)); + glm::quat spRot1 = glm::angleAxis(D3DX_PI, -IdentityVector); + glm::quat spRot2 = glm::angleAxis(2.0f * D3DX_PI, IdentityVector); descFlow.speedRot = QuatRange(spRot1, spRot2, QuatRange::vdVolume, Point2U(100, 100)); descFlow.gravitation = glm::vec3(0, 0, -9.80f); @@ -1031,7 +1031,7 @@ void DataBase::LoadEffects() desc.startTime = FloatRange(1.0f, 1.1f); desc.density = FloatRange(1.0f, 3.0f); desc.startPos = Vec3Range(glm::vec3(-0.1f, -0.1f, -0.1f), glm::vec3(0.1f, 0.1f, 0.1f), Vec3Range::vdVolume); - desc.startScale = glm::vec3(IdentityVector) / 2; + desc.startScale = glm::vec3(IdentityVector) / 2.0f; graph::FxFlowEmitter::FlowDesc descFlow; descFlow.speedScale = glm::vec3(1.0f, 1.0f, 1.0f); @@ -1260,7 +1260,7 @@ void DataBase::LoadEffects() LoadFxSprite("frostRay", "Effect\\frostRay", NullVector, Vec3Range(IdentityVector, NullVector), NullQuaternion, false, graph::SceneNode::amTwoSide, 1.0f, 0, 0.0f, true, glm::vec2(1.0f, 0.5f), gtEffect, true); //frostShot { - glm::quat lineRot1 = glm::angleAxis(D3DX_PI, Vec3DxToGlm(ZVector)); + glm::quat lineRot1 = glm::angleAxis(D3DX_PI, ZVector); LoadFxSprite("frostShot", "Effect\\frostLine", NullVector, Vec3Range(IdentityVector, NullVector), QuatRange(NullQuaternion, lineRot1), false, graph::SceneNode::amTwoSide, 1.0f, 0, 1.0f, false, glm::vec2(4.0f, 4.0f)); } @@ -1277,8 +1277,8 @@ void DataBase::LoadEffects() desc.startTime = FloatRange(0.1f, 0.2f); desc.density = FloatRange(2.0f, 3.0f); desc.startPos = Vec3Range(glm::vec3(-0.1f, -0.1f, -0.5f), glm::vec3(0.1f, 0.1f, 0.1f), Vec3Range::vdVolume); - glm::quat spRot1 = glm::angleAxis(D3DX_PI, Vec3DxToGlm(-ZVector)); - glm::quat spRot2 = glm::angleAxis(2.0f * D3DX_PI, Vec3DxToGlm(ZVector)); + glm::quat spRot1 = glm::angleAxis(D3DX_PI, -ZVector); + glm::quat spRot2 = glm::angleAxis(2.0f * D3DX_PI, ZVector); desc.startRot = QuatRange(spRot1, spRot2, QuatRange::vdVolume); graph::FxFlowEmitter::FlowDesc descFlow; @@ -1355,8 +1355,8 @@ void DataBase::LoadEffects() graph::FxFlowEmitter::FlowDesc descFlow; descFlow.speedPos = Vec3Range(glm::vec3(-1.5f, -1.5f, 2.0f), glm::vec3(1.5f, 1.5f, 5.0f), Vec3Range::vdVolume) * 3.0f; // - glm::quat spRot1 = glm::angleAxis(D3DX_PI, Vec3DxToGlm(-IdentityVector)); - glm::quat spRot2 = glm::angleAxis(2.0f * D3DX_PI, Vec3DxToGlm(IdentityVector)); + glm::quat spRot1 = glm::angleAxis(D3DX_PI, -IdentityVector); + glm::quat spRot2 = glm::angleAxis(2.0f * D3DX_PI, IdentityVector); descFlow.speedRot = QuatRange(spRot1, spRot2, QuatRange::vdVolume, Point2U(100, 100)); // descFlow.gravitation = glm::vec3(0, 0, -9.80f); @@ -1726,7 +1726,7 @@ void DataBase::LoadEffects() desc.startTime = FloatRange(0.7f); desc.density = FloatRange(1.0f, 1.0f); desc.startPos = Vec3Range(glm::vec3(-0.6f, -0.6f, -0.6f), glm::vec3(0.6f, 0.6f, 0.6f), Vec3Range::vdVolume); - glm::quat rot = glm::angleAxis(D3DX_PI, Vec3DxToGlm(ZVector)); + glm::quat rot = glm::angleAxis(D3DX_PI, ZVector); desc.startRot = QuatRange(NullQuaternion, rot, QuatRange::vdLinear); desc.startScale = glm::vec3(IdentityVector) * 4.0f; @@ -1756,7 +1756,7 @@ void DataBase::LoadEffects() desc.startTime = 0.5f; desc.density = FloatRange(1.0f, 1.0f); desc.startPos = Vec3Range(glm::vec3(-0.3f, -0.3f, -0.3f), glm::vec3(0.3f, 0.3f, 0.3f), Vec3Range::vdVolume); - glm::quat rot = glm::angleAxis(D3DX_PI, Vec3DxToGlm(ZVector)); + glm::quat rot = glm::angleAxis(D3DX_PI, ZVector); desc.startRot = QuatRange(NullQuaternion, rot, QuatRange::vdLinear); desc.startScale = glm::vec3(IdentityVector) * 1.5f; @@ -1865,8 +1865,8 @@ void DataBase::LoadEffects() desc.startTime = 0; desc.density = 5.0f; desc.startPos = Vec3Range(glm::vec3(-2.0f, -2.0f, 0.0f), glm::vec3(2.0f, 2.0f, 0.0f), Vec3Range::vdVolume); - glm::quat rot1 = glm::angleAxis(-D3DX_PI / 3.0f, Vec3DxToGlm(ZVector)); - glm::quat rot2 = glm::angleAxis(D3DX_PI / 3.0f, Vec3DxToGlm(ZVector)); + glm::quat rot1 = glm::angleAxis(-D3DX_PI / 3.0f, ZVector); + glm::quat rot2 = glm::angleAxis(D3DX_PI / 3.0f, ZVector); desc.startRot = QuatRange(rot1, rot2, QuatRange::vdLinear); desc.startScale = glm::vec3(1.0f, 1.0f, 1.0f); @@ -1973,7 +1973,7 @@ void DataBase::LoadWorld1() D3DXPLANE plane; float cosAng = cos(15.0f * D3DX_PI/180.0f); - D3DXPlaneFromPointNormal(&plane, &glm::vec3(0, 0, 6.2f), &glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng)); + D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(glm::vec3(0, 0, 6.2f)), &Vec3GlmToDx(glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng))); D3DXVECTOR4 vec1 = plane; D3DXVECTOR4 vec3(0.0f, -0.15f, 0.075f, 0.0f); @@ -2046,7 +2046,7 @@ void DataBase::LoadWorld2() D3DXPLANE plane; float cosAng = cos(15.0f * D3DX_PI/180.0f); - D3DXPlaneFromPointNormal(&plane, &glm::vec3(0, 0, 6.2f), &glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng)); + D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(glm::vec3(0, 0, 6.2f)), &Vec3GlmToDx(glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng))); D3DXVECTOR4 vec1 = plane; D3DXVECTOR4 vec3(0.0f, -0.15f, 0.10f, 0.0f); @@ -2100,10 +2100,10 @@ void DataBase::LoadWorld3() D3DXPLANE plane; float cosAng = cos(15.0f * D3DX_PI/180.0f); - D3DXPlaneFromPointNormal(&plane, &glm::vec3(0, 0, 6.2f), &glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng)); + D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(glm::vec3(0, 0, 6.2f)), &Vec3GlmToDx(glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng))); D3DXVECTOR4 vec1 = plane; - D3DXPlaneFromPointNormal(&plane, &glm::vec3(0, 0, 6.2f), &ZVector); + D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(glm::vec3(0, 0, 6.2f)), &Vec3GlmToDx(ZVector)); D3DXVECTOR4 vec1Up = plane; D3DXVECTOR4 vec3(0.0f, -0.15f, 0.125f, 0.0f); @@ -2140,7 +2140,7 @@ void DataBase::LoadWorld4() D3DXPLANE plane; float cosAng = cos(15.0f * D3DX_PI/180.0f); - D3DXPlaneFromPointNormal(&plane, &glm::vec3(0, 0, 6.2f), &glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng)); + D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(glm::vec3(0, 0, 6.2f)), &Vec3GlmToDx(glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng))); D3DXVECTOR4 vec1 = plane; D3DXVECTOR4 vec3(0.0f, -0.25f, 0.25f, 0.0f); @@ -2174,11 +2174,11 @@ void DataBase::LoadWorld5() D3DXPLANE plane; - D3DXPlaneFromPointNormal(&plane, &glm::vec3(0, 0, 6.2f), &ZVector); + D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(glm::vec3(0, 0, 6.2f)), &Vec3GlmToDx(ZVector)); D3DXVECTOR4 plane1 = plane; float cosAng = cos(20.0f * D3DX_PI/180.0f); - D3DXPlaneFromPointNormal(&plane, &glm::vec3(0, 0, 6.2f), &glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng)); + D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(glm::vec3(0, 0, 6.2f)), &Vec3GlmToDx(glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng))); D3DXVECTOR4 plane2 = plane; D3DXVECTOR4 vec3(0.0f, -0.15f, 0.125f, 0.0f); @@ -2210,10 +2210,10 @@ void DataBase::LoadWorld6() D3DXPLANE plane; float cosAng = cos(15.0f * D3DX_PI/180.0f); - D3DXPlaneFromPointNormal(&plane, &glm::vec3(0, 0, 6.2f), &glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng)); + D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(glm::vec3(0, 0, 6.2f)), &Vec3GlmToDx(glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng))); D3DXVECTOR4 vec1 = plane; - D3DXPlaneFromPointNormal(&plane, &glm::vec3(0, 0, 6.2f), &ZVector); + D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(glm::vec3(0, 0, 6.2f)), &Vec3GlmToDx(ZVector)); D3DXVECTOR4 vec1Up = plane; D3DXVECTOR4 vec3(0.0f, -0.15f, 0.125f, 0.0f); diff --git a/src/Rock3dGame/source/game/Environment.cpp b/src/Rock3dGame/source/game/Environment.cpp index 339435ee..fa212e6c 100644 --- a/src/Rock3dGame/source/game/Environment.cpp +++ b/src/Rock3dGame/source/game/Environment.cpp @@ -63,8 +63,8 @@ Environment::Environment(World* world): _world(world), _wheater(ewClody), _world for (int i = 0; i < 4; ++i) _lampSwitchOn[i] = true; - glm::quat rot1 = glm::angleAxis(D3DX_PI / 4.0f, Vec3DxToGlm(YVector)); - glm::quat rot2 = glm::angleAxis(-D3DX_PI / 4.0f, Vec3DxToGlm(ZVector)); + glm::quat rot1 = glm::angleAxis(D3DX_PI / 4.0f, YVector); + glm::quat rot2 = glm::angleAxis(-D3DX_PI / 4.0f, ZVector); _sunRot = rot2 * rot1; //текстура по умолчанию. Обязательно должна быть! diff --git a/src/Rock3dGame/source/game/GameBase.cpp b/src/Rock3dGame/source/game/GameBase.cpp index ab8eb64b..90580b1c 100644 --- a/src/Rock3dGame/source/game/GameBase.cpp +++ b/src/Rock3dGame/source/game/GameBase.cpp @@ -196,7 +196,7 @@ void FxSystemSrcSpeed::OnProgress(float deltaTime) { graph::FxParticleSystem* fxSystem = iter->GetItem(); - glm::vec3 speed(GetGameObj()->GetPxActor().GetNxActor()->getLinearVelocity().get()); + glm::vec3 speed = glm::make_vec3(GetGameObj()->GetPxActor().GetNxActor()->getLinearVelocity().get()); if (GetGameObj()->GetParent()) GetGameObj()->GetParent()->GetGrActor().WorldToLocalNorm(speed, speed); @@ -347,8 +347,8 @@ MapObj* EventEffect::CreateEffect(const EffectDesc& desc) if (!_ignoreRot) mapObj->GetGameObj().SetRot(desc.rot); - if (D3DXVec3Length(&_impulse) > 0.001f && mapObj->GetGameObj().GetPxActor().GetNxActor()) - mapObj->GetGameObj().GetPxActor().GetNxActor()->addLocalForce(NxVec3(_impulse), NX_IMPULSE); + if (glm::length(_impulse) > 0.001f && mapObj->GetGameObj().GetPxActor().GetNxActor()) + mapObj->GetGameObj().GetPxActor().GetNxActor()->addLocalForce(glm::value_ptr(_impulse), NX_IMPULSE); return mapObj; } @@ -421,8 +421,8 @@ void EventEffect::SaveSource(lsl::SWriter* writer) sounds->WriteRef(lsl::StrFmt("sound%d", i).c_str(), iter->sound); } - writer->WriteValue("pos", _pos, 3); - writer->WriteValue("impulse", _impulse, 3); + writer->WriteValue("pos", glm::value_ptr(_pos), 3); + writer->WriteValue("impulse", glm::value_ptr(_impulse), 3); writer->WriteValue("ignoreRot", _ignoreRot); } @@ -445,8 +445,8 @@ void EventEffect::LoadSource(lsl::SReader* reader) SetEffect(MapObjRec::Lib::LoadRecordRef(reader, "effect")); - reader->ReadValue("pos", _pos, 3); - reader->ReadValue("impulse", _impulse, 3); + reader->ReadValue("pos", glm::value_ptr(_pos), 3); + reader->ReadValue("impulse", glm::value_ptr(_impulse), 3); reader->ReadValue("ignoreRot", _ignoreRot); } @@ -797,7 +797,7 @@ void PxWheelSlipEffect::OnProgress(float deltaTime) if (slip > 0) { EffectDesc desc; - desc.pos = glm::vec3(contactDesc.contactPoint.get()); + desc.pos = glm::make_vec3(contactDesc.contactPoint.get()); desc.child = false; if (GetMakeEffect()) GetMakeEffect()->GetGameObj().SetPos(GetPos() + desc.pos); @@ -1216,11 +1216,11 @@ void PodushkaAnim::OnProgress(float deltaTime) if (abs(linSpeed) > 1.0f) { D3DXMATRIX localMat = _target->GetMat(); - glm::quat rotQuat = glm::angleAxis(D3DX_PI * deltaTime * linSpeed * 0.1f, Vec3DxToGlm(XVector)); + glm::quat rotQuat = glm::angleAxis(D3DX_PI * deltaTime * linSpeed * 0.1f, XVector); D3DXMATRIX rotMat = Matrix4GlmToDx(glm::transpose(glm::mat4_cast(rotQuat))); const res::FaceGroup& fg = _target->GetMesh()->GetData()->faceGroups[_target->GetMeshId()]; - glm::vec3 offset = (fg.minPos + fg.maxPos) / 2; + glm::vec3 offset = (fg.minPos + fg.maxPos) / 2.0f; D3DXMATRIX matOffs1; D3DXMatrixTranslation(&matOffs1, -offset.x, -offset.y, -offset.z); diff --git a/src/Rock3dGame/source/game/GameCar.cpp b/src/Rock3dGame/source/game/GameCar.cpp index 7e23c750..3b68b116 100644 --- a/src/Rock3dGame/source/game/GameCar.cpp +++ b/src/Rock3dGame/source/game/GameCar.cpp @@ -186,13 +186,13 @@ void CarWheel::PxSyncWheel(float alpha) if (s && wcd.contactForce > -1000) st = wcd.contactPosition - r; - glm::quat quat1 = glm::angleAxis(_steerAngle, Vec3DxToGlm(ZVector)); - glm::quat quat2 = glm::angleAxis(_summAngle, Vec3DxToGlm(YVector)); // NullQuaternion; + glm::quat quat1 = glm::angleAxis(_steerAngle, ZVector); + glm::quat quat2 = glm::angleAxis(_summAngle, YVector); // NullQuaternion; glm::quat resRot = quat1 * quat2; if (invertWheel) { - glm::quat invRot = glm::angleAxis(D3DX_PI, Vec3DxToGlm(ZVector)); + glm::quat invRot = glm::angleAxis(D3DX_PI, ZVector); resRot = resRot * invRot; } @@ -206,9 +206,9 @@ void CarWheel::PxSyncWheel(float alpha) } GetGrActor().SetRot(resRot); - glm::vec3 resPos((t - dir * st).get()); + glm::vec3 resPos = glm::make_vec3((t - dir * st).get()); if (alpha < 1.0f) - D3DXVec3Lerp(&resPos, &_pxPrevPos, &resPos, alpha); + resPos = Vec3Lerp(_pxPrevPos, resPos, alpha); else _pxPrevPos = resPos; GetGrActor().SetPos(resPos + _offset); @@ -248,7 +248,7 @@ void CarWheel::OnProgress(float deltaTime) _actTrail->AddRef(); } - _actTrail->GetGameObj().SetWorldPos(glm::vec3(contactDesc.contactPoint.get()) + ZVector * 0.001f); + _actTrail->GetGameObj().SetWorldPos(glm::make_vec3(contactDesc.contactPoint.get()) + ZVector * 0.001f); //Во время установки следа время жизни не меняется _actTrail->GetGameObj().SetTimeLife(0); } @@ -540,7 +540,7 @@ inline const void NxQuatRotation(NxQuat& quat, const NxQuat& quat1, const NxQuat void GameCar::WheelsProgress(float deltaTime, float motorTorque, float breakTorque) { NxActor* nxActor = GetPxActor().GetNxActor(); - float speed = GetSpeed(nxActor, nxActor->getGlobalOrientationQuat().rot(NxVec3(1.0f, 0.0f, 0.0f)).get()); + float speed = GetSpeed(nxActor, glm::make_vec3(nxActor->getGlobalOrientationQuat().rot(NxVec3(1.0f, 0.0f, 0.0f)).get())); float absSpeed = GetPxActor().GetNxActor()->getLinearVelocity().magnitude(); if (_maxSpeed > 0 && absSpeed > _maxSpeed) @@ -1501,7 +1501,7 @@ float GameCar::GetSpeed(NxActor* nxActor, const glm::vec3& dir) { if (nxActor) { - float speed = D3DXVec3Dot(&dir, &glm::vec3(nxActor->getLinearVelocity().get())); + float speed = glm::dot(dir, glm::make_vec3(nxActor->getLinearVelocity().get())); //погрешность 1 м/с if (abs(speed) < 1.0f) speed = 0.0f; diff --git a/src/Rock3dGame/source/game/GameObject.cpp b/src/Rock3dGame/source/game/GameObject.cpp index eb9dd860..1e490d28 100644 --- a/src/Rock3dGame/source/game/GameObject.cpp +++ b/src/Rock3dGame/source/game/GameObject.cpp @@ -159,7 +159,7 @@ glm::vec3 GameObject::GetContactPoint(const px::Scene::OnContactEvent& contact) while (contIter.goNextPatch()) while (contIter.goNextPoint()) { - return contIter.getPoint().get(); + return glm::make_vec3(contIter.getPoint().get()); } return NullVector; @@ -205,7 +205,7 @@ void GameObject::RayCastClosestActor(const glm::vec3& rayStart, const glm::vec3& nxMask.bits2 = 0; nxMask.bits3 = 0; - if (NxShape* shape = GetPxActor().GetScene()->GetNxScene()->raycastClosestShape(NxRay(NxVec3(rayStart), NxVec3(rayDir)), shapesType, nxHit, groups, maxDist, 0xFFFFFFFF, mask > 0 ? &nxMask : 0)) + if (NxShape* shape = GetPxActor().GetScene()->GetNxScene()->raycastClosestShape(NxRay(glm::value_ptr(rayStart), glm::value_ptr(rayDir)), shapesType, nxHit, groups, maxDist, 0xFFFFFFFF, mask > 0 ? &nxMask : 0)) hit.gameActor = GetGameObjFromShape(shape); hit.distance = nxHit.distance; @@ -231,13 +231,13 @@ void GameObject::OnPxSync(float alpha) if (nxActor == NULL) return; - glm::vec3 pxVelocityLerp = nxActor->getLinearVelocity().get(); + glm::vec3 pxVelocityLerp = glm::make_vec3(nxActor->getLinearVelocity().get()); if (alpha < 1.0f) { - D3DXVec3Lerp(&_pxPosLerp, &_pxPrevPos, &_pxActor->GetPos(), alpha); + _pxPosLerp = Vec3Lerp(_pxPrevPos, _pxActor->GetPos(), alpha); _pxRotLerp = glm::slerp(_pxPrevRot, _pxActor->GetRot(), alpha); - D3DXVec3Lerp(&_pxVelocityLerp, &_pxPrevVelocity, &pxVelocityLerp, alpha); + _pxVelocityLerp = Vec3Lerp(_pxPrevVelocity, pxVelocityLerp, alpha); } else { @@ -311,7 +311,7 @@ void GameObject::OnFrame(float deltaTime, float pxAlpha) { _rotSyncAngle = std::min(_rotSyncAngle + 1.3f * D3DX_PI * deltaTime, 0.0f); } - glm::quat rot = glm::angleAxis(-_rotSyncAngle, Vec3DxToGlm(_rotSyncAxis)); + glm::quat rot = glm::angleAxis(-_rotSyncAngle, _rotSyncAxis); _grActor->SetRot(rot * _grActor->GetRot()); } @@ -337,7 +337,7 @@ void GameObject::OnFrame(float deltaTime, float pxAlpha) _rotSyncAngle2 = std::min(_rotSyncAngle2 + 1.3f * D3DX_PI * deltaTime, 0.0f); } - glm::quat rot = glm::angleAxis(-_rotSyncAngle2, Vec3DxToGlm(_rotSyncAxis2)); + glm::quat rot = glm::angleAxis(-_rotSyncAngle2, _rotSyncAxis2); _grActor->SetRot(rot * _rotSync2 * _grActor->GetRot()); } else if (_rotSyncLength2 != 0) @@ -376,8 +376,8 @@ void GameObject::LoadSource(lsl::SReader* reader) void GameObject::SaveProxy(lsl::SWriter* writer) { - writer->WriteValue("pos", GetPos(), 3); - writer->WriteValue("scale", GetScale(), 3); + writer->WriteValue("pos", glm::value_ptr(GetPos()), 3); + writer->WriteValue("scale", glm::value_ptr(GetScale()), 3); writer->WriteValue("rot", reinterpret_cast(&GetRot().x), 4); writer->WriteValue("life", _life); @@ -395,8 +395,8 @@ void GameObject::LoadProxy(lsl::SReader* reader) glm::vec3 scale; glm::quat rot; - reader->ReadValue("pos", pos, 3); - reader->ReadValue("scale", scale, 3); + reader->ReadValue("pos", glm::value_ptr(pos), 3); + reader->ReadValue("scale", glm::value_ptr(scale), 3); reader->ReadValue("rot", reinterpret_cast(&rot.x), 4); reader->ReadValue("life", _life); @@ -761,7 +761,7 @@ const glm::vec3& GameObject::GetScale() const void GameObject::SetScale(const glm::vec3& value) { - float len = D3DXVec3Length(&value); + float len = glm::length(value); _grActor->SetScale(value); _pxActor->SetScale(value); @@ -838,8 +838,8 @@ const glm::vec3& GameObject::GetPosSync() const void GameObject::SetPosSync(const glm::vec3& value) { _posSync = value; - D3DXVec3Normalize(&_posSyncDir, &value); - _posSyncLength = D3DXVec3Length(&value); + _posSyncDir = glm::normalize(value); + _posSyncLength = glm::length(value); SetSyncFrameEvent(true); } @@ -852,7 +852,7 @@ const glm::quat& GameObject::GetRotSync() const void GameObject::SetRotSync(const glm::quat& value) { _rotSync = value; - _rotSyncAxis = Vec3GlmToDx(glm::axis(_rotSync)); + _rotSyncAxis = glm::axis(_rotSync); _rotSyncAngle = glm::angle(_rotSync); float angle = abs(_rotSyncAngle); @@ -872,11 +872,11 @@ const glm::vec3& GameObject::GetPosSync2() const void GameObject::SetPosSync2(const glm::vec3& curSync, const glm::vec3& newSync) { _posSyncDir2 = curSync - newSync; - _posSyncDist2 = D3DXVec3Length(&_posSyncDir2); + _posSyncDist2 = glm::length(_posSyncDir2); _posSyncDir2 = _posSyncDist2 != 0.0f ? _posSyncDir2 / _posSyncDist2 : NullVector; _posSync2 = newSync; - _posSyncLength2 = D3DXVec3Length(&_posSync2); + _posSyncLength2 = glm::length(_posSync2); SetSyncFrameEvent(true); } @@ -889,7 +889,7 @@ const glm::quat& GameObject::GetRotSync2() const void GameObject::SetRotSync2(const glm::quat& curSync, const glm::quat& newSync) { glm::quat dRot = QuatRotation(newSync, curSync); - _rotSyncAxis2 = Vec3GlmToDx(glm::axis(dRot)); + _rotSyncAxis2 = glm::axis(dRot); _rotSyncAngle2 = glm::angle(dRot); float angle = abs(_rotSyncAngle2); @@ -899,7 +899,7 @@ void GameObject::SetRotSync2(const glm::quat& curSync, const glm::quat& newSync) } _rotSync2 = newSync; - glm::vec3 axis = Vec3GlmToDx(glm::axis(_rotSync2)); + glm::vec3 axis = glm::axis(_rotSync2); _rotSyncLength2 = glm::angle(_rotSync2); SetSyncFrameEvent(true); diff --git a/src/Rock3dGame/source/game/HudMenu.cpp b/src/Rock3dGame/source/game/HudMenu.cpp index bc59870d..183599e6 100644 --- a/src/Rock3dGame/source/game/HudMenu.cpp +++ b/src/Rock3dGame/source/game/HudMenu.cpp @@ -437,7 +437,7 @@ void PlayerStateFrame::ProccessCarLifeBar(float deltaTime) glm::vec3 pos = _carLifes[i].target->GetCar().gameObj->GetPos() + glm::vec3(0.0f, 0.0f, 0.0f); D3DXVECTOR4 projVec; - D3DXVec3Transform(&projVec, &pos, &menu()->GetGUI()->GetCamera3d()->GetContextInfo().GetViewProj()); + D3DXVec3Transform(&projVec, &Vec3GlmToDx(pos), &menu()->GetGUI()->GetCamera3d()->GetContextInfo().GetViewProj()); //glm::vec2 vec = projVec / projVec.w; glm::vec2 vec = glm::vec2((projVec / projVec.w).x, (projVec / projVec.w).y); // remove after glm::vec3 replacement @@ -687,7 +687,7 @@ void PlayerStateFrame::UpdateState(float deltaTime) glm::vec3 pos = opponent.player->GetCar().gameObj->GetWorldPos() + glm::vec3(1.0f, -0.5f, 0); D3DXVECTOR4 projVec; - D3DXVec3Transform(&projVec, &pos, &menu()->GetGUI()->GetCamera3d()->GetContextInfo().GetViewProj()); + D3DXVec3Transform(&projVec, &Vec3GlmToDx(pos), &menu()->GetGUI()->GetCamera3d()->GetContextInfo().GetViewProj()); //glm::vec2 vec = projVec / projVec.w; glm::vec2 vec = glm::vec2((projVec / projVec.w).x, (projVec / projVec.w).y); // remove after glm::vec3 replacement @@ -1036,7 +1036,7 @@ void MiniMapFrame::BuildPath(WayPath& path, res::VertexData& data) for (float i = -smSlice; i <= smSlice; ++i) { float dAlpha = i/smSlice * alpha2; - glm::quat rot = glm::angleAxis(ccw ? dAlpha : -dAlpha, Vec3DxToGlm(ZVector)); + glm::quat rot = glm::angleAxis(ccw ? dAlpha : -dAlpha, ZVector); D3DXMATRIX rotMat = Matrix4GlmToDx(glm::transpose(glm::mat4_cast(rot))); auto rotMatGLM = Matrix4DxToGlm(rotMat); // remove after D3DXMATRIX replacement glm::vec2 vec = Vec2TransformNormal(smVec, rotMatGLM); diff --git a/src/Rock3dGame/source/game/Logic.cpp b/src/Rock3dGame/source/game/Logic.cpp index 48ffc441..26dbdfc9 100644 --- a/src/Rock3dGame/source/game/Logic.cpp +++ b/src/Rock3dGame/source/game/Logic.cpp @@ -121,14 +121,14 @@ void LogicEventEffect::Save(lsl::SWriter* writer) { MapObjRec::Lib::SaveRecordRef(writer, "effect", _effect); - writer->WriteValue("pos", _pos, 3); + writer->WriteValue("pos", glm::value_ptr(_pos), 3); } void LogicEventEffect::Load(lsl::SReader* reader) { SetEffect(MapObjRec::Lib::LoadRecordRef(reader, "effect")); - reader->ReadValue("pos", _pos, 3); + reader->ReadValue("pos", glm::value_ptr(_pos), 3); } MapObjRec* LogicEventEffect::GetEffect() @@ -295,7 +295,7 @@ void PairPxContactEffect::OnContact(const px::Scene::OnContactEvent& contact1, c shapes[0] = !streamIter.isDeletedShape(0) ? streamIter.getShape(0) : 0; shapes[1] = !streamIter.isDeletedShape(1) ? streamIter.getShape(1) : 0; - bool checkShapes = D3DXVec3Length(&contact1.sumFrictionForce) > 10000.0f; + bool checkShapes = glm::length(contact1.sumFrictionForce) > 10000.0f; for (int i = 0; i < 2; ++i) { checkShapes &= shapes[i] && shapes[i]->getType() != NX_SHAPE_WHEEL; @@ -318,12 +318,12 @@ void PairPxContactEffect::OnContact(const px::Scene::OnContactEvent& contact1, c while (streamIter.goNextPatch()) while (streamIter.goNextPoint()) { - InsertContact(mapIter, shapes[0], shapes[1], streamIter.getPoint().get()); + InsertContact(mapIter, shapes[0], shapes[1], glm::make_vec3(streamIter.getPoint().get())); if (contNode->source && !activateSnd) { activateSnd = true; - contNode->source->SetPos3d(streamIter.getPoint().get()); + contNode->source->SetPos3d(glm::make_vec3(streamIter.getPoint().get())); contNode->source->Play(); } } diff --git a/src/Rock3dGame/source/game/Menu.cpp b/src/Rock3dGame/source/game/Menu.cpp index d42db69d..cf0ba861 100644 --- a/src/Rock3dGame/source/game/Menu.cpp +++ b/src/Rock3dGame/source/game/Menu.cpp @@ -347,9 +347,9 @@ glm::vec2 Menu::StretchImage(gui::Material& material, const glm::vec2& size, boo glm::quat Menu::GetIsoRot() { - glm::quat rotZ = glm::angleAxis(-2.0f * D3DX_PI / 3.0f, Vec3DxToGlm(ZVector)); - glm::quat rotY = glm::angleAxis(0.0f, Vec3DxToGlm(YVector)); - glm::quat rotX = glm::angleAxis(-D3DX_PI / 3.0f, Vec3DxToGlm(XVector)); + glm::quat rotZ = glm::angleAxis(-2.0f * D3DX_PI / 3.0f, ZVector); + glm::quat rotY = glm::angleAxis(0.0f, YVector); + glm::quat rotX = glm::angleAxis(-D3DX_PI / 3.0f, XVector); //return rotZ * rotY * rotX; return rotX * rotY * rotZ; diff --git a/src/Rock3dGame/source/game/Player.cpp b/src/Rock3dGame/source/game/Player.cpp index d715b415..b35f3de4 100644 --- a/src/Rock3dGame/source/game/Player.cpp +++ b/src/Rock3dGame/source/game/Player.cpp @@ -910,7 +910,7 @@ void Player::CarState::Update(float deltaTime) mat34.M(2, 0), mat34.M(2, 1), mat34.M(2, 2), 0, mat34.t[0], mat34.t[1], mat34.t[2], 1); - pos3 = mat34.t.get(); + pos3 = glm::make_vec3(mat34.t.get()); nxActor->getGlobalOrientationQuat().getXYZW(reinterpret_cast(&rot3.x)); Vec3Rotate(XVector, rot3, dir3); @@ -1004,7 +1004,7 @@ void Player::CarState::Update(float deltaTime) } /*//контроль за направляющим углом - float dirAngle = acos(abs(D3DXVec3Dot(&lastDir, &dir3))); + float dirAngle = acos(abs(glm::dot(lastDir, dir3))); lastDir = dir3; summAngle += dirAngle; summAngleTime += deltaTime; @@ -1565,12 +1565,12 @@ Player* Player::FindClosestEnemy(float viewAngle, bool zTest) glm::vec3 enemyPos = tCar.pos3; glm::vec3 dir; - D3DXVec3Normalize(&dir, &(enemyPos - carPos)); - float angle = D3DXVec3Dot(&dir, &carDir); + dir = glm::normalize(enemyPos - carPos); + float angle = glm::dot(dir, carDir); D3DXPLANE dirPlane; - D3DXPlaneFromPointNormal(&dirPlane, &carPos, &carDir); - float dist = D3DXPlaneDotCoord(&dirPlane, &enemyPos); + D3DXPlaneFromPointNormal(&dirPlane, &Vec3GlmToDx(carPos), &Vec3GlmToDx(carDir)); + float dist = D3DXPlaneDotCoord(&dirPlane, &Vec3GlmToDx(enemyPos)); float absDist = abs(dist); //Объект ближе @@ -1596,7 +1596,7 @@ float Player::ComputeCarBBSize() AABB aabb = _car.grActor->GetLocalAABB(false); aabb.Transform(_car.grActor->GetWorldScale()); - return D3DXVec3Length(&aabb.GetSizes()); + return glm::length(aabb.GetSizes()); } void Player::CreateCar(bool newRace) @@ -1718,7 +1718,7 @@ void Player::ResetCar() newDir2 = node->GetTile().GetDir(); } - NxRay nxRay(NxVec3(rayPos), NxVec3(-ZVector)); + NxRay nxRay(glm::value_ptr(rayPos), glm::value_ptr(-ZVector)); NxRaycastHit hit; NxShape* hitShape = _car.gameObj->GetPxActor().GetScene()->GetNxScene()->raycastClosestShape(nxRay, NX_ALL_SHAPES, hit, 1 << px::Scene::cdgTrackPlane | 1 << px::Scene::cdgPlaneDeath | 1 << px::Scene::cdgDefault, NX_MAX_F32, NX_RAYCAST_SHAPE); GameObject* hitGameObj = GameObject::GetGameObjFromShape(hitShape); @@ -1764,10 +1764,10 @@ void Player::ResetCar() _car.gameObj->SetWorldRot(NullQuaternion); _car.gameObj->SetWorldDir(glm::vec3(dir2.x, dir2.y, 0.0f)); - _car.gameObj->GetPxActor().GetNxActor()->setLinearVelocity(NxVec3(NullVector)); - _car.gameObj->GetPxActor().GetNxActor()->setLinearMomentum(NxVec3(NullVector)); - _car.gameObj->GetPxActor().GetNxActor()->setAngularMomentum(NxVec3(NullVector)); - _car.gameObj->GetPxActor().GetNxActor()->setAngularVelocity(NxVec3(NullVector)); + _car.gameObj->GetPxActor().GetNxActor()->setLinearVelocity(glm::value_ptr(NullVector)); + _car.gameObj->GetPxActor().GetNxActor()->setLinearMomentum(glm::value_ptr(NullVector)); + _car.gameObj->GetPxActor().GetNxActor()->setAngularMomentum(glm::value_ptr(NullVector)); + _car.gameObj->GetPxActor().GetNxActor()->setAngularVelocity(glm::value_ptr(NullVector)); } } diff --git a/src/Rock3dGame/source/game/Race.cpp b/src/Rock3dGame/source/game/Race.cpp index 572430b1..ccbaf03d 100644 --- a/src/Rock3dGame/source/game/Race.cpp +++ b/src/Rock3dGame/source/game/Race.cpp @@ -1608,7 +1608,7 @@ void Workshop::LoadWeapons() projDesc.SetModel(_race->GetDB()->GetRecord(MapObjLib::ctEffects, "frostHit")); projDesc.SetModel2(_race->GetDB()->GetRecord(MapObjLib::ctEffects, "frost")); projDesc.pos = glm::vec3(0.7f, 0.0f, 0.3f); - projDesc.rot = glm::angleAxis(D3DX_PI / 24.0f, Vec3DxToGlm(YVector)); + projDesc.rot = glm::angleAxis(D3DX_PI / 24.0f, YVector); projDesc.size = glm::vec3(0.5f, 0.5f, 0.0f); projDesc.maxDist = 100.0f; projDesc.damage = 19.0f/0.5f; @@ -2548,7 +2548,7 @@ void Garage::FillStandartSlots(Car* car, const std::string& wheel, bool truba, c if (hyperDrive) { place.show = true; - glm::quat rot = glm::angleAxis(D3DX_PI, Vec3DxToGlm(ZVector)); + glm::quat rot = glm::angleAxis(D3DX_PI, ZVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("hyperdrive"), rot, *hyperDrive)); } if (!place.items.empty()) @@ -2721,13 +2721,13 @@ void Garage::LoadCars() place.pos = glm::vec3(0.0f, 1.0f, 0.3f); glm::vec3 offset; - glm::quat rot = glm::angleAxis(-D3DX_PI / 3.0f, Vec3DxToGlm(XVector)); + glm::quat rot = glm::angleAxis(-D3DX_PI / 3.0f, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("rocketLauncher"), rot)); - rot = glm::angleAxis(-D3DX_PI / 3.0f, Vec3DxToGlm(XVector)); + rot = glm::angleAxis(-D3DX_PI / 3.0f, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("pulsator"), rot)); - rot = glm::angleAxis(-D3DX_PI, Vec3DxToGlm(XVector)); + rot = glm::angleAxis(-D3DX_PI, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("fireGun"), rot)); offset = glm::vec3(1.25f, -0.3f, 0.05f); @@ -2742,10 +2742,10 @@ void Garage::LoadCars() place.pos = glm::vec3(0.0f, -1.0f, 0.3f); glm::vec3 offset; - glm::quat rot = glm::angleAxis(D3DX_PI / 3.0f, Vec3DxToGlm(XVector)); + glm::quat rot = glm::angleAxis(D3DX_PI / 3.0f, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("rocketLauncher"), rot)); - rot = glm::angleAxis(D3DX_PI / 3.0f, Vec3DxToGlm(XVector)); + rot = glm::angleAxis(D3DX_PI / 3.0f, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("pulsator"), rot)); place.items.push_back(&GetShop().GetSlot("fireGun")); @@ -2798,13 +2798,13 @@ void Garage::LoadCars() place.pos = glm::vec3(0.0f, 1.4f, 0.0f); glm::vec3 offset; - glm::quat rot = glm::angleAxis(-D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); + glm::quat rot = glm::angleAxis(-D3DX_PI / 2.0f, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("rocketLauncher"), rot)); - rot = glm::angleAxis(-D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); + rot = glm::angleAxis(-D3DX_PI / 2.0f, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("pulsator"), rot)); - rot = glm::angleAxis(-D3DX_PI, Vec3DxToGlm(XVector)); + rot = glm::angleAxis(-D3DX_PI, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("fireGun"), rot)); offset = glm::vec3(0.85f, -0.8f, 0.0f); @@ -2812,17 +2812,17 @@ void Garage::LoadCars() place.items.push_back(&GetShop().GetSlot("torpedaWeapon")); - rot = glm::angleAxis(-D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); + rot = glm::angleAxis(-D3DX_PI / 2.0f, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("turel"), rot)); - rot = glm::angleAxis(-D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); + rot = glm::angleAxis(-D3DX_PI / 2.0f, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("phaseImpulse"), rot)); - rot = glm::angleAxis(-D3DX_PI / 24.0f, Vec3DxToGlm(YVector)); + rot = glm::angleAxis(-D3DX_PI / 24.0f, YVector); offset = glm::vec3(0.85f, -0.6f, 0.0f); place.items.push_back(PlaceItem(&GetShop().GetSlot("mortira"), rot, offset)); - rot = glm::angleAxis(-D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); + rot = glm::angleAxis(-D3DX_PI / 2.0f, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("hyperBlaster"), rot)); car->SetSlot(Player::stWeapon2, place); @@ -2834,10 +2834,10 @@ void Garage::LoadCars() place.pos = glm::vec3(0.0f, -1.4f, 0.0f); glm::vec3 offset; - glm::quat rot = glm::angleAxis(D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); + glm::quat rot = glm::angleAxis(D3DX_PI / 2.0f, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("rocketLauncher"), rot)); - rot = glm::angleAxis(D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); + rot = glm::angleAxis(D3DX_PI / 2.0f, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("pulsator"), rot)); place.items.push_back(&GetShop().GetSlot("fireGun")); @@ -2847,17 +2847,17 @@ void Garage::LoadCars() place.items.push_back(&GetShop().GetSlot("torpedaWeapon")); - rot = glm::angleAxis(D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); + rot = glm::angleAxis(D3DX_PI / 2.0f, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("turel"), rot)); - rot = glm::angleAxis(D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); + rot = glm::angleAxis(D3DX_PI / 2.0f, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("phaseImpulse"), rot)); - rot = glm::angleAxis(-D3DX_PI / 24.0f, Vec3DxToGlm(YVector)); + rot = glm::angleAxis(-D3DX_PI / 24.0f, YVector); offset = glm::vec3(0.85f, 0.6f, 0.0f); place.items.push_back(PlaceItem(&GetShop().GetSlot("mortira"), rot, offset)); - rot = glm::angleAxis(D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); + rot = glm::angleAxis(D3DX_PI / 2.0f, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("hyperBlaster"), rot)); car->SetSlot(Player::stWeapon3, place); @@ -2903,13 +2903,13 @@ void Garage::LoadCars() place.pos = glm::vec3(0.2f, 0.6f, 0.25f); glm::vec3 offset; - glm::quat rot = glm::angleAxis(-D3DX_PI / 3.0f, Vec3DxToGlm(XVector)); + glm::quat rot = glm::angleAxis(-D3DX_PI / 3.0f, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("rocketLauncher"), rot)); - rot = glm::angleAxis(-D3DX_PI / 3.0f, Vec3DxToGlm(XVector)); + rot = glm::angleAxis(-D3DX_PI / 3.0f, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("pulsator"), rot)); - rot = glm::angleAxis(-D3DX_PI, Vec3DxToGlm(XVector)); + rot = glm::angleAxis(-D3DX_PI, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("fireGun"), rot)); //offset = glm::vec3(1.2f, -0.05f, -0.1f); @@ -2917,16 +2917,16 @@ void Garage::LoadCars() place.items.push_back(&GetShop().GetSlot("torpedaWeapon")); - rot = glm::angleAxis(-D3DX_PI / 3.0f, Vec3DxToGlm(XVector)); + rot = glm::angleAxis(-D3DX_PI / 3.0f, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("turel"), rot)); - rot = glm::angleAxis(-D3DX_PI / 3.0f, Vec3DxToGlm(XVector)); + rot = glm::angleAxis(-D3DX_PI / 3.0f, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("phaseImpulse"), rot)); - rot = glm::angleAxis(-D3DX_PI / 24.0f, Vec3DxToGlm(YVector)); + rot = glm::angleAxis(-D3DX_PI / 24.0f, YVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("mortira"), rot)); - rot = glm::angleAxis(-D3DX_PI / 3.0f, Vec3DxToGlm(XVector)); + rot = glm::angleAxis(-D3DX_PI / 3.0f, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("hyperBlaster"), rot)); car->SetSlot(Player::stWeapon2, place); @@ -2938,10 +2938,10 @@ void Garage::LoadCars() place.pos = glm::vec3(0.2f, -0.6f, 0.25f); glm::vec3 offset; - glm::quat rot = glm::angleAxis(D3DX_PI / 3.0f, Vec3DxToGlm(XVector)); + glm::quat rot = glm::angleAxis(D3DX_PI / 3.0f, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("rocketLauncher"), rot)); - rot = glm::angleAxis(D3DX_PI / 3.0f, Vec3DxToGlm(XVector)); + rot = glm::angleAxis(D3DX_PI / 3.0f, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("pulsator"), rot)); place.items.push_back(&GetShop().GetSlot("fireGun")); @@ -2951,16 +2951,16 @@ void Garage::LoadCars() place.items.push_back(&GetShop().GetSlot("torpedaWeapon")); - rot = glm::angleAxis(D3DX_PI / 3.0f, Vec3DxToGlm(XVector)); + rot = glm::angleAxis(D3DX_PI / 3.0f, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("turel"), rot)); - rot = glm::angleAxis(D3DX_PI / 3.0f, Vec3DxToGlm(XVector)); + rot = glm::angleAxis(D3DX_PI / 3.0f, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("phaseImpulse"), rot)); - rot = glm::angleAxis(-D3DX_PI / 24.0f, Vec3DxToGlm(YVector)); + rot = glm::angleAxis(-D3DX_PI / 24.0f, YVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("mortira"), rot)); - rot = glm::angleAxis(D3DX_PI / 3.0f, Vec3DxToGlm(XVector)); + rot = glm::angleAxis(D3DX_PI / 3.0f, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("hyperBlaster"), rot)); car->SetSlot(Player::stWeapon3, place); @@ -3000,13 +3000,13 @@ void Garage::LoadCars() place.pos = glm::vec3(0.3f, 0.8f, 0.4f); glm::vec3 offset; - glm::quat rot = glm::angleAxis(-D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); + glm::quat rot = glm::angleAxis(-D3DX_PI / 2.0f, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("rocketLauncher"), rot)); - rot = glm::angleAxis(-D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); + rot = glm::angleAxis(-D3DX_PI / 2.0f, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("pulsator"), rot)); - rot = glm::angleAxis(-D3DX_PI, Vec3DxToGlm(XVector)); + rot = glm::angleAxis(-D3DX_PI, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("fireGun"), rot)); offset = glm::vec3(0.95f, -0.1f, -0.1f); @@ -3014,16 +3014,16 @@ void Garage::LoadCars() place.items.push_back(&GetShop().GetSlot("torpedaWeapon")); - rot = glm::angleAxis(-D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); + rot = glm::angleAxis(-D3DX_PI / 2.0f, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("turel"), rot)); - rot = glm::angleAxis(-D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); + rot = glm::angleAxis(-D3DX_PI / 2.0f, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("phaseImpulse"), rot)); - rot = glm::angleAxis(-D3DX_PI / 24.0f, Vec3DxToGlm(YVector)); + rot = glm::angleAxis(-D3DX_PI / 24.0f, YVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("mortira"), rot)); - rot = glm::angleAxis(-D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); + rot = glm::angleAxis(-D3DX_PI / 2.0f, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("hyperBlaster"), rot)); car->SetSlot(Player::stWeapon2, place); @@ -3035,10 +3035,10 @@ void Garage::LoadCars() place.pos = glm::vec3(0.3f, -0.8f, 0.4f); glm::vec3 offset; - glm::quat rot = glm::angleAxis(D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); + glm::quat rot = glm::angleAxis(D3DX_PI / 2.0f, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("rocketLauncher"), rot)); - rot = glm::angleAxis(D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); + rot = glm::angleAxis(D3DX_PI / 2.0f, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("pulsator"), rot)); place.items.push_back(&GetShop().GetSlot("fireGun")); @@ -3048,16 +3048,16 @@ void Garage::LoadCars() place.items.push_back(&GetShop().GetSlot("torpedaWeapon")); - rot = glm::angleAxis(D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); + rot = glm::angleAxis(D3DX_PI / 2.0f, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("turel"), rot)); - rot = glm::angleAxis(D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); + rot = glm::angleAxis(D3DX_PI / 2.0f, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("phaseImpulse"), rot)); - rot = glm::angleAxis(-D3DX_PI / 24.0f, Vec3DxToGlm(YVector)); + rot = glm::angleAxis(-D3DX_PI / 24.0f, YVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("mortira"), rot)); - rot = glm::angleAxis(D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); + rot = glm::angleAxis(D3DX_PI / 2.0f, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("hyperBlaster"), rot)); car->SetSlot(Player::stWeapon3, place); @@ -7533,10 +7533,10 @@ void Race::ResetCarPos() gameObj->GetGrActor().SetUp(ZVector); gameObj->SetWorldRot(gameObj->GetGrActor().GetWorldRot()); - gameObj->GetPxActor().GetNxActor()->setLinearVelocity(NxVec3(NullVector)); - gameObj->GetPxActor().GetNxActor()->setLinearMomentum(NxVec3(NullVector)); - gameObj->GetPxActor().GetNxActor()->setAngularMomentum(NxVec3(NullVector)); - gameObj->GetPxActor().GetNxActor()->setAngularVelocity(NxVec3(NullVector)); + gameObj->GetPxActor().GetNxActor()->setLinearVelocity(glm::value_ptr(NullVector)); + gameObj->GetPxActor().GetNxActor()->setLinearMomentum(glm::value_ptr(NullVector)); + gameObj->GetPxActor().GetNxActor()->setAngularMomentum(glm::value_ptr(NullVector)); + gameObj->GetPxActor().GetNxActor()->setAngularVelocity(glm::value_ptr(NullVector)); } } } diff --git a/src/Rock3dGame/source/game/RaceMenu2.cpp b/src/Rock3dGame/source/game/RaceMenu2.cpp index 2bcb78c2..b34f0565 100644 --- a/src/Rock3dGame/source/game/RaceMenu2.cpp +++ b/src/Rock3dGame/source/game/RaceMenu2.cpp @@ -41,7 +41,7 @@ void CarFrame::OnProgress(float deltaTime) if (_secretMapObj->GetGameObj().GetGrActor().GetVisible()) { glm::quat rot = _secretMapObj->GetGameObj().GetRot(); - glm::quat dRot = glm::angleAxis(2.0f * D3DX_PI * deltaTime * 0.1f, Vec3DxToGlm(ZVector)); + glm::quat dRot = glm::angleAxis(2.0f * D3DX_PI * deltaTime * 0.1f, ZVector); _secretMapObj->GetGameObj().SetRot(rot * dRot); } } @@ -1084,7 +1084,7 @@ WorkshopFrame::WorkshopFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent float size = std::min(slot.plane->GetSize().x, slot.plane->GetSize().y); slot.viewport->SetSize(size, size); - glm::quat quat = glm::angleAxis(D3DX_PI / 2.0f, Vec3DxToGlm(ZVector)); + glm::quat quat = glm::angleAxis(D3DX_PI / 2.0f, ZVector); slot.viewport->SetRot3dSpeed(quat); slot.mesh3d = menu->CreateMesh3d(slot.viewport, NULL, NULL); @@ -1155,9 +1155,9 @@ gui::ViewPort3d* WorkshopFrame::AddGood(Slot* slot, int index, int count) gui::Mesh3d* mesh3d = static_cast(viewPort->GetBox()->GetChildren().front()); mesh3d->GetOrCreateMaterial()->GetSampler().SetFiltering(graph::BaseSampler::sfAnisotropic); - glm::quat quat = glm::angleAxis(D3DX_PI / 2.0f, Vec3DxToGlm(ZVector)); + glm::quat quat = glm::angleAxis(D3DX_PI / 2.0f, ZVector); viewPort->SetRot3dSpeed(quat); - quat = glm::angleAxis(2.0f * D3DX_PI * index / count, Vec3DxToGlm(ZVector)); + quat = glm::angleAxis(2.0f * D3DX_PI * index / count, ZVector); viewPort->GetBox()->SetRot(viewPort->GetBox()->GetRot() * quat); } @@ -2083,9 +2083,9 @@ GamersFrame::GamersFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent): M _space->SetAnchor(gui::Widget::waCenter); _viewport = menu->CreateViewPort3d(root(), NULL, "", gui::ViewPort3d::msAnim, false); - glm::quat quat = glm::angleAxis(D3DX_PI / 24.0f, Vec3DxToGlm(ZVector)); + glm::quat quat = glm::angleAxis(D3DX_PI / 24.0f, ZVector); _viewport->SetRot3dSpeed(quat); - quat = glm::angleAxis(D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); + quat = glm::angleAxis(D3DX_PI / 2.0f, XVector); _viewport->GetBox()->SetRot(quat); _mesh3d = menu->CreateMesh3d(_viewport, NULL, NULL); @@ -2353,7 +2353,7 @@ AngarFrame::AngarFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent): Men _planetBoss = menu->CreatePlane(_planetInfo, this, "", true, IdentityVec2, gui::Material::bmTransparency); _planetBossCar = menu->CreateViewPort3d(_planetInfo, NULL, "", gui::ViewPort3d::msAnim); - glm::quat quat = glm::angleAxis(D3DX_PI / 2.0f, Vec3DxToGlm(ZVector)); + glm::quat quat = glm::angleAxis(D3DX_PI / 2.0f, ZVector); _planetBossCar->SetRot3dSpeed(quat); for (int i = 0; i < cMenuItemEnd; ++i) @@ -2395,9 +2395,9 @@ AngarFrame::PlanetBox& AngarFrame::AddPlanet(Planet* planet, int index) box = &_planets.back(); box->viewport = menu()->CreateMesh3dBox(_planetGrid, this, planet->GetMesh(), planet->GetTexture(), gui::ViewPort3d::msStatic, Menu::ssButton5); - glm::quat quat = glm::angleAxis(D3DX_PI / 24.0f, Vec3DxToGlm(ZVector)); + glm::quat quat = glm::angleAxis(D3DX_PI / 24.0f, ZVector); box->viewport->SetRot3dSpeed(quat); - quat = glm::angleAxis(D3DX_PI / 2.0f, Vec3DxToGlm(XVector)); + quat = glm::angleAxis(D3DX_PI / 2.0f, XVector); box->viewport->GetBox()->SetRot(quat); box->viewport->SetSize(glm::vec2(180.0f, 180.0f)); gui::Mesh3d* mesh3d = static_cast(box->viewport->GetBox()->GetChildren().front()); @@ -3163,7 +3163,7 @@ RaceMainFrame::RaceMainFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent _speedBarValue->SetPos(glm::vec2(_speedBar->GetSize().x/2 - 15.0f, 0.0f)); _viewportCar = menu->CreateViewPort3d(_topPanel, NULL, "", gui::ViewPort3d::msAnim); - glm::quat quat = glm::angleAxis(D3DX_PI / 2.0f, Vec3DxToGlm(ZVector)); + glm::quat quat = glm::angleAxis(D3DX_PI / 2.0f, ZVector); _viewportCar->SetRot3dSpeed(quat); _playerGrid = menu->CreateDummy(root(), NULL); @@ -3191,10 +3191,10 @@ RaceMainFrame::RaceMainFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent _slots[i] = menu->CreateMesh3dBox(_topPanel, NULL, NULL, NULL, gui::ViewPort3d::msAnim); _slots[i]->SetSize(glm::vec2(50.0f, 50.0f)); - glm::quat quat = glm::angleAxis(D3DX_PI / 2.0f, Vec3DxToGlm(ZVector)); + glm::quat quat = glm::angleAxis(D3DX_PI / 2.0f, ZVector); _slots[i]->SetRot3dSpeed(quat); - quat = glm::angleAxis(2.0f * D3DX_PI * i / 6.0f, Vec3DxToGlm(ZVector)); + quat = glm::angleAxis(2.0f * D3DX_PI * i / 6.0f, ZVector); _slots[i]->GetBox()->SetRot(_slots[i]->GetBox()->GetRot() * quat); } @@ -3258,7 +3258,7 @@ RaceMainFrame::PlayerBox* RaceMainFrame::AddPlayer(NetPlayer* netPlayer, unsigne newBox.readyState = menu()->CreatePlane(newBox.bgRoot, NULL, "", false, IdentityVec2, gui::Material::bmTransparency); newBox.viewportCar = menu()->CreateViewPort3d(newBox.bgRoot, NULL, "", gui::ViewPort3d::msAnim); - glm::quat quat = glm::angleAxis(D3DX_PI / 2.0f, Vec3DxToGlm(ZVector)); + glm::quat quat = glm::angleAxis(D3DX_PI / 2.0f, ZVector); newBox.viewportCar->SetRot3dSpeed(quat); _players.push_back(newBox); diff --git a/src/Rock3dGame/source/game/Trace.cpp b/src/Rock3dGame/source/game/Trace.cpp index 4a6c12d6..531f0202 100644 --- a/src/Rock3dGame/source/game/Trace.cpp +++ b/src/Rock3dGame/source/game/Trace.cpp @@ -41,7 +41,7 @@ bool WayPoint::RayCast(const glm::vec3& rayPos, const glm::vec3& rayVec, float* bool WayPoint::IsContains(const glm::vec3& point, float* dist) const { - float midDist = D3DXVec3Length(&(point - _pos)); + float midDist = glm::length(point - _pos); if (dist) *dist = midDist; @@ -328,25 +328,25 @@ glm::vec2 WayNode::Tile::ComputeTrackNormOff(const glm::vec2& point, unsigned tr void PlaneFromDirVec(const glm::vec3& dir, const glm::vec3& norm, const glm::vec3& pos, D3DXPLANE& plane) { glm::vec3 right, up; - D3DXVec3Cross(&right, &dir, &norm); - D3DXVec3Cross(&up, &right, &dir); - D3DXPlaneFromPointNormal(&plane, &pos, &up); + right = glm::cross(dir, norm); + up = glm::cross(right, dir); + D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(pos), &Vec3GlmToDx(up)); } bool WayNode::Tile::RayCast(const glm::vec3& rayPos, const glm::vec3& rayVec, float* dist) const { glm::vec3 dir = GetNextPos() - GetPos(); - D3DXVec3Normalize(&dir, &dir); + dir = glm::normalize(dir); D3DXPLANE plane; //Условие неколлинеарности векторов - if (D3DXVec3Dot(&dir, &rayVec) > 0.001f) + if (glm::dot(dir, rayVec) > 0.001f) //плоскость перепендикулярно лучу в центре цилиндра тайла PlaneFromDirVec(dir, rayVec, GetPos(), plane); //Вектора коллиниарны else //Строим плоскость через центр тайла перпендикулярно направлению - D3DXPlaneFromPointNormal(&plane, &((GetPos() + GetNextPos()) / 2.0f), &dir); + D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx((GetPos() + GetNextPos()) / 2.0f), &Vec3GlmToDx(dir)); float tmp; bool res = RayCastIntersectPlane(rayPos, rayVec, plane, tmp) && IsContains(rayPos + rayVec * tmp); @@ -614,7 +614,7 @@ bool WayNode::IsContains2(const glm::vec2& point, float* dist) const bool WayNode::IsContains(const glm::vec3& point, float* dist) const { - float midDist = D3DXVec3Length(&(point - _point->GetPos())); + float midDist = glm::length(point - _point->GetPos()); if (dist) *dist = midDist; diff --git a/src/Rock3dGame/source/game/TraceGfx.cpp b/src/Rock3dGame/source/game/TraceGfx.cpp index a1f30100..afb21d2a 100644 --- a/src/Rock3dGame/source/game/TraceGfx.cpp +++ b/src/Rock3dGame/source/game/TraceGfx.cpp @@ -87,7 +87,7 @@ void TraceGfx::DoRender(graph::Engine& engine) for (Trace::Pathes::const_iterator iter = _trace->GetPathes().begin(); iter != _trace->GetPathes().end(); ++iter, ++iPath) { WayPath* path = *iter; - D3DXCOLOR pathColor = path == _selPath ? clrGreen : D3DXCOLOR(resColor.GetValue(iPath / (pathCnt - 1.0f))); + D3DXCOLOR pathColor = path == _selPath ? clrGreen : D3DXCOLOR(Vec3GlmToDx(resColor.GetValue(iPath / (pathCnt - 1.0f)))); res::VertexData vBuf; path->GetTriStripVBuf(vBuf, &upVec); if (vBuf.IsInit()) @@ -108,8 +108,8 @@ void TraceGfx::DoRender(graph::Engine& engine) glm::vec3 pos1 = _pointLink->GetPoint()->GetPos(); glm::vec3 pos2 = _pointLink->GetPos(); glm::vec3 dir = pos1 - pos2; - glm::vec2 sizes(D3DXVec3Length(&dir), _pointLink->GetPoint()->GetSize()); - D3DXVec3Normalize(&dir, &dir); + glm::vec2 sizes(glm::length(dir), _pointLink->GetPoint()->GetSize()); + dir = glm::normalize(dir); _sprite->SetPos((pos1 + pos2) / 2.0f); _sprite->SetDir(dir); diff --git a/src/Rock3dGame/source/game/Weapon.cpp b/src/Rock3dGame/source/game/Weapon.cpp index 0ba8c370..56b499a7 100644 --- a/src/Rock3dGame/source/game/Weapon.cpp +++ b/src/Rock3dGame/source/game/Weapon.cpp @@ -40,10 +40,9 @@ void Proj::LocateProj(GameObject* weapon, bool pos, bool rot, const glm::vec3* s { glm::quat rot = _desc.rot; - if (speed && D3DXVec3Length(speed) > 1.0f) + if (speed && glm::length(*speed) > 1.0f) { - glm::vec3 dir; - D3DXVec3Normalize(&dir, speed); + glm::vec3 dir = glm::normalize(*speed); rot = QuatShortestArc(XVector, dir) * weapon->GetRot() * rot; } else if (weapon) @@ -175,8 +174,8 @@ void Proj::CreatePxBox(NxCollisionGroup group) AABB aabb = ComputeAABB(false); NxBoxShapeDesc boxDesc; - boxDesc.dimensions = NxVec3(aabb.GetSizes()/2.0f); - boxDesc.localPose.t.set(aabb.GetCenter()); + boxDesc.dimensions = glm::value_ptr(aabb.GetSizes() / 2.0f); + boxDesc.localPose.t.set(glm::value_ptr(aabb.GetCenter())); boxDesc.group = group; this->_pxBox = &this->GetPxActor().GetShapes().Add(); this->_pxBox->AssignFromDesc(boxDesc); @@ -184,7 +183,7 @@ void Proj::CreatePxBox(NxCollisionGroup group) void Proj::AddContactForce(GameObject* target, const glm::vec3& point, const glm::vec3& force, NxForceMode mode) { - target->GetPxActor().GetNxActor()->addForceAtPos(NxVec3(force), NxVec3(point), mode); + target->GetPxActor().GetNxActor()->addForceAtPos(glm::value_ptr(force), glm::value_ptr(point), mode); } void Proj::AddContactForce(GameObject* target, const px::Scene::OnContactEvent& contact, const glm::vec3& force, NxForceMode mode) @@ -326,18 +325,18 @@ glm::vec3 Proj::CalcSpeed(GameObject* weapon) if (_desc.speedRelative) { - speed += std::max(D3DXVec3Dot(&dir, &weapon->GetPxVelocityLerp()), 0.0f); + speed += std::max(glm::dot(dir, weapon->GetPxVelocityLerp()), 0.0f); } else if (_desc.speedRelativeMin > 0) { - speed = std::max(speed, _desc.speedRelativeMin + std::max(D3DXVec3Dot(&dir, &weapon->GetPxVelocityLerp()), 0.0f)); + speed = std::max(speed, _desc.speedRelativeMin + std::max(glm::dot(dir, weapon->GetPxVelocityLerp()), 0.0f)); } - float cosa = abs(D3DXVec3Dot(&dir, &glm::vec3(0, 0, 1))); + float cosa = abs(glm::dot(dir, glm::vec3(0, 0, 1))); if (cosa < 0.707f) { dir.z = 0; - D3DXVec3Normalize(&dir, &dir); + dir = glm::normalize(dir); } return dir * speed; @@ -357,7 +356,7 @@ bool Proj::RocketPrepare(GameObject* weapon, bool disableGravity, glm::vec3* spe NxBodyDesc bodyDesc; bodyDesc.flags |= disableGravity ? NX_BF_DISABLE_GRAVITY : 0; - bodyDesc.linearVelocity = NxVec3(speed); + bodyDesc.linearVelocity = glm::value_ptr(speed); CreateBody(bodyDesc); @@ -383,26 +382,26 @@ void Proj::RocketContact(const px::Scene::OnContactEvent& contact) DamageTarget(target, _desc.damage); - glm::vec3 dir = glm::vec3(this->GetPxActor().GetNxActor()->getLinearVelocity().get()); - float dirLength = D3DXVec3Length(&dir); + glm::vec3 dir = glm::make_vec3(this->GetPxActor().GetNxActor()->getLinearVelocity().get()); + float dirLength = glm::length(dir); if (dirLength > 1.0f) { dir /= dirLength; glm::vec3 contactDir = GetContactPoint(contact); - //D3DXVec3Normalize(&contactDir, &contactDir); - D3DXVec3Cross(&contactDir, &contactDir, &dir); + //contactDir = glm::normalize(contactDir); + contactDir = glm::cross(contactDir, dir); //NxVec3 vec3(RandomRange(-1.0f, 1.0f), 0, RandomRange(-1.0f, 1.0f)); - NxVec3 vec3(contactDir); + NxVec3 vec3 = glm::value_ptr(contactDir); if (vec3.magnitude() > 0.01f) { vec3.normalize(); target->GetPxActor().GetNxActor()->addLocalTorque(vec3 * _desc.mass * 0.2f, NX_VELOCITY_CHANGE); } - D3DXVec3Normalize(&dir, &(dir - ZVector)); + dir = glm::normalize(dir - ZVector); //dir = dir * dirLength; //AddContactForce(target, contact, 150.0f * dir, NX_IMPULSE); @@ -526,7 +525,7 @@ void Proj::SpeedArrowContact(const px::Scene::OnContactEvent& contact) GameObject* target = GetGameObjFromActor(contact.actor); if (target) { - target->GetPxActor().GetNxActor()->setLinearVelocity(NxVec3(GetGrActor().GetWorldDir() * _desc.damage)); + target->GetPxActor().GetNxActor()->setLinearVelocity(glm::value_ptr(GetGrActor().GetWorldDir() * _desc.damage)); target->SendEvent(cPlayerSpeedArrow); } } @@ -572,7 +571,7 @@ bool Proj::MinePrepare(const ShotContext& ctx, bool lockMine) if (ctx.projMat) { - SetWorldPos(ctx.projMat->t.get()); + SetWorldPos(glm::make_vec3(ctx.projMat->t.get())); return true; } @@ -581,7 +580,7 @@ bool Proj::MinePrepare(const ShotContext& ctx, bool lockMine) glm::vec3 rayPos = _desc.pos; if (_weapon) _weapon->GetGrActor().LocalToWorldCoord(rayPos, rayPos); - NxRay nxRay(NxVec3(rayPos) + NxVec3(0, 0, 2.0f), NxVec3(-ZVector)); + NxRay nxRay(NxVec3(glm::value_ptr(rayPos)) + NxVec3(0, 0, 2.0f), glm::value_ptr(-ZVector)); NxRaycastHit hit; NxShape* hitShape = GetLogic()->GetPxScene()->GetNxScene()->raycastClosestShape(nxRay, NX_STATIC_SHAPES, hit, (1 << px::Scene::cdgTrackPlane) | (1 << px::Scene::cdgShotTrack), NX_MAX_F32, NX_RAYCAST_SHAPE | NX_RAYCAST_IMPACT | NX_RAYCAST_NORMAL); @@ -589,9 +588,9 @@ bool Proj::MinePrepare(const ShotContext& ctx, bool lockMine) if (hitShape && hitShape->getGroup() != px::Scene::cdgShotTrack) //&& hit.distance < _desc.projMaxDist) { float offs = std::max(-aabb.min.z, 0.01f); - glm::vec3 normal = hit.worldNormal.get(); + glm::vec3 normal = glm::make_vec3(hit.worldNormal.get()); - SetWorldPos(glm::vec3(hit.worldImpact.get()) + ZVector * offs); + SetWorldPos(glm::make_vec3(hit.worldImpact.get()) + ZVector * offs); SetWorldUp(normal); if (lockMine) @@ -659,7 +658,7 @@ void Proj::MasloContact(const px::Scene::OnContactEvent& contact) return; D3DXPLANE plane; - D3DXPlaneFromPointNormal(&plane, &car->GetGrActor().GetWorldPos(), &car->GetGrActor().GetWorldRight()); + D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(car->GetGrActor().GetWorldPos()), &Vec3GlmToDx(car->GetGrActor().GetWorldRight())); float dist = PlaneDistToPoint(plane, GetWorldPos()); if (car->GetPxActor().GetNxActor()->getLinearVelocity().magnitude() > 3.0f) @@ -709,7 +708,7 @@ void Proj::MineRipUpdate(float deltaTime) mapObj->GetGameObj().SetRot(GetRot()); mapObj->GetGameObj().SetScale(GetScale()); - NxVec3 dir(vec.GetValue()); + NxVec3 dir(glm::value_ptr(vec.GetValue())); dir.normalize(); mapObj->GetGameObj().GetPxActor().GetNxActor()->addForce(mapObj->GetGameObj().GetPxActor().GetBody()->GetDesc().mass * dir * 10.0f, NX_IMPULSE); @@ -784,9 +783,9 @@ void Proj::TorpedaUpdate(float deltaTime) glm::vec3 pos = this->GetWorldPos(); glm::vec3 dir = targPos - pos; - float dist = D3DXVec3Length(&dir); + float dist = glm::length(dir); if (dist > 1.0f) - D3DXVec3Normalize(&dir, &dir); + dir = glm::normalize(dir); else dir = this->GetGrActor().GetDir(); @@ -808,16 +807,16 @@ void Proj::TorpedaUpdate(float deltaTime) if (_desc.speedRelative) { - speed = D3DXVec3Length(&_vec1); + speed = glm::length(_vec1); } else { - speed = std::max(D3DXVec3Dot(&_vec1, &dir), _desc.speed); + speed = std::max(glm::dot(_vec1, dir), _desc.speed); } _vec1 = dir * speed; - this->GetPxActor().GetNxActor()->setLinearVelocity(NxVec3(dir * std::max(_desc.speed, speed))); + this->GetPxActor().GetNxActor()->setLinearVelocity(glm::value_ptr(dir * std::max(_desc.speed, speed))); } } @@ -851,7 +850,7 @@ GameObject* Proj::LaserUpdate(float deltaTime, bool distort) nxMask.bits3 = 0; NxRaycastHit rayhit; - NxShape* hitShape = GetLogic()->GetPxScene()->GetNxScene()->raycastClosestShape(NxRay(NxVec3(shotPos + _desc.sizeAddPx), NxVec3(shotDir)), NX_ALL_SHAPES, rayhit, (1 << px::Scene::cdgDefault) | (1 << px::Scene::cdgShotTransparency) | (1 << px::Scene::cdgTrackPlane), _desc.maxDist, NX_RAYCAST_SHAPE | NX_RAYCAST_DISTANCE, &nxMask); + NxShape* hitShape = GetLogic()->GetPxScene()->GetNxScene()->raycastClosestShape(NxRay(glm::value_ptr(shotPos + _desc.sizeAddPx), glm::value_ptr(shotDir)), NX_ALL_SHAPES, rayhit, (1 << px::Scene::cdgDefault) | (1 << px::Scene::cdgShotTransparency) | (1 << px::Scene::cdgTrackPlane), _desc.maxDist, NX_RAYCAST_SHAPE | NX_RAYCAST_DISTANCE, &nxMask); GameObject* rayHitActor = hitShape ? GetGameObjFromShape(hitShape) : NULL; DisableFilter(_weapon); @@ -962,7 +961,7 @@ void Proj::DrobilkaUpdate(float deltaTime) SetWorldPos(pos); SetWorldRot(_weapon->GetWorldRot()); - glm::quat rot = glm::angleAxis(_desc.angleSpeed * deltaTime, Vec3DxToGlm(XVector)); + glm::quat rot = glm::angleAxis(_desc.angleSpeed * deltaTime, XVector); _weapon->SetRot(rot * _weapon->GetRot()); } @@ -984,7 +983,7 @@ void Proj::SonarContact(const px::Scene::OnContactEvent& contact) if (target) { DamageTarget(target, _desc.damage * contact.deltaTime, dtEnergy); - AddContactForce(target, contact, _desc.mass * glm::vec3(this->GetPxActor().GetNxActor()->getLinearVelocity().get()), NX_IMPULSE); + AddContactForce(target, contact, _desc.mass * glm::make_vec3(this->GetPxActor().GetNxActor()->getLinearVelocity().get()), NX_IMPULSE); } } @@ -1191,13 +1190,13 @@ void Proj::ThunderContact(const px::Scene::OnContactEvent& contact) if (abs(angle) > 0.1f) { D3DXPLANE plane; - D3DXPlaneFromPointNormal(&plane, &NullVector, &glm::vec3(norm.get())); + D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(NullVector), &Vec3GlmToDx(glm::make_vec3(norm.get()))); D3DXMATRIX mat; D3DXMatrixReflect(&mat, &plane); - glm::vec3 vel(velocity.get()); - D3DXVec3TransformNormal(&vel, &vel, &mat); - velocity = NxVec3(vel); + glm::vec3 vel = glm::make_vec3(velocity.get()); + vel = Vec3TransformNormal(vel, mat); + velocity = glm::value_ptr(vel); } else velocity = -velocity; @@ -1227,7 +1226,7 @@ void Proj::ResonanseUpdate(float deltaTime) { RocketUpdate(deltaTime); - glm::quat dRot = glm::angleAxis(_desc.angleSpeed * deltaTime, Vec3DxToGlm(XVector)); + glm::quat dRot = glm::angleAxis(_desc.angleSpeed * deltaTime, XVector); SetRot(GetRot() * dRot); } diff --git a/src/Rock3dGame/source/net/NetPlayer.cpp b/src/Rock3dGame/source/net/NetPlayer.cpp index be4e7f4f..35718b0d 100644 --- a/src/Rock3dGame/source/net/NetPlayer.cpp +++ b/src/Rock3dGame/source/net/NetPlayer.cpp @@ -198,7 +198,7 @@ void NetPlayer::DoShot(MapObj* target, ShotSlots& slots, unsigned projId, CoordL if (coordList && coordIndex < coordList->size()) { - nxMat.t = NxVec3((*coordList)[coordIndex]); + nxMat.t = glm::value_ptr((*coordList)[coordIndex]); ctx.projMat = &nxMat; } else @@ -522,8 +522,8 @@ void NetPlayer::ResponseStream(const net::NetMessage& msg, net::BitStream& strea glm::vec3 pos = car->GetPxActor().GetPos(); glm::quat rot = car->GetPxActor().GetRot(); - glm::vec3 linVel = car->GetNxActor()->getLinearMomentum().get(); - glm::vec3 angVel = car->GetNxActor()->getAngularMomentum().get(); + glm::vec3 linVel = glm::make_vec3(car->GetNxActor()->getLinearMomentum().get()); + glm::vec3 angVel = glm::make_vec3(car->GetNxActor()->getAngularMomentum().get()); BYTE moveState = car->GetMoveCar(); BYTE steerState = car->GetSteerWheel(); float steerWheelsAngle = car->GetSteerWheelAngle(); @@ -541,7 +541,7 @@ void NetPlayer::ResponseStream(const net::NetMessage& msg, net::BitStream& strea _dAlpha = 1.0f; glm::vec3 dPos = pos - car->GetPxActor().GetPos(); - float dPosLength = D3DXVec3Length(&dPos); + float dPosLength = glm::length(dPos); if (dPosLength > 4.0f) { car->SetPosSync(pos - car->GetGrActor().GetPos()); @@ -551,7 +551,7 @@ void NetPlayer::ResponseStream(const net::NetMessage& msg, net::BitStream& strea linVel += dPos * 2.0f * car->GetNxActor()->getMass(); /*glm::vec3 dPos = pos - car->GetPxActor().GetPos(); - float dPosLength = D3DXVec3Length(&dPos); + float dPosLength = glm::length(dPos); if (dPosLength > 4.0f) //>2.0f { car->SetPosSync2(car->GetGrActor().GetPos() - pos, NullVector); @@ -561,7 +561,7 @@ void NetPlayer::ResponseStream(const net::NetMessage& msg, net::BitStream& strea { glm::vec3 dPos1 = car->GetGrActor().GetPos() - car->GetPxPosLerp(); glm::vec3 dPos2 = pos - car->GetPxPosLerp(); - if (D3DXVec3Length(&(dPos1 - dPos2)) > 0.5f) + if (glm::length(dPos1 - dPos2) > 0.5f) car->SetPosSync2(dPos1, dPos2); if (dPosLength > 0.1f) @@ -571,15 +571,15 @@ void NetPlayer::ResponseStream(const net::NetMessage& msg, net::BitStream& strea }*/ /*glm::vec3 dPos = pos - car->GetGrActor().GetPos(); - float dPosLength = D3DXVec3Length(&dPos); - if (D3DXVec3Length(&(car->GetPxActor().GetPos() - pos)) > 1.0f) + float dPosLength = glm::length(dPos); + if (glm::length(car->GetPxActor().GetPos() - pos) > 1.0f) { car->GetPxActor().SetPos(pos); car->SetPosSync(dPos); }*/ glm::quat dRot = QuatRotation(car->GetGrActor().GetRot(), rot); - glm::vec3 dRotAxis = Vec3GlmToDx(glm::axis(dRot)); + glm::vec3 dRotAxis = glm::axis(dRot); float dRotAngle = glm::angle(dRot); if (abs(dRotAngle) > D3DX_PI/24) { @@ -587,8 +587,8 @@ void NetPlayer::ResponseStream(const net::NetMessage& msg, net::BitStream& strea car->SetRotSync(dRot); } - car->GetNxActor()->setLinearMomentum(NxVec3(linVel)); - car->GetNxActor()->setAngularMomentum(NxVec3(angVel)); + car->GetNxActor()->setLinearMomentum(glm::value_ptr(linVel)); + car->GetNxActor()->setAngularMomentum(glm::value_ptr(angVel)); car->SetMoveCar((GameCar::MoveCarState)moveState); car->SetSteerWheel((GameCar::SteerWheelState)steerState); diff --git a/src/Rock3dGame/source/snd/Audio.cpp b/src/Rock3dGame/source/snd/Audio.cpp index bfc8cc78..59bc488b 100644 --- a/src/Rock3dGame/source/snd/Audio.cpp +++ b/src/Rock3dGame/source/snd/Audio.cpp @@ -1640,7 +1640,7 @@ void Source3d::ApplyX3dEffect() return; glm::vec3 listDist = _pos3d - listener->pos; - float listDistLen = D3DXVec3Length(&listDist); + float listDistLen = glm::length(listDist); if (listDistLen > distScaller + stopLag) { @@ -1664,16 +1664,16 @@ void Source3d::ApplyX3dEffect() X3DAUDIO_LISTENER xList; ZeroMemory(&xList, sizeof(xList)); - xList.Position = listener->pos; + xList.Position = Vec3GlmToDx(listener->pos); D3DXMATRIX rotMat = Matrix4GlmToDx(glm::transpose(glm::mat4_cast(listener->rot))); - xList.OrientFront = glm::vec3(rotMat.m[0]); - xList.OrientTop = glm::vec3(rotMat.m[2]); + xList.OrientFront = D3DXVECTOR3(rotMat.m[0]); + xList.OrientTop = D3DXVECTOR3(rotMat.m[2]); _xEmitter.ChannelCount = nSrcChannels; _xEmitter.CurveDistanceScaler = distScaller; - _xEmitter.Position = _pos3d; - _xEmitter.OrientFront = XVector; - _xEmitter.OrientTop = ZVector; + _xEmitter.Position = Vec3GlmToDx(_pos3d); + _xEmitter.OrientFront = Vec3GlmToDx(XVector); + _xEmitter.OrientTop = Vec3GlmToDx(ZVector); _xEmitter.pChannelAzimuths = new float[nSrcChannels]; ZeroMemory(_xEmitter.pChannelAzimuths, nSrcChannels); for (int i = 0; i < nSrcChannels; ++i) From b26d4792a243cd4432d0df3a909821842f93933d Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Fri, 28 Oct 2022 06:59:18 +0300 Subject: [PATCH 35/55] math: replace reinterpret_cast with glm::value_ptr --- src/LexStd/header/lslSerialValue.h | 8 +++---- src/NetLib/source/net/BitStream.cpp | 6 ++--- src/Rock3dEngine/source/graph/FxManager.cpp | 2 +- .../source/graph/SceneManager.cpp | 24 +++++++++---------- src/Rock3dEngine/source/graph/StdNode.cpp | 4 ++-- src/Rock3dEngine/source/px/Physx.cpp | 20 ++++++++-------- src/Rock3dGame/source/game/GameObject.cpp | 4 ++-- src/Rock3dGame/source/game/Player.cpp | 2 +- 8 files changed, 35 insertions(+), 35 deletions(-) diff --git a/src/LexStd/header/lslSerialValue.h b/src/LexStd/header/lslSerialValue.h index b62a2945..9ca5bbee 100644 --- a/src/LexStd/header/lslSerialValue.h +++ b/src/LexStd/header/lslSerialValue.h @@ -29,11 +29,11 @@ template<> struct SerialValue static void Write(SWriter* writer, const char* name, const _Value& value) { - writer->WriteValue(name, reinterpret_cast(&value.x), 2); + writer->WriteValue(name, glm::value_ptr(value), 2); } static SReader* Read(SReader* reader, const char* name, _Value& value) { - return reader->ReadValue(name, reinterpret_cast(&value.x), 2); + return reader->ReadValue(name, glm::value_ptr(value), 2); } }; @@ -71,11 +71,11 @@ template<> struct SerialValue static void Write(SWriter* writer, const char* name, const _Value& value) { - writer->WriteValue(name, reinterpret_cast(&value.x), 4); + writer->WriteValue(name, glm::value_ptr(value), 4); } static SReader* Read(SReader* reader, const char* name, _Value& value) { - return reader->ReadValue(name, reinterpret_cast(&value.x), 4); + return reader->ReadValue(name, glm::value_ptr(value), 4); } }; diff --git a/src/NetLib/source/net/BitStream.cpp b/src/NetLib/source/net/BitStream.cpp index cae3615d..2421f2f4 100644 --- a/src/NetLib/source/net/BitStream.cpp +++ b/src/NetLib/source/net/BitStream.cpp @@ -309,12 +309,12 @@ void BitStream::Serialize(float value[], int count, float err) void BitStream::Serialize(glm::vec2& value, float err) { - Serialize((float *)(&value), 2, err); + Serialize(glm::value_ptr(value), 2, err); } void BitStream::Serialize(glm::vec3& value, float err) { - Serialize((float *)(&value), 3, err); + Serialize(glm::value_ptr(value), 3, err); } void BitStream::Serialize(D3DXVECTOR4& value, float err) @@ -324,7 +324,7 @@ void BitStream::Serialize(D3DXVECTOR4& value, float err) void BitStream::Serialize(glm::quat& value, float err) { - Serialize((float *)(&value), 4, err); + Serialize(glm::value_ptr(value), 4, err); } void BitStream::Serialize(D3DXCOLOR& value, float err) diff --git a/src/Rock3dEngine/source/graph/FxManager.cpp b/src/Rock3dEngine/source/graph/FxManager.cpp index 9b04fe36..1d340d14 100644 --- a/src/Rock3dEngine/source/graph/FxManager.cpp +++ b/src/Rock3dEngine/source/graph/FxManager.cpp @@ -1403,7 +1403,7 @@ void FxPhysicsEmitter::UpdateParticle(FxParticle* value, float dTime, bool init) { NxBoxShapeDesc boxShape; glm::vec3 tVec = IdentityVector * value->GetScale(); - boxShape.dimensions.set(reinterpret_cast(&tVec.x)); + boxShape.dimensions.set(glm::value_ptr(tVec)); px::BoxShape& bbShape = particle->pxActor.GetShapes().Add(); bbShape.AssignFromDesc(boxShape); diff --git a/src/Rock3dEngine/source/graph/SceneManager.cpp b/src/Rock3dEngine/source/graph/SceneManager.cpp index 5be258fc..470b79cf 100644 --- a/src/Rock3dEngine/source/graph/SceneManager.cpp +++ b/src/Rock3dEngine/source/graph/SceneManager.cpp @@ -318,9 +318,9 @@ void BaseSceneNode::Save(lsl::SWriter* writer) if (storeCoords) { - writer->WriteValue("pos", reinterpret_cast(&GetPos().x), 3); - writer->WriteValue("scale", reinterpret_cast(&GetScale().x), 3); - writer->WriteValue("rot", reinterpret_cast(&GetRot().x), 4); + writer->WriteValue("pos", glm::value_ptr(GetPos()), 3); + writer->WriteValue("scale", glm::value_ptr(GetScale()), 3); + writer->WriteValue("rot", glm::value_ptr(GetRot()), 4); } writer->WriteValue("invertCullFace", invertCullFace); @@ -344,9 +344,9 @@ void BaseSceneNode::Save(lsl::SWriter* writer) writer->WriteValue("animDuration", animDuration); writer->WriteValue("frame", frame); - writer->WriteValue("speedPos", reinterpret_cast(&speedPos.x), 3); - writer->WriteValue("speedScale", reinterpret_cast(&speedScale.x), 3); - writer->WriteValue("speedRot", reinterpret_cast(&speedRot.x), 4); + writer->WriteValue("speedPos", glm::value_ptr(speedPos), 3); + writer->WriteValue("speedScale", glm::value_ptr(speedScale), 3); + writer->WriteValue("speedRot", glm::value_ptr(speedRot), 4); //writer->WriteValue("options", _options.to_string()); } @@ -359,9 +359,9 @@ void BaseSceneNode::Load(lsl::SReader* reader) if (storeCoords) { - reader->ReadValue("pos", reinterpret_cast(&_position.x), 3); - reader->ReadValue("scale", reinterpret_cast(&_scale.x), 3); - reader->ReadValue("rot", reinterpret_cast(&_rot.x), 4); + reader->ReadValue("pos", glm::value_ptr(_position), 3); + reader->ReadValue("scale", glm::value_ptr(_scale), 3); + reader->ReadValue("rot", glm::value_ptr(_rot), 4); } reader->ReadValue("invertCullFace", invertCullFace); @@ -388,9 +388,9 @@ void BaseSceneNode::Load(lsl::SReader* reader) reader->ReadValue("animDuration", animDuration); reader->ReadValue("frame", frame); - reader->ReadValue("speedPos", reinterpret_cast(&speedPos.x), 3); - reader->ReadValue("speedScale", reinterpret_cast(&speedScale.x), 3); - reader->ReadValue("speedRot", reinterpret_cast(&speedRot.x), 4); + reader->ReadValue("speedPos", glm::value_ptr(speedPos), 3); + reader->ReadValue("speedScale", glm::value_ptr(speedScale), 3); + reader->ReadValue("speedRot", glm::value_ptr(speedRot), 4); //std::string optsStr; //reader->ReadValue("options", optsStr); diff --git a/src/Rock3dEngine/source/graph/StdNode.cpp b/src/Rock3dEngine/source/graph/StdNode.cpp index 735eeac3..f1f886e5 100644 --- a/src/Rock3dEngine/source/graph/StdNode.cpp +++ b/src/Rock3dEngine/source/graph/StdNode.cpp @@ -995,7 +995,7 @@ void Sprite::Save(lsl::SWriter* writer) { _MyBase::Save(writer); - writer->WriteValue("sizes", reinterpret_cast(&sizes.x), 2); + writer->WriteValue("sizes", glm::value_ptr(sizes), 2); writer->WriteValue("fixDirection", fixDirection); material.Save(writer, this); @@ -1005,7 +1005,7 @@ void Sprite::Load(lsl::SReader* reader) { _MyBase::Load(reader); - reader->ReadValue("sizes", reinterpret_cast(&sizes.x), 2); + reader->ReadValue("sizes", glm::value_ptr(sizes), 2); reader->ReadValue("fixDirection", fixDirection); material.Load(reader, this); diff --git a/src/Rock3dEngine/source/px/Physx.cpp b/src/Rock3dEngine/source/px/Physx.cpp index bf2d2d49..be263d95 100644 --- a/src/Rock3dEngine/source/px/Physx.cpp +++ b/src/Rock3dEngine/source/px/Physx.cpp @@ -609,7 +609,7 @@ void Shape::SyncRot() LSL_ASSERT(_nxShape); NxQuat quat; - quat.setXYZW(reinterpret_cast(&_rot.x)); + quat.setXYZW(glm::value_ptr(_rot)); _nxShape->setLocalOrientation(NxMat33(quat)); } @@ -620,7 +620,7 @@ void Shape::SyncScale() void Shape::Save(lsl::SWriter* writer) { writer->WriteValue("pos", glm::value_ptr(_pos), 3); - writer->WriteValue("rot", reinterpret_cast(&_rot.x), 4); + writer->WriteValue("rot", glm::value_ptr(_rot), 4); writer->WriteValue("scale", glm::value_ptr(_scale), 3); writer->WriteValue("materialIndex", _materialIndex); @@ -632,7 +632,7 @@ void Shape::Save(lsl::SWriter* writer) void Shape::Load(lsl::SReader* reader) { reader->ReadValue("pos", glm::value_ptr(_pos), 3); - reader->ReadValue("rot", reinterpret_cast(&_rot.x), 4); + reader->ReadValue("rot", glm::value_ptr(_rot), 4); reader->ReadValue("scale", glm::value_ptr(_scale), 3); reader->ReadValue("materialIndex", _materialIndex); @@ -647,7 +647,7 @@ void Shape::AssignFromDesc(const NxShapeDesc& desc, bool reloadShape) // NxQuat quat; desc.localPose.M.toQuat(quat); - quat.getXYZW(reinterpret_cast(&_rot.x)); + quat.getXYZW(glm::value_ptr(_rot)); _materialIndex = desc.materialIndex; _density = desc.density; @@ -662,7 +662,7 @@ void Shape::AssignToDesc(NxShapeDesc& desc) desc.localPose.t.set(glm::value_ptr(_pos)); // NxQuat quat; - quat.setXYZW(reinterpret_cast(&_rot.x)); + quat.setXYZW(glm::value_ptr(_rot)); desc.localPose.M.fromQuat(quat); desc.materialIndex = _materialIndex; @@ -1770,7 +1770,7 @@ void Actor::InitRootNxActor() actorDesc.globalPose.t.set(glm::value_ptr(_pos)); NxQuat rot; - rot.setXYZW(reinterpret_cast(&_rot.x)); + rot.setXYZW(glm::value_ptr(_rot)); actorDesc.globalPose.M.fromQuat(rot); actorDesc.body = _body ? &_body->GetDesc() : 0; @@ -1880,7 +1880,7 @@ void Actor::Save(lsl::SWriter* writer) if (storeCoords) { writer->WriteValue("pos", glm::value_ptr(GetPos()), 3); - writer->WriteValue("rot", reinterpret_cast(&GetRot().x), 4); + writer->WriteValue("rot", glm::value_ptr(GetRot()), 4); writer->WriteValue("scale", glm::value_ptr(GetScale()), 3); } @@ -1905,7 +1905,7 @@ void Actor::Load(lsl::SReader* reader) if (storeCoords) { reader->ReadValue("pos", glm::value_ptr(_pos), 3); - reader->ReadValue("rot", reinterpret_cast(&_rot.x), 4); + reader->ReadValue("rot", glm::value_ptr(_rot), 4); reader->ReadValue("scale", glm::value_ptr(_scale), 3); } @@ -2119,7 +2119,7 @@ void Actor::SetPos(const glm::vec3& value) const glm::quat& Actor::GetRot() const { if (!_parent && _nxActor) - _nxActor->getGlobalOrientationQuat().getXYZW(reinterpret_cast(&_rot.x)); + _nxActor->getGlobalOrientationQuat().getXYZW(glm::value_ptr(_rot)); return _rot; } @@ -2132,7 +2132,7 @@ void Actor::SetRot(const glm::quat& value) if (!_parent) { NxQuat quat; - quat.setXYZW(reinterpret_cast(&value.x)); + quat.setXYZW(glm::value_ptr(value)); _nxActor->setGlobalOrientationQuat(quat); } else diff --git a/src/Rock3dGame/source/game/GameObject.cpp b/src/Rock3dGame/source/game/GameObject.cpp index 1e490d28..2a496c62 100644 --- a/src/Rock3dGame/source/game/GameObject.cpp +++ b/src/Rock3dGame/source/game/GameObject.cpp @@ -378,7 +378,7 @@ void GameObject::SaveProxy(lsl::SWriter* writer) { writer->WriteValue("pos", glm::value_ptr(GetPos()), 3); writer->WriteValue("scale", glm::value_ptr(GetScale()), 3); - writer->WriteValue("rot", reinterpret_cast(&GetRot().x), 4); + writer->WriteValue("rot", glm::value_ptr(GetRot()), 4); writer->WriteValue("life", _life); writer->WriteValue("maxTimeLife", _maxTimeLife); @@ -397,7 +397,7 @@ void GameObject::LoadProxy(lsl::SReader* reader) reader->ReadValue("pos", glm::value_ptr(pos), 3); reader->ReadValue("scale", glm::value_ptr(scale), 3); - reader->ReadValue("rot", reinterpret_cast(&rot.x), 4); + reader->ReadValue("rot", glm::value_ptr(rot), 4); reader->ReadValue("life", _life); reader->ReadValue("maxTimeLife", _maxTimeLife); diff --git a/src/Rock3dGame/source/game/Player.cpp b/src/Rock3dGame/source/game/Player.cpp index b35f3de4..0993d374 100644 --- a/src/Rock3dGame/source/game/Player.cpp +++ b/src/Rock3dGame/source/game/Player.cpp @@ -911,7 +911,7 @@ void Player::CarState::Update(float deltaTime) mat34.t[0], mat34.t[1], mat34.t[2], 1); pos3 = glm::make_vec3(mat34.t.get()); - nxActor->getGlobalOrientationQuat().getXYZW(reinterpret_cast(&rot3.x)); + nxActor->getGlobalOrientationQuat().getXYZW(glm::value_ptr(rot3)); Vec3Rotate(XVector, rot3, dir3); //pos = glm::vec2(pos3); From c4b2f06920d354be4c193dc0e733657c83b59414 Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Fri, 28 Oct 2022 17:37:58 +0300 Subject: [PATCH 36/55] math: simplify code after replace D3DXVECTOR3 with glm::vec3 --- src/Rock3dEngine/source/GraphManager.cpp | 21 +++++---------------- src/Rock3dEngine/source/gui/GUI.cpp | 4 +--- src/Rock3dGame/header/game/HudMenu.h | 3 +-- src/Rock3dGame/source/game/HudMenu.cpp | 5 ++--- src/Rock3dGame/source/game/Player.cpp | 6 ++---- src/Rock3dGame/source/game/Trace.cpp | 18 ++++++------------ 6 files changed, 17 insertions(+), 40 deletions(-) diff --git a/src/Rock3dEngine/source/GraphManager.cpp b/src/Rock3dEngine/source/GraphManager.cpp index 6745fffe..822a7db0 100644 --- a/src/Rock3dEngine/source/GraphManager.cpp +++ b/src/Rock3dEngine/source/GraphManager.cpp @@ -512,18 +512,14 @@ void GraphManager::UpdateWaterPlane() { _waterPlaneActor->SetPos(_groundAABB.GetCenter()); _waterPlaneActor->SetScale(scale); - //_waterNode->SetSize(glm::vec2(_groundAABB.GetSizes()) / scale); - _waterNode->SetSize(glm::vec2(_groundAABB.GetSizes().x, _groundAABB.GetSizes().y) / - scale); // remove after glm::vec3 replacement + _waterNode->SetSize(glm::vec2(_groundAABB.GetSizes()) / scale); } if (_waterPlane) { _waterPlane->SetPos(_groundAABB.GetCenter()); _waterPlane->SetScale(scale); - //_waterPlane->SetSize(glm::vec2(_groundAABB.GetSizes()) / scale); - _waterPlane->SetSize(glm::vec2(_groundAABB.GetSizes().x, _groundAABB.GetSizes().y) / - scale); // remove after glm::vec3 replacement + _waterPlane->SetSize(glm::vec2(_groundAABB.GetSizes()) / scale); } } @@ -607,9 +603,7 @@ void GraphManager::UpdateGrassPlane() { glm::vec3 pos = _groundAABB.GetCenter(); pos.x = 0; - //glm::vec2 size = glm::vec2(_groundAABB.GetSizes()); - glm::vec2 size = - glm::vec2(_groundAABB.GetSizes().x, _groundAABB.GetSizes().y); // remove after glm::vec3 replacement + glm::vec2 size = glm::vec2(_groundAABB.GetSizes()); if (_grassPlane) { @@ -1269,9 +1263,7 @@ void GraphManager::UpdateFogPlane() { _fogPlane->SetPos(pos); _fogPlane->SetScale(glm::vec3(_tileScale.x, _tileScale.y, 1.0f)); - //_fogPlane->SetSize(glm::vec2(_groundAABB.GetSizes()) / _tileScale); - _fogPlane->SetSize(glm::vec2(_groundAABB.GetSizes().x, _groundAABB.GetSizes().y) / - _tileScale); // remove after glm::vec3 replacement + _fogPlane->SetSize(glm::vec2(_groundAABB.GetSizes()) / _tileScale); } if (_fogPlaneActor) @@ -1279,10 +1271,7 @@ void GraphManager::UpdateFogPlane() _fogPlaneActor->SetPos(_groundAABB.GetCenter()); _fogPlaneActor->SetScale(glm::vec3(_tileScale.x, _tileScale.y, 1)); - //static_cast(_fogPlaneActor->GetNodes().front()).SetSize(glm::vec2(_groundAABB.GetSizes()) / _tileScale); - static_cast(_fogPlaneActor->GetNodes().front()) - .SetSize(glm::vec2(_groundAABB.GetSizes().x, _groundAABB.GetSizes().y) / - _tileScale); // remove after glm::vec3 replacement + static_cast(_fogPlaneActor->GetNodes().front()).SetSize(glm::vec2(_groundAABB.GetSizes()) / _tileScale); } } diff --git a/src/Rock3dEngine/source/gui/GUI.cpp b/src/Rock3dEngine/source/gui/GUI.cpp index 3ce2ad7f..e87f4486 100644 --- a/src/Rock3dEngine/source/gui/GUI.cpp +++ b/src/Rock3dEngine/source/gui/GUI.cpp @@ -852,9 +852,7 @@ template void Context::DrawBaseText(_Text& text, AABB2* aabb) } else { - //pos += glm::vec2(MatGetPos(GetCI().GetWorldMat())); - pos += glm::vec2(MatGetPos(GetCI().GetWorldMat()).x, - MatGetPos(GetCI().GetWorldMat()).y); // remove after glm::vec3 replacement + pos += glm::vec2(MatGetPos(GetCI().GetWorldMat())); //Оси y не совпадают if (_invertY) pos.y = GetVPSize().y - (pos.y + text.GetVScroll()); diff --git a/src/Rock3dGame/header/game/HudMenu.h b/src/Rock3dGame/header/game/HudMenu.h index 30489ec1..d309c71b 100644 --- a/src/Rock3dGame/header/game/HudMenu.h +++ b/src/Rock3dGame/header/game/HudMenu.h @@ -142,8 +142,7 @@ class MiniMapFrame { Node() {} Node(const glm::vec2& mPos, float mSize): pos(mPos), size(mSize) {} - //Node(const glm::vec3& mPos, float mSize): pos(mPos), size(mSize) {} - Node(const glm::vec3& mPos, float mSize): pos(mPos.x, mPos.y), size(mSize) {} // remove after glm::vec3 replacement + Node(const glm::vec3& mPos, float mSize): pos(mPos), size(mSize) {} glm::vec2 pos; float size; diff --git a/src/Rock3dGame/source/game/HudMenu.cpp b/src/Rock3dGame/source/game/HudMenu.cpp index 183599e6..81d4ce75 100644 --- a/src/Rock3dGame/source/game/HudMenu.cpp +++ b/src/Rock3dGame/source/game/HudMenu.cpp @@ -439,7 +439,7 @@ void PlayerStateFrame::ProccessCarLifeBar(float deltaTime) D3DXVECTOR4 projVec; D3DXVec3Transform(&projVec, &Vec3GlmToDx(pos), &menu()->GetGUI()->GetCamera3d()->GetContextInfo().GetViewProj()); //glm::vec2 vec = projVec / projVec.w; - glm::vec2 vec = glm::vec2((projVec / projVec.w).x, (projVec / projVec.w).y); // remove after glm::vec3 replacement + glm::vec2 vec = glm::vec2((projVec / projVec.w).x, (projVec / projVec.w).y); // remove after D3DXVECTOR4 replacement if (projVec.z < 0) { @@ -689,8 +689,7 @@ void PlayerStateFrame::UpdateState(float deltaTime) D3DXVECTOR4 projVec; D3DXVec3Transform(&projVec, &Vec3GlmToDx(pos), &menu()->GetGUI()->GetCamera3d()->GetContextInfo().GetViewProj()); //glm::vec2 vec = projVec / projVec.w; - glm::vec2 vec = - glm::vec2((projVec / projVec.w).x, (projVec / projVec.w).y); // remove after glm::vec3 replacement + glm::vec2 vec = glm::vec2((projVec / projVec.w).x, (projVec / projVec.w).y); // remove after D3DXVECTOR4 replacement if (projVec.z < 0) { diff --git a/src/Rock3dGame/source/game/Player.cpp b/src/Rock3dGame/source/game/Player.cpp index 0993d374..c978dc65 100644 --- a/src/Rock3dGame/source/game/Player.cpp +++ b/src/Rock3dGame/source/game/Player.cpp @@ -914,10 +914,8 @@ void Player::CarState::Update(float deltaTime) nxActor->getGlobalOrientationQuat().getXYZW(glm::value_ptr(rot3)); Vec3Rotate(XVector, rot3, dir3); - //pos = glm::vec2(pos3); - pos = glm::vec2(pos3.x, pos3.y); // remove after glm::vec3 replacement - //dir = glm::vec2(dir3); - dir = glm::vec2(dir3.x, dir3.y); // remove after glm::vec3 replacement + pos = glm::vec2(pos3); + dir = glm::vec2(dir3); speed = GameCar::GetSpeed(nxActor, dir3); dir = glm::normalize(dir); diff --git a/src/Rock3dGame/source/game/Trace.cpp b/src/Rock3dGame/source/game/Trace.cpp index 531f0202..af6eb2c3 100644 --- a/src/Rock3dGame/source/game/Trace.cpp +++ b/src/Rock3dGame/source/game/Trace.cpp @@ -157,12 +157,10 @@ void WayNode::Tile::ApplyChanges() const { _changed = false; - //glm::vec2 sPos = GetPos(); - glm::vec2 sPos = glm::vec2(GetPos().x, GetPos().y); // remove after glm::vec3 replacement + glm::vec2 sPos = GetPos(); if (_node->GetNext()) { - //_dir = glm::vec2(GetNextPos()) - sPos; - _dir = glm::vec2(GetNextPos().x, GetNextPos().y) - sPos; // remove after glm::vec3 replacement + _dir = glm::vec2(GetNextPos()) - sPos; _dirLength = glm::length(_dir); _dir = glm::normalize(_dir); } @@ -364,8 +362,7 @@ bool WayNode::Tile::IsContains(const glm::vec3& point, bool lengthClamp, float* glm::vec3 pos2 = GetNextPos(); //Расстояние в 2д плоскости - //glm::vec2 point2 = point; - glm::vec2 point2 = glm::vec2(point.x, point.y); // remove after glm::vec3 replacement + glm::vec2 point2 = point; float dist1 = Line2DistToPoint(_midNormLine, point2); float dist2 = Line2DistToPoint(GetNextNormLine(), point2); float dirDist = Line2DistToPoint(_dirLine, point2); @@ -389,8 +386,7 @@ bool WayNode::Tile::IsZLevelContains(const glm::vec3& point, float* dist) const { ApplyChanges(); - //glm::vec2 pos = glm::vec2(point); - glm::vec2 pos = glm::vec2(point.x, point.y); // remove after glm::vec3 replacement + glm::vec2 pos = point; float height = GetHeight(pos); float coordZ = GetZCoord(pos); @@ -604,8 +600,7 @@ bool WayNode::RayCast(const glm::vec3& rayPos, const glm::vec3& rayVec, float* d bool WayNode::IsContains2(const glm::vec2& point, float* dist) const { - //float midDist = D3DXVec2Length(&(point - glm::vec2(_point->GetPos()))); - float midDist = glm::length(point - glm::vec2(_point->GetPos().x, _point->GetPos().y)); // remove after glm::vec3 replacement + float midDist = glm::length(point - glm::vec2(_point->GetPos())); if (dist) *dist = midDist; @@ -655,8 +650,7 @@ const glm::vec3& WayNode::GetPos() const glm::vec2 WayNode::GetPos2() const { - //return glm::vec2(GetPos()); - return glm::vec2(GetPos().x, GetPos().y); // remove after glm::vec3 replacement + return glm::vec2(GetPos()); } float WayNode::GetSize() const From 6c867836a223d8461225fec7a9160ee89c0b9fbd Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Fri, 28 Oct 2022 18:01:51 +0300 Subject: [PATCH 37/55] math: auto replace D3DXVECTOR4 with glm::vec4 in src/*.h,*.cpp --- src/LexStd/header/lslSerialValue.h | 4 +-- src/MathLib/header/lslMath.h | 24 ++++++------- src/MathLib/header/lslMath.inl | 8 ++--- src/MathLib/header/lslVariant.h | 16 ++++----- src/MathLib/source/lslVariant.cpp | 2 +- src/NetLib/include/net/BitStream.h | 2 +- src/NetLib/include/net/NetCommon.h | 8 ++--- src/NetLib/source/net/BitStream.cpp | 4 +-- src/Rock3dEngine/header/graph/Actor.h | 18 +++++----- src/Rock3dEngine/header/graph/GrassField.h | 6 ++-- .../header/graph/MaterialLibrary.h | 2 +- src/Rock3dEngine/header/graph/SceneManager.h | 8 ++--- src/Rock3dEngine/header/graph/StdNode.h | 4 +-- src/Rock3dEngine/header/res/GraphResource.h | 6 ++-- src/Rock3dEngine/source/GraphManager.cpp | 30 ++++++++-------- src/Rock3dEngine/source/graph/Actor.cpp | 12 +++---- src/Rock3dEngine/source/graph/Engine.cpp | 10 +++--- src/Rock3dEngine/source/graph/GrassField.cpp | 18 +++++----- .../source/graph/MappingShaders.cpp | 2 +- .../source/graph/MaterialLibrary.cpp | 10 +++--- .../source/graph/SceneManager.cpp | 8 ++--- .../source/graph/ShadowMapRender.cpp | 2 +- src/Rock3dEngine/source/graph/SunShaft.cpp | 2 +- src/Rock3dEngine/source/graph/WaterPlane.cpp | 2 +- src/Rock3dEngine/source/res/GraphResource.cpp | 8 ++--- src/Rock3dGame/header/game/CameraManager.h | 12 +++---- src/Rock3dGame/header/game/DataBase.h | 2 +- src/Rock3dGame/source/game/CameraManager.cpp | 10 +++--- src/Rock3dGame/source/game/DataBase.cpp | 36 +++++++++---------- src/Rock3dGame/source/game/HudMenu.cpp | 4 +-- src/Rock3dGame/source/game/RaceMenu2.cpp | 10 +++--- src/XPlatform/source/d3dx9math.cpp | 10 +++--- 32 files changed, 150 insertions(+), 150 deletions(-) diff --git a/src/LexStd/header/lslSerialValue.h b/src/LexStd/header/lslSerialValue.h index 9ca5bbee..7f483bfc 100644 --- a/src/LexStd/header/lslSerialValue.h +++ b/src/LexStd/header/lslSerialValue.h @@ -51,9 +51,9 @@ template<> struct SerialValue } }; -template<> struct SerialValue +template<> struct SerialValue { - typedef D3DXVECTOR4 _Value; + typedef glm::vec4 _Value; static void Write(SWriter* writer, const char* name, const _Value& value) { diff --git a/src/MathLib/header/lslMath.h b/src/MathLib/header/lslMath.h index a8d09751..ac06d3d4 100644 --- a/src/MathLib/header/lslMath.h +++ b/src/MathLib/header/lslMath.h @@ -58,8 +58,8 @@ bool operator<(const glm::vec3& vec1, float scalar); bool operator>(const glm::vec3& vec1, const glm::vec3& vec2); bool operator<(const glm::vec3& vec1, const glm::vec3& vec2); -D3DXVECTOR4 Vec4FromVec2(const glm::vec2& vec); -D3DXVECTOR4 Vec4FromVec3(const glm::vec3& vec); +glm::vec4 Vec4FromVec2(const glm::vec2& vec); +glm::vec4 Vec4FromVec3(const glm::vec3& vec); //Линия из нормали и точки void Line2FromNorm(const glm::vec2& norm, const glm::vec2& point, glm::vec3& outLine); @@ -82,21 +82,21 @@ bool RayCastIntersectSphere(const glm::vec3& rayPos, const glm::vec3& rayVec, co float PlaneDistToPoint(const D3DXPLANE& plane, const glm::vec3& point); const float floatErrComp = 0.00001f; -const D3DXMATRIX IdentityMatrix(1.0f, 0.0f, 0.0f, 0.0f, - 0.0f, 1.0f, 0.0f, 0.0f, - 0.0f, 0.0f, 1.0f, 0.0f, - 0.0f, 0.0f, 0.0f, 1.0f); +const D3DXMATRIX IdentityMatrix(1.0f, 0.0f, 0.0f, 0.0f, + 0.0f, 1.0f, 0.0f, 0.0f, + 0.0f, 0.0f, 1.0f, 0.0f, + 0.0f, 0.0f, 0.0f, 1.0f); const glm::vec3 XVector(1.0f, 0.0f, 0.0f); const glm::vec3 YVector(0.0f, 1.0f, 0.0f); const glm::vec3 ZVector(0.0f, 0.0f, 1.0f); -const glm::vec2 NullVec2(0.0f, 0.0f); +const glm::vec2 NullVec2(0.0f, 0.0f); const glm::vec3 NullVector(0.0f, 0.0f, 0.0f); -const D3DXVECTOR4 NullVec4(0.0f, 0.0f, 0.0f, 0.0f); -const glm::vec2 IdentityVec2(1.0f, 1.0f); +const glm::vec4 NullVec4(0.0f, 0.0f, 0.0f, 0.0f); +const glm::vec2 IdentityVec2(1.0f, 1.0f); const glm::vec3 IdentityVector(1.0f, 1.0f, 1.0f); -const D3DXVECTOR4 IdentityVec4(1.0f, 1.0f, 1.0f, 1.0f); +const glm::vec4 IdentityVec4(1.0f, 1.0f, 1.0f, 1.0f); const glm::vec3 IdentityHalfVec (0.5f, 0.5f, 0.5f); -const glm::quat NullQuaternion(1.0f, 0.0f, 0.0f, 0.0f); +const glm::quat NullQuaternion(1.0f, 0.0f, 0.0f, 0.0f); template struct ValueRange { @@ -533,7 +533,7 @@ template<> struct ValueRange typedef ValueRange FloatRange; typedef ValueRange Vec2Range; -typedef ValueRange Vec4Range; +typedef ValueRange Vec4Range; typedef ValueRange QuatRange; typedef ValueRange ColorRange; diff --git a/src/MathLib/header/lslMath.inl b/src/MathLib/header/lslMath.inl index da414d15..2d224dbc 100644 --- a/src/MathLib/header/lslMath.inl +++ b/src/MathLib/header/lslMath.inl @@ -411,14 +411,14 @@ inline bool operator<(const glm::vec3& vec1, const glm::vec3& vec2) vec1.z < vec2.z; } -inline D3DXVECTOR4 Vec4FromVec2(const glm::vec2& vec) +inline glm::vec4 Vec4FromVec2(const glm::vec2& vec) { - return D3DXVECTOR4(vec.x, vec.y, 0, 0); + return glm::vec4(vec.x, vec.y, 0, 0); } -inline D3DXVECTOR4 Vec4FromVec3(const glm::vec3& vec) +inline glm::vec4 Vec4FromVec3(const glm::vec3& vec) { - return D3DXVECTOR4(vec.x, vec.y, vec.z, 0); + return glm::vec4(vec.x, vec.y, vec.z, 0); } inline void operator*=(D3DXCOLOR& vec1, const D3DXCOLOR& vec2) diff --git a/src/MathLib/header/lslVariant.h b/src/MathLib/header/lslVariant.h index 6caebdbf..a65c5027 100644 --- a/src/MathLib/header/lslVariant.h +++ b/src/MathLib/header/lslVariant.h @@ -114,7 +114,7 @@ class VariantVec: private Variant template Type GetTypeOf() const; template<> Type GetTypeOf() const; template<> Type GetTypeOf() const; - template<> Type GetTypeOf() const; + template<> Type GetTypeOf() const; template<> Type GetTypeOf() const; public: VariantVec(); @@ -129,7 +129,7 @@ class VariantVec: private Variant // VariantVec(const glm::vec2* value, unsigned count); VariantVec(const glm::vec3* value, unsigned count); - VariantVec(const D3DXVECTOR4* value, unsigned count); + VariantVec(const glm::vec4* value, unsigned count); VariantVec(const D3DXCOLOR* value, unsigned count); VariantVec(const D3DXMATRIX* value, unsigned count); // @@ -142,7 +142,7 @@ class VariantVec: private Variant // VariantVec(const glm::vec2& value); VariantVec(const glm::vec3& value); - VariantVec(const D3DXVECTOR4& value); + VariantVec(const glm::vec4& value); VariantVec(const D3DXCOLOR& value); VariantVec(const D3DXMATRIX& value); @@ -515,14 +515,14 @@ inline VariantVec::VariantVec(const glm::vec3* value, unsigned count) AssignData(value, count); } -inline VariantVec::VariantVec(const D3DXVECTOR4* value, unsigned count) +inline VariantVec::VariantVec(const glm::vec4* value, unsigned count) { AssignData(value, count); } inline VariantVec::VariantVec(const D3DXCOLOR* value, unsigned count) { - AssignData(reinterpret_cast(value), count); + AssignData(reinterpret_cast(value), count); } inline VariantVec::VariantVec(const D3DXMATRIX* value, unsigned count) @@ -570,14 +570,14 @@ inline VariantVec::VariantVec(const glm::vec3& value) AssignData(&value, 1); } -inline VariantVec::VariantVec(const D3DXVECTOR4& value) +inline VariantVec::VariantVec(const glm::vec4& value) { AssignData(&value, 1); } inline VariantVec::VariantVec(const D3DXCOLOR& value) { - AssignData(reinterpret_cast(&value), 1); + AssignData(reinterpret_cast(&value), 1); } inline VariantVec::VariantVec(const D3DXMATRIX& value) @@ -620,7 +620,7 @@ template<> inline VariantVec::Type VariantVec::GetTypeOf() const return vtVec3; } -template<> inline VariantVec::Type VariantVec::GetTypeOf() const +template<> inline VariantVec::Type VariantVec::GetTypeOf() const { return vtVec4; } diff --git a/src/MathLib/source/lslVariant.cpp b/src/MathLib/source/lslVariant.cpp index 24f58b6f..5c5d183b 100644 --- a/src/MathLib/source/lslVariant.cpp +++ b/src/MathLib/source/lslVariant.cpp @@ -7,6 +7,6 @@ const unsigned Variant::cTypeSize[cTypeEnd] = {1, sizeof(int), sizeof(unsigned), sizeof(float), sizeof(double), sizeof(bool), sizeof(char)}; -const unsigned VariantVec::cMyTypeSize[cMyTypeEnd] = {sizeof(glm::vec2), sizeof(glm::vec3), sizeof(D3DXVECTOR4), sizeof(D3DXMATRIX)}; +const unsigned VariantVec::cMyTypeSize[cMyTypeEnd] = {sizeof(glm::vec2), sizeof(glm::vec3), sizeof(glm::vec4), sizeof(D3DXMATRIX)}; //} \ No newline at end of file diff --git a/src/NetLib/include/net/BitStream.h b/src/NetLib/include/net/BitStream.h index 1345a161..197ba438 100644 --- a/src/NetLib/include/net/BitStream.h +++ b/src/NetLib/include/net/BitStream.h @@ -197,7 +197,7 @@ class BitStream NETLIB_API void Serialize(float value[], int count, float err = cFloatErr); NETLIB_API void Serialize(glm::vec2& value, float err = cFloatErr); NETLIB_API void Serialize(glm::vec3& value, float err = cFloatErr); - NETLIB_API void Serialize(D3DXVECTOR4& value, float err = cFloatErr); + NETLIB_API void Serialize(glm::vec4& value, float err = cFloatErr); NETLIB_API void Serialize(glm::quat& value, float err = cFloatErr); NETLIB_API void Serialize(D3DXCOLOR& value, float err = cFloatErr); diff --git a/src/NetLib/include/net/NetCommon.h b/src/NetLib/include/net/NetCommon.h index 1becb517..20e4a21a 100644 --- a/src/NetLib/include/net/NetCommon.h +++ b/src/NetLib/include/net/NetCommon.h @@ -160,8 +160,8 @@ unsigned Read(std::istream& stream, glm::vec2& value); unsigned Write(std::ostream& stream, const glm::vec3& value); unsigned Read(std::istream& stream, glm::vec3& value); -unsigned Write(std::ostream& stream, const D3DXVECTOR4& value); -unsigned Read(std::istream& stream, D3DXVECTOR4& value); +unsigned Write(std::ostream& stream, const glm::vec4& value); +unsigned Read(std::istream& stream, glm::vec4& value); unsigned Write(std::ostream& stream, const glm::quat& value); unsigned Read(std::istream& stream, glm::quat& value); @@ -298,13 +298,13 @@ inline unsigned Read(std::istream& stream, glm::vec3& value) return sizeof(value); } -inline unsigned Write(std::ostream& stream, const D3DXVECTOR4& value) +inline unsigned Write(std::ostream& stream, const glm::vec4& value) { Write(stream, &value, sizeof(value)); return sizeof(value); } -inline unsigned Read(std::istream& stream, D3DXVECTOR4& value) +inline unsigned Read(std::istream& stream, glm::vec4& value) { Read(stream, &value, sizeof(value)); return sizeof(value); diff --git a/src/NetLib/source/net/BitStream.cpp b/src/NetLib/source/net/BitStream.cpp index 2421f2f4..6863b18e 100644 --- a/src/NetLib/source/net/BitStream.cpp +++ b/src/NetLib/source/net/BitStream.cpp @@ -300,7 +300,7 @@ void BitStream::Serialize(float value[], int count, float err) break; case 4: type = btVec4; - Serialize((D3DXVECTOR4&)*value, type, eq); + Serialize((glm::vec4&)*value, type, eq); break; default: LSL_ASSERT("void Serialize(float[] value, int count, float err)"); @@ -317,7 +317,7 @@ void BitStream::Serialize(glm::vec3& value, float err) Serialize(glm::value_ptr(value), 3, err); } -void BitStream::Serialize(D3DXVECTOR4& value, float err) +void BitStream::Serialize(glm::vec4& value, float err) { Serialize(value, 4, err); } diff --git a/src/Rock3dEngine/header/graph/Actor.h b/src/Rock3dEngine/header/graph/Actor.h index 7303a393..8a4b5dc8 100644 --- a/src/Rock3dEngine/header/graph/Actor.h +++ b/src/Rock3dEngine/header/graph/Actor.h @@ -22,9 +22,9 @@ class Actor: public IActor, public SceneNode private: GraphManager* _graph; GraphDesc _graphDesc; - D3DXVECTOR4 _vec1; - D3DXVECTOR4 _vec2; - D3DXVECTOR4 _vec3; + glm::vec4 _vec1; + glm::vec4 _vec2; + glm::vec4 _vec3; float _texDiffK; lsl::Object* _user; @@ -47,17 +47,17 @@ class Actor: public IActor, public SceneNode //planar refl plane(norm(x, y, z), d(w)) //if not null then it is a track - const D3DXVECTOR4& vec1() const; - void vec1(const D3DXVECTOR4& value); + const glm::vec4& vec1() const; + void vec1(const glm::vec4& value); //planar refl border back(x), front(y), left(z), right(w) - const D3DXVECTOR4& vec2() const; - void vec2(const D3DXVECTOR4& value); + const glm::vec4& vec2() const; + void vec2(const glm::vec4& value); //planar refl meshId(x), minTexDiffK(y), maxTexDiffK(z) //refl bumb (x) - const D3DXVECTOR4& vec3() const; - void vec3(const D3DXVECTOR4& value); + const glm::vec4& vec3() const; + void vec3(const glm::vec4& value); float texDiffK() const; void texDiffK(float value); diff --git a/src/Rock3dEngine/header/graph/GrassField.h b/src/Rock3dEngine/header/graph/GrassField.h index 28dbb3e1..40e668a4 100644 --- a/src/Rock3dEngine/header/graph/GrassField.h +++ b/src/Rock3dEngine/header/graph/GrassField.h @@ -21,17 +21,17 @@ class GrassField: public BaseSceneNode public: struct GrassTile { - GrassTile(float mWeight, D3DXVECTOR4 mTexCoord); + GrassTile(float mWeight, glm::vec4 mTexCoord); float weight; - D3DXVECTOR4 texCoord; + glm::vec4 texCoord; }; struct GrassDesc { typedef std::vector Tiles; - GrassDesc(graph::LibMaterial* mLibMat, const GrassTile& tile = GrassTile(1, D3DXVECTOR4(0, 0, 1, 1))); + GrassDesc(graph::LibMaterial* mLibMat, const GrassTile& tile = GrassTile(1, glm::vec4(0, 0, 1, 1))); graph::LibMaterial* libMat; Tiles tiles; diff --git a/src/Rock3dEngine/header/graph/MaterialLibrary.h b/src/Rock3dEngine/header/graph/MaterialLibrary.h index d52b5a14..a269860e 100644 --- a/src/Rock3dEngine/header/graph/MaterialLibrary.h +++ b/src/Rock3dEngine/header/graph/MaterialLibrary.h @@ -293,7 +293,7 @@ class MaterialLibrary: public lsl::ComCollection typedef lsl::ComCollection _MyBase; }; -void DrawScreenQuad(Engine& engine, const D3DXVECTOR4& quadVert = D3DXVECTOR4(0.0f, 0.0f, 1.0f, 1.0f), float fLeftU = 0.0f, float fTopV = 0.0f, float fRightU = 1.0f, float fBottomV = 1.0f, bool disableZBuf = false); +void DrawScreenQuad(Engine& engine, const glm::vec4& quadVert = glm::vec4(0.0f, 0.0f, 1.0f, 1.0f), float fLeftU = 0.0f, float fTopV = 0.0f, float fRightU = 1.0f, float fBottomV = 1.0f, bool disableZBuf = false); template Sampler<_Tex>::Sampler(Type type): _MyBase(type), _createTex(false) { diff --git a/src/Rock3dEngine/header/graph/SceneManager.h b/src/Rock3dEngine/header/graph/SceneManager.h index 24ea6001..62c361c3 100644 --- a/src/Rock3dEngine/header/graph/SceneManager.h +++ b/src/Rock3dEngine/header/graph/SceneManager.h @@ -193,14 +193,14 @@ class BaseSceneNode: public lsl::Component, protected IProgressUser void MoveAroundTarget(const glm::vec3& worldTarget, float pitchDelta, float turnDelta); void AdjustDistToTarget(const glm::vec3& worldTarget, float distance); - void WorldToLocal(const D3DXVECTOR4& vec, D3DXVECTOR4& out) const; + void WorldToLocal(const glm::vec4& vec, glm::vec4& out) const; void WorldToLocalCoord(const glm::vec3& vec, glm::vec3& out) const; void WorldToLocalNorm(const glm::vec3& vec, glm::vec3& out) const; - void LocalToWorld(const D3DXVECTOR4& vec, D3DXVECTOR4& out) const; + void LocalToWorld(const glm::vec4& vec, glm::vec4& out) const; void LocalToWorldCoord(const glm::vec3& vec, glm::vec3& out) const; void LocalToWorldNorm(const glm::vec3& vec, glm::vec3& out) const; - void ParentToLocal(const D3DXVECTOR4& vec, D3DXVECTOR4& out) const; - void LocalToParent(const D3DXVECTOR4& vec, D3DXVECTOR4& out) const; + void ParentToLocal(const glm::vec4& vec, glm::vec4& out) const; + void LocalToParent(const glm::vec4& vec, glm::vec4& out) const; unsigned RayCastIntersBB(const glm::vec3& wRayPos, const glm::vec3& wRayVec, bool includeChild = false) const; unsigned RayCastIntersBB(const glm::vec3& wRayPos, const glm::vec3& wRayVec, glm::vec3& wNearVec, glm::vec3& wFarVec, bool includeChild = false) const; diff --git a/src/Rock3dEngine/header/graph/StdNode.h b/src/Rock3dEngine/header/graph/StdNode.h index 98d648be..af88be0c 100644 --- a/src/Rock3dEngine/header/graph/StdNode.h +++ b/src/Rock3dEngine/header/graph/StdNode.h @@ -249,8 +249,8 @@ class ScreenSprite: public BaseSceneNode MaterialNode material; - D3DXVECTOR4 quadVertex; - D3DXVECTOR4 uvVertex; + glm::vec4 quadVertex; + glm::vec4 uvVertex; }; class MovCoordSys: public BaseSceneNode diff --git a/src/Rock3dEngine/header/res/GraphResource.h b/src/Rock3dEngine/header/res/GraphResource.h index d8efb899..bd1313a0 100644 --- a/src/Rock3dEngine/header/res/GraphResource.h +++ b/src/Rock3dEngine/header/res/GraphResource.h @@ -86,11 +86,11 @@ struct ScreenVertex { static const DWORD fvf = D3DFVF_XYZRHW | D3DFVF_TEX1; - D3DXVECTOR4 pos; + glm::vec4 pos; glm::vec2 tex; ScreenVertex(); - ScreenVertex(const D3DXVECTOR4& position, const glm::vec2& texCoord); + ScreenVertex(const glm::vec4& position, const glm::vec2& texCoord); }; struct VertexIter; @@ -167,7 +167,7 @@ struct VertexIter const glm::vec3* Pos3() const; glm::vec3* Pos3(); - D3DXVECTOR4* Pos4(); + glm::vec4* Pos4(); D3DCOLOR* Color(); glm::vec2* Tex0(); glm::vec2* Tex1(); diff --git a/src/Rock3dEngine/source/GraphManager.cpp b/src/Rock3dEngine/source/GraphManager.cpp index 822a7db0..9382fef1 100644 --- a/src/Rock3dEngine/source/GraphManager.cpp +++ b/src/Rock3dEngine/source/GraphManager.cpp @@ -564,10 +564,10 @@ void GraphManager::InitGrassField() graph::GrassField::GrassList list; graph::GrassField::GrassDesc desc(_grassMat); desc.tiles.clear(); - desc.tiles.push_back(graph::GrassField::GrassTile(2, D3DXVECTOR4(0, 0.5f, 0.5f, 0))); - desc.tiles.push_back(graph::GrassField::GrassTile(1, D3DXVECTOR4(0.5f, 0.5f, 1.0f, 0))); - desc.tiles.push_back(graph::GrassField::GrassTile(10, D3DXVECTOR4(0, 1.0f, 0.5f, 0.5f))); - desc.tiles.push_back(graph::GrassField::GrassTile(1, D3DXVECTOR4(0.5, 1.0f, 1.0f, 0.5f))); + desc.tiles.push_back(graph::GrassField::GrassTile(2, glm::vec4(0, 0.5f, 0.5f, 0))); + desc.tiles.push_back(graph::GrassField::GrassTile(1, glm::vec4(0.5f, 0.5f, 1.0f, 0))); + desc.tiles.push_back(graph::GrassField::GrassTile(10, glm::vec4(0, 1.0f, 0.5f, 0.5f))); + desc.tiles.push_back(graph::GrassField::GrassTile(1, glm::vec4(0.5, 1.0f, 1.0f, 0.5f))); list.push_back(desc); _grassField = new graph::GrassField(); @@ -1586,32 +1586,32 @@ void GraphManager::RenderDebug() if (_scRenderTexRef > 0) { _engine->GetContext().SetTexture(0, _scRenderTex->GetRT()->GetTex()); - DrawScreenQuad(*_engine, D3DXVECTOR4(0.0f, 0.0f, 0.2f, 0.2f)); + DrawScreenQuad(*_engine, glm::vec4(0.0f, 0.0f, 0.2f, 0.2f)); } /*if (_planarReflRender) { _engine->GetContext().SetTexture(0, _planarReflRender->GetRT()->GetTex()); - DrawScreenQuad(*_engine, D3DXVECTOR4(0.0f, 0.0f, 0.4f, 0.4f)); + DrawScreenQuad(*_engine, glm::vec4(0.0f, 0.0f, 0.4f, 0.4f)); }*/ if (_scDepthMapRef) { _engine->GetContext().SetTexture(0, _scDepthMap->GetRT()->GetTex()); - DrawScreenQuad(*_engine, D3DXVECTOR4(0.2f, 0.0f, 0.4f, 0.2f)); + DrawScreenQuad(*_engine, glm::vec4(0.2f, 0.0f, 0.4f, 0.2f)); } /*if (_sunShaft) { _engine->GetContext().SetTexture(0, _sunShaft->_blurTex[0].GetTex()); - DrawScreenQuad(*_engine, D3DXVECTOR4(0.0f, 0.2f, 0.2f, 0.4f)); + DrawScreenQuad(*_engine, glm::vec4(0.0f, 0.2f, 0.2f, 0.4f)); }*/ /*if (_bloomEff) { _engine->GetContext().SetTexture(0, _bloomEff->GetRT()->GetTex()); - DrawScreenQuad(*_engine, D3DXVECTOR4(0.0f, 0.4f, 0.2f, 0.6f)); + DrawScreenQuad(*_engine, glm::vec4(0.0f, 0.4f, 0.2f, 0.6f)); } if (_hdrEff) { _engine->GetContext().SetTexture(0, _hdrEff->GetRT()->GetTex()); - DrawScreenQuad(*_engine, D3DXVECTOR4(0.0f, 0.6f, 0.2f, 0.8f)); + DrawScreenQuad(*_engine, glm::vec4(0.0f, 0.6f, 0.2f, 0.8f)); }*/ /*if (_shadowRef) @@ -1623,12 +1623,12 @@ void GraphManager::RenderDebug() for (unsigned j = 0; j < (*iter)->GetShadowMap()->_shadowVec.size(); ++j) { _engine->GetContext().SetTexture(0, (*iter)->GetShadowMap()->_shadowVec[i]->GetTex()); - DrawScreenQuad(*_engine, D3DXVECTOR4(0.0f, 0.2f * i, 0.2f, 0.2f * (i + 1))); + DrawScreenQuad(*_engine, glm::vec4(0.0f, 0.2f * i, 0.2f, 0.2f * (i + 1))); ++i; } _engine->GetContext().SetTexture(0, (*iter)->GetShadowMap()->GetRT()->GetTex()); - DrawScreenQuad(*_engine, D3DXVECTOR4(0.0f, 0.2f * i, 0.2f, 0.2f * (i + 1))); + DrawScreenQuad(*_engine, glm::vec4(0.0f, 0.2f * i, 0.2f, 0.2f * (i + 1))); break; } }*/ @@ -1636,13 +1636,13 @@ void GraphManager::RenderDebug() /*if (_pixelLightRef > 0) { _engine->GetContext().SetTexture(0, _pixelLightMap->GetRT()->GetTex()); - DrawScreenQuad(*_engine, D3DXVECTOR4(0.2f, 0.8f, 0.4f, 1.0f)); + DrawScreenQuad(*_engine, glm::vec4(0.2f, 0.8f, 0.4f, 1.0f)); }*/ /*if (_cleanScTex) { _engine->GetContext().SetTexture(0, _cleanScTex->GetRT()->GetTex()); - DrawScreenQuad(*_engine, D3DXVECTOR4(0.2f, 0.8f, 0.4f, 1.0f)); + DrawScreenQuad(*_engine, glm::vec4(0.2f, 0.8f, 0.4f, 1.0f)); }*/ //_engine->GetContext().SetWorldMat(IdentityMatrix); @@ -1811,7 +1811,7 @@ void GraphManager::RenderPlanarReflScene(graph::CameraCI& camera) _planarReflRender->SetReflPlane(plane); - D3DXVECTOR4 border = actor->vec2(); + glm::vec4 border = actor->vec2(); AABB aabb = actor->GetLocalAABB(true); aabb.min.x += border.x; aabb.min.y += border.z; diff --git a/src/Rock3dEngine/source/graph/Actor.cpp b/src/Rock3dEngine/source/graph/Actor.cpp index 713d864f..6df220d2 100644 --- a/src/Rock3dEngine/source/graph/Actor.cpp +++ b/src/Rock3dEngine/source/graph/Actor.cpp @@ -134,32 +134,32 @@ void Actor::SetGraph(GraphManager* graph, const GraphDesc& desc) _graph->InsertActor(this); } -const D3DXVECTOR4& Actor::vec1() const +const glm::vec4& Actor::vec1() const { return _vec1; } -void Actor::vec1(const D3DXVECTOR4& value) +void Actor::vec1(const glm::vec4& value) { _vec1 = value; } -const D3DXVECTOR4& Actor::vec2() const +const glm::vec4& Actor::vec2() const { return _vec2; } -void Actor::vec2(const D3DXVECTOR4& value) +void Actor::vec2(const glm::vec4& value) { _vec2 = value; } -const D3DXVECTOR4& Actor::vec3() const +const glm::vec4& Actor::vec3() const { return _vec3; } -void Actor::vec3(const D3DXVECTOR4& value) +void Actor::vec3(const glm::vec4& value) { _vec3 = value; } diff --git a/src/Rock3dEngine/source/graph/Engine.cpp b/src/Rock3dEngine/source/graph/Engine.cpp index fda80406..33bc4f8f 100644 --- a/src/Rock3dEngine/source/graph/Engine.cpp +++ b/src/Rock3dEngine/source/graph/Engine.cpp @@ -162,7 +162,7 @@ void Engine::ReleaseQueries() void Engine::UpdateScreenQuad() { - D3DXVECTOR4 quadVert = D3DXVECTOR4(0.0f, 0.0f, 1.0f, 1.0f); + glm::vec4 quadVert = glm::vec4(0.0f, 0.0f, 1.0f, 1.0f); float fLeftU = 0.0f; float fTopV = 0.0f; @@ -177,10 +177,10 @@ void Engine::UpdateScreenQuad() res::ScreenVertex vertBuf[4] = { - res::ScreenVertex(D3DXVECTOR4(fPosX, fPosY, 0.5f, 1.0f), glm::vec2(fLeftU, fTopV)), - res::ScreenVertex(D3DXVECTOR4(fWidth5, fPosY, 0.5f, 1.0f), glm::vec2(fRightU, fTopV)), - res::ScreenVertex(D3DXVECTOR4(fPosX, fHeight5, 0.5f, 1.0f), glm::vec2(fLeftU, fBottomV)), - res::ScreenVertex(D3DXVECTOR4(fWidth5, fHeight5, 0.5f, 1.0f), glm::vec2(fRightU, fBottomV)) + res::ScreenVertex(glm::vec4(fPosX, fPosY, 0.5f, 1.0f), glm::vec2(fLeftU, fTopV)), + res::ScreenVertex(glm::vec4(fWidth5, fPosY, 0.5f, 1.0f), glm::vec2(fRightU, fTopV)), + res::ScreenVertex(glm::vec4(fPosX, fHeight5, 0.5f, 1.0f), glm::vec2(fLeftU, fBottomV)), + res::ScreenVertex(glm::vec4(fWidth5, fHeight5, 0.5f, 1.0f), glm::vec2(fRightU, fBottomV)) }; res::VertexData* data = _meshScreenQuad.GetOrCreateData(); diff --git a/src/Rock3dEngine/source/graph/GrassField.cpp b/src/Rock3dEngine/source/graph/GrassField.cpp index f721bf09..e51ddcab 100644 --- a/src/Rock3dEngine/source/graph/GrassField.cpp +++ b/src/Rock3dEngine/source/graph/GrassField.cpp @@ -17,7 +17,7 @@ GrassField::~GrassField() SetGrassList(GrassList()); } -GrassField::GrassTile::GrassTile(float mWeight, D3DXVECTOR4 mTexCoord): weight(mWeight), texCoord(mTexCoord) +GrassField::GrassTile::GrassTile(float mWeight, glm::vec4 mTexCoord): weight(mWeight), texCoord(mTexCoord) { } @@ -71,7 +71,7 @@ void GrassField::BuildField() { int numSprites = static_cast(Round(_grassList[i].tiles[j].weight * spritesPerWeight)); numSprites = std::min(maxSprites - spriteOff, numSprites); - D3DXVECTOR4 tex = _grassList[i].tiles[j].texCoord; + glm::vec4 tex = _grassList[i].tiles[j].texCoord; for (int k = 0; k < numSprites; ++k) { @@ -82,23 +82,23 @@ void GrassField::BuildField() pos.x += _disp * Random(); pos.y += _disp * Random(); - *data[vert + 0].Pos4() = D3DXVECTOR4(Vec3GlmToDx(pos), 0); + *data[vert + 0].Pos4() = glm::vec4(Vec3GlmToDx(pos), 0); *data[vert + 0].Tex0() = glm::vec2(tex[0], tex[1]); - *data[vert + 1].Pos4() = D3DXVECTOR4(Vec3GlmToDx(pos), 1); + *data[vert + 1].Pos4() = glm::vec4(Vec3GlmToDx(pos), 1); *data[vert + 1].Tex0() = glm::vec2(tex[2], tex[1]); - *data[vert + 2].Pos4() = D3DXVECTOR4(Vec3GlmToDx(pos), 2); + *data[vert + 2].Pos4() = glm::vec4(Vec3GlmToDx(pos), 2); *data[vert + 2].Tex0() = glm::vec2(tex[2], tex[3]); // - *data[vert + 3].Pos4() = D3DXVECTOR4(Vec3GlmToDx(pos), 0); + *data[vert + 3].Pos4() = glm::vec4(Vec3GlmToDx(pos), 0); *data[vert + 3].Tex0() = glm::vec2(tex[0], tex[1]); - *data[vert + 4].Pos4() = D3DXVECTOR4(Vec3GlmToDx(pos), 2); + *data[vert + 4].Pos4() = glm::vec4(Vec3GlmToDx(pos), 2); *data[vert + 4].Tex0() = glm::vec2(tex[2], tex[3]); - *data[vert + 5].Pos4() = D3DXVECTOR4(Vec3GlmToDx(pos), 3); + *data[vert + 5].Pos4() = glm::vec4(Vec3GlmToDx(pos), 3); *data[vert + 5].Tex0() = glm::vec2(tex[0], tex[3]); } @@ -147,7 +147,7 @@ void GrassField::Rebuild() float square = _width * _height; float aspect = _width / _height; - int grassSz = sizeof(D3DXVECTOR4) * sizeof(glm::vec2); + int grassSz = sizeof(glm::vec4) * sizeof(glm::vec2); float grassCnt = square * _density; float fieldSz = cMaxBufSize / static_cast(grassSz); float fieldCnt = grassCnt / fieldSz; diff --git a/src/Rock3dEngine/source/graph/MappingShaders.cpp b/src/Rock3dEngine/source/graph/MappingShaders.cpp index bb9cba66..90bc4e8a 100644 --- a/src/Rock3dEngine/source/graph/MappingShaders.cpp +++ b/src/Rock3dEngine/source/graph/MappingShaders.cpp @@ -114,7 +114,7 @@ void LightShader::DoBeginDraw(Engine& engine) SetParam(_params[lightPos], light.GetDesc().pos); SetParam(_params[lightDir], light.GetDesc().dir); - D3DXVECTOR4 spotParamsVec(light.GetDesc().falloff, light.GetDesc().phi, light.GetDesc().theta, light.GetDesc().range); + glm::vec4 spotParamsVec(light.GetDesc().falloff, light.GetDesc().phi, light.GetDesc().theta, light.GetDesc().range); SetParam(_params[spotParams], spotParamsVec); break; } diff --git a/src/Rock3dEngine/source/graph/MaterialLibrary.cpp b/src/Rock3dEngine/source/graph/MaterialLibrary.cpp index bbebf9c9..42e258e5 100644 --- a/src/Rock3dEngine/source/graph/MaterialLibrary.cpp +++ b/src/Rock3dEngine/source/graph/MaterialLibrary.cpp @@ -880,7 +880,7 @@ graph::LibMaterial& LibMaterial::SetAnisoFlt() return *this; } -void DrawScreenQuad(Engine& engine, const D3DXVECTOR4& quadVert, float fLeftU, float fTopV, float fRightU, float fBottomV, bool disableZBuf) +void DrawScreenQuad(Engine& engine, const glm::vec4& quadVert, float fLeftU, float fTopV, float fRightU, float fBottomV, bool disableZBuf) { D3DSURFACE_DESC surfDesc; IDirect3DSurface9* curRTSurf; @@ -897,16 +897,16 @@ void DrawScreenQuad(Engine& engine, const D3DXVECTOR4& quadVert, float fLeftU, f // Draw the quad res::ScreenVertex svQuad[4]; - svQuad[0].pos = D3DXVECTOR4(fPosX, fPosY, 0.5f, 1.0f); + svQuad[0].pos = glm::vec4(fPosX, fPosY, 0.5f, 1.0f); svQuad[0].tex = glm::vec2(fLeftU, fTopV); - svQuad[1].pos = D3DXVECTOR4(fWidth5, fPosY, 0.5f, 1.0f); + svQuad[1].pos = glm::vec4(fWidth5, fPosY, 0.5f, 1.0f); svQuad[1].tex = glm::vec2(fRightU, fTopV); - svQuad[2].pos = D3DXVECTOR4(fPosX, fHeight5, 0.5f, 1.0f); + svQuad[2].pos = glm::vec4(fPosX, fHeight5, 0.5f, 1.0f); svQuad[2].tex = glm::vec2(fLeftU, fBottomV); - svQuad[3].pos = D3DXVECTOR4(fWidth5, fHeight5, 0.5f, 1.0f); + svQuad[3].pos = glm::vec4(fWidth5, fHeight5, 0.5f, 1.0f); svQuad[3].tex = glm::vec2(fRightU, fBottomV); if (!disableZBuf) diff --git a/src/Rock3dEngine/source/graph/SceneManager.cpp b/src/Rock3dEngine/source/graph/SceneManager.cpp index 470b79cf..a139e921 100644 --- a/src/Rock3dEngine/source/graph/SceneManager.cpp +++ b/src/Rock3dEngine/source/graph/SceneManager.cpp @@ -533,7 +533,7 @@ void BaseSceneNode::AdjustDistToTarget(const glm::vec3& worldTarget, float dista SetWorldPos(worldTarget + GetWorldDir() * (-distance)); } -void BaseSceneNode::WorldToLocal(const D3DXVECTOR4& vec, D3DXVECTOR4& out) const +void BaseSceneNode::WorldToLocal(const glm::vec4& vec, glm::vec4& out) const { const D3DXMATRIX& mat = GetInvWorldMat(); D3DXVec4Transform(&out, &vec, &mat); @@ -549,7 +549,7 @@ void BaseSceneNode::WorldToLocalNorm(const glm::vec3& vec, glm::vec3& out) const out = Vec3TransformNormal(vec, GetInvWorldMat()); } -void BaseSceneNode::LocalToWorld(const D3DXVECTOR4& vec, D3DXVECTOR4& out) const +void BaseSceneNode::LocalToWorld(const glm::vec4& vec, glm::vec4& out) const { D3DXVec4Transform(&out, &vec, &GetWorldMat()); } @@ -564,13 +564,13 @@ void BaseSceneNode::LocalToWorldNorm(const glm::vec3& vec, glm::vec3& out) const out = Vec3TransformNormal(vec, GetWorldMat()); } -void BaseSceneNode::ParentToLocal(const D3DXVECTOR4& vec, D3DXVECTOR4& out) const +void BaseSceneNode::ParentToLocal(const glm::vec4& vec, glm::vec4& out) const { const D3DXMATRIX& mat = GetInvMat(); D3DXVec4Transform(&out, &vec, &mat); } -void BaseSceneNode::LocalToParent(const D3DXVECTOR4& vec, D3DXVECTOR4& out) const +void BaseSceneNode::LocalToParent(const glm::vec4& vec, glm::vec4& out) const { const D3DXMATRIX& mat = GetMat(); D3DXVec4Transform(&out, &vec, &mat); diff --git a/src/Rock3dEngine/source/graph/ShadowMapRender.cpp b/src/Rock3dEngine/source/graph/ShadowMapRender.cpp index d56c5f65..916167c3 100644 --- a/src/Rock3dEngine/source/graph/ShadowMapRender.cpp +++ b/src/Rock3dEngine/source/graph/ShadowMapRender.cpp @@ -82,7 +82,7 @@ void ShadowMapRender::ComputeCropMatrix(unsigned numSplit, const LightCI& light, for (int i = 0; i < 8; ++i) { // transform point - D3DXVECTOR4 vTransformed; + glm::vec4 vTransformed; D3DXVec3Transform(&vTransformed, &Vec3GlmToDx(pCorners[i]), &mLightViewProj); // project x and y diff --git a/src/Rock3dEngine/source/graph/SunShaft.cpp b/src/Rock3dEngine/source/graph/SunShaft.cpp index 2a8a0911..6e785e5f 100644 --- a/src/Rock3dEngine/source/graph/SunShaft.cpp +++ b/src/Rock3dEngine/source/graph/SunShaft.cpp @@ -73,7 +73,7 @@ void SunShaftRender::Render(Engine& engine) engine.GetContext().RestoreSamplerState(0, ssMinFilter); engine.GetContext().RestoreSamplerState(0, ssMipFilter); - D3DXVECTOR4 sunPos(Vec3GlmToDx(_sunPos), 1.0f); + glm::vec4 sunPos(Vec3GlmToDx(_sunPos), 1.0f); D3DXVec4Transform(&sunPos, &sunPos, &engine.GetContext().GetCamera().GetViewProj()); sunPos.x /= sunPos.w; sunPos.y /= sunPos.w; diff --git a/src/Rock3dEngine/source/graph/WaterPlane.cpp b/src/Rock3dEngine/source/graph/WaterPlane.cpp index 18935763..352e8c79 100644 --- a/src/Rock3dEngine/source/graph/WaterPlane.cpp +++ b/src/Rock3dEngine/source/graph/WaterPlane.cpp @@ -158,7 +158,7 @@ D3DXCOLOR WaterPlane::GetColor() void WaterPlane::SetColor(const D3DXCOLOR& value) { - shader.SetValue("waterColor", D3DXVECTOR4(value)); + shader.SetValue("waterColor", glm::vec4(value)); } const glm::vec3& WaterPlane::GetViewPos() const diff --git a/src/Rock3dEngine/source/res/GraphResource.cpp b/src/Rock3dEngine/source/res/GraphResource.cpp index cc570cf6..93f2a342 100644 --- a/src/Rock3dEngine/source/res/GraphResource.cpp +++ b/src/Rock3dEngine/source/res/GraphResource.cpp @@ -11,7 +11,7 @@ namespace res const int VertexData::cElementSize[cElementEnd] = { sizeof(glm::vec3), - sizeof(D3DXVECTOR4), + sizeof(glm::vec4), sizeof(glm::vec3), sizeof(D3DCOLOR), sizeof(glm::vec2), @@ -68,7 +68,7 @@ ScreenVertex::ScreenVertex() { } -ScreenVertex::ScreenVertex(const D3DXVECTOR4& position, const glm::vec2& texCoord): pos(position), tex(texCoord) +ScreenVertex::ScreenVertex(const glm::vec4& position, const glm::vec2& texCoord): pos(position), tex(texCoord) { } @@ -328,9 +328,9 @@ glm::vec3* VertexIter::Pos3() return reinterpret_cast(_owner->GetVertex(_index, VertexData::vtPos3)); } -D3DXVECTOR4* VertexIter::Pos4() +glm::vec4* VertexIter::Pos4() { - return reinterpret_cast(_owner->GetVertex(_index, VertexData::vtPos4)); + return reinterpret_cast(_owner->GetVertex(_index, VertexData::vtPos4)); } D3DCOLOR* VertexIter::Color() diff --git a/src/Rock3dGame/header/game/CameraManager.h b/src/Rock3dGame/header/game/CameraManager.h index 00f86d22..522a826e 100644 --- a/src/Rock3dGame/header/game/CameraManager.h +++ b/src/Rock3dGame/header/game/CameraManager.h @@ -44,7 +44,7 @@ class CameraManager: public ICameraManager Style _style; float _near; float _far; - D3DXVECTOR4 _clampAngle; + glm::vec4 _clampAngle; glm::vec3 _angleSpeed; glm::vec3 _stableAngle; glm::vec3 _lastFreePos; @@ -60,7 +60,7 @@ class CameraManager: public ICameraManager graph::Camera* _camera; Player* _player; GraphManager::LightSrc* _light; - D3DXVECTOR4 _target; + glm::vec4 _target; void OrthoCullOffset(); void SyncLight(); @@ -80,8 +80,8 @@ class CameraManager: public ICameraManager //x,y - minAngleZ, maxAngleZ //z,w - minAngleY, maxAngleY - const D3DXVECTOR4& GetClampAngle() const; - void SetClampAngle(const D3DXVECTOR4& value); + const glm::vec4& GetClampAngle() const; + void SetClampAngle(const glm::vec4& value); const glm::vec3& GetAngleSpeed(); void SetAngleSpeed(const glm::vec3& value); @@ -108,8 +108,8 @@ class CameraManager: public ICameraManager Player* GetPlayer(); void SetPlayer(Player* value); - const D3DXVECTOR4& GetTarget(); - void SetTarget(const D3DXVECTOR4& value); + const glm::vec4& GetTarget(); + void SetTarget(const glm::vec4& value); GraphManager::LightSrc* GetLight(); void SetLight(GraphManager::LightSrc* value); diff --git a/src/Rock3dGame/header/game/DataBase.h b/src/Rock3dGame/header/game/DataBase.h index 2242c9df..fb13f142 100644 --- a/src/Rock3dGame/header/game/DataBase.h +++ b/src/Rock3dGame/header/game/DataBase.h @@ -142,7 +142,7 @@ class DataBase: public Component //pxDefGroup - 0 px default group //pxShotGroup - 1 px shot group void LoadDecor(const std::string& name, const std::string& mesh, const std::string& libMat, GraphType graphType = gtDefFixPipe, bool px = false, bool cullOpacity = false, bool disableShadows = true); - void LoadTrack(const std::string& name, const std::string& mesh, const std::string& libMat, bool pxDefGroup = false, bool pxShotGroup = false, bool bump = false, bool planarRefl = false, const std::string& pxMesh = "", bool cullOpacity = false, const D3DXVECTOR4& vec1 = D3DXVECTOR4(0, 0, 0, 0), const D3DXVECTOR4& vec2 = D3DXVECTOR4(0, 0, 0, 0), const D3DXVECTOR4& vec3 = D3DXVECTOR4(0, 0, 0, 0)); + void LoadTrack(const std::string& name, const std::string& mesh, const std::string& libMat, bool pxDefGroup = false, bool pxShotGroup = false, bool bump = false, bool planarRefl = false, const std::string& pxMesh = "", bool cullOpacity = false, const glm::vec4& vec1 = glm::vec4(0, 0, 0, 0), const glm::vec4& vec2 = glm::vec4(0, 0, 0, 0), const glm::vec4& vec3 = glm::vec4(0, 0, 0, 0)); void LoadCar(const std::string& name, const std::string& mesh, const std::string& wheelMesh, const std::string& libMat, const std::string& wheelCoords, const CarDesc& carDesc); void LoadCrushObj(const std::string& name, const std::string& mesh, const std::string& libMat, float mass, int subMeshCount, int staticSubMeshes[], int staticCount, bool cullOpacity = false); diff --git a/src/Rock3dGame/source/game/CameraManager.cpp b/src/Rock3dGame/source/game/CameraManager.cpp index 2eb25175..b3e2c42b 100644 --- a/src/Rock3dGame/source/game/CameraManager.cpp +++ b/src/Rock3dGame/source/game/CameraManager.cpp @@ -388,7 +388,7 @@ void CameraManager::Control::OnInputFrame(float deltaTime) float camHeight = camWidth / camera->GetAspect(); float camSize = sqrt(camWidth * camWidth + camHeight * camHeight); //left, right, top, bottom - D3DXVECTOR4 camBorder = D3DXVECTOR4(cIsoBorder, cIsoBorder, cIsoBorder/camera->GetAspect(), cIsoBorder/camera->GetAspect()); + glm::vec4 camBorder = glm::vec4(cIsoBorder, cIsoBorder, cIsoBorder/camera->GetAspect(), cIsoBorder/camera->GetAspect()); //Обратный поворот glm::quat cIsoInvRot = glm::inverse(cIsoRot); @@ -631,12 +631,12 @@ bool CameraManager::InFly() return _flyCurTime != -1; } -const D3DXVECTOR4& CameraManager::GetClampAngle() const +const glm::vec4& CameraManager::GetClampAngle() const { return _clampAngle; } -void CameraManager::SetClampAngle(const D3DXVECTOR4& value) +void CameraManager::SetClampAngle(const glm::vec4& value) { _clampAngle = value; } @@ -797,12 +797,12 @@ void CameraManager::SetPlayer(Player* value) } } -const D3DXVECTOR4& CameraManager::GetTarget() +const glm::vec4& CameraManager::GetTarget() { return _target; } -void CameraManager::SetTarget(const D3DXVECTOR4& value) +void CameraManager::SetTarget(const glm::vec4& value) { _target = value; } diff --git a/src/Rock3dGame/source/game/DataBase.cpp b/src/Rock3dGame/source/game/DataBase.cpp index 9a23b890..4040d61b 100644 --- a/src/Rock3dGame/source/game/DataBase.cpp +++ b/src/Rock3dGame/source/game/DataBase.cpp @@ -474,11 +474,11 @@ void DataBase::LoadDecor(const std::string& name, const std::string& mesh, const SaveMapObj(mapObj, MapObjLib::ctDecoration, name); } -void DataBase::LoadTrack(const std::string& name, const std::string& mesh, const std::string& libMat, bool pxDefGroup, bool pxShotGroup, bool bump, bool planarRefl, const std::string& pxMesh, bool cullOpacity, const D3DXVECTOR4& vec1, const D3DXVECTOR4& vec2, const D3DXVECTOR4& vec3) +void DataBase::LoadTrack(const std::string& name, const std::string& mesh, const std::string& libMat, bool pxDefGroup, bool pxShotGroup, bool bump, bool planarRefl, const std::string& pxMesh, bool cullOpacity, const glm::vec4& vec1, const glm::vec4& vec2, const glm::vec4& vec3) { //pxDefGroup = false; //pxShotGroup = false; - D3DXVECTOR4 myVec3 = vec3; + glm::vec4 myVec3 = vec3; myVec3.x = -1; MapObj* mapObj = NewMapObj(); @@ -717,7 +717,7 @@ void DataBase::LoadCar(const std::string& name, const std::string& mesh, const s //x = 1.0f - bump if (carDesc.bump) - mapObj->GetGameObj().GetGrActor().vec3(D3DXVECTOR4(1.0f, 0.0f, 0.0f, 0.0f)); + mapObj->GetGameObj().GetGrActor().vec3(glm::vec4(1.0f, 0.0f, 0.0f, 0.0f)); SaveMapObj(mapObj, MapObjLib::ctCar, name); } @@ -1974,9 +1974,9 @@ void DataBase::LoadWorld1() D3DXPLANE plane; float cosAng = cos(15.0f * D3DX_PI/180.0f); D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(glm::vec3(0, 0, 6.2f)), &Vec3GlmToDx(glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng))); - D3DXVECTOR4 vec1 = plane; + glm::vec4 vec1 = plane; - D3DXVECTOR4 vec3(0.0f, -0.15f, 0.075f, 0.0f); + glm::vec4 vec3(0.0f, -0.15f, 0.075f, 0.0f); LoadTrack("World1\\jump", "World1\\Track\\jump.r3d", "World1\\Track\\track1", true, true); LoadTrack("World1\\most", "World1\\Track\\most.r3d", "World1\\Track\\most", true, true, false, false, "World1\\Track\\pxMost.r3d", true); @@ -2047,9 +2047,9 @@ void DataBase::LoadWorld2() D3DXPLANE plane; float cosAng = cos(15.0f * D3DX_PI/180.0f); D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(glm::vec3(0, 0, 6.2f)), &Vec3GlmToDx(glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng))); - D3DXVECTOR4 vec1 = plane; + glm::vec4 vec1 = plane; - D3DXVECTOR4 vec3(0.0f, -0.15f, 0.10f, 0.0f); + glm::vec4 vec3(0.0f, -0.15f, 0.10f, 0.0f); LoadTrack("World2\\jump", "World2\\Track\\jump.r3d", "World2\\Track\\track1", true, true, true); LoadTrack("World2\\most", "World2\\Track\\most.r3d", "World2\\Track\\most", true, true, true, false, "", true); @@ -2101,12 +2101,12 @@ void DataBase::LoadWorld3() D3DXPLANE plane; float cosAng = cos(15.0f * D3DX_PI/180.0f); D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(glm::vec3(0, 0, 6.2f)), &Vec3GlmToDx(glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng))); - D3DXVECTOR4 vec1 = plane; + glm::vec4 vec1 = plane; D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(glm::vec3(0, 0, 6.2f)), &Vec3GlmToDx(ZVector)); - D3DXVECTOR4 vec1Up = plane; + glm::vec4 vec1Up = plane; - D3DXVECTOR4 vec3(0.0f, -0.15f, 0.125f, 0.0f); + glm::vec4 vec3(0.0f, -0.15f, 0.125f, 0.0f); LoadTrack("World3\\most", "World3\\Track\\most.r3d", "World3\\Track\\most", true, true, false, false, "", true); LoadTrack("World3\\track1", "World3\\Track\\track1.r3d", "World3\\Track\\track", true, true, false, false, "World3\\Track\\pxTrack1.r3d", false, vec1Up, NullVec4, vec3); @@ -2141,9 +2141,9 @@ void DataBase::LoadWorld4() D3DXPLANE plane; float cosAng = cos(15.0f * D3DX_PI/180.0f); D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(glm::vec3(0, 0, 6.2f)), &Vec3GlmToDx(glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng))); - D3DXVECTOR4 vec1 = plane; + glm::vec4 vec1 = plane; - D3DXVECTOR4 vec3(0.0f, -0.25f, 0.25f, 0.0f); + glm::vec4 vec3(0.0f, -0.25f, 0.25f, 0.0f); LoadTrack("World4\\most", "World4\\Track\\most.r3d", "World4\\Track\\track1", true, true, false, false, "World4\\Track\\pxMost.r3d", true); LoadTrack("World4\\most2", "World4\\Track\\most2.r3d", "World4\\Track\\most2", true, true, false, false, "World4\\Track\\pxMost2.r3d", true); @@ -2175,13 +2175,13 @@ void DataBase::LoadWorld5() D3DXPLANE plane; D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(glm::vec3(0, 0, 6.2f)), &Vec3GlmToDx(ZVector)); - D3DXVECTOR4 plane1 = plane; + glm::vec4 plane1 = plane; float cosAng = cos(20.0f * D3DX_PI/180.0f); D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(glm::vec3(0, 0, 6.2f)), &Vec3GlmToDx(glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng))); - D3DXVECTOR4 plane2 = plane; + glm::vec4 plane2 = plane; - D3DXVECTOR4 vec3(0.0f, -0.15f, 0.125f, 0.0f); + glm::vec4 vec3(0.0f, -0.15f, 0.125f, 0.0f); LoadTrack("World5\\most", "World5\\Track\\most.r3d", "World5\\Track\\most", true, true, false, false, "", true); LoadTrack("World5\\trackVentil", "World5\\Track\\trackVentil.r3d", "World5\\Track\\track1"); @@ -2211,12 +2211,12 @@ void DataBase::LoadWorld6() D3DXPLANE plane; float cosAng = cos(15.0f * D3DX_PI/180.0f); D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(glm::vec3(0, 0, 6.2f)), &Vec3GlmToDx(glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng))); - D3DXVECTOR4 vec1 = plane; + glm::vec4 vec1 = plane; D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(glm::vec3(0, 0, 6.2f)), &Vec3GlmToDx(ZVector)); - D3DXVECTOR4 vec1Up = plane; + glm::vec4 vec1Up = plane; - D3DXVECTOR4 vec3(0.0f, -0.15f, 0.125f, 0.0f); + glm::vec4 vec3(0.0f, -0.15f, 0.125f, 0.0f); LoadTrack("World6\\most", "World6\\Track\\most.r3d", "World6\\Track\\track1", true, true, false, false, "World6\\Track\\pxMost.r3d"); LoadTrack("World6\\track1", "World6\\Track\\track1.r3d", "World6\\Track\\track1", true, true, false, false, ""); diff --git a/src/Rock3dGame/source/game/HudMenu.cpp b/src/Rock3dGame/source/game/HudMenu.cpp index 81d4ce75..1f0463a6 100644 --- a/src/Rock3dGame/source/game/HudMenu.cpp +++ b/src/Rock3dGame/source/game/HudMenu.cpp @@ -436,7 +436,7 @@ void PlayerStateFrame::ProccessCarLifeBar(float deltaTime) _carLifes[i].bar->SetProgress(value); glm::vec3 pos = _carLifes[i].target->GetCar().gameObj->GetPos() + glm::vec3(0.0f, 0.0f, 0.0f); - D3DXVECTOR4 projVec; + glm::vec4 projVec; D3DXVec3Transform(&projVec, &Vec3GlmToDx(pos), &menu()->GetGUI()->GetCamera3d()->GetContextInfo().GetViewProj()); //glm::vec2 vec = projVec / projVec.w; glm::vec2 vec = glm::vec2((projVec / projVec.w).x, (projVec / projVec.w).y); // remove after D3DXVECTOR4 replacement @@ -686,7 +686,7 @@ void PlayerStateFrame::UpdateState(float deltaTime) AABB2 aabb = opponent.label->GetTextAABB(); glm::vec3 pos = opponent.player->GetCar().gameObj->GetWorldPos() + glm::vec3(1.0f, -0.5f, 0); - D3DXVECTOR4 projVec; + glm::vec4 projVec; D3DXVec3Transform(&projVec, &Vec3GlmToDx(pos), &menu()->GetGUI()->GetCamera3d()->GetContextInfo().GetViewProj()); //glm::vec2 vec = projVec / projVec.w; glm::vec2 vec = glm::vec2((projVec / projVec.w).x, (projVec / projVec.w).y); // remove after D3DXVECTOR4 replacement diff --git a/src/Rock3dGame/source/game/RaceMenu2.cpp b/src/Rock3dGame/source/game/RaceMenu2.cpp index b34f0565..33def442 100644 --- a/src/Rock3dGame/source/game/RaceMenu2.cpp +++ b/src/Rock3dGame/source/game/RaceMenu2.cpp @@ -225,8 +225,8 @@ void CarFrame::SetCamStyle(CamStyle value, bool instant) rot = glm::quat(0.44111854f, 0.11683256f, 0.058045074f, -0.88791621f); } - camera->SetTarget(D3DXVECTOR4(0, 0, 0, 5.0f)); - camera->SetClampAngle(D3DXVECTOR4(0.0f, 0.0f, 25.0f * D3DX_PI/180, 80.0f * D3DX_PI/180)); + camera->SetTarget(glm::vec4(0, 0, 0, 5.0f)); + camera->SetClampAngle(glm::vec4(0.0f, 0.0f, 25.0f * D3DX_PI/180, 80.0f * D3DX_PI/180)); camera->SetAngleSpeed(glm::vec3(D3DX_PI/48, 0, 0)); camera->SetStableAngle(glm::vec3(75.0f * D3DX_PI/180, 0, 0)); break; @@ -293,7 +293,7 @@ void CarFrame::SetCamStyle(CamStyle value, bool instant) if (lastCamStyle == csCar) { - D3DXVECTOR4 target = camera->GetTarget(); + glm::vec4 target = camera->GetTarget(); camera->GetObserverCoord(glm::vec3(target.x, target.y, target.z), target.w, &_camLastPos, _camLastRot, NullVec2, 0, false, false, true, NULL, NULL, NULL); } } @@ -379,8 +379,8 @@ void SpaceshipFrame::OnShow(bool value) cameraInst->SetRot(glm::quat(0.96786171f, -0.028391786f, 0.21455817f, 0.12807286f)); camera->ChangeStyle(CameraManager::csAutoObserver); - camera->SetTarget(D3DXVECTOR4(0, 0, 0, 50.0f)); - camera->SetClampAngle(D3DXVECTOR4(40.0f * D3DX_PI/180, 30.0f * D3DX_PI/180, 45.0f * D3DX_PI/180, 80.0f * D3DX_PI/180)); + camera->SetTarget(glm::vec4(0, 0, 0, 50.0f)); + camera->SetClampAngle(glm::vec4(40.0f * D3DX_PI/180, 30.0f * D3DX_PI/180, 45.0f * D3DX_PI/180, 80.0f * D3DX_PI/180)); camera->SetAngleSpeed(glm::vec3(D3DX_PI/96, 0, 0)); camera->SetStableAngle(glm::vec3(65.0f * D3DX_PI/180, 0, 0)); diff --git a/src/XPlatform/source/d3dx9math.cpp b/src/XPlatform/source/d3dx9math.cpp index 1ed27071..ae0e1b56 100644 --- a/src/XPlatform/source/d3dx9math.cpp +++ b/src/XPlatform/source/d3dx9math.cpp @@ -22,8 +22,8 @@ glm::vec3* D3DXVec3Normalize(glm::vec3* out, const glm::vec3* pv) { } //Implementation copied from WINE project d3dx9_36/math.c -D3DXVECTOR4* D3DXVec3Transform(D3DXVECTOR4* out, const glm::vec3* pv, const D3DXMATRIX* pm) { - D3DXVECTOR4 result; +glm::vec4* D3DXVec3Transform(glm::vec4* out, const glm::vec3* pv, const D3DXMATRIX* pm) { + glm::vec4 result; result.x = pm->m[0][0] * pv->x + pm->m[1][0] * pv->y + pm->m[2][0] * pv->z + pm->m[3][0]; result.y = pm->m[0][1] * pv->x + pm->m[1][1] * pv->y + pm->m[2][1] * pv->z + pm->m[3][1]; @@ -45,8 +45,8 @@ glm::vec3* D3DXVec3TransformNormal(glm::vec3* out, const glm::vec3* pv, const D3 } //Implementation copied from WINE project d3dx9_36/math.c -D3DXVECTOR4* D3DXVec4Transform(D3DXVECTOR4 *out, const D3DXVECTOR4 *pv, const D3DXMATRIX *pm) { - D3DXVECTOR4 result; +glm::vec4* D3DXVec4Transform(glm::vec4 *out, const glm::vec4 *pv, const D3DXMATRIX *pm) { + glm::vec4 result; result.x = pm->m[0][0] * pv->x + pm->m[1][0] * pv->y + pm->m[2][0] * pv->z + pm->m[3][0] * pv->w; result.y = pm->m[0][1] * pv->x + pm->m[1][1] * pv->y + pm->m[2][1] * pv->z + pm->m[3][1] * pv->w; @@ -57,7 +57,7 @@ D3DXVECTOR4* D3DXVec4Transform(D3DXVECTOR4 *out, const D3DXVECTOR4 *pv, const D3 return out; } -float D3DXVec4Length(D3DXVECTOR4* v) { +float D3DXVec4Length(glm::vec4* v) { return (float) sqrt(v->x * v->x + v->y * v->y + v->z * v->z + v->w * v->w); } From 4fe2a641f086a871d578575b1679ad9097ac21d1 Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Fri, 28 Oct 2022 21:13:16 +0300 Subject: [PATCH 38/55] math: fix build after replace D3DXVECTOR4 with glm::vec4 --- src/LexStd/header/lslSerialValue.h | 4 ++-- src/MathLib/header/lslMath.inl | 21 +++++++++++++++++++ src/NetLib/source/net/BitStream.cpp | 2 +- src/Rock3dEngine/source/GraphManager.cpp | 2 +- .../source/graph/ActorManager.cpp | 2 +- src/Rock3dEngine/source/graph/GrassField.cpp | 12 +++++------ .../source/graph/SceneManager.cpp | 8 +++---- .../source/graph/ShadowMapRender.cpp | 3 +-- src/Rock3dEngine/source/graph/SunShaft.cpp | 4 ++-- src/Rock3dGame/source/game/CameraManager.cpp | 2 +- src/Rock3dGame/source/game/DataBase.cpp | 18 ++++++++-------- src/Rock3dGame/source/game/HudMenu.cpp | 12 ++++------- 12 files changed, 53 insertions(+), 37 deletions(-) diff --git a/src/LexStd/header/lslSerialValue.h b/src/LexStd/header/lslSerialValue.h index 7f483bfc..3f8f5f33 100644 --- a/src/LexStd/header/lslSerialValue.h +++ b/src/LexStd/header/lslSerialValue.h @@ -57,11 +57,11 @@ template<> struct SerialValue static void Write(SWriter* writer, const char* name, const _Value& value) { - writer->WriteValue(name, value, 4); + writer->WriteValue(name, glm::value_ptr(value), 4); } static SReader* Read(SReader* reader, const char* name, _Value& value) { - return reader->ReadValue(name, value, 4); + return reader->ReadValue(name, glm::value_ptr(value), 4); } }; diff --git a/src/MathLib/header/lslMath.inl b/src/MathLib/header/lslMath.inl index 2d224dbc..b808c6c3 100644 --- a/src/MathLib/header/lslMath.inl +++ b/src/MathLib/header/lslMath.inl @@ -88,6 +88,12 @@ inline D3DXVECTOR4 Vec4GlmToDx(const glm::vec4 v4) return v4Dx; } +inline glm::vec4 PlaneToVec4Glm(const D3DXPLANE pl) +{ + glm::vec4 v4(pl.a, pl.b, pl.c, pl.d); + return v4; +} + inline glm::vec3 Vec3TransformCoord(const glm::vec3 &vec, const D3DXMATRIX &mat) { D3DXVECTOR3 res; @@ -102,6 +108,21 @@ inline glm::vec3 Vec3TransformNormal(const glm::vec3 &vec, const D3DXMATRIX &mat return Vec3DxToGlm(res); } +inline glm::vec4 Vec3Transform(const glm::vec3 &vec, const D3DXMATRIX &mat) +{ + D3DXVECTOR4 res; + D3DXVec3Transform(&res, &Vec3GlmToDx(vec), &mat); + return Vec4DxToGlm(res); +} + + +inline glm::vec4 Vec4Transform(const glm::vec4 &vec, const D3DXMATRIX &mat) +{ + D3DXVECTOR4 res; + D3DXVec4Transform(&res, &Vec4GlmToDx(vec), &mat); + return Vec4DxToGlm(res); +} + inline float ScalarTransform(float scalar, const glm::vec3& vec, const D3DXMATRIX& mat) { D3DXVECTOR3 res; diff --git a/src/NetLib/source/net/BitStream.cpp b/src/NetLib/source/net/BitStream.cpp index 6863b18e..eee088e4 100644 --- a/src/NetLib/source/net/BitStream.cpp +++ b/src/NetLib/source/net/BitStream.cpp @@ -319,7 +319,7 @@ void BitStream::Serialize(glm::vec3& value, float err) void BitStream::Serialize(glm::vec4& value, float err) { - Serialize(value, 4, err); + Serialize(glm::value_ptr(value), 4, err); } void BitStream::Serialize(glm::quat& value, float err) diff --git a/src/Rock3dEngine/source/GraphManager.cpp b/src/Rock3dEngine/source/GraphManager.cpp index 9382fef1..7793891c 100644 --- a/src/Rock3dEngine/source/GraphManager.cpp +++ b/src/Rock3dEngine/source/GraphManager.cpp @@ -2446,7 +2446,7 @@ void GraphManager::BuildOctree() if ((abs(texDiffK.x) + abs(texDiffK.y)) > 0.0f && _lightList.size() > 0 && _lightList.front()->GetSource()->GetType() == D3DLIGHT_DIRECTIONAL) { - glm::vec3 norm = Vec4DxToGlm((*iter)->GetActor()->vec1()); + glm::vec3 norm = (*iter)->GetActor()->vec1(); glm::vec3 lightDir = _lightList.front()->GetSource()->GetDir(); float dot = glm::dot(norm, ZVector); diff --git a/src/Rock3dEngine/source/graph/ActorManager.cpp b/src/Rock3dEngine/source/graph/ActorManager.cpp index fee750d7..824ef013 100644 --- a/src/Rock3dEngine/source/graph/ActorManager.cpp +++ b/src/Rock3dEngine/source/graph/ActorManager.cpp @@ -305,7 +305,7 @@ const ActorManager::Planar& ActorManager::GetPlanar(Actor* actor) D3DXMatrixTranspose(&mat, &mat); D3DXPLANE plane; - D3DXPlaneTransform(&plane, &D3DXPLANE(actor->vec1()), &mat); + D3DXPlaneTransform(&plane, &D3DXPLANE(Vec4GlmToDx(actor->vec1())), &mat); D3DXPlaneNormalize(&plane, &plane); float minDist = 0; diff --git a/src/Rock3dEngine/source/graph/GrassField.cpp b/src/Rock3dEngine/source/graph/GrassField.cpp index e51ddcab..6e00c072 100644 --- a/src/Rock3dEngine/source/graph/GrassField.cpp +++ b/src/Rock3dEngine/source/graph/GrassField.cpp @@ -82,23 +82,23 @@ void GrassField::BuildField() pos.x += _disp * Random(); pos.y += _disp * Random(); - *data[vert + 0].Pos4() = glm::vec4(Vec3GlmToDx(pos), 0); + *data[vert + 0].Pos4() = glm::vec4(pos, 0); *data[vert + 0].Tex0() = glm::vec2(tex[0], tex[1]); - *data[vert + 1].Pos4() = glm::vec4(Vec3GlmToDx(pos), 1); + *data[vert + 1].Pos4() = glm::vec4(pos, 1); *data[vert + 1].Tex0() = glm::vec2(tex[2], tex[1]); - *data[vert + 2].Pos4() = glm::vec4(Vec3GlmToDx(pos), 2); + *data[vert + 2].Pos4() = glm::vec4(pos, 2); *data[vert + 2].Tex0() = glm::vec2(tex[2], tex[3]); // - *data[vert + 3].Pos4() = glm::vec4(Vec3GlmToDx(pos), 0); + *data[vert + 3].Pos4() = glm::vec4(pos, 0); *data[vert + 3].Tex0() = glm::vec2(tex[0], tex[1]); - *data[vert + 4].Pos4() = glm::vec4(Vec3GlmToDx(pos), 2); + *data[vert + 4].Pos4() = glm::vec4(pos, 2); *data[vert + 4].Tex0() = glm::vec2(tex[2], tex[3]); - *data[vert + 5].Pos4() = glm::vec4(Vec3GlmToDx(pos), 3); + *data[vert + 5].Pos4() = glm::vec4(pos, 3); *data[vert + 5].Tex0() = glm::vec2(tex[0], tex[3]); } diff --git a/src/Rock3dEngine/source/graph/SceneManager.cpp b/src/Rock3dEngine/source/graph/SceneManager.cpp index a139e921..35bf519c 100644 --- a/src/Rock3dEngine/source/graph/SceneManager.cpp +++ b/src/Rock3dEngine/source/graph/SceneManager.cpp @@ -536,7 +536,7 @@ void BaseSceneNode::AdjustDistToTarget(const glm::vec3& worldTarget, float dista void BaseSceneNode::WorldToLocal(const glm::vec4& vec, glm::vec4& out) const { const D3DXMATRIX& mat = GetInvWorldMat(); - D3DXVec4Transform(&out, &vec, &mat); + out = Vec4Transform(vec, mat); } void BaseSceneNode::WorldToLocalCoord(const glm::vec3& vec, glm::vec3& out) const @@ -551,7 +551,7 @@ void BaseSceneNode::WorldToLocalNorm(const glm::vec3& vec, glm::vec3& out) const void BaseSceneNode::LocalToWorld(const glm::vec4& vec, glm::vec4& out) const { - D3DXVec4Transform(&out, &vec, &GetWorldMat()); + out = Vec4Transform(vec, GetWorldMat()); } void BaseSceneNode::LocalToWorldCoord(const glm::vec3& vec, glm::vec3& out) const @@ -567,13 +567,13 @@ void BaseSceneNode::LocalToWorldNorm(const glm::vec3& vec, glm::vec3& out) const void BaseSceneNode::ParentToLocal(const glm::vec4& vec, glm::vec4& out) const { const D3DXMATRIX& mat = GetInvMat(); - D3DXVec4Transform(&out, &vec, &mat); + out = Vec4Transform(vec, mat); } void BaseSceneNode::LocalToParent(const glm::vec4& vec, glm::vec4& out) const { const D3DXMATRIX& mat = GetMat(); - D3DXVec4Transform(&out, &vec, &mat); + out = Vec4Transform(vec, mat); } unsigned BaseSceneNode::RayCastIntersBB(const glm::vec3& wRayPos, const glm::vec3& wRayVec, bool includeChild) const diff --git a/src/Rock3dEngine/source/graph/ShadowMapRender.cpp b/src/Rock3dEngine/source/graph/ShadowMapRender.cpp index 916167c3..83af3422 100644 --- a/src/Rock3dEngine/source/graph/ShadowMapRender.cpp +++ b/src/Rock3dEngine/source/graph/ShadowMapRender.cpp @@ -82,8 +82,7 @@ void ShadowMapRender::ComputeCropMatrix(unsigned numSplit, const LightCI& light, for (int i = 0; i < 8; ++i) { // transform point - glm::vec4 vTransformed; - D3DXVec3Transform(&vTransformed, &Vec3GlmToDx(pCorners[i]), &mLightViewProj); + glm::vec4 vTransformed = Vec3Transform(pCorners[i], mLightViewProj); // project x and y vTransformed.x /= vTransformed.w; diff --git a/src/Rock3dEngine/source/graph/SunShaft.cpp b/src/Rock3dEngine/source/graph/SunShaft.cpp index 6e785e5f..303eb589 100644 --- a/src/Rock3dEngine/source/graph/SunShaft.cpp +++ b/src/Rock3dEngine/source/graph/SunShaft.cpp @@ -73,8 +73,8 @@ void SunShaftRender::Render(Engine& engine) engine.GetContext().RestoreSamplerState(0, ssMinFilter); engine.GetContext().RestoreSamplerState(0, ssMipFilter); - glm::vec4 sunPos(Vec3GlmToDx(_sunPos), 1.0f); - D3DXVec4Transform(&sunPos, &sunPos, &engine.GetContext().GetCamera().GetViewProj()); + glm::vec4 sunPos(_sunPos, 1.0f); + sunPos = Vec4Transform(sunPos, engine.GetContext().GetCamera().GetViewProj()); sunPos.x /= sunPos.w; sunPos.y /= sunPos.w; sunPos.z /= sunPos.w; //sunPos.z = 1.0f; diff --git a/src/Rock3dGame/source/game/CameraManager.cpp b/src/Rock3dGame/source/game/CameraManager.cpp index b3e2c42b..a45c97f8 100644 --- a/src/Rock3dGame/source/game/CameraManager.cpp +++ b/src/Rock3dGame/source/game/CameraManager.cpp @@ -578,7 +578,7 @@ void CameraManager::Control::TargetChanged() if (_manager->_player) _staticVec2 = _manager->_player && _manager->_player->GetCar().mapObj ? _manager->_player->GetCar().grActor->GetWorldPos() : _manager->_player->GetCar().pos3; else - _staticVec2 = glm::vec3(Vec4DxToGlm(_manager->_target)); + _staticVec2 = glm::vec3(_manager->_target); } } diff --git a/src/Rock3dGame/source/game/DataBase.cpp b/src/Rock3dGame/source/game/DataBase.cpp index 4040d61b..745ae7f8 100644 --- a/src/Rock3dGame/source/game/DataBase.cpp +++ b/src/Rock3dGame/source/game/DataBase.cpp @@ -1974,7 +1974,7 @@ void DataBase::LoadWorld1() D3DXPLANE plane; float cosAng = cos(15.0f * D3DX_PI/180.0f); D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(glm::vec3(0, 0, 6.2f)), &Vec3GlmToDx(glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng))); - glm::vec4 vec1 = plane; + glm::vec4 vec1 = PlaneToVec4Glm(plane); glm::vec4 vec3(0.0f, -0.15f, 0.075f, 0.0f); @@ -2047,7 +2047,7 @@ void DataBase::LoadWorld2() D3DXPLANE plane; float cosAng = cos(15.0f * D3DX_PI/180.0f); D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(glm::vec3(0, 0, 6.2f)), &Vec3GlmToDx(glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng))); - glm::vec4 vec1 = plane; + glm::vec4 vec1 = PlaneToVec4Glm(plane); glm::vec4 vec3(0.0f, -0.15f, 0.10f, 0.0f); @@ -2101,10 +2101,10 @@ void DataBase::LoadWorld3() D3DXPLANE plane; float cosAng = cos(15.0f * D3DX_PI/180.0f); D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(glm::vec3(0, 0, 6.2f)), &Vec3GlmToDx(glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng))); - glm::vec4 vec1 = plane; + glm::vec4 vec1 = PlaneToVec4Glm(plane); D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(glm::vec3(0, 0, 6.2f)), &Vec3GlmToDx(ZVector)); - glm::vec4 vec1Up = plane; + glm::vec4 vec1Up = PlaneToVec4Glm(plane); glm::vec4 vec3(0.0f, -0.15f, 0.125f, 0.0f); @@ -2141,7 +2141,7 @@ void DataBase::LoadWorld4() D3DXPLANE plane; float cosAng = cos(15.0f * D3DX_PI/180.0f); D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(glm::vec3(0, 0, 6.2f)), &Vec3GlmToDx(glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng))); - glm::vec4 vec1 = plane; + glm::vec4 vec1 = PlaneToVec4Glm(plane); glm::vec4 vec3(0.0f, -0.25f, 0.25f, 0.0f); @@ -2175,11 +2175,11 @@ void DataBase::LoadWorld5() D3DXPLANE plane; D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(glm::vec3(0, 0, 6.2f)), &Vec3GlmToDx(ZVector)); - glm::vec4 plane1 = plane; + glm::vec4 plane1 = PlaneToVec4Glm(plane); float cosAng = cos(20.0f * D3DX_PI/180.0f); D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(glm::vec3(0, 0, 6.2f)), &Vec3GlmToDx(glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng))); - glm::vec4 plane2 = plane; + glm::vec4 plane2 = PlaneToVec4Glm(plane); glm::vec4 vec3(0.0f, -0.15f, 0.125f, 0.0f); @@ -2211,10 +2211,10 @@ void DataBase::LoadWorld6() D3DXPLANE plane; float cosAng = cos(15.0f * D3DX_PI/180.0f); D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(glm::vec3(0, 0, 6.2f)), &Vec3GlmToDx(glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng))); - glm::vec4 vec1 = plane; + glm::vec4 vec1 = PlaneToVec4Glm(plane); D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(glm::vec3(0, 0, 6.2f)), &Vec3GlmToDx(ZVector)); - glm::vec4 vec1Up = plane; + glm::vec4 vec1Up = PlaneToVec4Glm(plane); glm::vec4 vec3(0.0f, -0.15f, 0.125f, 0.0f); diff --git a/src/Rock3dGame/source/game/HudMenu.cpp b/src/Rock3dGame/source/game/HudMenu.cpp index 1f0463a6..bba471f6 100644 --- a/src/Rock3dGame/source/game/HudMenu.cpp +++ b/src/Rock3dGame/source/game/HudMenu.cpp @@ -436,10 +436,8 @@ void PlayerStateFrame::ProccessCarLifeBar(float deltaTime) _carLifes[i].bar->SetProgress(value); glm::vec3 pos = _carLifes[i].target->GetCar().gameObj->GetPos() + glm::vec3(0.0f, 0.0f, 0.0f); - glm::vec4 projVec; - D3DXVec3Transform(&projVec, &Vec3GlmToDx(pos), &menu()->GetGUI()->GetCamera3d()->GetContextInfo().GetViewProj()); - //glm::vec2 vec = projVec / projVec.w; - glm::vec2 vec = glm::vec2((projVec / projVec.w).x, (projVec / projVec.w).y); // remove after D3DXVECTOR4 replacement + glm::vec4 projVec = Vec3Transform(pos, menu()->GetGUI()->GetCamera3d()->GetContextInfo().GetViewProj()); + glm::vec2 vec = projVec / projVec.w; if (projVec.z < 0) { @@ -686,10 +684,8 @@ void PlayerStateFrame::UpdateState(float deltaTime) AABB2 aabb = opponent.label->GetTextAABB(); glm::vec3 pos = opponent.player->GetCar().gameObj->GetWorldPos() + glm::vec3(1.0f, -0.5f, 0); - glm::vec4 projVec; - D3DXVec3Transform(&projVec, &Vec3GlmToDx(pos), &menu()->GetGUI()->GetCamera3d()->GetContextInfo().GetViewProj()); - //glm::vec2 vec = projVec / projVec.w; - glm::vec2 vec = glm::vec2((projVec / projVec.w).x, (projVec / projVec.w).y); // remove after D3DXVECTOR4 replacement + glm::vec4 projVec = Vec3Transform(pos, menu()->GetGUI()->GetCamera3d()->GetContextInfo().GetViewProj()); + glm::vec2 vec = projVec / projVec.w; if (projVec.z < 0) { From 56379af73c5855f78bf49849e8af3cc481d9deee Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Sat, 29 Oct 2022 14:32:32 +0300 Subject: [PATCH 39/55] math: auto replace D3DXCOLOR with glm::vec4 in src/*.h,*.cpp,*.inl --- src/LexStd/header/lslSerialValue.h | 4 +- src/MathLib/header/lslMath.h | 2 +- src/MathLib/header/lslMath.inl | 6 +- src/MathLib/header/lslVariant.h | 8 +-- src/MathLib/header/r3dMath.h | 50 +++++++-------- src/NetLib/include/net/BitStream.h | 2 +- src/NetLib/include/net/NetCommon.h | 8 +-- src/NetLib/source/net/BitStream.cpp | 2 +- src/Rock3dEngine/header/GraphManager.h | 18 +++--- src/Rock3dEngine/header/graph/ClearSurf.h | 6 +- src/Rock3dEngine/header/graph/ContextInfo.h | 20 +++--- src/Rock3dEngine/header/graph/FogPlane.h | 6 +- .../header/graph/MappingShaders.h | 2 +- .../header/graph/MaterialLibrary.h | 4 +- src/Rock3dEngine/header/graph/SceneManager.h | 18 +++--- src/Rock3dEngine/header/graph/StdNode.h | 22 +++---- src/Rock3dEngine/header/graph/WaterPlane.h | 4 +- src/Rock3dEngine/header/gui/GUI.h | 26 ++++---- src/Rock3dEngine/source/GraphManager.cpp | 14 ++--- src/Rock3dEngine/source/graph/ClearSurf.cpp | 4 +- src/Rock3dEngine/source/graph/ContextInfo.cpp | 4 +- src/Rock3dEngine/source/graph/Engine.cpp | 2 +- src/Rock3dEngine/source/graph/FogPlane.cpp | 6 +- src/Rock3dEngine/source/graph/GrassField.cpp | 4 +- .../source/graph/MappingShaders.cpp | 14 ++--- .../source/graph/MaterialLibrary.cpp | 4 +- .../source/graph/SceneManager.cpp | 16 ++--- src/Rock3dEngine/source/graph/StdNode.cpp | 28 ++++----- src/Rock3dEngine/source/graph/WaterPlane.cpp | 8 +-- src/Rock3dEngine/source/gui/GUI.cpp | 20 +++--- src/Rock3dGame/header/edit/Map.h | 4 +- src/Rock3dGame/header/game/DialogMenu2.h | 6 +- src/Rock3dGame/header/game/Environment.h | 6 +- src/Rock3dGame/header/game/Menu.h | 14 ++--- src/Rock3dGame/header/game/Player.h | 10 +-- src/Rock3dGame/header/game/Race.h | 2 +- src/Rock3dGame/header/game/RaceMenu2.h | 22 +++---- src/Rock3dGame/header/game/ResourceManager.h | 2 +- src/Rock3dGame/header/game/TraceGfx.h | 2 +- src/Rock3dGame/header/net/NetPlayer.h | 10 +-- src/Rock3dGame/source/edit/EditMap.cpp | 4 +- src/Rock3dGame/source/game/AIPlayer.cpp | 4 +- src/Rock3dGame/source/game/DialogMenu2.cpp | 28 ++++----- src/Rock3dGame/source/game/Environment.cpp | 28 ++++----- src/Rock3dGame/source/game/FinalMenu.cpp | 6 +- src/Rock3dGame/source/game/FinishMenu.cpp | 8 +-- src/Rock3dGame/source/game/GameBase.cpp | 2 +- src/Rock3dGame/source/game/GameMode.cpp | 10 +-- src/Rock3dGame/source/game/HudMenu.cpp | 32 +++++----- src/Rock3dGame/source/game/MainMenu2.cpp | 14 ++--- src/Rock3dGame/source/game/Menu.cpp | 38 ++++++------ src/Rock3dGame/source/game/OptionsMenu.cpp | 26 ++++---- src/Rock3dGame/source/game/Player.cpp | 8 +-- src/Rock3dGame/source/game/Race.cpp | 6 +- src/Rock3dGame/source/game/RaceMenu2.cpp | 62 +++++++++---------- .../source/game/ResourceManager.cpp | 20 +++--- src/Rock3dGame/source/game/TraceGfx.cpp | 4 +- src/Rock3dGame/source/net/NetPlayer.cpp | 16 ++--- 58 files changed, 363 insertions(+), 363 deletions(-) diff --git a/src/LexStd/header/lslSerialValue.h b/src/LexStd/header/lslSerialValue.h index 3f8f5f33..b5f00906 100644 --- a/src/LexStd/header/lslSerialValue.h +++ b/src/LexStd/header/lslSerialValue.h @@ -79,9 +79,9 @@ template<> struct SerialValue } }; -template<> struct SerialValue +template<> struct SerialValue { - typedef D3DXCOLOR _Value; + typedef glm::vec4 _Value; static void Write(SWriter* writer, const char* name, const _Value& value) { diff --git a/src/MathLib/header/lslMath.h b/src/MathLib/header/lslMath.h index ac06d3d4..d5f36f53 100644 --- a/src/MathLib/header/lslMath.h +++ b/src/MathLib/header/lslMath.h @@ -535,7 +535,7 @@ typedef ValueRange FloatRange; typedef ValueRange Vec2Range; typedef ValueRange Vec4Range; typedef ValueRange QuatRange; -typedef ValueRange ColorRange; +typedef ValueRange ColorRange; //} diff --git a/src/MathLib/header/lslMath.inl b/src/MathLib/header/lslMath.inl index b808c6c3..18c06267 100644 --- a/src/MathLib/header/lslMath.inl +++ b/src/MathLib/header/lslMath.inl @@ -442,7 +442,7 @@ inline glm::vec4 Vec4FromVec3(const glm::vec3& vec) return glm::vec4(vec.x, vec.y, vec.z, 0); } -inline void operator*=(D3DXCOLOR& vec1, const D3DXCOLOR& vec2) +inline void operator*=(glm::vec4& vec1, const glm::vec4& vec2) { vec1.r *= vec2.r; vec1.g *= vec2.g; @@ -450,9 +450,9 @@ inline void operator*=(D3DXCOLOR& vec1, const D3DXCOLOR& vec2) vec1.a *= vec2.a; } -inline D3DXCOLOR operator*(const D3DXCOLOR& vec1, const D3DXCOLOR& vec2) +inline glm::vec4 operator*(const glm::vec4& vec1, const glm::vec4& vec2) { - D3DXCOLOR res = vec1; + glm::vec4 res = vec1; res *= vec2; return res; diff --git a/src/MathLib/header/lslVariant.h b/src/MathLib/header/lslVariant.h index a65c5027..cd088a37 100644 --- a/src/MathLib/header/lslVariant.h +++ b/src/MathLib/header/lslVariant.h @@ -130,7 +130,7 @@ class VariantVec: private Variant VariantVec(const glm::vec2* value, unsigned count); VariantVec(const glm::vec3* value, unsigned count); VariantVec(const glm::vec4* value, unsigned count); - VariantVec(const D3DXCOLOR* value, unsigned count); + VariantVec(const glm::vec4* value, unsigned count); VariantVec(const D3DXMATRIX* value, unsigned count); // VariantVec(const int& value); @@ -143,7 +143,7 @@ class VariantVec: private Variant VariantVec(const glm::vec2& value); VariantVec(const glm::vec3& value); VariantVec(const glm::vec4& value); - VariantVec(const D3DXCOLOR& value); + VariantVec(const glm::vec4& value); VariantVec(const D3DXMATRIX& value); using _MyBase::CheckType; @@ -520,7 +520,7 @@ inline VariantVec::VariantVec(const glm::vec4* value, unsigned count) AssignData(value, count); } -inline VariantVec::VariantVec(const D3DXCOLOR* value, unsigned count) +inline VariantVec::VariantVec(const glm::vec4* value, unsigned count) { AssignData(reinterpret_cast(value), count); } @@ -575,7 +575,7 @@ inline VariantVec::VariantVec(const glm::vec4& value) AssignData(&value, 1); } -inline VariantVec::VariantVec(const D3DXCOLOR& value) +inline VariantVec::VariantVec(const glm::vec4& value) { AssignData(reinterpret_cast(&value), 1); } diff --git a/src/MathLib/header/r3dMath.h b/src/MathLib/header/r3dMath.h index 9e6979b5..7b8304c4 100644 --- a/src/MathLib/header/r3dMath.h +++ b/src/MathLib/header/r3dMath.h @@ -202,31 +202,31 @@ bool RayCastIntersectSquare(const glm::vec3& rayStart, const glm::vec3& rayVec, void GetSampleOffsetsDownScale3x3(DWORD dwWidth, DWORD dwHeight, glm::vec2 avSampleOffsets[9]); void GetSampleOffsetsDownScale4x4(DWORD dwWidth, DWORD dwHeight, glm::vec2 avSampleOffsets[16]); -const D3DXCOLOR clrBlack (0.0f, 0.0f, 0.0f , 1.0f); -const D3DXCOLOR clrGray05 (0.05f, 0.05f, 0.05f, 1.0f); -const D3DXCOLOR clrGray10 (0.10f, 0.10f, 0.10f, 1.0f); -const D3DXCOLOR clrGray15 (0.15f, 0.15f, 0.15f, 1.0f); -const D3DXCOLOR clrGray20 (0.20f, 0.20f, 0.20f, 1.0f); -const D3DXCOLOR clrGray25 (0.25f, 0.25f, 0.25f, 1.0f); -const D3DXCOLOR clrGray30 (0.30f, 0.30f, 0.30f, 1.0f); -const D3DXCOLOR clrGray35 (0.35f, 0.35f, 0.35f, 1.0f); -const D3DXCOLOR clrGray40 (0.40f, 0.40f, 0.40f, 1.0f); -const D3DXCOLOR clrGray45 (0.45f, 0.45f, 0.45f, 1.0f); -const D3DXCOLOR clrGray50 (0.50f, 0.50f, 0.50f, 1.0f); -const D3DXCOLOR clrGray55 (0.55f, 0.55f, 0.55f, 1.0f); -const D3DXCOLOR clrGray60 (0.60f, 0.60f, 0.60f, 1.0f); -const D3DXCOLOR clrGray65 (0.65f, 0.65f, 0.65f, 1.0f); -const D3DXCOLOR clrGray70 (0.70f, 0.70f, 0.70f, 1.0f); -const D3DXCOLOR clrGray75 (0.75f, 0.75f, 0.75f, 1.0f); -const D3DXCOLOR clrGray80 (0.80f, 0.80f, 0.80f, 1.0f); -const D3DXCOLOR clrGray85 (0.85f, 0.85f, 0.85f, 1.0f); -const D3DXCOLOR clrGray90 (0.90f, 0.90f, 0.90f, 1.0f); -const D3DXCOLOR clrGray95 (0.95f, 0.95f, 0.95f, 1.0f); -const D3DXCOLOR clrWhite (1.0f, 1.0f, 1.0f, 1.0f); -const D3DXCOLOR clrRed (1.0f, 0.0f, 0.0f, 1.0f); -const D3DXCOLOR clrGreen (0.0f, 1.0f, 0.0f, 1.0f); -const D3DXCOLOR clrBlue (0.0f, 0.0f, 1.0f, 1.0f); -const D3DXCOLOR clrYellow (1.0f, 1.0f, 0.0f, 1.0f); +const glm::vec4 clrBlack (0.0f, 0.0f, 0.0f , 1.0f); +const glm::vec4 clrGray05 (0.05f, 0.05f, 0.05f, 1.0f); +const glm::vec4 clrGray10 (0.10f, 0.10f, 0.10f, 1.0f); +const glm::vec4 clrGray15 (0.15f, 0.15f, 0.15f, 1.0f); +const glm::vec4 clrGray20 (0.20f, 0.20f, 0.20f, 1.0f); +const glm::vec4 clrGray25 (0.25f, 0.25f, 0.25f, 1.0f); +const glm::vec4 clrGray30 (0.30f, 0.30f, 0.30f, 1.0f); +const glm::vec4 clrGray35 (0.35f, 0.35f, 0.35f, 1.0f); +const glm::vec4 clrGray40 (0.40f, 0.40f, 0.40f, 1.0f); +const glm::vec4 clrGray45 (0.45f, 0.45f, 0.45f, 1.0f); +const glm::vec4 clrGray50 (0.50f, 0.50f, 0.50f, 1.0f); +const glm::vec4 clrGray55 (0.55f, 0.55f, 0.55f, 1.0f); +const glm::vec4 clrGray60 (0.60f, 0.60f, 0.60f, 1.0f); +const glm::vec4 clrGray65 (0.65f, 0.65f, 0.65f, 1.0f); +const glm::vec4 clrGray70 (0.70f, 0.70f, 0.70f, 1.0f); +const glm::vec4 clrGray75 (0.75f, 0.75f, 0.75f, 1.0f); +const glm::vec4 clrGray80 (0.80f, 0.80f, 0.80f, 1.0f); +const glm::vec4 clrGray85 (0.85f, 0.85f, 0.85f, 1.0f); +const glm::vec4 clrGray90 (0.90f, 0.90f, 0.90f, 1.0f); +const glm::vec4 clrGray95 (0.95f, 0.95f, 0.95f, 1.0f); +const glm::vec4 clrWhite (1.0f, 1.0f, 1.0f, 1.0f); +const glm::vec4 clrRed (1.0f, 0.0f, 0.0f, 1.0f); +const glm::vec4 clrGreen (0.0f, 1.0f, 0.0f, 1.0f); +const glm::vec4 clrBlue (0.0f, 0.0f, 1.0f, 1.0f); +const glm::vec4 clrYellow (1.0f, 1.0f, 0.0f, 1.0f); const D3DXPLANE XPlane (1.0f, 0.0f, 0.0f, 0.0f); const D3DXPLANE YPlane (0.0f, 1.0f, 0.0f, 0.0f); diff --git a/src/NetLib/include/net/BitStream.h b/src/NetLib/include/net/BitStream.h index 197ba438..e6a90770 100644 --- a/src/NetLib/include/net/BitStream.h +++ b/src/NetLib/include/net/BitStream.h @@ -199,7 +199,7 @@ class BitStream NETLIB_API void Serialize(glm::vec3& value, float err = cFloatErr); NETLIB_API void Serialize(glm::vec4& value, float err = cFloatErr); NETLIB_API void Serialize(glm::quat& value, float err = cFloatErr); - NETLIB_API void Serialize(D3DXCOLOR& value, float err = cFloatErr); + NETLIB_API void Serialize(glm::vec4& value, float err = cFloatErr); NETLIB_API void Serialize(void*& data, unsigned size, bool cmp); }; diff --git a/src/NetLib/include/net/NetCommon.h b/src/NetLib/include/net/NetCommon.h index 20e4a21a..b5695f62 100644 --- a/src/NetLib/include/net/NetCommon.h +++ b/src/NetLib/include/net/NetCommon.h @@ -166,8 +166,8 @@ unsigned Read(std::istream& stream, glm::vec4& value); unsigned Write(std::ostream& stream, const glm::quat& value); unsigned Read(std::istream& stream, glm::quat& value); -unsigned Write(std::ostream& stream, const D3DXCOLOR& value); -unsigned Read(std::istream& stream, D3DXCOLOR& value); +unsigned Write(std::ostream& stream, const glm::vec4& value); +unsigned Read(std::istream& stream, glm::vec4& value); unsigned Write(std::ostream& stream, const D3DXMATRIX& value); unsigned Read(std::istream& stream, D3DXMATRIX& value); @@ -322,13 +322,13 @@ inline unsigned Read(std::istream& stream, glm::quat& value) return sizeof(value); } -inline unsigned Write(std::ostream& stream, const D3DXCOLOR& value) +inline unsigned Write(std::ostream& stream, const glm::vec4& value) { Write(stream, &value, sizeof(value)); return sizeof(value); } -inline unsigned Read(std::istream& stream, D3DXCOLOR& value) +inline unsigned Read(std::istream& stream, glm::vec4& value) { Read(stream, &value, sizeof(value)); return sizeof(value); diff --git a/src/NetLib/source/net/BitStream.cpp b/src/NetLib/source/net/BitStream.cpp index eee088e4..73a04e2c 100644 --- a/src/NetLib/source/net/BitStream.cpp +++ b/src/NetLib/source/net/BitStream.cpp @@ -327,7 +327,7 @@ void BitStream::Serialize(glm::quat& value, float err) Serialize(glm::value_ptr(value), 4, err); } -void BitStream::Serialize(D3DXCOLOR& value, float err) +void BitStream::Serialize(glm::vec4& value, float err) { Serialize(value, 4, err); } diff --git a/src/Rock3dEngine/header/GraphManager.h b/src/Rock3dEngine/header/GraphManager.h index dd75fc00..fc06b293 100644 --- a/src/Rock3dEngine/header/GraphManager.h +++ b/src/Rock3dEngine/header/GraphManager.h @@ -152,9 +152,9 @@ class GraphManager: public lsl::Component GraphQuality _graphQuality[cGraphOptionEnd]; std::string _skyTex; - D3DXCOLOR _fogColor; + glm::vec4 _fogColor; float _fogIntensivity; - D3DXCOLOR _cloudColor; + glm::vec4 _cloudColor; float _cloudIntensivity; float _cloudHeight; @@ -246,7 +246,7 @@ class GraphManager: public lsl::Component glm::vec2 _tileScale; graph::Actor* _fogPlaneActor; - D3DXCOLOR _sceneAmbient; + glm::vec4 _sceneAmbient; unsigned _multisampling; graph::RenderTargetResource* _msRT; @@ -417,17 +417,17 @@ class GraphManager: public lsl::Component const std::string& GetSkyTex() const; void SetSkyTex(const std::string& value); // - const D3DXCOLOR& GetFogColor() const; - void SetFogColor(const D3DXCOLOR& value); + const glm::vec4& GetFogColor() const; + void SetFogColor(const glm::vec4& value); // - const D3DXCOLOR& GetSceneAmbient(); - void SetSceneAmbient(const D3DXCOLOR& value); + const glm::vec4& GetSceneAmbient(); + void SetSceneAmbient(const glm::vec4& value); // float GetFogIntensivity() const; void SetFogIntensivity(float value); // - const D3DXCOLOR& GetCloudColor() const; - void SetCloudColor(const D3DXCOLOR& value); + const glm::vec4& GetCloudColor() const; + void SetCloudColor(const glm::vec4& value); // float GetCloudIntensivity() const; void SetCloudIntensivity(float value); diff --git a/src/Rock3dEngine/header/graph/ClearSurf.h b/src/Rock3dEngine/header/graph/ClearSurf.h index 306f4804..8feceb75 100644 --- a/src/Rock3dEngine/header/graph/ClearSurf.h +++ b/src/Rock3dEngine/header/graph/ClearSurf.h @@ -16,7 +16,7 @@ class ClearSurf: public PostEffRender enum Mode {cmColor, cmMaxDepth}; private: Mode _mode; - D3DXCOLOR _color; + glm::vec4 _color; void ApplyMode(); public: @@ -27,8 +27,8 @@ class ClearSurf: public PostEffRender Mode GetMode() const; void SetMode(Mode value); - const D3DXCOLOR& GetColor() const; - void SetColor(const D3DXCOLOR& value); + const glm::vec4& GetColor() const; + void SetColor(const glm::vec4& value); Shader shader; }; diff --git a/src/Rock3dEngine/header/graph/ContextInfo.h b/src/Rock3dEngine/header/graph/ContextInfo.h index e5af6f77..fdceb1cf 100644 --- a/src/Rock3dEngine/header/graph/ContextInfo.h +++ b/src/Rock3dEngine/header/graph/ContextInfo.h @@ -141,10 +141,10 @@ class RenderBuffer: public virtual lsl::Object struct MaterialDesc { - D3DXCOLOR diffuse; - D3DXCOLOR ambient; - D3DXCOLOR specular; - D3DXCOLOR emissive; + glm::vec4 diffuse; + glm::vec4 ambient; + glm::vec4 specular; + glm::vec4 emissive; float power; }; @@ -200,9 +200,9 @@ struct LightDesc } D3DLIGHTTYPE type; - D3DXCOLOR ambient; - D3DXCOLOR diffuse; - D3DXCOLOR specular; + glm::vec4 ambient; + glm::vec4 diffuse; + glm::vec4 specular; //Соотношение сторон фрустума отдельного направления точечного, направленного источника света. Для конусного игнорируется. float aspect; @@ -366,7 +366,7 @@ class ContextInfo std::stack _frameStack; float _cullOpacity; - D3DXCOLOR _color; + glm::vec4 _color; int _meshId; DWORD InvertCullFace(DWORD curFace); @@ -454,8 +454,8 @@ class ContextInfo void RestoreCullOpacity(); bool IsCullOpacity() const; - const D3DXCOLOR& GetColor() const; - void SetColor(const D3DXCOLOR& value); + const glm::vec4& GetColor() const; + void SetColor(const glm::vec4& value); int GetMeshId() const; void SetMeshId(int value); diff --git a/src/Rock3dEngine/header/graph/FogPlane.h b/src/Rock3dEngine/header/graph/FogPlane.h index d7e0b5f8..7e999c34 100644 --- a/src/Rock3dEngine/header/graph/FogPlane.h +++ b/src/Rock3dEngine/header/graph/FogPlane.h @@ -16,7 +16,7 @@ class FogPlane: public BaseSceneNode Tex2DResource* _depthTex; graph::LibMaterial * _cloudsMat; - D3DXCOLOR _color; + glm::vec4 _color; float _cloudIntens; float _speed; @@ -33,8 +33,8 @@ class FogPlane: public BaseSceneNode graph::LibMaterial* GetCloudsMat(); void SetCloudsMat(graph::LibMaterial* value); - const D3DXCOLOR& GetColor() const; - void SetColor(const D3DXCOLOR& value); + const glm::vec4& GetColor() const; + void SetColor(const glm::vec4& value); float GetCloudIntens() const; void SetCloudIntens(float value); diff --git a/src/Rock3dEngine/header/graph/MappingShaders.h b/src/Rock3dEngine/header/graph/MappingShaders.h index 488d518b..6a923880 100644 --- a/src/Rock3dEngine/header/graph/MappingShaders.h +++ b/src/Rock3dEngine/header/graph/MappingShaders.h @@ -28,7 +28,7 @@ class LightShader: public Shader bool _paramsShadow; unsigned _curLight; - D3DXCOLOR _fogColor; + glm::vec4 _fogColor; void InvalidateParams(D3DLIGHTTYPE value, bool shadow); protected: diff --git a/src/Rock3dEngine/header/graph/MaterialLibrary.h b/src/Rock3dEngine/header/graph/MaterialLibrary.h index a269860e..69a4ac3a 100644 --- a/src/Rock3dEngine/header/graph/MaterialLibrary.h +++ b/src/Rock3dEngine/header/graph/MaterialLibrary.h @@ -56,8 +56,8 @@ class BaseSampler void SetColorMode(Mode value); void SetAlphaMode(Mode value); - D3DXCOLOR GetColor() const; - void SetColor(const D3DXCOLOR& value); + glm::vec4 GetColor() const; + void SetColor(const glm::vec4& value); const Vec3Range& GetOffset() const; void SetOffset(const Vec3Range& value); diff --git a/src/Rock3dEngine/header/graph/SceneManager.h b/src/Rock3dEngine/header/graph/SceneManager.h index 62c361c3..ab711a12 100644 --- a/src/Rock3dEngine/header/graph/SceneManager.h +++ b/src/Rock3dEngine/header/graph/SceneManager.h @@ -86,7 +86,7 @@ class BaseSceneNode: public lsl::Component, protected IProgressUser enum AnimMode {amNone, amOnce, amRepeat, amTile, amTwoSide, amManual, amInheritance}; - static void RenderBB(graph::Engine& engine, const AABB& aabb, const D3DXCOLOR& colorBB); + static void RenderBB(graph::Engine& engine, const AABB& aabb, const glm::vec4& colorBB); enum CombMatType {cmtScaleTrans, cmtScaleRot, cmtRotTrans}; @@ -317,7 +317,7 @@ class BaseSceneNode: public lsl::Component, protected IProgressUser bool showBB; bool showBBIncludeChild; - D3DXCOLOR colorBB; + glm::vec4 colorBB; bool storeCoords; bool invertCullFace; @@ -342,7 +342,7 @@ class Camera: public BaseSceneNode private: typedef BaseSceneNode _MyBase; public: - static void RenderFrustum(graph::Engine& engine, const D3DXMATRIX& invViewProj, const D3DXCOLOR& colorBB); + static void RenderFrustum(graph::Engine& engine, const D3DXMATRIX& invViewProj, const glm::vec4& colorBB); private: mutable graph::CameraDesc _desc; mutable graph::CameraCI _contextInfo; @@ -413,14 +413,14 @@ class LightSource: public BaseSceneNode const graph::LightCI& GetContextInfo() const; - const D3DXCOLOR& GetAmbient() const; - void SetAmbient(const D3DXCOLOR& value); + const glm::vec4& GetAmbient() const; + void SetAmbient(const glm::vec4& value); - const D3DXCOLOR& GetDiffuse() const; - void SetDiffuse(const D3DXCOLOR& value); + const glm::vec4& GetDiffuse() const; + void SetDiffuse(const glm::vec4& value); - const D3DXCOLOR& GetSpecular() const; - void SetSpecular(const D3DXCOLOR& value); + const glm::vec4& GetSpecular() const; + void SetSpecular(const glm::vec4& value); float GetNear() const; void SetNear(float value); diff --git a/src/Rock3dEngine/header/graph/StdNode.h b/src/Rock3dEngine/header/graph/StdNode.h index af88be0c..ea5366dc 100644 --- a/src/Rock3dEngine/header/graph/StdNode.h +++ b/src/Rock3dEngine/header/graph/StdNode.h @@ -17,7 +17,7 @@ class MaterialNode private: Materials _materials; LibMaterial* _libMat; - D3DXCOLOR _color; + glm::vec4 _color; glm::vec3 _offset; glm::vec3 _scale; @@ -66,8 +66,8 @@ class MaterialNode const Materials& GetList() const; - const D3DXCOLOR& GetColor() const; - void SetColor(const D3DXCOLOR& value); + const glm::vec4& GetColor() const; + void SetColor(const glm::vec4& value); const glm::vec3& GetOffset() const; void SetOffset(const glm::vec3& value); @@ -198,7 +198,7 @@ class Cylinder: public BaseSceneNode { private: graph::IndexedVBMesh* _mesh; - D3DXCOLOR _color; + glm::vec4 _color; protected: void UpdateMesh(); @@ -211,8 +211,8 @@ class Cylinder: public BaseSceneNode Cylinder(); virtual ~Cylinder(); - const D3DXCOLOR& GetColor() const; - void SetColor(const D3DXCOLOR& value); + const glm::vec4& GetColor() const; + void SetColor(const glm::vec4& value); }; class Sprite: public BaseSceneNode @@ -259,8 +259,8 @@ class MovCoordSys: public BaseSceneNode static const glm::vec3 arUp[3]; static const float arSize; static const glm::vec3 arPos[3]; - static const D3DXCOLOR arCol[3]; - static const D3DXCOLOR colSel; + static const glm::vec4 arCol[3]; + static const glm::vec4 colSel; public: enum DirMove {dmNone, dmX, dmY, dmZ, dmXY, dmXZ, dmYZ, cDirMoveEnd}; private: @@ -285,8 +285,8 @@ class ScaleCoordSys: public BaseSceneNode static const glm::vec3 arUp[3]; static const float arSize; static const float plSize; - static const D3DXCOLOR arCol[3]; - static const D3DXCOLOR colSel; + static const glm::vec4 arCol[3]; + static const glm::vec4 colSel; public: enum DirMove {dmNone, dmX, dmY, dmZ, dmXYZ, cDirMoveEnd}; private: @@ -309,7 +309,7 @@ class ScaleCoordSys: public BaseSceneNode void FillDataPlane(res::VertexData& vb, float width, float height, float u, float v); //0...bot = min(slices + 1, 1) - вершины нижней грани //bot...top = bot + min(slices + 1, 1) - вершины верхней грани -void FillDataCylinder(res::MeshData& mesh, float botRadius, float topRadius, float height, unsigned slices, const D3DXCOLOR& color); +void FillDataCylinder(res::MeshData& mesh, float botRadius, float topRadius, float height, unsigned slices, const glm::vec4& color); } diff --git a/src/Rock3dEngine/header/graph/WaterPlane.h b/src/Rock3dEngine/header/graph/WaterPlane.h index 60bc56ff..d2e36a03 100644 --- a/src/Rock3dEngine/header/graph/WaterPlane.h +++ b/src/Rock3dEngine/header/graph/WaterPlane.h @@ -56,8 +56,8 @@ class WaterPlane: public PlaneNode graph::Tex2DResource* GetReflTex(); void SetReflTex(graph::Tex2DResource* value); - D3DXCOLOR GetColor(); - void SetColor(const D3DXCOLOR& value); + glm::vec4 GetColor(); + void SetColor(const glm::vec4& value); const glm::vec3& GetViewPos() const; void SetViewPos(const glm::vec3& value); diff --git a/src/Rock3dEngine/header/gui/GUI.h b/src/Rock3dEngine/header/gui/GUI.h index 5d229406..1daf1c22 100644 --- a/src/Rock3dEngine/header/gui/GUI.h +++ b/src/Rock3dEngine/header/gui/GUI.h @@ -55,7 +55,7 @@ class Material: public Object enum Blending {bmOpaque, bmTransparency, bmAdditive}; enum AlphaTest {asNone, asLessOrEq}; private: - D3DXCOLOR _color; + glm::vec4 _color; Blending _blending; AlphaTest _alphaTest; @@ -65,8 +65,8 @@ class Material: public Object glm::vec2 GetImageSize(); - const D3DXCOLOR& GetColor() const; - void SetColor(const D3DXCOLOR& value); + const glm::vec4& GetColor() const; + void SetColor(const glm::vec4& value); float GetAlpha() const; void SetAlpha(float value); @@ -1448,7 +1448,7 @@ class ColorBox: public Widget Plane* _check; Plane* _sel; - D3DXCOLOR _color; + glm::vec4 _color; bool _select; glm::vec2 WinToLocal(const glm::vec2& vec) const; @@ -1468,8 +1468,8 @@ class ColorBox: public Widget Material& GetBox(); Material& GetCheck(); - const D3DXCOLOR& GetColor() const; - void SetColor(const D3DXCOLOR& value); + const glm::vec4& GetColor() const; + void SetColor(const glm::vec4& value); bool GetSelect() const; void SetSelect(bool value); @@ -1488,8 +1488,8 @@ class ColorList: public Widget { MyCol(): box(0) {} - const D3DXCOLOR& GetVal() const {return box->GetColor();} - void SetVal(const D3DXCOLOR& value) {box->SetColor(value);} + const glm::vec4& GetVal() const {return box->GetColor();} + void SetVal(const glm::vec4& value) {box->SetColor(value);} operator bool() {return box != 0;} bool operator==(const MyCol& val) const {return box == val.box;} @@ -1531,14 +1531,14 @@ class ColorList: public Widget Material& GetBox(); Material& GetCheck(); - void InsertColor(const D3DXCOLOR& value); + void InsertColor(const glm::vec4& value); void RemoveColor(Colors::const_iterator iter); - void RemoveColor(const D3DXCOLOR& value); + void RemoveColor(const glm::vec4& value); void ClearColors(); - Colors::const_iterator FindColor(const D3DXCOLOR& value) const; + Colors::const_iterator FindColor(const glm::vec4& value) const; - const D3DXCOLOR* GetSelColor(); - void SelectColor(const D3DXCOLOR* value); + const glm::vec4* GetSelColor(); + void SelectColor(const glm::vec4* value); const Colors& GetColors() const; diff --git a/src/Rock3dEngine/source/GraphManager.cpp b/src/Rock3dEngine/source/GraphManager.cpp index 7793891c..8f373c2d 100644 --- a/src/Rock3dEngine/source/GraphManager.cpp +++ b/src/Rock3dEngine/source/GraphManager.cpp @@ -444,7 +444,7 @@ void GraphManager::InitWaterPlane() _waterPlane->SetDepthTex(_scDepthMap->GetRT()); _waterPlane->SetReflTex(reflTex); _waterPlane->SetNormTex(_waterTexNorm); - _waterPlane->SetColor(D3DXCOLOR(0.0f, 0.2f, 0.5f, 1.0f)); + _waterPlane->SetColor(glm::vec4(0.0f, 0.2f, 0.5f, 1.0f)); _waterPlane->SetCloudIntens(0.1f); } else if (_waterPlane && _graphQuality[goWater] == gqLow) @@ -2795,12 +2795,12 @@ void GraphManager::SetSkyTex(const std::string& value) } } -const D3DXCOLOR& GraphManager::GetFogColor() const +const glm::vec4& GraphManager::GetFogColor() const { return _fogColor; } -void GraphManager::SetFogColor(const D3DXCOLOR& value) +void GraphManager::SetFogColor(const glm::vec4& value) { if (_fogColor != value) { @@ -2811,12 +2811,12 @@ void GraphManager::SetFogColor(const D3DXCOLOR& value) } } -const D3DXCOLOR& GraphManager::GetSceneAmbient() +const glm::vec4& GraphManager::GetSceneAmbient() { return _sceneAmbient; } -void GraphManager::SetSceneAmbient(const D3DXCOLOR& value) +void GraphManager::SetSceneAmbient(const glm::vec4& value) { _sceneAmbient = value; } @@ -2832,12 +2832,12 @@ void GraphManager::SetFogIntensivity(float value) _fogIntensivity = value; } -const D3DXCOLOR& GraphManager::GetCloudColor() const +const glm::vec4& GraphManager::GetCloudColor() const { return _cloudColor; } -void GraphManager::SetCloudColor(const D3DXCOLOR& value) +void GraphManager::SetCloudColor(const glm::vec4& value) { _cloudColor = value; diff --git a/src/Rock3dEngine/source/graph/ClearSurf.cpp b/src/Rock3dEngine/source/graph/ClearSurf.cpp index 04816999..4fae7571 100644 --- a/src/Rock3dEngine/source/graph/ClearSurf.cpp +++ b/src/Rock3dEngine/source/graph/ClearSurf.cpp @@ -47,12 +47,12 @@ void ClearSurf::SetMode(Mode value) } } -const D3DXCOLOR& ClearSurf::GetColor() const +const glm::vec4& ClearSurf::GetColor() const { return _color; } -void ClearSurf::SetColor(const D3DXCOLOR& value) +void ClearSurf::SetColor(const glm::vec4& value) { _color = value; } diff --git a/src/Rock3dEngine/source/graph/ContextInfo.cpp b/src/Rock3dEngine/source/graph/ContextInfo.cpp index 8d0b05c4..1da8cbac 100644 --- a/src/Rock3dEngine/source/graph/ContextInfo.cpp +++ b/src/Rock3dEngine/source/graph/ContextInfo.cpp @@ -1146,12 +1146,12 @@ bool ContextInfo::IsCullOpacity() const return _cullOpacity < 1.0f; } -const D3DXCOLOR& ContextInfo::GetColor() const +const glm::vec4& ContextInfo::GetColor() const { return _color; } -void ContextInfo::SetColor(const D3DXCOLOR& value) +void ContextInfo::SetColor(const glm::vec4& value) { _color = value; } diff --git a/src/Rock3dEngine/source/graph/Engine.cpp b/src/Rock3dEngine/source/graph/Engine.cpp index 33bc4f8f..8ff45d30 100644 --- a/src/Rock3dEngine/source/graph/Engine.cpp +++ b/src/Rock3dEngine/source/graph/Engine.cpp @@ -115,7 +115,7 @@ void Engine::DrawFPS() ++nFrameCount; RECT destRect; SetRect(&destRect, 505, 5, 0, 0); - g_pd3dxFont->DrawText(0 , fpsString, -1, &destRect, DT_NOCLIP, D3DXCOLOR(1.0f, 0.0f, 0.0f, 1.0f)); + g_pd3dxFont->DrawText(0 , fpsString, -1, &destRect, DT_NOCLIP, glm::vec4(1.0f, 0.0f, 0.0f, 1.0f)); } #endif diff --git a/src/Rock3dEngine/source/graph/FogPlane.cpp b/src/Rock3dEngine/source/graph/FogPlane.cpp index 8271fc65..42d4b2db 100644 --- a/src/Rock3dEngine/source/graph/FogPlane.cpp +++ b/src/Rock3dEngine/source/graph/FogPlane.cpp @@ -53,7 +53,7 @@ void FogPlane::DoRender(graph::Engine& engine) dwVal = engine.GetContext().GetRenderState(rsFogEnd); fogParamsVec.y = *(float*)(&dwVal); - D3DXCOLOR fogColorVec = D3DXCOLOR(engine.GetContext().GetRenderState(rsFogColor)); + glm::vec4 fogColorVec = glm::vec4(engine.GetContext().GetRenderState(rsFogColor)); shader.SetValueDir("fogColor", fogColorVec); } shader.SetValueDir("fogParams", fogParamsVec); @@ -88,12 +88,12 @@ void FogPlane::SetCloudsMat(graph::LibMaterial* value) _cloudsMat = value; } -const D3DXCOLOR& FogPlane::GetColor() const +const glm::vec4& FogPlane::GetColor() const { return _color; } -void FogPlane::SetColor(const D3DXCOLOR& value) +void FogPlane::SetColor(const glm::vec4& value) { _color = value; } diff --git a/src/Rock3dEngine/source/graph/GrassField.cpp b/src/Rock3dEngine/source/graph/GrassField.cpp index 6e00c072..4d30d0e5 100644 --- a/src/Rock3dEngine/source/graph/GrassField.cpp +++ b/src/Rock3dEngine/source/graph/GrassField.cpp @@ -194,13 +194,13 @@ void GrassField::DoRender(graph::Engine& engine) dwVal = engine.GetContext().GetRenderState(rsFogEnd); fogParamsVec.y = *(float*)(&dwVal); - D3DXCOLOR fogColorVec = D3DXCOLOR(engine.GetContext().GetRenderState(rsFogColor)); + glm::vec4 fogColorVec = glm::vec4(engine.GetContext().GetRenderState(rsFogColor)); shader.SetValueDir("fogColor", fogColorVec); } shader.SetValueDir("fogParams", fogParamsVec); bool isNight = engine.GetContext().IsNight(); - shader.SetValueDir("diffLight", isNight ? D3DXCOLOR(engine.GetContext().GetRenderState(rsAmbient)) : clrWhite); + shader.SetValueDir("diffLight", isNight ? glm::vec4(engine.GetContext().GetRenderState(rsAmbient)) : clrWhite); shader.Apply(engine); for (unsigned i = 0; i < _fieldList.size(); ++i) diff --git a/src/Rock3dEngine/source/graph/MappingShaders.cpp b/src/Rock3dEngine/source/graph/MappingShaders.cpp index 90bc4e8a..1f6879be 100644 --- a/src/Rock3dEngine/source/graph/MappingShaders.cpp +++ b/src/Rock3dEngine/source/graph/MappingShaders.cpp @@ -88,7 +88,7 @@ void LightShader::DoBeginDraw(Engine& engine) //Послдений проход bool lastPass = _curLight >= lightCnt - 1; // - _fogColor = D3DXCOLOR(engine.GetContext().GetRenderState(rsFogColor)); + _fogColor = glm::vec4(engine.GetContext().GetRenderState(rsFogColor)); engine.GetContext().SetRenderState(rsFogColor, _fogColor / static_cast(lightCnt)); const LightCI& light = engine.GetContext().GetLight(_curLight); @@ -124,7 +124,7 @@ void LightShader::DoBeginDraw(Engine& engine) } SetParam(_params[numLights], static_cast(lightCnt)); - SetParam(_params[glAmbient], D3DXCOLOR(engine.GetContext().GetRenderState(rsAmbient))); + SetParam(_params[glAmbient], glm::vec4(engine.GetContext().GetRenderState(rsAmbient))); SetParam(_params[ambLight], light.GetDesc().ambient); SetParam(_params[diffLight], light.GetDesc().diffuse); @@ -133,8 +133,8 @@ void LightShader::DoBeginDraw(Engine& engine) D3DMATERIAL9 d3dMat; engine.GetDriver().GetDevice()->GetMaterial(&d3dMat); - SetParam(_params[colorMat], D3DXCOLOR(d3dMat.Diffuse)); - SetParam(_params[specMat], D3DXCOLOR(d3dMat.Specular)); + SetParam(_params[colorMat], glm::vec4(d3dMat.Diffuse)); + SetParam(_params[specMat], glm::vec4(d3dMat.Specular)); SetParam(_params[specPower], d3dMat.Power); SetParam(_params[texDiffK], _texDiffK * engine.GetContext().GetTexDiffK()); @@ -165,7 +165,7 @@ void LightShader::DoBeginDraw(Engine& engine) dwVal = engine.GetContext().GetRenderState(rsFogEnd); fogParamsVec.y = *(float*)(&dwVal); - D3DXCOLOR fogColorVec = D3DXCOLOR(engine.GetContext().GetRenderState(rsFogColor)); + glm::vec4 fogColorVec = glm::vec4(engine.GetContext().GetRenderState(rsFogColor)); SetParam(_params[fogColor], fogColorVec); } @@ -228,7 +228,7 @@ void ReflMappShader::DoBeginDraw(Engine& engine) _MyBase::DoBeginDraw(engine); SetParam(_params[reflectivity], _reflectivity); - SetParam(_params[alphaBlendColor], D3DXCOLOR(engine.GetContext().GetTextureStageState(0, tssConstant))); + SetParam(_params[alphaBlendColor], glm::vec4(engine.GetContext().GetTextureStageState(0, tssConstant))); if (GetReflTex()) SetTexParam(_params[envTex], GetReflTex()->GetTex()); @@ -264,7 +264,7 @@ void ReflBumbMappShader::DoBeginDraw(Engine& engine) _MyBase::DoBeginDraw(engine); SetParam(_params[reflectivity], 0.4f); - SetParam(_params[alphaBlendColor], D3DXCOLOR(engine.GetContext().GetTextureStageState(0, tssConstant))); + SetParam(_params[alphaBlendColor], glm::vec4(engine.GetContext().GetTextureStageState(0, tssConstant))); if (GetReflTex()) SetTexParam(_params[envTex], GetReflTex()->GetTex()); diff --git a/src/Rock3dEngine/source/graph/MaterialLibrary.cpp b/src/Rock3dEngine/source/graph/MaterialLibrary.cpp index 42e258e5..eb7b7567 100644 --- a/src/Rock3dEngine/source/graph/MaterialLibrary.cpp +++ b/src/Rock3dEngine/source/graph/MaterialLibrary.cpp @@ -226,12 +226,12 @@ void BaseSampler::SetAlphaMode(Mode value) } } -D3DXCOLOR BaseSampler::GetColor() const +glm::vec4 BaseSampler::GetColor() const { return stageStates.Get(tssConstant); } -void BaseSampler::SetColor(const D3DXCOLOR& value) +void BaseSampler::SetColor(const glm::vec4& value) { stageStates.Set(tssConstant, value); } diff --git a/src/Rock3dEngine/source/graph/SceneManager.cpp b/src/Rock3dEngine/source/graph/SceneManager.cpp index 35bf519c..a32334b5 100644 --- a/src/Rock3dEngine/source/graph/SceneManager.cpp +++ b/src/Rock3dEngine/source/graph/SceneManager.cpp @@ -54,7 +54,7 @@ BaseSceneNode::~BaseSceneNode() #endif } -void BaseSceneNode::RenderBB(graph::Engine& engine, const AABB& aabb, const D3DXCOLOR& colorBB) +void BaseSceneNode::RenderBB(graph::Engine& engine, const AABB& aabb, const glm::vec4& colorBB) { using res::VertexPD; @@ -1320,7 +1320,7 @@ Camera::Camera(): _changedCI(true) { } -void Camera::RenderFrustum(graph::Engine& engine, const D3DXMATRIX& invViewProj, const D3DXCOLOR& colorBB) +void Camera::RenderFrustum(graph::Engine& engine, const D3DXMATRIX& invViewProj, const glm::vec4& colorBB) { using res::VertexPD; @@ -1582,34 +1582,34 @@ const graph::LightCI& LightSource::GetContextInfo() const return _contextInfo; } -const D3DXCOLOR& LightSource::GetAmbient() const +const glm::vec4& LightSource::GetAmbient() const { return _desc.ambient; } -void LightSource::SetAmbient(const D3DXCOLOR& value) +void LightSource::SetAmbient(const glm::vec4& value) { _desc.ambient = value; ChangedCI(); } -const D3DXCOLOR& LightSource::GetDiffuse() const +const glm::vec4& LightSource::GetDiffuse() const { return _desc.diffuse; } -void LightSource::SetDiffuse(const D3DXCOLOR& value) +void LightSource::SetDiffuse(const glm::vec4& value) { _desc.diffuse = value; ChangedCI(); } -const D3DXCOLOR& LightSource::GetSpecular() const +const glm::vec4& LightSource::GetSpecular() const { return _desc.specular; } -void LightSource::SetSpecular(const D3DXCOLOR& value) +void LightSource::SetSpecular(const glm::vec4& value) { _desc.specular = value; ChangedCI(); diff --git a/src/Rock3dEngine/source/graph/StdNode.cpp b/src/Rock3dEngine/source/graph/StdNode.cpp index f1f886e5..f353993c 100644 --- a/src/Rock3dEngine/source/graph/StdNode.cpp +++ b/src/Rock3dEngine/source/graph/StdNode.cpp @@ -12,14 +12,14 @@ namespace graph const glm::vec3 MovCoordSys::arUp[3] = {XVector, YVector, ZVector}; const float MovCoordSys::arSize = 2.0f; const glm::vec3 MovCoordSys::arPos[3] = {2.0f * XVector, 2.0f * YVector, 2.0f * ZVector}; -const D3DXCOLOR MovCoordSys::arCol[3] = {clrRed, clrGreen, clrBlue}; -const D3DXCOLOR MovCoordSys::colSel = clrYellow; +const glm::vec4 MovCoordSys::arCol[3] = {clrRed, clrGreen, clrBlue}; +const glm::vec4 MovCoordSys::colSel = clrYellow; const glm::vec3 ScaleCoordSys::arUp[3] = {XVector, YVector, ZVector}; const float ScaleCoordSys::arSize = 2.0f; const float ScaleCoordSys::plSize = 1.5f; -const D3DXCOLOR ScaleCoordSys::arCol[3] = {clrRed, clrGreen, clrBlue}; -const D3DXCOLOR ScaleCoordSys::colSel = clrYellow; +const glm::vec4 ScaleCoordSys::arCol[3] = {clrRed, clrGreen, clrBlue}; +const glm::vec4 ScaleCoordSys::colSel = clrYellow; MaterialNode::MaterialNode(): _libMat(0), _color(clrWhite), _offset(NullVector), _scale(IdentityVector), _rotate(NullQuaternion), _matChanged(true), _defMat(true), _cullMode((D3DCULL)0) { @@ -271,12 +271,12 @@ const MaterialNode::Materials& MaterialNode::GetList() const return _materials; } -const D3DXCOLOR& MaterialNode::GetColor() const +const glm::vec4& MaterialNode::GetColor() const { return _color; } -void MaterialNode::SetColor(const D3DXCOLOR& value) +void MaterialNode::SetColor(const glm::vec4& value) { _color = value; } @@ -952,12 +952,12 @@ AABB Cylinder::LocalDimensions() const return AABB(_mesh->GetMinPos(), _mesh->GetMaxPos()); } -const D3DXCOLOR& Cylinder::GetColor() const +const glm::vec4& Cylinder::GetColor() const { return _color; } -void Cylinder::SetColor(const D3DXCOLOR& value) +void Cylinder::SetColor(const glm::vec4& value) { _color = value; UpdateMesh(); @@ -1136,8 +1136,8 @@ void MovCoordSys::DoRender(Engine& engine) struct { const AxePlane* plane; - D3DXCOLOR col1; - D3DXCOLOR col2; + glm::vec4 col1; + glm::vec4 col2; } cPlanes[3] = {{&cXYPlaneV, clrRed, clrGreen}, {&cXZPlaneV, clrRed, clrBlue}, {&cYZPlaneV, clrGreen, clrBlue}}; //Выеделенные оси @@ -1160,8 +1160,8 @@ void MovCoordSys::DoRender(Engine& engine) bool isPlane = _curMove == planeMoves[i]; //Цвета осей образующих плоскость - D3DXCOLOR col1 = isPlane ? colSel : cPlanes[i].col1; - D3DXCOLOR col2 = isPlane ? colSel : cPlanes[i].col2; + glm::vec4 col1 = isPlane ? colSel : cPlanes[i].col1; + glm::vec4 col2 = isPlane ? colSel : cPlanes[i].col2; //Вычисляем линии плоскостей lines[4 * i + 6 + 0] = res::VertexPD((*cPlanes[i].plane)[1], col1); @@ -1300,7 +1300,7 @@ void ScaleCoordSys::DoRender(Engine& engine) for (int i = 0; i < 3; ++i) plLine[i] = bbPlanes[i] * plSize; const DirMove axeMoves[3] = {dmX, dmY, dmZ}; - D3DXCOLOR plCol[3]; + glm::vec4 plCol[3]; for (int i = 0; i < 3; ++i) plCol[i] = (_curMove == axeMoves[i]) ? colSel : arCol[i]; @@ -1396,7 +1396,7 @@ void FillDataPlane(res::VertexData& vb, float width, float height, float u, floa vb.Update(); } -void FillDataCylinder(res::MeshData& mesh, float botRadius, float topRadius, float height, unsigned slices, const D3DXCOLOR& color) +void FillDataCylinder(res::MeshData& mesh, float botRadius, float topRadius, float height, unsigned slices, const glm::vec4& color) { bool isBot = botRadius != 0; bool isTop = topRadius != 0; diff --git a/src/Rock3dEngine/source/graph/WaterPlane.cpp b/src/Rock3dEngine/source/graph/WaterPlane.cpp index 352e8c79..b69ddfbd 100644 --- a/src/Rock3dEngine/source/graph/WaterPlane.cpp +++ b/src/Rock3dEngine/source/graph/WaterPlane.cpp @@ -107,7 +107,7 @@ void WaterPlane::DoRender(graph::Engine& engine) dwVal = engine.GetContext().GetRenderState(rsFogEnd); fogParamsVec.y = *(float*)(&dwVal); - D3DXCOLOR fogColorVec = D3DXCOLOR(engine.GetContext().GetRenderState(rsFogColor)); + glm::vec4 fogColorVec = glm::vec4(engine.GetContext().GetRenderState(rsFogColor)); shader.SetValueDir("fogColor", fogColorVec); } shader.SetValueDir("fogParams", fogParamsVec); @@ -147,16 +147,16 @@ void WaterPlane::SetReflTex(graph::Tex2DResource* value) shader.SetTexture("reflTex", value); } -D3DXCOLOR WaterPlane::GetColor() +glm::vec4 WaterPlane::GetColor() { - D3DXCOLOR res; + glm::vec4 res; if (shader.GetValue("waterColor", res)) return res; else return clrBlack; } -void WaterPlane::SetColor(const D3DXCOLOR& value) +void WaterPlane::SetColor(const glm::vec4& value) { shader.SetValue("waterColor", glm::vec4(value)); } diff --git a/src/Rock3dEngine/source/gui/GUI.cpp b/src/Rock3dEngine/source/gui/GUI.cpp index e87f4486..43fc46d8 100644 --- a/src/Rock3dEngine/source/gui/GUI.cpp +++ b/src/Rock3dEngine/source/gui/GUI.cpp @@ -26,12 +26,12 @@ glm::vec2 Material::GetImageSize() return GetSampler().GetSize(); } -const D3DXCOLOR& Material::GetColor() const +const glm::vec4& Material::GetColor() const { return _color; } -void Material::SetColor(const D3DXCOLOR& value) +void Material::SetColor(const glm::vec4& value) { _color = value; } @@ -4944,12 +4944,12 @@ Material& ColorBox::GetCheck() return *_check->GetOrCreateMaterial(); } -const D3DXCOLOR& ColorBox::GetColor() const +const glm::vec4& ColorBox::GetColor() const { return _color; } -void ColorBox::SetColor(const D3DXCOLOR& value) +void ColorBox::SetColor(const glm::vec4& value) { _color = value; ApplyColor(); @@ -5101,7 +5101,7 @@ Material& ColorList::GetCheck() return *_check; } -void ColorList::InsertColor(const D3DXCOLOR& value) +void ColorList::InsertColor(const glm::vec4& value) { LSL_ASSERT(FindColor(value) == _colors.end()); @@ -5129,7 +5129,7 @@ void ColorList::RemoveColor(Colors::const_iterator iter) ApplyChanges(); } -void ColorList::RemoveColor(const D3DXCOLOR& value) +void ColorList::RemoveColor(const glm::vec4& value) { RemoveColor(FindColor(value)); } @@ -5140,11 +5140,11 @@ void ColorList::ClearColors() RemoveColor(_colors.begin()); } -ColorList::Colors::const_iterator ColorList::FindColor(const D3DXCOLOR& value) const +ColorList::Colors::const_iterator ColorList::FindColor(const glm::vec4& value) const { for (Colors::const_iterator iter = _colors.begin(); iter != _colors.end(); ++iter) { - D3DXCOLOR vec = iter->GetVal() - value; + glm::vec4 vec = iter->GetVal() - value; vec.r = abs(vec.r); vec.g = abs(vec.g); vec.b = abs(vec.b); @@ -5157,12 +5157,12 @@ ColorList::Colors::const_iterator ColorList::FindColor(const D3DXCOLOR& value) c return _colors.end(); } -const D3DXCOLOR* ColorList::GetSelColor() +const glm::vec4* ColorList::GetSelColor() { return _select ? &_select.GetVal() : 0; } -void ColorList::SelectColor(const D3DXCOLOR* value) +void ColorList::SelectColor(const glm::vec4* value) { Colors::const_iterator iter = _colors.end(); if (value) diff --git a/src/Rock3dGame/header/edit/Map.h b/src/Rock3dGame/header/edit/Map.h index e9ebce82..77dca0a6 100644 --- a/src/Rock3dGame/header/edit/Map.h +++ b/src/Rock3dGame/header/edit/Map.h @@ -37,8 +37,8 @@ class Map: public IMap { friend Edit; private: - static const D3DXCOLOR bbColor; - static const D3DXCOLOR selColor; + static const glm::vec4 bbColor; + static const glm::vec4 selColor; typedef lsl::List MapObjList; diff --git a/src/Rock3dGame/header/game/DialogMenu2.h b/src/Rock3dGame/header/game/DialogMenu2.h index 7483aa27..8b50a2f9 100644 --- a/src/Rock3dGame/header/game/DialogMenu2.h +++ b/src/Rock3dGame/header/game/DialogMenu2.h @@ -171,7 +171,7 @@ class UserChat: public MenuFrame glm::vec2 _linesSize; glm::vec2 _inputSize; - Line AddLine(const lsl::stringW& name, const lsl::stringW& text, const D3DXCOLOR& nameColor, bool right); + Line AddLine(const lsl::stringW& name, const lsl::stringW& text, const glm::vec4& nameColor, bool right); protected: virtual void OnShow(bool value); virtual void OnAdjustLayout(const glm::vec2& vpSize); @@ -180,13 +180,13 @@ class UserChat: public MenuFrame UserChat(Menu* menu, gui::Widget* parent); virtual ~UserChat(); - void ShowInput(bool show, const lsl::stringW& name, const lsl::stringW& text, const D3DXCOLOR& nameColor); + void ShowInput(bool show, const lsl::stringW& name, const lsl::stringW& text, const glm::vec4& nameColor); void ClearInput(); void CharInput(wchar_t value); bool IsInputVisible() const; lsl::stringW inputText() const; - void PushLine(const lsl::stringW& name, const lsl::stringW& text, const D3DXCOLOR& nameColor); + void PushLine(const lsl::stringW& name, const lsl::stringW& text, const glm::vec4& nameColor); Lines::iterator DelLine(const Lines::const_iterator iter); void DelLines(); const Lines& lines() const; diff --git a/src/Rock3dGame/header/game/Environment.h b/src/Rock3dGame/header/game/Environment.h index 1f026eeb..14e5cfdc 100644 --- a/src/Rock3dGame/header/game/Environment.h +++ b/src/Rock3dGame/header/game/Environment.h @@ -58,7 +58,7 @@ class Environment: public GameObjListener GraphManager::LightSrc* _lamp[4]; glm::vec3 _lampPos[4]; glm::quat _lampRot[4]; - D3DXCOLOR _lampColor[4]; + glm::vec4 _lampColor[4]; bool _lampSwitchOn[4]; bool _enableRain; @@ -111,8 +111,8 @@ class Environment: public GameObjListener const glm::quat& GetLampRot(int index) const; void SetLampRot(const glm::quat& value, int index); - const D3DXCOLOR& GetLampColor(int index) const; - void SetLampColor(const D3DXCOLOR& value, int index); + const glm::vec4& GetLampColor(int index) const; + void SetLampColor(const glm::vec4& value, int index); void SwitchOnLamp(int index, bool value); bool IsLampSwitchOn(int index); diff --git a/src/Rock3dGame/header/game/Menu.h b/src/Rock3dGame/header/game/Menu.h index 529dbc1c..a28b5cfd 100644 --- a/src/Rock3dGame/header/game/Menu.h +++ b/src/Rock3dGame/header/game/Menu.h @@ -123,7 +123,7 @@ class Menu: IGameUser, INetGameUser enum SoundShemeType {ssButton1 = 0, ssButton2, ssButton3, ssButton4, ssButton5, ssStepper, cSoundShemeTypeEnd}; - static const D3DXCOLOR cTextColor; + static const glm::vec4 cTextColor; //оптимальное разрешение static const glm::vec2 cWinSize; //минимально-поддерживаемое @@ -270,8 +270,8 @@ class Menu: IGameUser, INetGameUser //match void SetGamerId(int gamerId); - const D3DXCOLOR& GetCarColor(); - void SetCarColor(const D3DXCOLOR& color); + const glm::vec4& GetCarColor(); + void SetCarColor(const glm::vec4& color); bool BuyCar(Garage::Car* car); void ChangePlanet(Planet* value); @@ -325,15 +325,15 @@ class Menu: IGameUser, INetGameUser gui::Button* CreateArrowButton(gui::Widget* parent, gui::Widget::Event* guiEvent, const glm::vec2& size = IdentityVec2); gui::Button* CreateSpaceArrowButton(gui::Widget* parent, gui::Widget::Event* guiEvent, const glm::vec2& size = IdentityVec2); // - gui::Button* Menu::CreateMenuButton(const lsl::string& name, const std::string& font, const std::string& norm, const std::string& sel, gui::Widget* parent, gui::Widget::Event* guiEvent, const glm::vec2& size, gui::Button::Style style, const D3DXCOLOR& textColor, SoundShemeType soundSheme); - gui::Button* CreateMenuButton(StringValue name, const std::string& font, const std::string& norm, const std::string& sel, gui::Widget* parent, gui::Widget::Event* guiEvent, const glm::vec2& size = IdentityVec2, gui::Button::Style style = gui::Button::bsSimple, const D3DXCOLOR& textColor = clrWhite, SoundShemeType soundSheme = ssButton1); + gui::Button* Menu::CreateMenuButton(const lsl::string& name, const std::string& font, const std::string& norm, const std::string& sel, gui::Widget* parent, gui::Widget::Event* guiEvent, const glm::vec2& size, gui::Button::Style style, const glm::vec4& textColor, SoundShemeType soundSheme); + gui::Button* CreateMenuButton(StringValue name, const std::string& font, const std::string& norm, const std::string& sel, gui::Widget* parent, gui::Widget::Event* guiEvent, const glm::vec2& size = IdentityVec2, gui::Button::Style style = gui::Button::bsSimple, const glm::vec4& textColor = clrWhite, SoundShemeType soundSheme = ssButton1); gui::Button* CreateMenuButton(const std::string& name, gui::Widget* parent, gui::Widget::Event* guiEvent, const glm::vec2& size = IdentityVec2, SoundShemeType soundSheme = ssButton1); gui::Button* CreateMenuButton(StringValue name, gui::Widget* parent, gui::Widget::Event* guiEvent, const glm::vec2& size = IdentityVec2, SoundShemeType soundSheme = ssButton1); gui::Button* CreateMenuButton2(StringValue name, gui::Widget* parent, gui::Widget::Event* guiEvent); // gui::Button* CreateArrow(gui::Widget* parent, gui::Widget::Event* guiEvent); - gui::Label* CreateLabel(const std::string& name, gui::Widget* parent, const std::string& font, const glm::vec2& size = NullVec2, gui::Text::HorAlign horAlign = gui::Text::haCenter, gui::Text::VertAlign vertAlign = gui::Text::vaCenter, const D3DXCOLOR& color = cTextColor); - gui::Label* CreateLabel(StringValue name, gui::Widget* parent, const std::string& font, const glm::vec2& size = NullVec2, gui::Text::HorAlign horAlign = gui::Text::haCenter, gui::Text::VertAlign vertAlign = gui::Text::vaCenter, const D3DXCOLOR& color = cTextColor); + gui::Label* CreateLabel(const std::string& name, gui::Widget* parent, const std::string& font, const glm::vec2& size = NullVec2, gui::Text::HorAlign horAlign = gui::Text::haCenter, gui::Text::VertAlign vertAlign = gui::Text::vaCenter, const glm::vec4& color = cTextColor); + gui::Label* CreateLabel(StringValue name, gui::Widget* parent, const std::string& font, const glm::vec2& size = NullVec2, gui::Text::HorAlign horAlign = gui::Text::haCenter, gui::Text::VertAlign vertAlign = gui::Text::vaCenter, const glm::vec4& color = cTextColor); gui::DropBox* CreateDropBox(gui::Widget* parent, gui::Widget::Event* guiEvent, const lsl::StringList& items); gui::TrackBar* CreateTrackBar(gui::Widget* parent, gui::Widget::Event* guiEvent, const glm::vec2& size); gui::ListBox* CreateListBox(gui::Widget* parent, gui::Widget::Event* guiEvent, const glm::vec2& size = glm::vec2(200.0f, 600.0f), const glm::vec2& itemSize = glm::vec2(75.0f, 75.0f), const glm::vec2& itemSpace = glm::vec2(10.0f, 10.0f)); diff --git a/src/Rock3dGame/header/game/Player.h b/src/Rock3dGame/header/game/Player.h index 45f6cb98..d67f8110 100644 --- a/src/Rock3dGame/header/game/Player.h +++ b/src/Rock3dGame/header/game/Player.h @@ -405,7 +405,7 @@ class Player: public GameObjListener Player* owner; MapObjRec* record; graph::LibMaterial* colorMat; - D3DXCOLOR color; + glm::vec4 color; MapObj* mapObj; RockCar* gameObj; @@ -489,8 +489,8 @@ class Player: public GameObjListener static const unsigned cCheatEnableFaster = 1 << 1; static const unsigned cColorsCount = 7; - static const D3DXCOLOR cLeftColors[cColorsCount]; - static const D3DXCOLOR cRightColors[cColorsCount]; + static const glm::vec4 cLeftColors[cColorsCount]; + static const glm::vec4 cRightColors[cColorsCount]; private: Race* _race; CarState _car; @@ -603,8 +603,8 @@ class Player: public GameObjListener int GetPickMoney() const; void ResetPickMoney(); - const D3DXCOLOR& GetColor() const; - void SetColor(const D3DXCOLOR& value); + const glm::vec4& GetColor() const; + void SetColor(const glm::vec4& value); int GetId() const; void SetId(int value); diff --git a/src/Rock3dGame/header/game/Race.h b/src/Rock3dGame/header/game/Race.h index 4f14db30..db3338e4 100644 --- a/src/Rock3dGame/header/game/Race.h +++ b/src/Rock3dGame/header/game/Race.h @@ -779,7 +779,7 @@ class Race: public Component, IFixedStepEvent, ILateProgressEvent ~Race(); Player* AddPlayer(int plrId); - Player* AddPlayer(int plrId, int gamerId, int netSlot, const D3DXCOLOR& color); + Player* AddPlayer(int plrId, int gamerId, int netSlot, const glm::vec4& color); void DelPlayer(PlayerList::const_iterator iter); void DelPlayer(Player* plr); void ClearPlayerList(); diff --git a/src/Rock3dGame/header/game/RaceMenu2.h b/src/Rock3dGame/header/game/RaceMenu2.h index 90760800..323b9452 100644 --- a/src/Rock3dGame/header/game/RaceMenu2.h +++ b/src/Rock3dGame/header/game/RaceMenu2.h @@ -36,11 +36,11 @@ class CarFrame: public MenuFrame void OnProgress(float deltaTime); Garage::Car* GetCar(); - void SetCar(Garage::Car* value, const D3DXCOLOR& color, bool secret = false); - void SetCar(MapObjRec* value, const D3DXCOLOR& color, bool secret = false); + void SetCar(Garage::Car* value, const glm::vec4& color, bool secret = false); + void SetCar(MapObjRec* value, const glm::vec4& color, bool secret = false); - D3DXCOLOR GetCarColor(); - void SetCarColor(const D3DXCOLOR& value); + glm::vec4 GetCarColor(); + void SetCarColor(const glm::vec4& value); void SetSlots(Player* player, bool includeDefSlots); @@ -117,11 +117,11 @@ class GarageFrame: public MenuFrame void PrevCar(); void NextCar(); - gui::Widget* AddColor(gui::Grid* grid, const D3DXCOLOR& color); - void UpdateColorList(gui::Grid* grid, const D3DXCOLOR colors[], unsigned count); - void RefreshColorList(gui::Grid* grid, const D3DXCOLOR colors[], unsigned count); + gui::Widget* AddColor(gui::Grid* grid, const glm::vec4& color); + void UpdateColorList(gui::Grid* grid, const glm::vec4 colors[], unsigned count); + void RefreshColorList(gui::Grid* grid, const glm::vec4 colors[], unsigned count); void RefreshColorList(); - void SelectColor(const D3DXCOLOR& value); + void SelectColor(const glm::vec4& value); void ShowMessage(StringValue message, gui::Widget* sender, const glm::vec2& slotSize); void ShowAccept(const std::string& message, gui::Widget* sender, const glm::vec2& slotSize); @@ -132,7 +132,7 @@ class GarageFrame: public MenuFrame virtual bool OnClick(gui::Widget* sender, const gui::MouseClick& mClick); Garage::Car* car(); - D3DXCOLOR color(); + glm::vec4 color(); public: GarageFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent); virtual ~GarageFrame(); @@ -501,11 +501,11 @@ class RaceMenu: INetGameUser, gui::Widget::Event, IGameUser virtual ~RaceMenu(); gui::Button* CreateMenuButton(const std::string& icon, gui::Widget* parent, gui::Widget::Event* guiEvent); - gui::Button* CreateMenuButton2(StringValue name, gui::Widget* parent, const D3DXCOLOR& textColor, gui::Widget::Event* guiEvent); + gui::Button* CreateMenuButton2(StringValue name, gui::Widget* parent, const glm::vec4& textColor, gui::Widget::Event* guiEvent); gui::Button* CreateArrow(gui::Widget* parent, gui::Widget::Event* guiEvent); gui::Button* CreateArrow2(gui::Widget* parent, gui::Widget::Event* guiEvent); gui::Button* CreatePlusButton(gui::Widget* parent, gui::Widget::Event* guiEvent); - void CreateCar(gui::ViewPort3d* viewport, Garage::Car* car, const D3DXCOLOR& color, Slot* slots[Player::cSlotTypeEnd]); + void CreateCar(gui::ViewPort3d* viewport, Garage::Car* car, const glm::vec4& color, Slot* slots[Player::cSlotTypeEnd]); void CreateCar(gui::ViewPort3d* viewport, Player* player); void AdjustLayout(const glm::vec2& vpSize); diff --git a/src/Rock3dGame/header/game/ResourceManager.h b/src/Rock3dGame/header/game/ResourceManager.h index 2a71c27a..f799b8f6 100644 --- a/src/Rock3dGame/header/game/ResourceManager.h +++ b/src/Rock3dGame/header/game/ResourceManager.h @@ -690,7 +690,7 @@ class ResourceManager: public lsl::Component ResourceManager(World* world); virtual ~ResourceManager(); - void LoadCarLibMat(graph::LibMaterial* libMat, graph::Tex2DResource* tex, const D3DXCOLOR& color, const std::string& normMap = ""); + void LoadCarLibMat(graph::LibMaterial* libMat, graph::Tex2DResource* tex, const glm::vec4& color, const std::string& normMap = ""); void LoadCarLibMat(graph::LibMaterial* libMat, const std::string& imgName, const std::string& normMap = ""); graph::LibMaterial& LoadCarLibMat(const std::string& name, const std::string& imgName, const std::string& normMap = ""); diff --git a/src/Rock3dGame/header/game/TraceGfx.h b/src/Rock3dGame/header/game/TraceGfx.h index d08f787d..4f3bacad 100644 --- a/src/Rock3dGame/header/game/TraceGfx.h +++ b/src/Rock3dGame/header/game/TraceGfx.h @@ -35,7 +35,7 @@ class TraceGfx: public graph::BaseSceneNode WayNode* _selNode; PointLink* _pointLink; - void DrawNodes(graph::Engine& engine, glm::vec3* vBuf, unsigned triCnt, const D3DXCOLOR& color); + void DrawNodes(graph::Engine& engine, glm::vec3* vBuf, unsigned triCnt, const glm::vec4& color); protected: virtual void DoRender(graph::Engine& engine); public: diff --git a/src/Rock3dGame/header/net/NetPlayer.h b/src/Rock3dGame/header/net/NetPlayer.h index c11743a5..532ac9f7 100644 --- a/src/Rock3dGame/header/net/NetPlayer.h +++ b/src/Rock3dGame/header/net/NetPlayer.h @@ -166,7 +166,7 @@ class NetPlayer: public net::NetModelRPC void DoRaceFinish(bool finish); void DoShot(MapObj* target, ShotSlots& slots, unsigned projId, CoordList* coordList, bool readMode); - void SendColor(const D3DXCOLOR& value, bool failed, unsigned target); + void SendColor(const glm::vec4& value, bool failed, unsigned target); void SendGamerId(int value, bool failed, unsigned target); void SlotsWrite(std::ostream& stream); @@ -208,10 +208,10 @@ class NetPlayer: public net::NetModelRPC bool CheckGamerId(int value) const; int GenerateGamerId() const; - const D3DXCOLOR& GetColor() const; - void SetColor(const D3DXCOLOR& value); - bool CheckColor(const D3DXCOLOR& value) const; - D3DXCOLOR GenerateColor() const; + const glm::vec4& GetColor() const; + void SetColor(const glm::vec4& value); + bool CheckColor(const glm::vec4& value) const; + glm::vec4 GenerateColor() const; Garage::Car* GetCar(); bool BuyCar(Garage::Car* car); diff --git a/src/Rock3dGame/source/edit/EditMap.cpp b/src/Rock3dGame/source/edit/EditMap.cpp index 2fa26c13..7d2aaa2a 100644 --- a/src/Rock3dGame/source/edit/EditMap.cpp +++ b/src/Rock3dGame/source/edit/EditMap.cpp @@ -12,8 +12,8 @@ namespace r3d namespace edit { -const D3DXCOLOR Map::bbColor(clrRed); -const D3DXCOLOR Map::selColor(clrGreen); +const glm::vec4 Map::bbColor(clrRed); +const glm::vec4 Map::selColor(clrGreen); MapObj::MapObj(Inst* inst): ExternImpl(inst) { diff --git a/src/Rock3dGame/source/game/AIPlayer.cpp b/src/Rock3dGame/source/game/AIPlayer.cpp index 42c19e12..83e97b71 100644 --- a/src/Rock3dGame/source/game/AIPlayer.cpp +++ b/src/Rock3dGame/source/game/AIPlayer.cpp @@ -680,8 +680,8 @@ void AIDebug::GrActor::DoRender(graph::Engine& engine) SetRect(&destRect, 5, 200, 0, 0); SetRect(&destRect2, 150, 160, 0, 0); _font->OnResetDevice(); - _font->DrawText(0 , sstream.str().c_str(), -1, &destRect, DT_NOCLIP, D3DXCOLOR(1.0f, 0.0f, 0.0f, 1.0f)); - _font->DrawText(0 , sstream2.str().c_str(), -1, &destRect2, DT_NOCLIP, D3DXCOLOR(1.0f, 0.0f, 0.0f, 1.0f)); + _font->DrawText(0 , sstream.str().c_str(), -1, &destRect, DT_NOCLIP, glm::vec4(1.0f, 0.0f, 0.0f, 1.0f)); + _font->DrawText(0 , sstream2.str().c_str(), -1, &destRect2, DT_NOCLIP, glm::vec4(1.0f, 0.0f, 0.0f, 1.0f)); _font->OnLostDevice(); const int cParamKeysEnd = 10; diff --git a/src/Rock3dGame/source/game/DialogMenu2.cpp b/src/Rock3dGame/source/game/DialogMenu2.cpp index 9f454973..123d8231 100644 --- a/src/Rock3dGame/source/game/DialogMenu2.cpp +++ b/src/Rock3dGame/source/game/DialogMenu2.cpp @@ -16,7 +16,7 @@ const int UserChat::cMaxLines = 50; AcceptDialog::AcceptDialog(Menu* menu, gui::Widget* parent): MenuFrame(menu, parent), _resultYes(false), _data(NULL), _guiEvent(NULL) { - D3DXCOLOR color1(0xffafafaf); + glm::vec4 color1(0xffafafaf); StringValue strMenuItems[cMenuItemEnd] = {svNo, svYes}; @@ -24,7 +24,7 @@ AcceptDialog::AcceptDialog(Menu* menu, gui::Widget* parent): MenuFrame(menu, par std::string fontLabels[cLabelEnd] = {"Item"}; gui::Text::HorAlign horLabels[cLabelEnd] = {gui::Text::haCenter}; gui::Text::VertAlign vertLabels[cLabelEnd] = {gui::Text::vaCenter}; - D3DXCOLOR colorLabels[cLabelEnd] = {color1}; + glm::vec4 colorLabels[cLabelEnd] = {color1}; _menuBg = menu->CreatePlane(root(), this, "GUI\\dlgFrame1.png", true, IdentityVec2, gui::Material::bmTransparency); @@ -200,14 +200,14 @@ Object* AcceptDialog::data() const WeaponDialog::WeaponDialog(Menu* menu, gui::Widget* parent): MenuFrame(menu, parent) { - D3DXCOLOR color1(0xffafafaf); - D3DXCOLOR color2(0xFFFFFFFF); + glm::vec4 color1(0xffafafaf); + glm::vec4 color2(0xFFFFFFFF); StringValue strLabels[cLabelEnd] = {svNull, svNull, svNull, svNull}; std::string fontLabels[cLabelEnd] = {"VerySmall", "Small", "Small", "Small"}; gui::Text::HorAlign horLabels[cLabelEnd] = {gui::Text::haLeft, gui::Text::haCenter, gui::Text::haCenter, gui::Text::haCenter}; gui::Text::VertAlign vertLabels[cLabelEnd] = {gui::Text::vaCenter, gui::Text::vaCenter, gui::Text::vaCenter, gui::Text::vaCenter}; - D3DXCOLOR colorLabels[cLabelEnd] = {color1, color2, color2, color2}; + glm::vec4 colorLabels[cLabelEnd] = {color1, color2, color2, color2}; _menuBg = menu->CreatePlane(root(), this, "GUI\\dlgFrame3.png", true, IdentityVec2, gui::Material::bmTransparency); @@ -269,8 +269,8 @@ void WeaponDialog::Hide() InfoDialog::InfoDialog(Menu* menu, gui::Widget* parent): MenuFrame(menu, parent), _data(NULL), _guiEvent(NULL) { - D3DXCOLOR color1(0xffafafaf); - D3DXCOLOR color2(0xffffffff); + glm::vec4 color1(0xffafafaf); + glm::vec4 color2(0xffffffff); StringValue strMenuItems[cMenuItemEnd] = {svOk}; @@ -278,7 +278,7 @@ InfoDialog::InfoDialog(Menu* menu, gui::Widget* parent): MenuFrame(menu, parent) std::string fontLabels[cLabelEnd] = {"Small", "Header"}; gui::Text::HorAlign horLabels[cLabelEnd] = {gui::Text::haLeft, gui::Text::haCenter}; gui::Text::VertAlign vertLabels[cLabelEnd] = {gui::Text::vaCenter, gui::Text::vaCenter}; - D3DXCOLOR colorLabels[cLabelEnd] = {color2, color1}; + glm::vec4 colorLabels[cLabelEnd] = {color2, color1}; _menuBg = menu->CreatePlane(root(), this, "GUI\\dlgFrame4.png", true, IdentityVec2, gui::Material::bmTransparency); @@ -382,14 +382,14 @@ Object* InfoDialog::data() const MusicDialog::MusicDialog(Menu* menu, gui::Widget* parent): MenuFrame(menu, parent) { - D3DXCOLOR color1(0xffafafaf); - D3DXCOLOR color2(0xFFFFFFFF); + glm::vec4 color1(0xffafafaf); + glm::vec4 color2(0xFFFFFFFF); StringValue strLabels[cLabelEnd] = {svNull, svNull}; std::string fontLabels[cLabelEnd] = {"Small", "Item"}; gui::Text::HorAlign horLabels[cLabelEnd] = {gui::Text::haLeft, gui::Text::haLeft}; gui::Text::VertAlign vertLabels[cLabelEnd] = {gui::Text::vaCenter, gui::Text::vaCenter}; - D3DXCOLOR colorLabels[cLabelEnd] = {color1, color2}; + glm::vec4 colorLabels[cLabelEnd] = {color1, color2}; _menuBg = menu->CreatePlane(root(), this, "GUI\\dlgFrame2.png", true, IdentityVec2, gui::Material::bmTransparency); @@ -518,7 +518,7 @@ UserChat::~UserChat() DelLines(); } -UserChat::Line UserChat::AddLine(const lsl::stringW& name, const lsl::stringW& text, const D3DXCOLOR& nameColor, bool right) +UserChat::Line UserChat::AddLine(const lsl::stringW& name, const lsl::stringW& text, const glm::vec4& nameColor, bool right) { Line line; line.time = 0.0f; @@ -553,7 +553,7 @@ void UserChat::OnInvalidate() { } -void UserChat::ShowInput(bool show, const lsl::stringW& name, const lsl::stringW& text, const D3DXCOLOR& nameColor) +void UserChat::ShowInput(bool show, const lsl::stringW& name, const lsl::stringW& text, const glm::vec4& nameColor) { _input.name->SetVisible(show); _input.name->SetTextW(name); @@ -592,7 +592,7 @@ lsl::stringW UserChat::inputText() const return _input.text->GetTextW(); } -void UserChat::PushLine(const lsl::stringW& name, const lsl::stringW& text, const D3DXCOLOR& nameColor) +void UserChat::PushLine(const lsl::stringW& name, const lsl::stringW& text, const glm::vec4& nameColor) { _lines.push_front(AddLine(name, text, nameColor, true)); } diff --git a/src/Rock3dGame/source/game/Environment.cpp b/src/Rock3dGame/source/game/Environment.cpp index fa212e6c..5ede3037 100644 --- a/src/Rock3dGame/source/game/Environment.cpp +++ b/src/Rock3dGame/source/game/Environment.cpp @@ -277,9 +277,9 @@ void Environment::SetGraphOption(GraphManager::GraphOption option, bool value) void Environment::ApplyCloudColor() { - D3DXCOLOR cloudColor = GetGraph()->GetFogColor(); + glm::vec4 cloudColor = GetGraph()->GetFogColor(); if (_worldType == wtWorld3) - cloudColor = D3DXCOLOR(87.0f/255.0f, 81.0f/255.0f, 115.0f/255.0f, 1.0f); + cloudColor = glm::vec4(87.0f/255.0f, 81.0f/255.0f, 115.0f/255.0f, 1.0f); else if (_worldType == wtWorld4) cloudColor = clrWhite; @@ -294,7 +294,7 @@ void Environment::ApplyWheater() { case ewFair: { - D3DXCOLOR fogColor = D3DXCOLOR(148.0f/255.0f, 193.0f/255.0f, 235.0f/255.0f, 1.0f); + glm::vec4 fogColor = glm::vec4(148.0f/255.0f, 193.0f/255.0f, 235.0f/255.0f, 1.0f); GetGraph()->SetSceneAmbient(clrBlack); GetGraph()->SetFogColor(fogColor); @@ -315,9 +315,9 @@ void Environment::ApplyWheater() case ewNight: { - D3DXCOLOR fogColor = D3DXCOLOR(15.0f, 25.0f, 31.0f, 255.0f)/255.0f; + glm::vec4 fogColor = glm::vec4(15.0f, 25.0f, 31.0f, 255.0f)/255.0f; - GetGraph()->SetSceneAmbient(D3DXCOLOR(0xFF8A90AE)); + GetGraph()->SetSceneAmbient(glm::vec4(0xFF8A90AE)); GetGraph()->SetFogColor(fogColor); GetGraph()->SetFogIntensivity(1.0f); GetGraph()->SetSkyTex("Data\\Misc\\nightSky.dds"); @@ -336,7 +336,7 @@ void Environment::ApplyWheater() case ewClody: { - D3DXCOLOR fogColor = 0x00C0BDB8; + glm::vec4 fogColor = 0x00C0BDB8; GetGraph()->SetSkyTex("Data\\World2\\Texture\\skyTex1.dds"); GetGraph()->SetSceneAmbient(clrBlack); @@ -357,7 +357,7 @@ void Environment::ApplyWheater() case ewRainy: { - D3DXCOLOR fogColor = 0x00C0BDB8; + glm::vec4 fogColor = 0x00C0BDB8; GetGraph()->SetSceneAmbient(clrBlack); GetGraph()->SetFogColor(fogColor); @@ -378,7 +378,7 @@ void Environment::ApplyWheater() case ewSahara: { - D3DXCOLOR fogColor = D3DXCOLOR(87.0f/255.0f, 81.0f/255.0f, 115.0f/255.0f, 1.0f); + glm::vec4 fogColor = glm::vec4(87.0f/255.0f, 81.0f/255.0f, 115.0f/255.0f, 1.0f); GetGraph()->SetSceneAmbient(clrBlack); GetGraph()->SetFogColor(fogColor); @@ -399,7 +399,7 @@ void Environment::ApplyWheater() case ewHell: { - D3DXCOLOR fogColor = D3DXCOLOR(82.0f/255.0f, 12.0f/255.0f, 8.0f/255.0f, 1.0f); + glm::vec4 fogColor = glm::vec4(82.0f/255.0f, 12.0f/255.0f, 8.0f/255.0f, 1.0f); GetGraph()->SetSceneAmbient(clrBlack); GetGraph()->SetFogColor(fogColor); @@ -420,7 +420,7 @@ void Environment::ApplyWheater() case ewSnow: { - D3DXCOLOR fogColor = D3DXCOLOR(0xFF9CA6B5); + glm::vec4 fogColor = glm::vec4(0xFF9CA6B5); GetGraph()->SetSceneAmbient(clrBlack); GetGraph()->SetFogColor(fogColor); @@ -441,7 +441,7 @@ void Environment::ApplyWheater() case ewGarage: { - D3DXCOLOR fogColor = D3DXCOLOR(148.0f/255.0f, 193.0f/255.0f, 235.0f/255.0f, 1.0f); + glm::vec4 fogColor = glm::vec4(148.0f/255.0f, 193.0f/255.0f, 235.0f/255.0f, 1.0f); GetGraph()->SetSceneAmbient(clrGray60); GetGraph()->SetFogColor(fogColor); @@ -462,7 +462,7 @@ void Environment::ApplyWheater() case ewAngar: { - D3DXCOLOR fogColor = D3DXCOLOR(148.0f/255.0f, 193.0f/255.0f, 235.0f/255.0f, 1.0f); + glm::vec4 fogColor = glm::vec4(148.0f/255.0f, 193.0f/255.0f, 235.0f/255.0f, 1.0f); GetGraph()->SetSceneAmbient(clrGray60); GetGraph()->SetFogColor(fogColor); @@ -806,12 +806,12 @@ void Environment::SetLampRot(const glm::quat& value, int index) _lamp[index]->GetSource()->SetRot(value); } -const D3DXCOLOR& Environment::GetLampColor(int index) const +const glm::vec4& Environment::GetLampColor(int index) const { return _lampColor[index]; } -void Environment::SetLampColor(const D3DXCOLOR& value, int index) +void Environment::SetLampColor(const glm::vec4& value, int index) { _lampColor[index] = value; diff --git a/src/Rock3dGame/source/game/FinalMenu.cpp b/src/Rock3dGame/source/game/FinalMenu.cpp index b731722b..dc74c55f 100644 --- a/src/Rock3dGame/source/game/FinalMenu.cpp +++ b/src/Rock3dGame/source/game/FinalMenu.cpp @@ -12,7 +12,7 @@ namespace game FinalMenu::FinalMenu(Menu* menu, gui::Widget* parent): MenuFrame(menu, parent), _time(0), _linesSizeY(0) { - const D3DXCOLOR color1 = D3DXCOLOR(214.0f, 214.0f, 214.0f, 255.0f)/255.0f; + const glm::vec4 color1 = glm::vec4(214.0f, 214.0f, 214.0f, 255.0f)/255.0f; StringValue strMenuItems[cMenuItemEnd] = {svBack}; @@ -187,7 +187,7 @@ void FinalMenu::OnProgress(float deltaTime) /*FinalMenu::FinalMenu(Menu* menu, gui::Widget* parent): MenuFrame(menu, parent), _scrollTime(0) { - D3DXCOLOR color1(0xffafafaf); + glm::vec4 color1(0xffafafaf); StringValue strMenuItems[cMenuItemEnd] = {svOk}; @@ -195,7 +195,7 @@ void FinalMenu::OnProgress(float deltaTime) std::string fontLabels[cLabelEnd] = {"Small"}; gui::Text::HorAlign horLabels[cLabelEnd] = {gui::Text::haCenter}; gui::Text::VertAlign vertLabels[cLabelEnd] = {gui::Text::vaTop}; - D3DXCOLOR colorLabels[cLabelEnd] = {D3DXCOLOR(0xffff8a70)}; + glm::vec4 colorLabels[cLabelEnd] = {glm::vec4(0xffff8a70)}; _bg = menu->CreatePlane(root(), this, "GUI\\final.dds", true, IdentityVec2, gui::Material::bmTransparency); _bg->SetAlign(gui::Widget::waCenter); diff --git a/src/Rock3dGame/source/game/FinishMenu.cpp b/src/Rock3dGame/source/game/FinishMenu.cpp index 179a362d..f84d5b55 100644 --- a/src/Rock3dGame/source/game/FinishMenu.cpp +++ b/src/Rock3dGame/source/game/FinishMenu.cpp @@ -14,15 +14,15 @@ namespace n FinishMenu::FinishMenu(Menu* menu, gui::Widget* parent): MenuFrame(menu, parent), _time(-1.0f), _playerCount(0) { - D3DXCOLOR color1(0xffe9a73f); - D3DXCOLOR color2(0xffe1e1e1); - D3DXCOLOR color3(0xff84bc43); + glm::vec4 color1(0xffe9a73f); + glm::vec4 color2(0xffe1e1e1); + glm::vec4 color3(0xff84bc43); StringValue strLabels[cLabelEnd] = {svNull, svPrice, svNull, svNull}; std::string fontLabels[cLabelEnd] = {"Header", "Header", "Header", "Header"}; gui::Text::HorAlign horLabels[cLabelEnd] = {gui::Text::haCenter, gui::Text::haCenter, gui::Text::haCenter, gui::Text::haCenter}; gui::Text::VertAlign vertLabels[cLabelEnd] = {gui::Text::vaCenter, gui::Text::vaCenter, gui::Text::vaCenter, gui::Text::vaCenter}; - D3DXCOLOR colorLabels[cLabelEnd] = {color1, color1, color2, color3}; + glm::vec4 colorLabels[cLabelEnd] = {color1, color1, color2, color3}; for (int i = 0; i < cBoxCount; ++i) { diff --git a/src/Rock3dGame/source/game/GameBase.cpp b/src/Rock3dGame/source/game/GameBase.cpp index 90580b1c..cfb351e2 100644 --- a/src/Rock3dGame/source/game/GameBase.cpp +++ b/src/Rock3dGame/source/game/GameBase.cpp @@ -923,7 +923,7 @@ void ImmortalEffect::OnProgress(float deltaTime) if (material == NULL) continue; - material->SetColor(D3DXCOLOR(1.0f, 1.0f, 1.0f, 1.0f + 2.5f * (1.0f - alpha))); + material->SetColor(glm::vec4(1.0f, 1.0f, 1.0f, 1.0f + 2.5f * (1.0f - alpha))); } if (alpha >= 1.0f) diff --git a/src/Rock3dGame/source/game/GameMode.cpp b/src/Rock3dGame/source/game/GameMode.cpp index e242273c..1c468f7e 100644 --- a/src/Rock3dGame/source/game/GameMode.cpp +++ b/src/Rock3dGame/source/game/GameMode.cpp @@ -1362,13 +1362,13 @@ void GameMode::Run(bool playIntro) _guiLogo->GetMaterial().GetSampler().GetOrCreateTex()->GetOrCreateData()->SetFileName("Data\\GUI\\yardLogo.png"); _guiLogo->GetMaterial().GetSampler().GetTex()->Init(_world->GetGraph()->GetEngine()); _guiLogo->GetMaterial().SetBlending(gui::Material::bmTransparency); - _guiLogo->GetMaterial().SetColor(D3DXCOLOR(1, 1, 1, 0)); + _guiLogo->GetMaterial().SetColor(glm::vec4(1, 1, 1, 0)); _guiLogo2 = _world->GetGraph()->GetGUI().CreatePlaneFon(); _guiLogo2->GetMaterial().GetSampler().GetOrCreateTex()->GetOrCreateData()->SetFileName("Data\\GUI\\laboratoria24.png"); _guiLogo2->GetMaterial().GetSampler().GetTex()->Init(_world->GetGraph()->GetEngine()); _guiLogo2->GetMaterial().SetBlending(gui::Material::bmTransparency); - _guiLogo2->GetMaterial().SetColor(D3DXCOLOR(1, 1, 1, 0)); + _guiLogo2->GetMaterial().SetColor(glm::vec4(1, 1, 1, 0)); } _guiStartup = _world->GetGraph()->GetGUI().CreatePlaneFon(); @@ -1376,7 +1376,7 @@ void GameMode::Run(bool playIntro) _guiStartup->GetMaterial().GetSampler().GetTex()->Init(_world->GetGraph()->GetEngine()); _guiStartup->GetMaterial().GetSampler().SetFiltering(graph::Sampler2d::sfLinear); _guiStartup->GetMaterial().SetBlending(gui::Material::bmTransparency); - _guiStartup->GetMaterial().SetColor(D3DXCOLOR(1, 1, 1, 0)); + _guiStartup->GetMaterial().SetColor(glm::vec4(1, 1, 1, 0)); AdjustGameStartup(); _world->GetGraph()->SetGUIMode(true); @@ -1537,7 +1537,7 @@ void GameMode::ExitRaceGoFinish() void GameMode::GoRace(int stage) { - D3DXCOLOR semaphoreColor = clrWhite; + glm::vec4 semaphoreColor = clrWhite; int semaphoreIndex = 0; switch (stage) @@ -1790,7 +1790,7 @@ void GameMode::OnFrame(float deltaTime, float pxAlpha) } else if (_startUpTime == -2) { - _guiStartup->GetMaterial().SetColor(D3DXCOLOR(1, 1, 1, 1)); + _guiStartup->GetMaterial().SetColor(glm::vec4(1, 1, 1, 1)); _startUpTime = -3; } else if (_guiLogo) diff --git a/src/Rock3dGame/source/game/HudMenu.cpp b/src/Rock3dGame/source/game/HudMenu.cpp index bba471f6..db7c507f 100644 --- a/src/Rock3dGame/source/game/HudMenu.cpp +++ b/src/Rock3dGame/source/game/HudMenu.cpp @@ -94,7 +94,7 @@ PlayerStateFrame::~PlayerStateFrame() void PlayerStateFrame::NewPickItem(Slot::Type slotType, GameObject::BonusType bonusType, int targetPlayerId, bool kill) { const glm::vec2 photoSize = glm::vec2(50.0f, 50.0f); - const D3DXCOLOR color2 = D3DXCOLOR(214.0f, 214.0f, 214.0f, 255.0f)/255.0f; + const glm::vec4 color2 = glm::vec4(214.0f, 214.0f, 214.0f, 255.0f)/255.0f; string image; graph::Tex2DResource* photo = NULL; @@ -171,7 +171,7 @@ void PlayerStateFrame::NewPickItem(Slot::Type slotType, GameObject::BonusType bo item.time = 0; item.image->SetVisible(true); - item.image->GetMaterial().SetColor(D3DXCOLOR(1, 1, 1, 0)); + item.image->GetMaterial().SetColor(glm::vec4(1, 1, 1, 0)); item.pos = _hudMenu->GetPickItemsPos() + glm::vec2(item.image->GetSize().x/2, 0); item.image->SetPos(item.pos); @@ -226,10 +226,10 @@ void PlayerStateFrame::ProccessPickItems(float deltaTime) item.image->SetPos(curPos); } - item.image->GetMaterial().SetColor(D3DXCOLOR(1, 1, 1, alpha)); - item.photo->GetMaterial().SetColor(D3DXCOLOR(1, 1, 1, alpha)); + item.image->GetMaterial().SetColor(glm::vec4(1, 1, 1, alpha)); + item.photo->GetMaterial().SetColor(glm::vec4(1, 1, 1, alpha)); - D3DXCOLOR color = item.label->GetMaterial().GetColor(); + glm::vec4 color = item.label->GetMaterial().GetColor(); color.a = alpha; item.label->GetMaterial().SetColor(color); @@ -298,10 +298,10 @@ void PlayerStateFrame::NewAchievment(AchievmentCondition::MyEventData* data) item.indexTime = -1.0f; item.image->SetVisible(true); - item.image->GetMaterial().SetColor(D3DXCOLOR(1, 1, 1, 1)); - item.points->GetMaterial().SetColor(D3DXCOLOR(1, 1, 1, 0)); + item.image->GetMaterial().SetColor(glm::vec4(1, 1, 1, 1)); + item.points->GetMaterial().SetColor(glm::vec4(1, 1, 1, 0)); if (item.pointsK) - item.pointsK->GetMaterial().SetColor(D3DXCOLOR(1, 1, 1, 0)); + item.pointsK->GetMaterial().SetColor(glm::vec4(1, 1, 1, 0)); item.points->SetVisible(menu()->IsCampaign()); item.image->SetPos(startPos[RandomRange(0, 7)]); @@ -383,14 +383,14 @@ void PlayerStateFrame::ShowCarLifeBar(CarLifeE type, int targetPlayerId, float c float barAlpha = _carLifes[type].bar->GetFront().GetColor().a; if (barAlpha > 0.99f) - _carLifes[type].bar->GetFront().SetColor(D3DXCOLOR(1, 1, 1, 0)); + _carLifes[type].bar->GetFront().SetColor(glm::vec4(1, 1, 1, 0)); else - _carLifes[type].bar->GetFront().SetColor(D3DXCOLOR(1, 1, 1, std::min(barAlpha, 0.5f))); + _carLifes[type].bar->GetFront().SetColor(glm::vec4(1, 1, 1, std::min(barAlpha, 0.5f))); if (Object::ReplaceRef(_carLifes[type].target, targetPlayer)) { _carLifes[type].target = targetPlayer; - _carLifes[type].back->GetMaterial().SetColor(D3DXCOLOR(1, 1, 1, 0)); + _carLifes[type].back->GetMaterial().SetColor(glm::vec4(1, 1, 1, 0)); } _carLifes[type].timer = 0; @@ -458,10 +458,10 @@ void PlayerStateFrame::ProccessCarLifeBar(float deltaTime) _carLifes[i].back->SetPos(vec + glm::vec2(_carLifes[i].back->GetSize().x/2, -_carLifes[i].back->GetSize().y/2)); float alpha = _carLifes[i].back->GetMaterial().GetColor().a; - _carLifes[i].back->GetMaterial().SetColor(D3DXCOLOR(1, 1, 1, StepLerp(alpha, targetAlpha, deltaTime/0.3f))); + _carLifes[i].back->GetMaterial().SetColor(glm::vec4(1, 1, 1, StepLerp(alpha, targetAlpha, deltaTime/0.3f))); alpha = _carLifes[i].bar->GetFront().GetColor().a; - _carLifes[i].bar->GetFront().SetColor(D3DXCOLOR(1, 1, 1, StepLerp(alpha, targetAlpha, deltaTime/0.3f))); + _carLifes[i].bar->GetFront().SetColor(glm::vec4(1, 1, 1, StepLerp(alpha, targetAlpha, deltaTime/0.3f))); } } @@ -723,8 +723,8 @@ void PlayerStateFrame::UpdateState(float deltaTime) alpha = std::min(alpha, targetAlpha); - opponent.point->GetMaterial().SetColor(D3DXCOLOR(1, 1, 1, alpha)); - opponent.label->GetMaterial().SetColor(D3DXCOLOR(1, 1, 1, alpha)); + opponent.point->GetMaterial().SetColor(glm::vec4(1, 1, 1, alpha)); + opponent.label->GetMaterial().SetColor(glm::vec4(1, 1, 1, alpha)); } } } @@ -1077,7 +1077,7 @@ void MiniMapFrame::BuildPath(WayPath& path, res::VertexData& data) void MiniMapFrame::CreatePlayers() { - const D3DXCOLOR color[4] = {clrRed, clrGreen, clrWhite, clrYellow}; + const glm::vec4 color[4] = {clrRed, clrGreen, clrWhite, clrYellow}; ClearPlayers(); diff --git a/src/Rock3dGame/source/game/MainMenu2.cpp b/src/Rock3dGame/source/game/MainMenu2.cpp index 1dce40c7..d453e95e 100644 --- a/src/Rock3dGame/source/game/MainMenu2.cpp +++ b/src/Rock3dGame/source/game/MainMenu2.cpp @@ -388,14 +388,14 @@ void NetBrowserFrame::OnPingComplete() NetIPAddressFrame::NetIPAddressFrame(Menu* menu, MainMenu* mainMenu, gui::Widget* parent): MenuFrame(menu, parent), _mainMenu(mainMenu) { - //D3DXCOLOR color1(0xffafafaf); - D3DXCOLOR color1 = Menu::cTextColor; + //glm::vec4 color1(0xffafafaf); + glm::vec4 color1 = Menu::cTextColor; StringValue strLabels[cLabelEnd] = {svNull, svEnterIP}; std::string fontLabels[cLabelEnd] = {"Item", "Small"}; gui::Text::HorAlign horLabels[cLabelEnd] = {gui::Text::haCenter, gui::Text::haCenter}; gui::Text::VertAlign vertLabels[cLabelEnd] = {gui::Text::vaTop, gui::Text::vaTop}; - D3DXCOLOR colorLabels[cLabelEnd] = {color1, color1}; + glm::vec4 colorLabels[cLabelEnd] = {color1, color1}; gui::Widget* labelsParent[cLabelEnd] = {root(), root()}; @@ -1481,13 +1481,13 @@ bool ClientTypeFrame::OnClick(gui::Widget* sender, const gui::MouseClick& mClick NetworkFrame::NetworkFrame(Menu* menu, MainMenu* mainMenu, gui::Widget* parent): MenuFrame(menu, parent), _mainMenu(mainMenu) { - D3DXCOLOR color1 = Menu::cTextColor; + glm::vec4 color1 = Menu::cTextColor; StringValue strLabels[cLabelEnd] = {svNull}; std::string fontLabels[cLabelEnd] = {"Small"}; gui::Text::HorAlign horLabels[cLabelEnd] = {gui::Text::haCenter}; gui::Text::VertAlign vertLabels[cLabelEnd] = {gui::Text::vaCenter}; - D3DXCOLOR colorLabels[cLabelEnd] = {color1}; + glm::vec4 colorLabels[cLabelEnd] = {color1}; gui::Widget* labelsParent[cLabelEnd] = {root()}; @@ -1617,7 +1617,7 @@ bool TournamentFrame::OnClick(gui::Widget* sender, const gui::MouseClick& mClick CreditsFrame::CreditsFrame(Menu* menu, MainMenu* mainMenu, gui::Widget* parent): MenuFrame(menu, parent), _mainMenu(mainMenu), _scrollTime(0) { - _label = menu->CreateLabel(svCredits, root(), "Small", NullVec2, gui::Text::haCenter, gui::Text::vaTop, D3DXCOLOR(0xffff8a70)); + _label = menu->CreateLabel(svCredits, root(), "Small", NullVec2, gui::Text::haCenter, gui::Text::vaTop, glm::vec4(0xffff8a70)); _label->SetAlign(gui::Widget::waTop); _label->SetFlag(gui::Widget::wfClientClip, true); _label->SetSize(350.0f, 265.0f); @@ -2437,7 +2437,7 @@ Race::Profile* MainMenu::steamHostProfile() const gui::Button* MainMenu::CreateMenuButton(const lsl::string& name, gui::Widget* parent, gui::Widget::Event* guiEvent) { - const D3DXCOLOR color1 = D3DXCOLOR(0xffff8a70); + const glm::vec4 color1 = glm::vec4(0xffff8a70); gui::Button* button = _menu->CreateMenuButton(name, "Header", "", "GUI\\mainItemSel5.png", parent, guiEvent, IdentityVec2, gui::Button::bsSimple, color1, Menu::ssButton1); button->SetSize(button->GetSelSize()); diff --git a/src/Rock3dGame/source/game/Menu.cpp b/src/Rock3dGame/source/game/Menu.cpp index cf0ba861..1af79ab6 100644 --- a/src/Rock3dGame/source/game/Menu.cpp +++ b/src/Rock3dGame/source/game/Menu.cpp @@ -9,7 +9,7 @@ namespace r3d namespace game { -const D3DXCOLOR Menu::cTextColor = D3DXCOLOR(176.0f, 205.0f, 249.0f, 255.0f)/255.0f; +const glm::vec4 Menu::cTextColor = glm::vec4(176.0f, 205.0f, 249.0f, 255.0f)/255.0f; const glm::vec2 Menu::cWinSize(1280.0f, 1024.0f); const glm::vec2 Menu::cMinWinSize(800.0f, 600.0f); const glm::vec2 Menu::cMaxWinSize(3072.0f, 1536.0f); @@ -1274,7 +1274,7 @@ void Menu::SetGamerId(int gamerId) GetPlayer()->SetGamerId(gamerId); } -const D3DXCOLOR& Menu::GetCarColor() +const glm::vec4& Menu::GetCarColor() { if (IsNetGame()) return GetNet()->player()->GetColor(); @@ -1282,7 +1282,7 @@ const D3DXCOLOR& Menu::GetCarColor() return GetPlayer()->GetColor(); } -void Menu::SetCarColor(const D3DXCOLOR& color) +void Menu::SetCarColor(const glm::vec4& color) { if (IsNetGame()) GetNet()->player()->SetColor(color); @@ -1631,7 +1631,7 @@ gui::Button* Menu::CreateSpaceArrowButton(gui::Widget* parent, gui::Widget::Even return button; } -gui::Button* Menu::CreateMenuButton(const lsl::string& name, const std::string& font, const std::string& norm, const std::string& sel, gui::Widget* parent, gui::Widget::Event* guiEvent, const glm::vec2& size, gui::Button::Style style, const D3DXCOLOR& textColor, SoundShemeType soundSheme) +gui::Button* Menu::CreateMenuButton(const lsl::string& name, const std::string& font, const std::string& norm, const std::string& sel, gui::Widget* parent, gui::Widget::Event* guiEvent, const glm::vec2& size, gui::Button::Style style, const glm::vec4& textColor, SoundShemeType soundSheme) { gui::Button* button = GetGUI()->CreateButton(); button->SetParent(parent); @@ -1672,7 +1672,7 @@ gui::Button* Menu::CreateMenuButton(const lsl::string& name, const std::string& return button; } -gui::Button* Menu::CreateMenuButton(StringValue name, const std::string& font, const std::string& norm, const std::string& sel, gui::Widget* parent, gui::Widget::Event* guiEvent, const glm::vec2& size, gui::Button::Style style, const D3DXCOLOR& textColor, SoundShemeType soundSheme) +gui::Button* Menu::CreateMenuButton(StringValue name, const std::string& font, const std::string& norm, const std::string& sel, gui::Widget* parent, gui::Widget::Event* guiEvent, const glm::vec2& size, gui::Button::Style style, const glm::vec4& textColor, SoundShemeType soundSheme) { return CreateMenuButton(GetString(name), font, norm, sel, parent, guiEvent, size, style, textColor, soundSheme); } @@ -1691,8 +1691,8 @@ gui::Button* Menu::CreateMenuButton(StringValue name, gui::Widget* parent, gui:: gui::Button* Menu::CreateMenuButton2(StringValue name, gui::Widget* parent, gui::Widget::Event* guiEvent) { - gui::Button* button = CreateMenuButton(name, "Item", "GUI\\buttonBg5.png", "", parent, guiEvent, IdentityVec2, gui::Button::bsSelAnim, D3DXCOLOR(0xffafafaf), Menu::ssButton1); - button->GetOrCreateTextSelMaterial()->SetColor(D3DXCOLOR(0xffeb733e)); + gui::Button* button = CreateMenuButton(name, "Item", "GUI\\buttonBg5.png", "", parent, guiEvent, IdentityVec2, gui::Button::bsSelAnim, glm::vec4(0xffafafaf), Menu::ssButton1); + button->GetOrCreateTextSelMaterial()->SetColor(glm::vec4(0xffeb733e)); return button; } @@ -1702,7 +1702,7 @@ gui::Button* Menu::CreateArrow(gui::Widget* parent, gui::Widget::Event* guiEvent return CreateMenuButton(svNull, "", "GUI\\arrow1.png", "GUI\\arrowSel1.png", parent, guiEvent, IdentityVec2, gui::Button::bsSelAnim); } -gui::Label* Menu::CreateLabel(const std::string& name, gui::Widget* parent, const std::string& font, const glm::vec2& size, gui::Text::HorAlign horAlign, gui::Text::VertAlign vertAlign, const D3DXCOLOR& color) +gui::Label* Menu::CreateLabel(const std::string& name, gui::Widget* parent, const std::string& font, const glm::vec2& size, gui::Text::HorAlign horAlign, gui::Text::VertAlign vertAlign, const glm::vec4& color) { gui::Label* label = GetGUI()->CreateLabel(); label->SetParent(parent); @@ -1718,7 +1718,7 @@ gui::Label* Menu::CreateLabel(const std::string& name, gui::Widget* parent, cons return label; } -gui::Label* Menu::CreateLabel(StringValue name, gui::Widget* parent, const std::string& font, const glm::vec2& size, gui::Text::HorAlign horAlign, gui::Text::VertAlign vertAlign, const D3DXCOLOR& color) +gui::Label* Menu::CreateLabel(StringValue name, gui::Widget* parent, const std::string& font, const glm::vec2& size, gui::Text::HorAlign horAlign, gui::Text::VertAlign vertAlign, const glm::vec4& color) { return CreateLabel(GetString(name), parent, font, size, horAlign, vertAlign, color); } @@ -1731,10 +1731,10 @@ gui::DropBox* Menu::CreateDropBox(gui::Widget* parent, gui::Widget::Event* guiEv dropBox->SetEvent(guiEvent); dropBox->SetFont(GetFont("Small")); - dropBox->GetFonMaterial().SetColor(D3DXCOLOR(51.0f, 83.0f, 113.0f, 255.0f)/255.0f); + dropBox->GetFonMaterial().SetColor(glm::vec4(51.0f, 83.0f, 113.0f, 255.0f)/255.0f); dropBox->GetButMaterial().GetSampler().SetTex(GetTexture("GUI\\dropBoxButton.tga")); dropBox->GetTextMaterial().SetColor(cTextColor); - dropBox->GetSelMaterial().SetColor(D3DXCOLOR(250.0f, 255.0f, 0.0f, 255.0f)/255.0f); + dropBox->GetSelMaterial().SetColor(glm::vec4(250.0f, 255.0f, 0.0f, 255.0f)/255.0f); dropBox->SetItems(items); @@ -1763,7 +1763,7 @@ gui::ListBox* Menu::CreateListBox(gui::Widget* parent, gui::Widget::Event* guiEv listBox->SetItemSize(itemSize); listBox->SetItemSpace(itemSpace); - listBox->GetOrCreateFon().SetColor(D3DXCOLOR(1.0f, 1.0f, 1.0f, 0.3f)); + listBox->GetOrCreateFon().SetColor(glm::vec4(1.0f, 1.0f, 1.0f, 0.3f)); listBox->GetOrCreateFon().SetBlending(gui::Material::bmTransparency); listBox->GetOrCreateFon().GetSampler().SetTex(GetTexture("GUI\\listBoxFon.tga")); @@ -1844,13 +1844,13 @@ gui::ColorList* Menu::CreateColorList(gui::Widget* parent, gui::Widget::Event* g colorList->InsertColor(clrBlack); colorList->InsertColor(clrBlue); - colorList->InsertColor(D3DXCOLOR(48.0f, 139.0f, 231.0f, 255.0f)/255.0f); + colorList->InsertColor(glm::vec4(48.0f, 139.0f, 231.0f, 255.0f)/255.0f); colorList->InsertColor(clrRed); colorList->InsertColor(clrGreen); colorList->InsertColor(clrYellow); - colorList->InsertColor(D3DXCOLOR(255.0f, 150.0f, 0.0f, 255.0f)/255.0f); - colorList->InsertColor(D3DXCOLOR(180.0f, 0.0f, 180.0f, 255.0f)/255.0f); - colorList->InsertColor(D3DXCOLOR(255.0f, 100.0f, 255.0f, 255.0f)/255.0f); + colorList->InsertColor(glm::vec4(255.0f, 150.0f, 0.0f, 255.0f)/255.0f); + colorList->InsertColor(glm::vec4(180.0f, 0.0f, 180.0f, 255.0f)/255.0f); + colorList->InsertColor(glm::vec4(255.0f, 100.0f, 255.0f, 255.0f)/255.0f); colorList->InsertColor(clrWhite); colorList->SelectColor(&clrRed); @@ -1874,12 +1874,12 @@ gui::Button* Menu::CreateCloseButton(gui::Widget* parent, gui::Widget::Event* gu gui::Material* fonMat = button->GetOrCreateFon(); fonMat->GetSampler().SetTex(GetTexture("GUI\\closeButton.tga")); - fonMat->SetColor(D3DXCOLOR(1.0f, 1.0f, 1.0f, 0.3f)); + fonMat->SetColor(glm::vec4(1.0f, 1.0f, 1.0f, 0.3f)); fonMat->SetBlending(gui::Material::bmTransparency); gui::Material* selMat = button->GetOrCreateSel(); selMat->GetSampler().SetTex(GetTexture("GUI\\closeButtonSel.tga")); - selMat->SetColor(D3DXCOLOR(1.0f, 1.0f, 1.0f, 0.75f)); + selMat->SetColor(glm::vec4(1.0f, 1.0f, 1.0f, 0.75f)); selMat->SetBlending(gui::Material::bmTransparency); button->SetSize(GetImageSize(*fonMat) * size); @@ -1935,7 +1935,7 @@ gui::StepperBox* Menu::CreateStepper(const StringList& items, gui::Widget* paren stepper->GetOrCreateArrowSel()->SetBlending(gui::Material::bmTransparency); stepper->SetFont(GetFont("Small")); - stepper->GetOrCreateText()->SetColor(D3DXCOLOR(0xffafafaf)); + stepper->GetOrCreateText()->SetColor(glm::vec4(0xffafafaf)); stepper->SetSize(240.0f, 45.0f); diff --git a/src/Rock3dGame/source/game/OptionsMenu.cpp b/src/Rock3dGame/source/game/OptionsMenu.cpp index 58038f5f..dce353fe 100644 --- a/src/Rock3dGame/source/game/OptionsMenu.cpp +++ b/src/Rock3dGame/source/game/OptionsMenu.cpp @@ -15,7 +15,7 @@ namespace n GameFrame::GameFrame(Menu* menu, OptionsMenu* optionsMenu, gui::Widget* parent): MenuFrame(menu, parent), _optionsMenu(optionsMenu), _gridScroll(0) { - D3DXCOLOR color1(0xffafafaf); + glm::vec4 color1(0xffafafaf); StringList diffStr; for (int i = 0; i < cDifficultyEnd; ++i) @@ -61,7 +61,7 @@ GameFrame::GameFrame(Menu* menu, OptionsMenu* optionsMenu, gui::Widget* parent): std::string fontLabels[cLabelEnd] = {"Small", "Small", "Small", "Small", "Small", "Small", "Small", "Small", "Small", "Small", "Small", "Small"}; gui::Text::HorAlign horLabels[cLabelEnd] = {gui::Text::haLeft, gui::Text::haLeft, gui::Text::haLeft, gui::Text::haLeft, gui::Text::haLeft, gui::Text::haLeft, gui::Text::haLeft, gui::Text::haLeft, gui::Text::haLeft, gui::Text::haLeft, gui::Text::haLeft, gui::Text::haLeft}; gui::Text::VertAlign vertLabels[cLabelEnd] = {gui::Text::vaCenter, gui::Text::vaCenter, gui::Text::vaCenter, gui::Text::vaCenter, gui::Text::vaCenter, gui::Text::vaCenter, gui::Text::vaCenter, gui::Text::vaCenter, gui::Text::vaCenter, gui::Text::vaCenter, gui::Text::vaCenter, gui::Text::vaCenter}; - D3DXCOLOR colorLabels[cLabelEnd] = {color1, color1, color1, color1, color1, color1, color1, color1, color1, color1, color1, color1}; + glm::vec4 colorLabels[cLabelEnd] = {color1, color1, color1, color1, color1, color1, color1, color1, color1, color1, color1, color1}; _grid = menu->CreateGrid(root(), NULL, gui::Grid::gsVertical); _grid->SetAlign(gui::Widget::waLeftTop); @@ -357,13 +357,13 @@ MediaFrame::MediaFrame(Menu* menu, OptionsMenu* optionsMenu, gui::Widget* parent StringList itemsStepper[cStepperEnd] = {resolutionStr, fltLevel, msFltLevel, shadowLevel, envLevel, lightLevel, postEffLevel, onOffLevel}; - D3DXCOLOR color1(0xffafafaf); + glm::vec4 color1(0xffafafaf); lsl::string strLabels[cLabelEnd] = {_SC(svResolution), _SC(svFiltering), _SC(svMultisampling), _SC(svShadow), _SC(svEnv), _SC(svLight), _SC(svPostProcess), "svWindowMode"}; std::string fontLabels[cLabelEnd] = {"Small", "Small", "Small", "Small", "Small", "Small", "Small", "Small"}; gui::Text::HorAlign horLabels[cLabelEnd] = {gui::Text::haLeft, gui::Text::haLeft, gui::Text::haLeft, gui::Text::haLeft, gui::Text::haLeft, gui::Text::haLeft, gui::Text::haLeft, gui::Text::haLeft}; gui::Text::VertAlign vertLabels[cLabelEnd] = {gui::Text::vaCenter, gui::Text::vaCenter, gui::Text::vaCenter, gui::Text::vaCenter, gui::Text::vaCenter, gui::Text::vaCenter, gui::Text::vaCenter, gui::Text::vaCenter}; - D3DXCOLOR colorLabels[cLabelEnd] = {color1, color1, color1, color1, color1, color1, color1, color1}; + glm::vec4 colorLabels[cLabelEnd] = {color1, color1, color1, color1, color1, color1, color1, color1}; for (int i = 0; i < cLabelEnd; ++i) { @@ -493,7 +493,7 @@ void MediaFrame::CancelChanges() NetworkTab::NetworkTab(Menu* menu, OptionsMenu* optionsMenu, gui::Widget* parent): MenuFrame(menu, parent), _optionsMenu(optionsMenu) { - D3DXCOLOR color1(0xffafafaf); + glm::vec4 color1(0xffafafaf); StringList languageStr; for (Languages::const_iterator iter = menu->GetGame()->GetLanguages().begin(); iter != menu->GetGame()->GetLanguages().end(); ++iter) @@ -509,7 +509,7 @@ NetworkTab::NetworkTab(Menu* menu, OptionsMenu* optionsMenu, gui::Widget* parent std::string fontLabels[cLabelEnd] = {"Small", "Small", "Small", "Small", "Small"}; gui::Text::HorAlign horLabels[cLabelEnd] = {gui::Text::haLeft, gui::Text::haLeft, gui::Text::haLeft, gui::Text::haLeft, gui::Text::haLeft}; gui::Text::VertAlign vertLabels[cLabelEnd] = {gui::Text::vaCenter, gui::Text::vaCenter, gui::Text::vaCenter, gui::Text::vaCenter, gui::Text::vaCenter}; - D3DXCOLOR colorLabels[cLabelEnd] = {color1, color1, color1, color1, color1}; + glm::vec4 colorLabels[cLabelEnd] = {color1, color1, color1, color1, color1}; gui::Widget* labelsParent[cLabelEnd] = {root(), root(), root(), root(), root()}; for (int i = 0; i < cLabelEnd; ++i) @@ -664,7 +664,7 @@ void NetworkTab::CancelChanges() ControlsFrame::ControlsFrame(Menu* menu, OptionsMenu* optionsMenu, gui::Widget* parent): MenuFrame(menu, parent), _optionsMenu(optionsMenu), _gridScroll(0) { - D3DXCOLOR color1(0xffafafaf); + glm::vec4 color1(0xffafafaf); _grid = menu->CreateGrid(root(), NULL, gui::Grid::gsVertical); _grid->SetAlign(gui::Widget::waLeftTop); @@ -925,7 +925,7 @@ void ControlsFrame::CancelChanges() OptionsMenu::OptionsMenu(Menu* menu, gui::Widget* parent): _menu(menu), _state(msGame) { - D3DXCOLOR color1(0xffafafaf); + glm::vec4 color1(0xffafafaf); StringValue strMenuItems[cMenuItemEnd] = {svBack, svApply}; StringValue strStateItems[cStateEnd] = {svGame, svGraphic, svNetwork, svControls}; @@ -934,7 +934,7 @@ OptionsMenu::OptionsMenu(Menu* menu, gui::Widget* parent): _menu(menu), _state(m std::string fontLabels[cLabelEnd] = {"Header"}; gui::Text::HorAlign horLabels[cLabelEnd] = {gui::Text::haCenter}; gui::Text::VertAlign vertLabels[cLabelEnd] = {gui::Text::vaCenter}; - D3DXCOLOR colorLabels[cLabelEnd] = {color1}; + glm::vec4 colorLabels[cLabelEnd] = {color1}; LSL_ASSERT(menu); @@ -942,7 +942,7 @@ OptionsMenu::OptionsMenu(Menu* menu, gui::Widget* parent): _menu(menu), _state(m _root->SetParent(parent); _menuBgMask = _menu->CreatePlane(_root, this, "", false, IdentityVec2, gui::Material::bmTransparency); - _menuBgMask->GetMaterial().SetColor(D3DXCOLOR(0, 0, 0, 0.8f)); + _menuBgMask->GetMaterial().SetColor(glm::vec4(0, 0, 0, 0.8f)); _menuBgMask->SetAnchor(gui::Widget::waCenter); _menuBg = _menu->CreatePlane(_menuBgMask, this, "GUI\\optionsBg.png", true, IdentityVec2, gui::Material::bmTransparency); @@ -1380,7 +1380,7 @@ void OptionsMenu::SetState(State value) StartOptionsMenu::StartOptionsMenu(Menu* menu, gui::Widget* parent): MenuFrame(menu, parent), _lastCameraIndex(-1) { - D3DXCOLOR color1(0xffafafaf); + glm::vec4 color1(0xffafafaf); StringValue strMenuItems[cMenuItemEnd] = {svApply}; const StringValue cPrefCameraStr[GameMode::cPrefCameraEnd] = {svCameraSecView, svCameraOrtho}; @@ -1413,10 +1413,10 @@ StartOptionsMenu::StartOptionsMenu(Menu* menu, gui::Widget* parent): MenuFrame(m std::string fontLabels[cLabelEnd] = {"Small", "Small", "Small", "Small", "Small"}; gui::Text::HorAlign horLabels[cLabelEnd] = {gui::Text::haLeft, gui::Text::haLeft, gui::Text::haLeft, gui::Text::haLeft, gui::Text::haCenter}; gui::Text::VertAlign vertLabels[cLabelEnd] = {gui::Text::vaCenter, gui::Text::vaCenter, gui::Text::vaCenter, gui::Text::vaCenter, gui::Text::vaCenter}; - D3DXCOLOR colorLabels[cLabelEnd] = {color1, color1, color1, color1, color1}; + glm::vec4 colorLabels[cLabelEnd] = {color1, color1, color1, color1, color1}; _menuBgMask = menu->CreatePlane(root(), this, "", false, IdentityVec2, gui::Material::bmTransparency); - _menuBgMask->GetMaterial().SetColor(D3DXCOLOR(0, 0, 0, 0.8f)); + _menuBgMask->GetMaterial().SetColor(glm::vec4(0, 0, 0, 0.8f)); _menuBgMask->SetAnchor(gui::Widget::waCenter); _menuBg = menu->CreatePlane(_menuBgMask, this, "GUI\\startMenuBg.png", true, IdentityVec2, gui::Material::bmTransparency); diff --git a/src/Rock3dGame/source/game/Player.cpp b/src/Rock3dGame/source/game/Player.cpp index c978dc65..59c7bbe5 100644 --- a/src/Rock3dGame/source/game/Player.cpp +++ b/src/Rock3dGame/source/game/Player.cpp @@ -20,9 +20,9 @@ const float Player::cHumanArmorK[cDifficultyEnd] = {2.0f, 1.75f, 1.5f}; const std::string Player::cSlotTypeStr[cSlotTypeEnd] = {"stWheel", "stTruba", "stArmor", "stMotor", "stHyper", "stMine", "stWeapon1", "stWeapon2", "stWeapon3", "stWeapon4"}; -const D3DXCOLOR Player::cLeftColors[Player::cColorsCount] = {clrWhite, clrBlue, clrRed, clrGreen, clrYellow, D3DXCOLOR(0xffff9000), clrGray20}; +const glm::vec4 Player::cLeftColors[Player::cColorsCount] = {clrWhite, clrBlue, clrRed, clrGreen, clrYellow, glm::vec4(0xffff9000), clrGray20}; -const D3DXCOLOR Player::cRightColors[Player::cColorsCount] = {D3DXCOLOR(0xff06affa), D3DXCOLOR(0xffb70bae), D3DXCOLOR(0xffb1c903), D3DXCOLOR(0xffa93900), D3DXCOLOR(0xff30373d), D3DXCOLOR(0xff009f15), D3DXCOLOR(0xff70769c)}; +const glm::vec4 Player::cRightColors[Player::cColorsCount] = {glm::vec4(0xff06affa), glm::vec4(0xffb70bae), glm::vec4(0xffb1c903), glm::vec4(0xffa93900), glm::vec4(0xff30373d), glm::vec4(0xff009f15), glm::vec4(0xff70769c)}; Slot::ClassList Slot::classList; @@ -2068,12 +2068,12 @@ void Player::ResetPickMoney() _pickMoney = 0; } -const D3DXCOLOR& Player::GetColor() const +const glm::vec4& Player::GetColor() const { return _car.color; } -void Player::SetColor(const D3DXCOLOR& value) +void Player::SetColor(const glm::vec4& value) { _car.color = value; diff --git a/src/Rock3dGame/source/game/Race.cpp b/src/Rock3dGame/source/game/Race.cpp index ccbaf03d..5519ccc2 100644 --- a/src/Rock3dGame/source/game/Race.cpp +++ b/src/Rock3dGame/source/game/Race.cpp @@ -6453,7 +6453,7 @@ void Race::SnProfile::LoadPlayer(Player* player, lsl::SReader* reader) { lsl::string str; lsl::Serializable::FixUpName fixUp; - D3DXCOLOR color; + glm::vec4 color; int numb; MapObjRec* carRef = MapObjLib::LoadRecordRef(reader, "car"); @@ -6981,7 +6981,7 @@ void Race::OnLateProgress(float deltaTime, bool pxStep) Player* Race::AddPlayer(int plrId) { - const D3DXCOLOR color[cMaxPlayers] = {D3DXCOLOR(0xFF5B29A5), D3DXCOLOR(0xFF9E9E9E), D3DXCOLOR(0xFFFF80C0), D3DXCOLOR(0xFF83F7CC), D3DXCOLOR(0xFF83E500), D3DXCOLOR(0xFFD8E585), D3DXCOLOR(0xFF6100B9), D3DXCOLOR(0xFF006CA4)}; + const glm::vec4 color[cMaxPlayers] = {glm::vec4(0xFF5B29A5), glm::vec4(0xFF9E9E9E), glm::vec4(0xFFFF80C0), glm::vec4(0xFF83F7CC), glm::vec4(0xFF83E500), glm::vec4(0xFFD8E585), glm::vec4(0xFF6100B9), glm::vec4(0xFF006CA4)}; Player* player = new Player(this); player->AddRef(); @@ -7002,7 +7002,7 @@ Player* Race::AddPlayer(int plrId) return player; } -Player* Race::AddPlayer(int plrId, int gamerId, int netSlot, const D3DXCOLOR& color) +Player* Race::AddPlayer(int plrId, int gamerId, int netSlot, const glm::vec4& color) { Player* player = AddPlayer(plrId); player->SetGamerId(gamerId); diff --git a/src/Rock3dGame/source/game/RaceMenu2.cpp b/src/Rock3dGame/source/game/RaceMenu2.cpp index 33def442..d13a2a09 100644 --- a/src/Rock3dGame/source/game/RaceMenu2.cpp +++ b/src/Rock3dGame/source/game/RaceMenu2.cpp @@ -80,7 +80,7 @@ Garage::Car* CarFrame::GetCar() return _car; } -void CarFrame::SetCar(Garage::Car* value, const D3DXCOLOR& color, bool secret) +void CarFrame::SetCar(Garage::Car* value, const glm::vec4& color, bool secret) { if (Object::ReplaceRef(_car, value) || (value && !secret && _carMapObj == NULL)) { @@ -119,12 +119,12 @@ void CarFrame::SetCar(Garage::Car* value, const D3DXCOLOR& color, bool secret) } } -void CarFrame::SetCar(MapObjRec* value, const D3DXCOLOR& color, bool secret) +void CarFrame::SetCar(MapObjRec* value, const glm::vec4& color, bool secret) { SetCar(menu()->GetRace()->GetGarage().FindCar(value), color, secret); } -D3DXCOLOR CarFrame::GetCarColor() +glm::vec4 CarFrame::GetCarColor() { if (_carMapObj) { @@ -134,7 +134,7 @@ D3DXCOLOR CarFrame::GetCarColor() return clrWhite; } -void CarFrame::SetCarColor(const D3DXCOLOR& value) +void CarFrame::SetCarColor(const glm::vec4& value) { if (_carMapObj) { @@ -368,7 +368,7 @@ void SpaceshipFrame::OnShow(bool value) menu()->GetEnv()->SetLampPos(glm::vec3(52.307316f, 24.327570f, 32.772705f), 2); menu()->GetEnv()->SetLampRot(glm::quat(0.61423278f, 0.21948183f, 0.18329506f, -0.73549527f), 2); - menu()->GetEnv()->SetLampColor(D3DXCOLOR(0xff88fefe), 2); + menu()->GetEnv()->SetLampColor(glm::vec4(0xff88fefe), 2); menu()->GetEnv()->SwitchOnLamp(2, true); CameraManager* camera = menu()->GetRace()->GetWorld()->GetCamera(); @@ -392,13 +392,13 @@ void SpaceshipFrame::OnShow(bool value) GarageFrame::GarageFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent): MenuFrame(menu, parent), _raceMenu(raceMenu), _lastCarIndex(-1) { - const D3DXCOLOR color2 = D3DXCOLOR(214.0f, 214.0f, 214.0f, 255.0f)/255.0f; + const glm::vec4 color2 = glm::vec4(214.0f, 214.0f, 214.0f, 255.0f)/255.0f; StringValue strLabels[cLabelEnd] = {svGarage, svNull, svNull, svNull, svCarCost}; std::string fontLabels[cLabelEnd] = {"Header", "Header", "VerySmall", "Item", "Header"}; gui::Text::HorAlign horLabels[cLabelEnd] = {gui::Text::haCenter, gui::Text::haCenter, gui::Text::haCenter, gui::Text::haRight, gui::Text::haCenter}; gui::Text::VertAlign vertLabels[cLabelEnd] = {gui::Text::vaCenter, gui::Text::vaCenter, gui::Text::vaTop, gui::Text::vaCenter, gui::Text::vaCenter}; - D3DXCOLOR colorLabels[cLabelEnd] = {color2, color2, color2, clrWhite, color2}; + glm::vec4 colorLabels[cLabelEnd] = {color2, color2, color2, clrWhite, color2}; _topPanel = menu->CreatePlane(root(), this, "GUI\\topPanel2.png", true, IdentityVec2, gui::Material::bmTransparency); _topPanel->SetAlign(gui::Widget::waTop); @@ -666,7 +666,7 @@ void GarageFrame::NextCar() SelectCar(*(++iter)); } -gui::Widget* GarageFrame::AddColor(gui::Grid* grid, const D3DXCOLOR& color) +gui::Widget* GarageFrame::AddColor(gui::Grid* grid, const glm::vec4& color) { gui::Widget* box = menu()->CreateMenuButton("", "", "GUI\\colorBoxBg.png", "GUI\\colorBoxBgSel.png", grid, this, IdentityVec2, gui::Button::bsSelAnim, clrWhite, Menu::ssButton4); @@ -677,7 +677,7 @@ gui::Widget* GarageFrame::AddColor(gui::Grid* grid, const D3DXCOLOR& color) return box; } -void GarageFrame::UpdateColorList(gui::Grid* grid, const D3DXCOLOR colors[], unsigned count) +void GarageFrame::UpdateColorList(gui::Grid* grid, const glm::vec4 colors[], unsigned count) { grid->DeleteAllChildren(); glm::vec2 size = NullVec2; @@ -692,7 +692,7 @@ void GarageFrame::UpdateColorList(gui::Grid* grid, const D3DXCOLOR colors[], uns grid->Reposition(); } -void GarageFrame::RefreshColorList(gui::Grid* grid, const D3DXCOLOR colors[], unsigned count) +void GarageFrame::RefreshColorList(gui::Grid* grid, const glm::vec4 colors[], unsigned count) { gui::Widget::Children::const_iterator iter = grid->GetChildren().begin(); @@ -711,7 +711,7 @@ void GarageFrame::RefreshColorList() RefreshColorList(_rightColorGrid, Player::cRightColors, Player::cColorsCount); } -void GarageFrame::SelectColor(const D3DXCOLOR& value) +void GarageFrame::SelectColor(const glm::vec4& value) { _raceMenu->carFrame()->SetCarColor(value); menu()->SetCarColor(value); @@ -895,7 +895,7 @@ void GarageFrame::OnInvalidate() bool isSel = carPlane->GetData() == car(); if (isSel) carIndex = i; - carPlane->GetMaterial().SetColor(isSel ? D3DXCOLOR(255.0f, 150.0f, 0.0f, 255.0f)/255.0f : clrWhite); + carPlane->GetMaterial().SetColor(isSel ? glm::vec4(255.0f, 150.0f, 0.0f, 255.0f)/255.0f : clrWhite); carBox->GetMaterial().GetSampler().SetTex(isSel ? GetTexture("GUI\\carBoxSel.png") : GetTexture("GUI\\carBox.png")); carBox->GetMaterial().SetBlending(isSel ? gui::Material::bmAdditive : gui::Material::bmTransparency); } @@ -955,7 +955,7 @@ bool GarageFrame::OnClick(gui::Widget* sender, const gui::MouseClick& mClick) if (sender->GetParent() && (sender->GetParent() == _leftColorGrid || sender->GetParent() == _rightColorGrid)) { - SelectColor(D3DXCOLOR(static_cast(sender->GetChildren().front())->GetMaterial().GetColor())); + SelectColor(glm::vec4(static_cast(sender->GetChildren().front())->GetMaterial().GetColor())); return true; } @@ -979,7 +979,7 @@ Garage::Car* GarageFrame::car() return _raceMenu->carFrame()->GetCar(); } -D3DXCOLOR GarageFrame::color() +glm::vec4 GarageFrame::color() { return _raceMenu->carFrame()->GetCarColor(); } @@ -992,7 +992,7 @@ void GarageFrame::OnProcessNetEvent(unsigned id, NetEventData* data) WorkshopFrame::WorkshopFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent): MenuFrame(menu, parent), _raceMenu(raceMenu), _goodScroll(0), _overGood(NULL), _overGood2(NULL), _infoId(-1), _numSelectedSlots(0) { - const D3DXCOLOR color2 = D3DXCOLOR(214.0f, 214.0f, 214.0f, 255.0f)/255.0f; + const glm::vec4 color2 = glm::vec4(214.0f, 214.0f, 214.0f, 255.0f)/255.0f; const StringValue menuItemsStr[cMenuItemEnd] = {svBack}; root()->SetEvent(this); @@ -1001,7 +1001,7 @@ WorkshopFrame::WorkshopFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent std::string fontLabels[cLabelEnd] = {"Header", "Item", "VerySmall"}; gui::Text::HorAlign horLabels[cLabelEnd] = {gui::Text::haCenter, gui::Text::haRight, gui::Text::haCenter}; gui::Text::VertAlign vertLabels[cLabelEnd] = {gui::Text::vaCenter, gui::Text::vaCenter, gui::Text::vaTop}; - D3DXCOLOR colorLabels[cLabelEnd] = {color2, clrWhite, color2}; + glm::vec4 colorLabels[cLabelEnd] = {color2, clrWhite, color2}; _topPanel = menu->CreatePlane(root(), this, "GUI\\topPanel3.png", true, IdentityVec2, gui::Material::bmTransparency); _topPanel->SetAnchor(gui::Widget::waTop); @@ -2071,13 +2071,13 @@ void WorkshopFrame::OnProcessEvent(unsigned id, EventData* data) GamersFrame::GamersFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent): MenuFrame(menu, parent), _raceMenu(raceMenu), _planetIndex(-1) { - const D3DXCOLOR color2 = D3DXCOLOR(214.0f, 214.0f, 214.0f, 255.0f)/255.0f; + const glm::vec4 color2 = glm::vec4(214.0f, 214.0f, 214.0f, 255.0f)/255.0f; StringValue strLabels[cLabelEnd] = {svNull, svNull, svNull}; std::string fontLabels[cLabelEnd] = {"VerySmall", "Header", "Item"}; gui::Text::HorAlign horLabels[cLabelEnd] = {gui::Text::haLeft, gui::Text::haCenter, gui::Text::haCenter}; gui::Text::VertAlign vertLabels[cLabelEnd] = {gui::Text::vaTop, gui::Text::vaCenter, gui::Text::vaCenter}; - D3DXCOLOR colorLabels[cLabelEnd] = {color2, clrWhite, color2}; + glm::vec4 colorLabels[cLabelEnd] = {color2, clrWhite, color2}; _space = menu->CreatePlane(root(), this, "GUI\\space1.dds", true); _space->SetAnchor(gui::Widget::waCenter); @@ -2323,15 +2323,15 @@ void GamersFrame::OnProcessNetEvent(unsigned id, NetEventData* data) AngarFrame::AngarFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent): MenuFrame(menu, parent), _raceMenu(raceMenu), _planetIndex(-1), _planetPrevIndex(-1), _doorTime(-1.0f) { - const D3DXCOLOR color = D3DXCOLOR(0xff76cef2); - const D3DXCOLOR color2 = D3DXCOLOR(214.0f, 214.0f, 214.0f, 255.0f)/255.0f; + const glm::vec4 color = glm::vec4(0xff76cef2); + const glm::vec4 color2 = glm::vec4(214.0f, 214.0f, 214.0f, 255.0f)/255.0f; const StringValue menuItemsStr[cMenuItemEnd] = {svBack}; StringValue strLabels[cLabelEnd] = {svNull, svNull, svNull}; std::string fontLabels[cLabelEnd] = {"Item", "Small", "VerySmallThink"}; gui::Text::HorAlign horLabels[cLabelEnd] = {gui::Text::haCenter, gui::Text::haCenter, gui::Text::haLeft}; gui::Text::VertAlign vertLabels[cLabelEnd] = {gui::Text::vaCenter, gui::Text::vaCenter, gui::Text::vaTop}; - D3DXCOLOR colorLabels[cLabelEnd] = {clrWhite, color, color}; + glm::vec4 colorLabels[cLabelEnd] = {clrWhite, color, color}; _bottomPanelBg = menu->CreateDummy(root(), this); _bottomPanelBg->SetAlign(gui::Widget::waBottom); @@ -2806,15 +2806,15 @@ void AngarFrame::OnProgress(float deltaTime) AchievmentFrame::AchievmentFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent): MenuFrame(menu, parent), _raceMenu(raceMenu) { - const D3DXCOLOR color = D3DXCOLOR(0xFFFA5800); - const D3DXCOLOR color2 = clrWhite; + const glm::vec4 color = glm::vec4(0xFFFA5800); + const glm::vec4 color2 = clrWhite; const StringValue menuItemsStr[cMenuItemEnd] = {svBack}; StringValue strLabels[cLabelEnd] = {svNull, svRewards}; std::string fontLabels[cLabelEnd] = {"Header", "Header"}; gui::Text::HorAlign horLabels[cLabelEnd] = {gui::Text::haCenter, gui::Text::haCenter}; gui::Text::VertAlign vertLabels[cLabelEnd] = {gui::Text::vaCenter, gui::Text::vaCenter}; - D3DXCOLOR colorLabels[cLabelEnd] = {color, color2}; + glm::vec4 colorLabels[cLabelEnd] = {color, color2}; _bottomPanel = menu->CreatePlane(root(), this, "GUI\\achievmentBottomPanel.png", true, IdentityVec2, gui::Material::bmTransparency); _bottomPanel->SetAlign(gui::Widget::waBottom); @@ -2867,7 +2867,7 @@ const AchievmentFrame::AchievmentBox* AchievmentFrame::AddAchievment(unsigned in newBox.image = menu()->CreatePlane(_panel, this, "", false, IdentityVec2, gui::Material::bmTransparency); newBox.image->GetMaterial().GetSampler().SetFiltering(graph::Sampler2d::sfLinear); - newBox.price = menu()->CreateLabel(svNull, newBox.image, "Item", NullVec2, gui::Text::haCenter, gui::Text::vaCenter, D3DXCOLOR(0xFFC3C2C0)); + newBox.price = menu()->CreateLabel(svNull, newBox.image, "Item", NullVec2, gui::Text::haCenter, gui::Text::vaCenter, glm::vec4(0xFFC3C2C0)); newBox.button = menu()->CreateMenuButton(svNull, "", "", "", newBox.image, this, IdentityVec2, gui::Button::bsSelAnim); _achievments.push_back(newBox); @@ -3123,15 +3123,15 @@ void AchievmentFrame::OnMouseLeave(gui::Widget* sender, bool wasReset) RaceMainFrame::RaceMainFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent): MenuFrame(menu, parent), _raceMenu(raceMenu) { - const D3DXCOLOR color1 = D3DXCOLOR(214.0f, 214.0f, 214.0f, 255.0f)/255.0f; - const D3DXCOLOR color2 = D3DXCOLOR(214.0f, 184.0f, 164.0f, 255.0f)/255.0f; + const glm::vec4 color1 = glm::vec4(214.0f, 214.0f, 214.0f, 255.0f)/255.0f; + const glm::vec4 color2 = glm::vec4(214.0f, 184.0f, 164.0f, 255.0f)/255.0f; const std::string menuItemsIcon[cMenuItemEnd] = {"GUI\\icoStart.png", "GUI\\icoWorkshop.png", "GUI\\icoGarage.png", "GUI\\icoSpace.png", "GUI\\icoAchivment.png", "GUI\\icoOptions.png", "GUI\\icoExit.png"}; StringValue strLabels[cLabelEnd] = {svPlayer, svPassing, svTournament, svWeapons, svBossName, svNull, svPassInfo, svTournamentInfo}; std::string fontLabels[cLabelEnd] = {"Small", "Small", "Small", "Small", "Small", "Item", "Small", "Small"}; gui::Text::HorAlign horLabels[cLabelEnd] = {gui::Text::haCenter, gui::Text::haCenter, gui::Text::haCenter, gui::Text::haCenter, gui::Text::haCenter, gui::Text::haRight, gui::Text::haLeft, gui::Text::haLeft}; gui::Text::VertAlign vertLabels[cLabelEnd] = {gui::Text::vaCenter, gui::Text::vaCenter, gui::Text::vaCenter, gui::Text::vaCenter, gui::Text::vaCenter, gui::Text::vaCenter, gui::Text::vaCenter, gui::Text::vaCenter}; - D3DXCOLOR colorLabels[cLabelEnd] = {color1, color1, color1, color1, color1, clrWhite, color2, color2}; + glm::vec4 colorLabels[cLabelEnd] = {color1, color1, color1, color1, color1, clrWhite, color2, color2}; _topPanel = menu->CreatePlane(root(), this, "GUI\\topPanel.png", true); _topPanel->SetAnchor(gui::Widget::waTop); @@ -3234,7 +3234,7 @@ void RaceMainFrame::RaceRady(bool ready) RaceMainFrame::PlayerBox* RaceMainFrame::AddPlayer(NetPlayer* netPlayer, unsigned index) { - const D3DXCOLOR color1 = clrWhite; + const glm::vec4 color1 = clrWhite; PlayerBox* box = index < _players.size() ? &_players[index] : NULL; if (box == NULL) @@ -3771,7 +3771,7 @@ gui::Button* RaceMenu::CreateMenuButton(const std::string& icon, gui::Widget* pa return button; } -gui::Button* RaceMenu::CreateMenuButton2(StringValue name, gui::Widget* parent, const D3DXCOLOR& textColor, gui::Widget::Event* guiEvent) +gui::Button* RaceMenu::CreateMenuButton2(StringValue name, gui::Widget* parent, const glm::vec4& textColor, gui::Widget::Event* guiEvent) { return _menu->CreateMenuButton(name, "Header", "GUI\\buttonBg2.png", "GUI\\buttonBgSel2.png", parent, guiEvent, IdentityVec2, gui::Button::bsSelAnim, textColor, Menu::ssButton1); } @@ -3791,7 +3791,7 @@ gui::Button* RaceMenu::CreatePlusButton(gui::Widget* parent, gui::Widget::Event* return _menu->CreateMenuButton(svNull, "", "GUI\\chargeButton.png", "GUI\\chargeButtonSel.png", parent, guiEvent, IdentityVec2, gui::Button::bsSelAnim, clrWhite, Menu::ssButton3); } -void RaceMenu::CreateCar(gui::ViewPort3d* viewport, Garage::Car* car, const D3DXCOLOR& color, Slot* slots[Player::cSlotTypeEnd]) +void RaceMenu::CreateCar(gui::ViewPort3d* viewport, Garage::Car* car, const glm::vec4& color, Slot* slots[Player::cSlotTypeEnd]) { viewport->GetBox()->DeleteChildren(); diff --git a/src/Rock3dGame/source/game/ResourceManager.cpp b/src/Rock3dGame/source/game/ResourceManager.cpp index add9b9bf..164c5a50 100644 --- a/src/Rock3dGame/source/game/ResourceManager.cpp +++ b/src/Rock3dGame/source/game/ResourceManager.cpp @@ -1279,7 +1279,7 @@ graph::LibMaterial& ResourceManager::LoadSpecLibMat(const std::string& name, con { graph::LibMaterial& libMat = LoadImage2dLibMat(name, imgName, sprite); libMat.material.SetSpecPower(64.0f); - libMat.material.SetSpecular(D3DXCOLOR(1, 1, 1, 1)); + libMat.material.SetSpecular(glm::vec4(1, 1, 1, 1)); return libMat; } @@ -1294,7 +1294,7 @@ graph::LibMaterial& ResourceManager::LoadBumpLibMat(const std::string& name, con libMat.samplers[1].stageStates.Set(graph::tssAlphaOp, D3DTOP_DISABLE); libMat.material.SetSpecPower(128.0f); - libMat.material.SetSpecular(D3DXCOLOR(0.5f, 0.5f, 0.5f, 1.0f)); + libMat.material.SetSpecular(glm::vec4(0.5f, 0.5f, 0.5f, 1.0f)); return libMat; } @@ -1432,7 +1432,7 @@ void ResourceManager::LoadEffects() LoadImage2dLibMat("Effect\\frost", "Effect\\frost.dds", false, graph::Material::bmTransparency, FloatRange(0.5f, 0.0f)); LoadImage2dLibMat("Effect\\smoke1", "Effect\\smoke1.dds", true, graph::Material::bmTransparency, FloatRange(0.5f, 0.0f), clrWhite * 0.25f); - LoadImage2dLibMat("Effect\\smoke2", "Effect\\smoke2.dds", true, graph::Material::bmTransparency, FloatRange(0.8f, 0.0f), ColorRange(D3DXCOLOR(0.5f, 0.32f, 0.25f, 1.0f), D3DXCOLOR(0.25f, 0.25f, 0.25f, 1.0f))); + LoadImage2dLibMat("Effect\\smoke2", "Effect\\smoke2.dds", true, graph::Material::bmTransparency, FloatRange(0.8f, 0.0f), ColorRange(glm::vec4(0.5f, 0.32f, 0.25f, 1.0f), glm::vec4(0.25f, 0.25f, 0.25f, 1.0f))); LoadImage2dLibMat("Effect\\smoke3", "Effect\\smoke3.dds", true, graph::Material::bmTransparency, FloatRange(1.0f, 0.0f), clrWhite); LoadImage2dLibMat("Effect\\smoke7", "Effect\\smoke7.dds", true, graph::Material::bmTransparency, FloatRange(1.0f, 0.0f), clrWhite); LoadImage2dLibMat("Effect\\asphaltMarks", "Effect\\asphaltMarks.dds", true, graph::Material::bmTransparency, FloatRange(1.0f, 0.0f), clrWhite).SetAnisoFlt(); @@ -1442,9 +1442,9 @@ void ResourceManager::LoadEffects() LoadImage2dLibMat("Effect\\frostHit", "Effect\\frostSmoke.dds", true, graph::Material::bmTransparency, FloatRange(1.0f, 0.0f)); LoadImage2dLibMat("Effect\\crater", "Effect\\crater.dds", true, graph::Material::bmTransparency, FloatRange(1.0f, 0.0f)); - LoadImage2dLibMat("Effect\\flare1", "Effect\\flare1.dds", true, graph::Material::bmAdditive, 0.5f, D3DXCOLOR(1, 0.58f, 0.36f, 1.0f)); + LoadImage2dLibMat("Effect\\flare1", "Effect\\flare1.dds", true, graph::Material::bmAdditive, 0.5f, glm::vec4(1, 0.58f, 0.36f, 1.0f)); LoadImage2dLibMat("Effect\\flare2", "Effect\\flare1.dds", true, graph::Material::bmAdditive, FloatRange(0.0f, 1.0f), clrRed); - LoadImage2dLibMat("Effect\\flare3", "Effect\\flare1.dds", true, graph::Material::bmAdditive, FloatRange(1.0f, 0.0f), D3DXCOLOR(1, 0.58f, 0.36f, 1.0f)); + LoadImage2dLibMat("Effect\\flare3", "Effect\\flare1.dds", true, graph::Material::bmAdditive, FloatRange(1.0f, 0.0f), glm::vec4(1, 0.58f, 0.36f, 1.0f)); LoadImage2dLibMat("Effect\\flare4", "Effect\\flare2.dds", true, graph::Material::bmAdditive); LoadImage2dLibMat("Effect\\flare5", "Effect\\flare3.dds", true, graph::Material::bmAdditive); LoadImage2dLibMat("Effect\\flare6", "Effect\\flare4.dds", true, graph::Material::bmAdditive); @@ -1458,7 +1458,7 @@ void ResourceManager::LoadEffects() LoadImage2dLibMat("Effect\\laser3-red2", "Effect\\laser3-red2.dds", true, graph::Material::bmAdditive, FloatRange(0.0f, 1.0f), clrWhite); LoadImage2dLibMat("Effect\\flash1", "Effect\\flash1.dds", true, graph::Material::bmAdditive, 1.0f, clrWhite); LoadImage2dLibMat("Effect\\flash2", "Effect\\flash2.dds", true, graph::Material::bmAdditive, 1.0f, clrWhite); - LoadImage2dLibMat("Effect\\dust_smoke_06", "Effect\\flare1.dds", true, graph::Material::bmAdditive, FloatRange(1.0f, 0.0f), D3DXCOLOR(0.2f, 0.2f, 1.0f, 1.0f)); + LoadImage2dLibMat("Effect\\dust_smoke_06", "Effect\\flare1.dds", true, graph::Material::bmAdditive, FloatRange(1.0f, 0.0f), glm::vec4(0.2f, 0.2f, 1.0f, 1.0f)); LoadImage2dLibMat("Effect\\sonar", "Effect\\sonar.dds", true, graph::Material::bmAdditive, FloatRange(1.0f, 0.0f)); LoadImage2dLibMat("Effect\\ExplosionRay", "Effect\\ExplosionRay.dds", true, graph::Material::bmAdditive, FloatRange(1.0f, 0.0f), clrBlue); LoadImage2dLibMat("Effect\\ExplosionRing", "Effect\\ExplosionRing.dds", true, graph::Material::bmAdditive, FloatRange(1.0f, 0.0f), clrYellow); @@ -1476,7 +1476,7 @@ void ResourceManager::LoadEffects() LoadImage2dLibMat("Effect\\protonRay", "Effect\\protonRay.dds", true, graph::Material::bmAdditive, FloatRange(1.0f, 0.0f)); LoadImage2dLibMat("Effect\\protonRing", "Effect\\protonRing.dds", true, graph::Material::bmAdditive, FloatRange(1.0f, 0.0f)); LoadImage2dLibMat("Effect\\phaseRing", "Effect\\phaseRing.dds", true, graph::Material::bmAdditive); - LoadImage2dLibMat("Effect\\thunder1", "Effect\\thunder1.dds", true, graph::Material::bmAdditive, FloatRange(1.0f, 0.0f), ColorRange(D3DXCOLOR(0xFFEC008C), D3DXCOLOR(0xFF0000FF))); + LoadImage2dLibMat("Effect\\thunder1", "Effect\\thunder1.dds", true, graph::Material::bmAdditive, FloatRange(1.0f, 0.0f), ColorRange(glm::vec4(0xFFEC008C), glm::vec4(0xFF0000FF))); LoadImage2dLibMat("Effect\\flareLaser1", "Effect\\flare2b.dds", true, graph::Material::bmAdditive, FloatRange(0.7f, 0.0f)); LoadImage2dLibMat("Effect\\flareLaser2", "Effect\\flare1_tc.dds", true, graph::Material::bmAdditive, FloatRange(1.0f, 0.0f)); LoadImage2dLibMat("Effect\\flareLaser3", "Effect\\flare2a.dds", true, graph::Material::bmAdditive, FloatRange(1.0f, 0.0f)); @@ -2180,7 +2180,7 @@ void ResourceManager::LoadBonus() graph::LibMaterial* libMat = &GetMatLib().Add(); libMat->SetName("Bonus\\maslo"); libMat->material.SetSpecPower(64.0f); - libMat->material.SetSpecular(D3DXCOLOR(1, 1, 1, 1)); + libMat->material.SetSpecular(glm::vec4(1, 1, 1, 1)); libMat->material.SetBlending(graph::Material::bmTransparency); libMat->material.SetOption(graph::Material::moZWrite, false); @@ -2642,10 +2642,10 @@ void ResourceManager::LoadGUI() LoadFont("VerySmallThink", 18, 0, false, "Verdana"); } -void ResourceManager::LoadCarLibMat(graph::LibMaterial* libMat, graph::Tex2DResource* tex, const D3DXCOLOR& color, const std::string& normMap) +void ResourceManager::LoadCarLibMat(graph::LibMaterial* libMat, graph::Tex2DResource* tex, const glm::vec4& color, const std::string& normMap) { libMat->material.SetSpecPower(64.0f); - libMat->material.SetSpecular(D3DXCOLOR(1, 1, 1, 1)); + libMat->material.SetSpecular(glm::vec4(1, 1, 1, 1)); libMat->samplers.Clear(); diff --git a/src/Rock3dGame/source/game/TraceGfx.cpp b/src/Rock3dGame/source/game/TraceGfx.cpp index afb21d2a..bcd7f068 100644 --- a/src/Rock3dGame/source/game/TraceGfx.cpp +++ b/src/Rock3dGame/source/game/TraceGfx.cpp @@ -48,7 +48,7 @@ TraceGfx::~TraceGfx() _trace->Release(); } -void TraceGfx::DrawNodes(graph::Engine& engine, glm::vec3* vBuf, unsigned triCnt, const D3DXCOLOR& color) +void TraceGfx::DrawNodes(graph::Engine& engine, glm::vec3* vBuf, unsigned triCnt, const glm::vec4& color) { _libMat->material.SetDiffuse(color); _libMat->Apply(engine); @@ -87,7 +87,7 @@ void TraceGfx::DoRender(graph::Engine& engine) for (Trace::Pathes::const_iterator iter = _trace->GetPathes().begin(); iter != _trace->GetPathes().end(); ++iter, ++iPath) { WayPath* path = *iter; - D3DXCOLOR pathColor = path == _selPath ? clrGreen : D3DXCOLOR(Vec3GlmToDx(resColor.GetValue(iPath / (pathCnt - 1.0f)))); + glm::vec4 pathColor = path == _selPath ? clrGreen : glm::vec4(Vec3GlmToDx(resColor.GetValue(iPath / (pathCnt - 1.0f)))); res::VertexData vBuf; path->GetTriStripVBuf(vBuf, &upVec); if (vBuf.IsInit()) diff --git a/src/Rock3dGame/source/net/NetPlayer.cpp b/src/Rock3dGame/source/net/NetPlayer.cpp index 35718b0d..5ddf0e87 100644 --- a/src/Rock3dGame/source/net/NetPlayer.cpp +++ b/src/Rock3dGame/source/net/NetPlayer.cpp @@ -232,7 +232,7 @@ void NetPlayer::DoShot(MapObj* target, ShotSlots& slots, unsigned projId, CoordL } } -void NetPlayer::SendColor(const D3DXCOLOR& value, bool failed, unsigned target) +void NetPlayer::SendColor(const glm::vec4& value, bool failed, unsigned target) { std::ostream& stream = NewRPC(target, &NetPlayer::OnSetColor); net::Write(stream, value); @@ -322,7 +322,7 @@ void NetPlayer::OnSetGamerId(const net::NetMessage& msg, const net::NetCmdHeader void NetPlayer::OnSetColor(const net::NetMessage& msg, const net::NetCmdHeader& header, std::istream& stream) { - D3DXCOLOR color; + glm::vec4 color; bool failed; net::Read(stream, color); @@ -603,7 +603,7 @@ void NetPlayer::OnDescWrite(const net::NetMessage& msg, std::ostream& stream) void NetPlayer::OnStateRead(const net::NetMessage& msg, const net::NetCmdHeader& header, std::istream& stream) { - D3DXCOLOR color; + glm::vec4 color; std::string carName; int gamerId; @@ -803,26 +803,26 @@ int NetPlayer::GenerateGamerId() const return -1; } -const D3DXCOLOR& NetPlayer::GetColor() const +const glm::vec4& NetPlayer::GetColor() const { return _player->GetColor(); } -void NetPlayer::SetColor(const D3DXCOLOR& value) +void NetPlayer::SetColor(const glm::vec4& value) { _player->SetColor(value); SendColor(value, false, net::cNetTargetOthers); } -bool NetPlayer::CheckColor(const D3DXCOLOR& value) const +bool NetPlayer::CheckColor(const glm::vec4& value) const { for (NetGame::NetPlayers::const_iterator iter = _net->netPlayers().begin(); iter != _net->netPlayers().end(); ++iter) { if (*iter == this) continue; - D3DXCOLOR diff = (*iter)->GetColor() - value; + glm::vec4 diff = (*iter)->GetColor() - value; if (abs(diff.r) < 0.001f && abs(diff.g) < 0.001f && abs(diff.b) < 0.001f && abs(diff.a) < 0.001f) return false; } @@ -830,7 +830,7 @@ bool NetPlayer::CheckColor(const D3DXCOLOR& value) const return true; } -D3DXCOLOR NetPlayer::GenerateColor() const +glm::vec4 NetPlayer::GenerateColor() const { for (int i = 0; i < Player::cColorsCount; ++i) if (CheckColor(Player::cLeftColors[i])) From e0f64d57c52883ad6ee452b96e1859bb5f462ccb Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Sun, 30 Oct 2022 20:51:29 +0300 Subject: [PATCH 40/55] math: fix build after replace D3DXCOLOR, but has black 3d scene --- src/LexStd/header/lslSerialValue.h | 14 --------- src/MathLib/header/lslMath.h | 3 -- src/MathLib/header/lslMath.inl | 31 +++++++++++++------ src/MathLib/header/lslVariant.h | 12 ------- src/MathLib/header/r3dMath.h | 1 + src/NetLib/include/net/BitStream.h | 1 - src/NetLib/include/net/NetCommon.h | 15 --------- src/NetLib/source/net/BitStream.cpp | 5 --- src/Rock3dEngine/header/graph/Engine.h | 2 +- src/Rock3dEngine/header/res/GraphResource.h | 6 ++-- src/Rock3dEngine/source/GraphManager.cpp | 12 +++---- src/Rock3dEngine/source/graph/ContextInfo.cpp | 16 +++++----- src/Rock3dEngine/source/graph/Engine.cpp | 6 ++-- .../source/graph/MappingShaders.cpp | 8 ++--- .../source/graph/MaterialLibrary.cpp | 4 +-- .../source/graph/SceneManager.cpp | 4 +-- src/Rock3dEngine/source/graph/StdNode.cpp | 16 +++++----- src/Rock3dEngine/source/gui/GUI.cpp | 2 +- src/Rock3dEngine/source/res/GraphResource.cpp | 8 ++--- src/Rock3dGame/source/game/AIPlayer.cpp | 4 +-- src/Rock3dGame/source/game/DialogMenu2.cpp | 14 ++++----- src/Rock3dGame/source/game/Environment.cpp | 10 +++--- src/Rock3dGame/source/game/FinalMenu.cpp | 8 +++-- src/Rock3dGame/source/game/FinishMenu.cpp | 6 ++-- src/Rock3dGame/source/game/MainMenu2.cpp | 6 ++-- src/Rock3dGame/source/game/Menu.cpp | 9 ++---- src/Rock3dGame/source/game/OptionsMenu.cpp | 24 +++++++------- src/Rock3dGame/source/game/Player.cpp | 14 +++++++-- src/Rock3dGame/source/game/Race.cpp | 11 ++++++- src/Rock3dGame/source/game/RaceMenu2.cpp | 11 ++++--- .../source/game/ResourceManager.cpp | 3 +- src/Rock3dGame/source/game/TraceGfx.cpp | 2 +- 32 files changed, 134 insertions(+), 154 deletions(-) diff --git a/src/LexStd/header/lslSerialValue.h b/src/LexStd/header/lslSerialValue.h index b5f00906..8fbcc8c3 100644 --- a/src/LexStd/header/lslSerialValue.h +++ b/src/LexStd/header/lslSerialValue.h @@ -79,20 +79,6 @@ template<> struct SerialValue } }; -template<> struct SerialValue -{ - typedef glm::vec4 _Value; - - static void Write(SWriter* writer, const char* name, const _Value& value) - { - writer->WriteValue(name, value, 4); - } - static SReader* Read(SReader* reader, const char* name, _Value& value) - { - return reader->ReadValue(name, value, 4); - } -}; - template<> struct SerialValue { typedef Point2U _Value; diff --git a/src/MathLib/header/lslMath.h b/src/MathLib/header/lslMath.h index d5f36f53..75407acf 100644 --- a/src/MathLib/header/lslMath.h +++ b/src/MathLib/header/lslMath.h @@ -58,9 +58,6 @@ bool operator<(const glm::vec3& vec1, float scalar); bool operator>(const glm::vec3& vec1, const glm::vec3& vec2); bool operator<(const glm::vec3& vec1, const glm::vec3& vec2); -glm::vec4 Vec4FromVec2(const glm::vec2& vec); -glm::vec4 Vec4FromVec3(const glm::vec3& vec); - //Линия из нормали и точки void Line2FromNorm(const glm::vec2& norm, const glm::vec2& point, glm::vec3& outLine); glm::vec3 Line2FromNorm(const glm::vec2& norm, const glm::vec2& point); diff --git a/src/MathLib/header/lslMath.inl b/src/MathLib/header/lslMath.inl index 18c06267..447c37b8 100644 --- a/src/MathLib/header/lslMath.inl +++ b/src/MathLib/header/lslMath.inl @@ -88,6 +88,27 @@ inline D3DXVECTOR4 Vec4GlmToDx(const glm::vec4 v4) return v4Dx; } +inline D3DCOLOR Vec4ToColor(const glm::vec4 &vec) +{ + return D3DCOLOR_COLORVALUE(vec.r, vec.g, vec.b, vec.a); +} + +inline glm::vec4 ColorToVec4(const D3DCOLOR &col) +{ + glm::vec4 vec; + vec.r = (col >> 16 & 255) / 255.0f; + vec.g = (col >> 8 & 255) / 255.0f; + vec.b = (col & 255) / 255.0f; + vec.a = (col >> 24 & 255) / 255.0f; + return vec; +} + +inline glm::vec4 ColorVToVec4(const D3DCOLORVALUE &cv) +{ + glm::vec4 v4glm(cv.r, cv.g, cv.b, cv.a); + return v4glm; +} + inline glm::vec4 PlaneToVec4Glm(const D3DXPLANE pl) { glm::vec4 v4(pl.a, pl.b, pl.c, pl.d); @@ -432,16 +453,6 @@ inline bool operator<(const glm::vec3& vec1, const glm::vec3& vec2) vec1.z < vec2.z; } -inline glm::vec4 Vec4FromVec2(const glm::vec2& vec) -{ - return glm::vec4(vec.x, vec.y, 0, 0); -} - -inline glm::vec4 Vec4FromVec3(const glm::vec3& vec) -{ - return glm::vec4(vec.x, vec.y, vec.z, 0); -} - inline void operator*=(glm::vec4& vec1, const glm::vec4& vec2) { vec1.r *= vec2.r; diff --git a/src/MathLib/header/lslVariant.h b/src/MathLib/header/lslVariant.h index cd088a37..4cf7f2a7 100644 --- a/src/MathLib/header/lslVariant.h +++ b/src/MathLib/header/lslVariant.h @@ -130,7 +130,6 @@ class VariantVec: private Variant VariantVec(const glm::vec2* value, unsigned count); VariantVec(const glm::vec3* value, unsigned count); VariantVec(const glm::vec4* value, unsigned count); - VariantVec(const glm::vec4* value, unsigned count); VariantVec(const D3DXMATRIX* value, unsigned count); // VariantVec(const int& value); @@ -143,7 +142,6 @@ class VariantVec: private Variant VariantVec(const glm::vec2& value); VariantVec(const glm::vec3& value); VariantVec(const glm::vec4& value); - VariantVec(const glm::vec4& value); VariantVec(const D3DXMATRIX& value); using _MyBase::CheckType; @@ -520,11 +518,6 @@ inline VariantVec::VariantVec(const glm::vec4* value, unsigned count) AssignData(value, count); } -inline VariantVec::VariantVec(const glm::vec4* value, unsigned count) -{ - AssignData(reinterpret_cast(value), count); -} - inline VariantVec::VariantVec(const D3DXMATRIX* value, unsigned count) { AssignData(value, count); @@ -575,11 +568,6 @@ inline VariantVec::VariantVec(const glm::vec4& value) AssignData(&value, 1); } -inline VariantVec::VariantVec(const glm::vec4& value) -{ - AssignData(reinterpret_cast(&value), 1); -} - inline VariantVec::VariantVec(const D3DXMATRIX& value) { AssignData(&value, 1); diff --git a/src/MathLib/header/r3dMath.h b/src/MathLib/header/r3dMath.h index 7b8304c4..aefb0bc7 100644 --- a/src/MathLib/header/r3dMath.h +++ b/src/MathLib/header/r3dMath.h @@ -216,6 +216,7 @@ const glm::vec4 clrGray50 (0.50f, 0.50f, 0.50f, 1.0f); const glm::vec4 clrGray55 (0.55f, 0.55f, 0.55f, 1.0f); const glm::vec4 clrGray60 (0.60f, 0.60f, 0.60f, 1.0f); const glm::vec4 clrGray65 (0.65f, 0.65f, 0.65f, 1.0f); +const glm::vec4 clrGrayAF (175.0f/255.0f, 175.0f/255.0f, 175.0f/255.0f, 1.0f); // AF = 175, 175/255 = 0,6862745 const glm::vec4 clrGray70 (0.70f, 0.70f, 0.70f, 1.0f); const glm::vec4 clrGray75 (0.75f, 0.75f, 0.75f, 1.0f); const glm::vec4 clrGray80 (0.80f, 0.80f, 0.80f, 1.0f); diff --git a/src/NetLib/include/net/BitStream.h b/src/NetLib/include/net/BitStream.h index e6a90770..e4073967 100644 --- a/src/NetLib/include/net/BitStream.h +++ b/src/NetLib/include/net/BitStream.h @@ -199,7 +199,6 @@ class BitStream NETLIB_API void Serialize(glm::vec3& value, float err = cFloatErr); NETLIB_API void Serialize(glm::vec4& value, float err = cFloatErr); NETLIB_API void Serialize(glm::quat& value, float err = cFloatErr); - NETLIB_API void Serialize(glm::vec4& value, float err = cFloatErr); NETLIB_API void Serialize(void*& data, unsigned size, bool cmp); }; diff --git a/src/NetLib/include/net/NetCommon.h b/src/NetLib/include/net/NetCommon.h index b5695f62..4ce6b0e1 100644 --- a/src/NetLib/include/net/NetCommon.h +++ b/src/NetLib/include/net/NetCommon.h @@ -166,9 +166,6 @@ unsigned Read(std::istream& stream, glm::vec4& value); unsigned Write(std::ostream& stream, const glm::quat& value); unsigned Read(std::istream& stream, glm::quat& value); -unsigned Write(std::ostream& stream, const glm::vec4& value); -unsigned Read(std::istream& stream, glm::vec4& value); - unsigned Write(std::ostream& stream, const D3DXMATRIX& value); unsigned Read(std::istream& stream, D3DXMATRIX& value); @@ -322,18 +319,6 @@ inline unsigned Read(std::istream& stream, glm::quat& value) return sizeof(value); } -inline unsigned Write(std::ostream& stream, const glm::vec4& value) -{ - Write(stream, &value, sizeof(value)); - return sizeof(value); -} - -inline unsigned Read(std::istream& stream, glm::vec4& value) -{ - Read(stream, &value, sizeof(value)); - return sizeof(value); -} - inline unsigned Write(std::ostream& stream, const D3DXMATRIX& value) { Write(stream, &value, sizeof(value)); diff --git a/src/NetLib/source/net/BitStream.cpp b/src/NetLib/source/net/BitStream.cpp index 73a04e2c..cafbfe63 100644 --- a/src/NetLib/source/net/BitStream.cpp +++ b/src/NetLib/source/net/BitStream.cpp @@ -327,11 +327,6 @@ void BitStream::Serialize(glm::quat& value, float err) Serialize(glm::value_ptr(value), 4, err); } -void BitStream::Serialize(glm::vec4& value, float err) -{ - Serialize(value, 4, err); -} - void BitStream::Serialize(void*& data, unsigned size, bool cmp) { if (cmp) diff --git a/src/Rock3dEngine/header/graph/Engine.h b/src/Rock3dEngine/header/graph/Engine.h index 2320b318..d7e1218f 100644 --- a/src/Rock3dEngine/header/graph/Engine.h +++ b/src/Rock3dEngine/header/graph/Engine.h @@ -93,7 +93,7 @@ class Engine: public lsl::Object //Возвращает false если нужен ещё один проход, при этом BeginDraw повторно не вызывается. Если ожидается(или возможен, разрешен) следующий проход то в арг. nextPass следует передывать true bool EndDraw(bool nextPass); - void BeginBackBufOut(DWORD clearFlags, D3DCOLOR color); + void BeginBackBufOut(DWORD clearFlags, glm::vec4 color); void EndBackBufOut(); IDirect3DSurface9* GetDSSurf(); diff --git a/src/Rock3dEngine/header/res/GraphResource.h b/src/Rock3dEngine/header/res/GraphResource.h index bd1313a0..929bea82 100644 --- a/src/Rock3dEngine/header/res/GraphResource.h +++ b/src/Rock3dEngine/header/res/GraphResource.h @@ -42,10 +42,10 @@ struct VertexPD static const DWORD fvf = D3DFVF_XYZ | D3DFVF_DIFFUSE; glm::vec3 pos; - D3DCOLOR diffuse; + glm::vec4 diffuse; VertexPD(); - VertexPD(glm::vec3 position, D3DCOLOR diffuseColor); + VertexPD(glm::vec3 position, glm::vec4 diffuseColor); }; struct VertexPN @@ -168,7 +168,7 @@ struct VertexIter const glm::vec3* Pos3() const; glm::vec3* Pos3(); glm::vec4* Pos4(); - D3DCOLOR* Color(); + glm::vec4* Color(); glm::vec2* Tex0(); glm::vec2* Tex1(); glm::vec3* Normal(); diff --git a/src/Rock3dEngine/source/GraphManager.cpp b/src/Rock3dEngine/source/GraphManager.cpp index 8f373c2d..3eeb37ab 100644 --- a/src/Rock3dEngine/source/GraphManager.cpp +++ b/src/Rock3dEngine/source/GraphManager.cpp @@ -1294,7 +1294,7 @@ void GraphManager::ApplyFog() _engine->GetContext().SetRenderState(graph::rsFogStart, *(DWORD*)(&fogStart)); _engine->GetContext().SetRenderState(graph::rsFogEnd, *(DWORD*)(&(fogEnd))); _engine->GetContext().SetRenderState(graph::rsFogTableMode, D3DFOG_LINEAR); - _engine->GetContext().SetRenderState(graph::rsFogColor, _fogColor); + _engine->GetContext().SetRenderState(graph::rsFogColor, Vec4ToColor(_fogColor)); _engine->GetContext().SetRenderState(graph::rsFogEnable, true); } } @@ -2193,7 +2193,7 @@ bool GraphManager::Render(float deltaTime, bool pause) _engine->GetContext().ApplyCamera(&camera); //Осветляем сцену для спец. эффектов (например для четкого кубемапа) - _engine->GetContext().SetRenderState(graph::rsAmbient, clrWhite); + _engine->GetContext().SetRenderState(graph::rsAmbient, Vec4ToColor(clrWhite)); //Рендер кубемапы сцены RenderCubeMap(camera); //Рендер текстуры водных отражений @@ -2204,7 +2204,7 @@ bool GraphManager::Render(float deltaTime, bool pause) _engine->GetContext().RestoreRenderState(graph::rsMultiSampleAntialias); //Глобальное фоновое освещение, если включены тени то для объектов он расчитывается через рендер теней в лихт мапе(чтобы скрывать артефакты в тенях) - _engine->GetContext().SetRenderState(graph::rsAmbient, _sceneAmbient); + _engine->GetContext().SetRenderState(graph::rsAmbient, Vec4ToColor(_sceneAmbient)); // unsigned i = 0; @@ -2219,10 +2219,10 @@ bool GraphManager::Render(float deltaTime, bool pause) { _engine->GetDriver().GetDevice()->SetRenderTarget(0, _msRT->GetSurface()); _engine->GetDriver().GetDevice()->SetDepthStencilSurface(_msDS->GetSurface()); - _engine->GetDriver().GetDevice()->Clear(0, NULL, D3DCLEAR_ZBUFFER | D3DCLEAR_TARGET, _fogColor, 1.0f, 0); + _engine->GetDriver().GetDevice()->Clear(0, NULL, D3DCLEAR_ZBUFFER | D3DCLEAR_TARGET, Vec4ToColor(_fogColor), 1.0f, 0); } else - _scRenderTex->BeginRT(*_engine, RtFlags(0, D3DCLEAR_ZBUFFER | D3DCLEAR_TARGET, _fogColor)); + _scRenderTex->BeginRT(*_engine, RtFlags(0, D3DCLEAR_ZBUFFER | D3DCLEAR_TARGET, Vec4ToColor(_fogColor))); _preNodeScene->Render(*_engine); @@ -2295,7 +2295,7 @@ bool GraphManager::Render(float deltaTime, bool pause) _sunShaft->Render(*_engine); } - _engine->BeginBackBufOut(0, 0); + _engine->BeginBackBufOut(0, NullVec4); _engine->GetContext().SetTexture(0, _scRenderTex->GetRT()->GetTex()); DrawScreenQuad(*_engine); diff --git a/src/Rock3dEngine/source/graph/ContextInfo.cpp b/src/Rock3dEngine/source/graph/ContextInfo.cpp index 1da8cbac..3de7694b 100644 --- a/src/Rock3dEngine/source/graph/ContextInfo.cpp +++ b/src/Rock3dEngine/source/graph/ContextInfo.cpp @@ -32,7 +32,7 @@ DWORD ContextInfo::defaultRenderStates[RENDER_STATE_END] = {D3DZB_TRUE, D3DFILL_ DWORD ContextInfo::defaultSamplerStates[SAMPLER_STATE_END] = {D3DTADDRESS_WRAP, D3DTADDRESS_WRAP, D3DTADDRESS_WRAP, 0, D3DTEXF_POINT, D3DTEXF_POINT, D3DTEXF_NONE, 0, 0, 1, 0, 0, 0}; -DWORD ContextInfo::defaultTextureStageStates[TEXTURE_STAGE_STATE_END] = {D3DTOP_MODULATE, D3DTA_TEXTURE, D3DTA_CURRENT, D3DTOP_SELECTARG1, D3DTA_TEXTURE, D3DTA_CURRENT, 0, 0, 0, 0, 0, 0, 0, D3DTTFF_DISABLE, D3DTA_CURRENT, D3DTA_CURRENT, D3DTA_CURRENT, clrWhite}; +DWORD ContextInfo::defaultTextureStageStates[TEXTURE_STAGE_STATE_END] = {D3DTOP_MODULATE, D3DTA_TEXTURE, D3DTA_CURRENT, D3DTOP_SELECTARG1, D3DTA_TEXTURE, D3DTA_CURRENT, 0, 0, 0, 0, 0, 0, 0, D3DTTFF_DISABLE, D3DTA_CURRENT, D3DTA_CURRENT, D3DTA_CURRENT, Vec4ToColor(clrWhite)}; DWORD ContextInfo::GetDefTextureStageState(int stage, TextureStageState state) { @@ -726,17 +726,17 @@ void ContextInfo::SetLight(LightCI* light, DWORD lightIndex) light->_camera.WorldMatChanged(_worldMat); D3DLIGHT9 d3dLight; - d3dLight.Ambient = light->_desc.ambient; + d3dLight.Ambient = *reinterpret_cast(&light->_desc.ambient); d3dLight.Attenuation0 = light->_desc.attenuation0; d3dLight.Attenuation1 = light->_desc.attenuation1; d3dLight.Attenuation2 = light->_desc.attenuation2; - d3dLight.Diffuse = light->_desc.diffuse; + d3dLight.Diffuse = *reinterpret_cast(&light->_desc.diffuse); d3dLight.Direction = Vec3GlmToDx(light->_desc.dir); d3dLight.Falloff = light->_desc.falloff; d3dLight.Phi = light->_desc.phi; d3dLight.Position = Vec3GlmToDx(light->_desc.pos); d3dLight.Range = light->_desc.range; - d3dLight.Specular = light->_desc.specular; + d3dLight.Specular = *reinterpret_cast(&light->_desc.specular); d3dLight.Theta = light->_desc.theta; d3dLight.Type = light->_desc.type; @@ -960,11 +960,11 @@ void ContextInfo::SetMaterial(const MaterialDesc& value) if (!_ignoreMaterial) { D3DMATERIAL9 mat; - mat.Ambient = _material.ambient * _color; - mat.Diffuse = _material.diffuse * _color; - mat.Emissive = _material.emissive * _color; + mat.Ambient = *reinterpret_cast(&(_material.ambient * _color)); + mat.Diffuse = *reinterpret_cast(&(_material.diffuse * _color)); + mat.Emissive = *reinterpret_cast(&(_material.emissive * _color)); mat.Power = _material.power; - mat.Specular = _material.specular; + mat.Specular = *reinterpret_cast(&_material.specular); _driver->SetMaterial(&mat); } } diff --git a/src/Rock3dEngine/source/graph/Engine.cpp b/src/Rock3dEngine/source/graph/Engine.cpp index 8ff45d30..b8e14820 100644 --- a/src/Rock3dEngine/source/graph/Engine.cpp +++ b/src/Rock3dEngine/source/graph/Engine.cpp @@ -115,7 +115,7 @@ void Engine::DrawFPS() ++nFrameCount; RECT destRect; SetRect(&destRect, 505, 5, 0, 0); - g_pd3dxFont->DrawText(0 , fpsString, -1, &destRect, DT_NOCLIP, glm::vec4(1.0f, 0.0f, 0.0f, 1.0f)); + g_pd3dxFont->DrawText(0, fpsString, -1, &destRect, DT_NOCLIP, D3DCOLOR_COLORVALUE(1.0f, 0.0f, 0.0f, 1.0f)); } #endif @@ -463,14 +463,14 @@ bool Engine::EndDraw(bool nextPass) return res; } -void Engine::BeginBackBufOut(DWORD clearFlags, D3DCOLOR color) +void Engine::BeginBackBufOut(DWORD clearFlags, glm::vec4 color) { _swapChain->GetBackBuffer(0, D3DBACKBUFFER_TYPE_MONO, &_backBuff); _driver->GetDevice()->SetRenderTarget(0, _backBuff); _driver->GetDevice()->SetDepthStencilSurface(_dsSurf); if (clearFlags > 0) - _driver->GetDevice()->Clear(0, 0, clearFlags, color, 1.0f, 0); + _driver->GetDevice()->Clear(0, 0, clearFlags, Vec4ToColor(color), 1.0f, 0); } void Engine::EndBackBufOut() diff --git a/src/Rock3dEngine/source/graph/MappingShaders.cpp b/src/Rock3dEngine/source/graph/MappingShaders.cpp index 1f6879be..e2c5a59e 100644 --- a/src/Rock3dEngine/source/graph/MappingShaders.cpp +++ b/src/Rock3dEngine/source/graph/MappingShaders.cpp @@ -89,7 +89,7 @@ void LightShader::DoBeginDraw(Engine& engine) bool lastPass = _curLight >= lightCnt - 1; // _fogColor = glm::vec4(engine.GetContext().GetRenderState(rsFogColor)); - engine.GetContext().SetRenderState(rsFogColor, _fogColor / static_cast(lightCnt)); + engine.GetContext().SetRenderState(rsFogColor, Vec4ToColor(_fogColor / static_cast(lightCnt))); const LightCI& light = engine.GetContext().GetLight(_curLight); bool shadow = engine.GetContext().GetLightShadow() && light.GetDesc().shadowMap; @@ -133,8 +133,8 @@ void LightShader::DoBeginDraw(Engine& engine) D3DMATERIAL9 d3dMat; engine.GetDriver().GetDevice()->GetMaterial(&d3dMat); - SetParam(_params[colorMat], glm::vec4(d3dMat.Diffuse)); - SetParam(_params[specMat], glm::vec4(d3dMat.Specular)); + SetParam(_params[colorMat], ColorVToVec4(d3dMat.Diffuse)); + SetParam(_params[specMat], ColorVToVec4(d3dMat.Specular)); SetParam(_params[specPower], d3dMat.Power); SetParam(_params[texDiffK], _texDiffK * engine.GetContext().GetTexDiffK()); @@ -181,7 +181,7 @@ bool LightShader::DoEndDraw(Engine& engine, bool nextPass) //Нужен ли следующих проход bool needNextPass = nextPass && lightCnt > _curLight; - engine.GetContext().SetRenderState(rsFogColor, _fogColor); + engine.GetContext().SetRenderState(rsFogColor, Vec4ToColor(_fogColor)); if (!needNextPass) { diff --git a/src/Rock3dEngine/source/graph/MaterialLibrary.cpp b/src/Rock3dEngine/source/graph/MaterialLibrary.cpp index eb7b7567..af6fc756 100644 --- a/src/Rock3dEngine/source/graph/MaterialLibrary.cpp +++ b/src/Rock3dEngine/source/graph/MaterialLibrary.cpp @@ -228,12 +228,12 @@ void BaseSampler::SetAlphaMode(Mode value) glm::vec4 BaseSampler::GetColor() const { - return stageStates.Get(tssConstant); + return ColorToVec4(stageStates.Get(tssConstant)); } void BaseSampler::SetColor(const glm::vec4& value) { - stageStates.Set(tssConstant, value); + stageStates.Set(tssConstant, Vec4ToColor(value)); } const Vec3Range& BaseSampler::GetOffset() const diff --git a/src/Rock3dEngine/source/graph/SceneManager.cpp b/src/Rock3dEngine/source/graph/SceneManager.cpp index a32334b5..bb214cd3 100644 --- a/src/Rock3dEngine/source/graph/SceneManager.cpp +++ b/src/Rock3dEngine/source/graph/SceneManager.cpp @@ -58,7 +58,7 @@ void BaseSceneNode::RenderBB(graph::Engine& engine, const AABB& aabb, const glm: { using res::VertexPD; - D3DCOLOR linesColor = colorBB; + glm::vec4 linesColor = colorBB; engine.GetContext().SetRenderState(graph::rsLighting, false); @@ -1326,7 +1326,7 @@ void Camera::RenderFrustum(graph::Engine& engine, const D3DXMATRIX& invViewProj, Frustum::Corners frustumV; Frustum::CalculateCorners(frustumV, invViewProj); - D3DCOLOR linesColor = colorBB; + glm::vec4 linesColor = colorBB; VertexPD lines[24]; lines[0] = VertexPD(frustumV[0], linesColor); diff --git a/src/Rock3dEngine/source/graph/StdNode.cpp b/src/Rock3dEngine/source/graph/StdNode.cpp index f353993c..88b40645 100644 --- a/src/Rock3dEngine/source/graph/StdNode.cpp +++ b/src/Rock3dEngine/source/graph/StdNode.cpp @@ -368,10 +368,10 @@ void IVBMeshNode::DoRender(Engine& engine) else { D3DMATERIAL9 mat; - mat.Ambient = clrWhite; - mat.Diffuse = clrWhite; - mat.Specular = clrWhite; - mat.Emissive = clrBlack; + mat.Ambient = *reinterpret_cast(&clrWhite); + mat.Diffuse = *reinterpret_cast(&clrWhite); + mat.Specular = *reinterpret_cast(&clrWhite); + mat.Emissive = *reinterpret_cast(&clrBlack); mat.Power = 32.0f; engine.GetDriver().GetDevice()->SetMaterial(&mat); } @@ -578,10 +578,10 @@ void MeshXNode::DoRender(Engine& engine) else { D3DMATERIAL9 mat; - mat.Ambient = clrWhite; - mat.Diffuse = clrWhite; - mat.Specular = clrWhite; - mat.Emissive = clrBlack; + mat.Ambient = *reinterpret_cast(&clrWhite); + mat.Diffuse = *reinterpret_cast(&clrWhite); + mat.Specular = *reinterpret_cast(&clrWhite); + mat.Emissive = *reinterpret_cast(&clrBlack); mat.Power = 32.0f; engine.GetDriver().GetDevice()->SetMaterial(&mat); } diff --git a/src/Rock3dEngine/source/gui/GUI.cpp b/src/Rock3dEngine/source/gui/GUI.cpp index 43fc46d8..f6cdd0bb 100644 --- a/src/Rock3dEngine/source/gui/GUI.cpp +++ b/src/Rock3dEngine/source/gui/GUI.cpp @@ -875,7 +875,7 @@ template void Context::DrawBaseText(_Text& text, AABB2* aabb) else { BeginDrawGraphic(text); - text.GetFont()->DrawText(text.GetText(), rect, format, text.GetMaterial() ? text.GetMaterial()->GetColor() : clrWhite); + text.GetFont()->DrawText(text.GetText(), rect, format, Vec4ToColor(text.GetMaterial() ? text.GetMaterial()->GetColor() : clrWhite)); EndDrawGraphic(text); } } diff --git a/src/Rock3dEngine/source/res/GraphResource.cpp b/src/Rock3dEngine/source/res/GraphResource.cpp index 93f2a342..9df55b7d 100644 --- a/src/Rock3dEngine/source/res/GraphResource.cpp +++ b/src/Rock3dEngine/source/res/GraphResource.cpp @@ -13,7 +13,7 @@ const int VertexData::cElementSize[cElementEnd] = sizeof(glm::vec3), sizeof(glm::vec4), sizeof(glm::vec3), - sizeof(D3DCOLOR), + sizeof(glm::vec4), sizeof(glm::vec2), sizeof(glm::vec2), sizeof(glm::vec3), @@ -36,7 +36,7 @@ VertexPD::VertexPD() { } -VertexPD::VertexPD(glm::vec3 position, D3DCOLOR diffuseColor): pos(position), diffuse(diffuseColor) +VertexPD::VertexPD(glm::vec3 position, glm::vec4 diffuseColor) : pos(position), diffuse(diffuseColor) { } @@ -333,9 +333,9 @@ glm::vec4* VertexIter::Pos4() return reinterpret_cast(_owner->GetVertex(_index, VertexData::vtPos4)); } -D3DCOLOR* VertexIter::Color() +glm::vec4* VertexIter::Color() { - return reinterpret_cast(_owner->GetVertex(_index, VertexData::vtColor)); + return reinterpret_cast(_owner->GetVertex(_index, VertexData::vtColor)); } glm::vec2* VertexIter::Tex0() diff --git a/src/Rock3dGame/source/game/AIPlayer.cpp b/src/Rock3dGame/source/game/AIPlayer.cpp index 83e97b71..2318edd6 100644 --- a/src/Rock3dGame/source/game/AIPlayer.cpp +++ b/src/Rock3dGame/source/game/AIPlayer.cpp @@ -680,8 +680,8 @@ void AIDebug::GrActor::DoRender(graph::Engine& engine) SetRect(&destRect, 5, 200, 0, 0); SetRect(&destRect2, 150, 160, 0, 0); _font->OnResetDevice(); - _font->DrawText(0 , sstream.str().c_str(), -1, &destRect, DT_NOCLIP, glm::vec4(1.0f, 0.0f, 0.0f, 1.0f)); - _font->DrawText(0 , sstream2.str().c_str(), -1, &destRect2, DT_NOCLIP, glm::vec4(1.0f, 0.0f, 0.0f, 1.0f)); + _font->DrawText(0, sstream.str().c_str(), -1, &destRect, DT_NOCLIP, D3DCOLOR_COLORVALUE(1.0f, 0.0f, 0.0f, 1.0f)); + _font->DrawText(0, sstream2.str().c_str(), -1, &destRect2, DT_NOCLIP, D3DCOLOR_COLORVALUE(1.0f, 0.0f, 0.0f, 1.0f)); _font->OnLostDevice(); const int cParamKeysEnd = 10; diff --git a/src/Rock3dGame/source/game/DialogMenu2.cpp b/src/Rock3dGame/source/game/DialogMenu2.cpp index 123d8231..6e85818e 100644 --- a/src/Rock3dGame/source/game/DialogMenu2.cpp +++ b/src/Rock3dGame/source/game/DialogMenu2.cpp @@ -16,7 +16,7 @@ const int UserChat::cMaxLines = 50; AcceptDialog::AcceptDialog(Menu* menu, gui::Widget* parent): MenuFrame(menu, parent), _resultYes(false), _data(NULL), _guiEvent(NULL) { - glm::vec4 color1(0xffafafaf); + glm::vec4 color1 = clrGrayAF; StringValue strMenuItems[cMenuItemEnd] = {svNo, svYes}; @@ -200,8 +200,8 @@ Object* AcceptDialog::data() const WeaponDialog::WeaponDialog(Menu* menu, gui::Widget* parent): MenuFrame(menu, parent) { - glm::vec4 color1(0xffafafaf); - glm::vec4 color2(0xFFFFFFFF); + glm::vec4 color1 = clrGrayAF; + glm::vec4 color2 = clrWhite; StringValue strLabels[cLabelEnd] = {svNull, svNull, svNull, svNull}; std::string fontLabels[cLabelEnd] = {"VerySmall", "Small", "Small", "Small"}; @@ -269,8 +269,8 @@ void WeaponDialog::Hide() InfoDialog::InfoDialog(Menu* menu, gui::Widget* parent): MenuFrame(menu, parent), _data(NULL), _guiEvent(NULL) { - glm::vec4 color1(0xffafafaf); - glm::vec4 color2(0xffffffff); + glm::vec4 color1 = clrGrayAF; + glm::vec4 color2 = clrWhite; StringValue strMenuItems[cMenuItemEnd] = {svOk}; @@ -382,8 +382,8 @@ Object* InfoDialog::data() const MusicDialog::MusicDialog(Menu* menu, gui::Widget* parent): MenuFrame(menu, parent) { - glm::vec4 color1(0xffafafaf); - glm::vec4 color2(0xFFFFFFFF); + glm::vec4 color1 = clrGrayAF; + glm::vec4 color2 = clrWhite; StringValue strLabels[cLabelEnd] = {svNull, svNull}; std::string fontLabels[cLabelEnd] = {"Small", "Item"}; diff --git a/src/Rock3dGame/source/game/Environment.cpp b/src/Rock3dGame/source/game/Environment.cpp index 5ede3037..e1c693fd 100644 --- a/src/Rock3dGame/source/game/Environment.cpp +++ b/src/Rock3dGame/source/game/Environment.cpp @@ -315,9 +315,9 @@ void Environment::ApplyWheater() case ewNight: { - glm::vec4 fogColor = glm::vec4(15.0f, 25.0f, 31.0f, 255.0f)/255.0f; + glm::vec4 fogColor = glm::vec4(15.0f/255.0f, 25.0f/255.0f, 31.0f/255.0f, 1.0f); - GetGraph()->SetSceneAmbient(glm::vec4(0xFF8A90AE)); + GetGraph()->SetSceneAmbient(glm::vec4(138.0f/255.0f, 144.0f/255.0f, 174.0f/255.0f, 1.0f)); // 0xFF8A90AE GetGraph()->SetFogColor(fogColor); GetGraph()->SetFogIntensivity(1.0f); GetGraph()->SetSkyTex("Data\\Misc\\nightSky.dds"); @@ -336,7 +336,7 @@ void Environment::ApplyWheater() case ewClody: { - glm::vec4 fogColor = 0x00C0BDB8; + glm::vec4 fogColor = glm::vec4(192.0f/255.0f, 189.0f/255.0f, 184.0f/255.0f, 0.0f); // 0x00C0BDB8; GetGraph()->SetSkyTex("Data\\World2\\Texture\\skyTex1.dds"); GetGraph()->SetSceneAmbient(clrBlack); @@ -357,7 +357,7 @@ void Environment::ApplyWheater() case ewRainy: { - glm::vec4 fogColor = 0x00C0BDB8; + glm::vec4 fogColor = glm::vec4(192.0f/255.0f, 189.0f/255.0f, 184.0f/255.0f, 0.0f); // 0x00C0BDB8; GetGraph()->SetSceneAmbient(clrBlack); GetGraph()->SetFogColor(fogColor); @@ -420,7 +420,7 @@ void Environment::ApplyWheater() case ewSnow: { - glm::vec4 fogColor = glm::vec4(0xFF9CA6B5); + glm::vec4 fogColor = glm::vec4(156.0f/255.0f, 166.0f/255.0f, 181.0f/255.0f, 1.0f); // 0xFF9CA6B5 GetGraph()->SetSceneAmbient(clrBlack); GetGraph()->SetFogColor(fogColor); diff --git a/src/Rock3dGame/source/game/FinalMenu.cpp b/src/Rock3dGame/source/game/FinalMenu.cpp index dc74c55f..45af1b54 100644 --- a/src/Rock3dGame/source/game/FinalMenu.cpp +++ b/src/Rock3dGame/source/game/FinalMenu.cpp @@ -38,11 +38,13 @@ void FinalMenu::AddLineBox(const lsl::string& caption, const lsl::string& text) { LineBox line; - line.caption = menu()->CreateLabel(caption, _linesRoot, "Small", NullVec2, gui::Text::haCenter, gui::Text::vaTop, 0xFFDC0000); + line.caption = menu()->CreateLabel(caption, _linesRoot, "Small", NullVec2, gui::Text::haCenter, gui::Text::vaTop, + glm::vec4(220.0f/255.0f, 0.0f, 0.0f, 1.0f)); // 0xFFDC0000 line.caption->SetAlign(gui::Widget::waTop); line.caption->SetWordWrap(true); - line.text = menu()->CreateLabel(text, line.caption, "Small", NullVec2, gui::Text::haCenter, gui::Text::vaTop, 0xFFFFD6CD); + line.text = menu()->CreateLabel(text, line.caption, "Small", NullVec2, gui::Text::haCenter, gui::Text::vaTop, + glm::vec4(1.0f, 214.0f/255.0f, 205.0f/255.0f, 1.0f)); // 0xFFFFD6CD line.text->SetAlign(gui::Widget::waTop); line.text->SetWordWrap(true); @@ -187,7 +189,7 @@ void FinalMenu::OnProgress(float deltaTime) /*FinalMenu::FinalMenu(Menu* menu, gui::Widget* parent): MenuFrame(menu, parent), _scrollTime(0) { - glm::vec4 color1(0xffafafaf); + glm::vec4 color1 = clrGrayAF; StringValue strMenuItems[cMenuItemEnd] = {svOk}; diff --git a/src/Rock3dGame/source/game/FinishMenu.cpp b/src/Rock3dGame/source/game/FinishMenu.cpp index f84d5b55..64aa818a 100644 --- a/src/Rock3dGame/source/game/FinishMenu.cpp +++ b/src/Rock3dGame/source/game/FinishMenu.cpp @@ -14,9 +14,9 @@ namespace n FinishMenu::FinishMenu(Menu* menu, gui::Widget* parent): MenuFrame(menu, parent), _time(-1.0f), _playerCount(0) { - glm::vec4 color1(0xffe9a73f); - glm::vec4 color2(0xffe1e1e1); - glm::vec4 color3(0xff84bc43); + glm::vec4 color1 = glm::vec4(233.0f/255.0f, 167.0f/255.0f, 63.0f/255.0f, 1.0f); // 0xffe9a73f + glm::vec4 color2 = glm::vec4(225.0f/255.0f, 225.0f/255.0f, 225.0f/255.0f, 1.0f); // 0xffe1e1e1 + glm::vec4 color3 = glm::vec4(132.0f/255.0f, 188.0f/255.0f, 67.0f/255.0f, 1.0f); // 0xff84bc43 StringValue strLabels[cLabelEnd] = {svNull, svPrice, svNull, svNull}; std::string fontLabels[cLabelEnd] = {"Header", "Header", "Header", "Header"}; diff --git a/src/Rock3dGame/source/game/MainMenu2.cpp b/src/Rock3dGame/source/game/MainMenu2.cpp index d453e95e..c0f6b551 100644 --- a/src/Rock3dGame/source/game/MainMenu2.cpp +++ b/src/Rock3dGame/source/game/MainMenu2.cpp @@ -388,7 +388,6 @@ void NetBrowserFrame::OnPingComplete() NetIPAddressFrame::NetIPAddressFrame(Menu* menu, MainMenu* mainMenu, gui::Widget* parent): MenuFrame(menu, parent), _mainMenu(mainMenu) { - //glm::vec4 color1(0xffafafaf); glm::vec4 color1 = Menu::cTextColor; StringValue strLabels[cLabelEnd] = {svNull, svEnterIP}; @@ -1617,7 +1616,8 @@ bool TournamentFrame::OnClick(gui::Widget* sender, const gui::MouseClick& mClick CreditsFrame::CreditsFrame(Menu* menu, MainMenu* mainMenu, gui::Widget* parent): MenuFrame(menu, parent), _mainMenu(mainMenu), _scrollTime(0) { - _label = menu->CreateLabel(svCredits, root(), "Small", NullVec2, gui::Text::haCenter, gui::Text::vaTop, glm::vec4(0xffff8a70)); + _label = menu->CreateLabel(svCredits, root(), "Small", NullVec2, gui::Text::haCenter, gui::Text::vaTop, + glm::vec4(1.0f, 138.0f/255.0f, 112.0f/255.0f, 1.0f)); // 0xffff8a70 _label->SetAlign(gui::Widget::waTop); _label->SetFlag(gui::Widget::wfClientClip, true); _label->SetSize(350.0f, 265.0f); @@ -2437,7 +2437,7 @@ Race::Profile* MainMenu::steamHostProfile() const gui::Button* MainMenu::CreateMenuButton(const lsl::string& name, gui::Widget* parent, gui::Widget::Event* guiEvent) { - const glm::vec4 color1 = glm::vec4(0xffff8a70); + const glm::vec4 color1(1.0f, 138.0f/255.0f, 112.0f/255.0f, 1.0f); // 0xffff8a70 gui::Button* button = _menu->CreateMenuButton(name, "Header", "", "GUI\\mainItemSel5.png", parent, guiEvent, IdentityVec2, gui::Button::bsSimple, color1, Menu::ssButton1); button->SetSize(button->GetSelSize()); diff --git a/src/Rock3dGame/source/game/Menu.cpp b/src/Rock3dGame/source/game/Menu.cpp index 1af79ab6..0daa17dd 100644 --- a/src/Rock3dGame/source/game/Menu.cpp +++ b/src/Rock3dGame/source/game/Menu.cpp @@ -351,10 +351,7 @@ glm::quat Menu::GetIsoRot() glm::quat rotY = glm::angleAxis(0.0f, YVector); glm::quat rotX = glm::angleAxis(-D3DX_PI / 3.0f, XVector); - //return rotZ * rotY * rotX; return rotX * rotY * rotZ; - //return rotX * (rotY * rotZ); - //return (rotY * rotZ) * rotX; } void Menu::SetScreenFon(bool init) @@ -1691,8 +1688,8 @@ gui::Button* Menu::CreateMenuButton(StringValue name, gui::Widget* parent, gui:: gui::Button* Menu::CreateMenuButton2(StringValue name, gui::Widget* parent, gui::Widget::Event* guiEvent) { - gui::Button* button = CreateMenuButton(name, "Item", "GUI\\buttonBg5.png", "", parent, guiEvent, IdentityVec2, gui::Button::bsSelAnim, glm::vec4(0xffafafaf), Menu::ssButton1); - button->GetOrCreateTextSelMaterial()->SetColor(glm::vec4(0xffeb733e)); + gui::Button* button = CreateMenuButton(name, "Item", "GUI\\buttonBg5.png", "", parent, guiEvent, IdentityVec2, gui::Button::bsSelAnim, clrGrayAF, Menu::ssButton1); + button->GetOrCreateTextSelMaterial()->SetColor(glm::vec4(235.0f/255.0f, 115.0f/255.0f, 62.0f/255.0f, 1.0f)); // 0xffeb733e return button; } @@ -1935,7 +1932,7 @@ gui::StepperBox* Menu::CreateStepper(const StringList& items, gui::Widget* paren stepper->GetOrCreateArrowSel()->SetBlending(gui::Material::bmTransparency); stepper->SetFont(GetFont("Small")); - stepper->GetOrCreateText()->SetColor(glm::vec4(0xffafafaf)); + stepper->GetOrCreateText()->SetColor(clrGrayAF); stepper->SetSize(240.0f, 45.0f); diff --git a/src/Rock3dGame/source/game/OptionsMenu.cpp b/src/Rock3dGame/source/game/OptionsMenu.cpp index dce353fe..0f24dac4 100644 --- a/src/Rock3dGame/source/game/OptionsMenu.cpp +++ b/src/Rock3dGame/source/game/OptionsMenu.cpp @@ -15,7 +15,7 @@ namespace n GameFrame::GameFrame(Menu* menu, OptionsMenu* optionsMenu, gui::Widget* parent): MenuFrame(menu, parent), _optionsMenu(optionsMenu), _gridScroll(0) { - glm::vec4 color1(0xffafafaf); + glm::vec4 color1 = clrGrayAF; StringList diffStr; for (int i = 0; i < cDifficultyEnd; ++i) @@ -357,7 +357,7 @@ MediaFrame::MediaFrame(Menu* menu, OptionsMenu* optionsMenu, gui::Widget* parent StringList itemsStepper[cStepperEnd] = {resolutionStr, fltLevel, msFltLevel, shadowLevel, envLevel, lightLevel, postEffLevel, onOffLevel}; - glm::vec4 color1(0xffafafaf); + glm::vec4 color1 = clrGrayAF; lsl::string strLabels[cLabelEnd] = {_SC(svResolution), _SC(svFiltering), _SC(svMultisampling), _SC(svShadow), _SC(svEnv), _SC(svLight), _SC(svPostProcess), "svWindowMode"}; std::string fontLabels[cLabelEnd] = {"Small", "Small", "Small", "Small", "Small", "Small", "Small", "Small"}; @@ -493,7 +493,7 @@ void MediaFrame::CancelChanges() NetworkTab::NetworkTab(Menu* menu, OptionsMenu* optionsMenu, gui::Widget* parent): MenuFrame(menu, parent), _optionsMenu(optionsMenu) { - glm::vec4 color1(0xffafafaf); + glm::vec4 color1 = clrGrayAF; StringList languageStr; for (Languages::const_iterator iter = menu->GetGame()->GetLanguages().begin(); iter != menu->GetGame()->GetLanguages().end(); ++iter) @@ -664,7 +664,7 @@ void NetworkTab::CancelChanges() ControlsFrame::ControlsFrame(Menu* menu, OptionsMenu* optionsMenu, gui::Widget* parent): MenuFrame(menu, parent), _optionsMenu(optionsMenu), _gridScroll(0) { - glm::vec4 color1(0xffafafaf); + glm::vec4 color1 = clrGrayAF; _grid = menu->CreateGrid(root(), NULL, gui::Grid::gsVertical); _grid->SetAlign(gui::Widget::waLeftTop); @@ -769,7 +769,7 @@ void ControlsFrame::LoadCfg() { InputBox newItem; newItem.sprite = menu()->CreatePlane(_grid, NULL, "GUI\\labelBg2.png", true, IdentityVec2, gui::Material::bmTransparency); - newItem.label = menu()->CreateLabel("", newItem.sprite, "Small", NullVec2, gui::Text::haLeft, gui::Text::vaCenter, 0xffafafaf); + newItem.label = menu()->CreateLabel("", newItem.sprite, "Small", NullVec2, gui::Text::haLeft, gui::Text::vaCenter, clrGrayAF); for (int j = 0; j < cControllerTypeEnd; ++j) { @@ -925,7 +925,7 @@ void ControlsFrame::CancelChanges() OptionsMenu::OptionsMenu(Menu* menu, gui::Widget* parent): _menu(menu), _state(msGame) { - glm::vec4 color1(0xffafafaf); + glm::vec4 color1 = clrGrayAF; StringValue strMenuItems[cMenuItemEnd] = {svBack, svApply}; StringValue strStateItems[cStateEnd] = {svGame, svGraphic, svNetwork, svControls}; @@ -989,9 +989,9 @@ void OptionsMenu::SetSelection(State state, bool instant) gui::Label* label = static_cast(_stateItems[i]->GetChildren().front()); if (selected) - label->GetMaterial().SetColor(0xffeb733e); + label->GetMaterial().SetColor(glm::vec4(235.0f/255.0f, 115.0f/255.0f, 62.0f/255.0f, 1.0f)); // 0xffeb733e else - label->GetMaterial().SetColor(0xffafafaf); + label->GetMaterial().SetColor(clrGrayAF); } } @@ -1096,7 +1096,7 @@ bool OptionsMenu::OnMouseEnter(gui::Widget* sender, const gui::MouseMove& mMove) button->Select(true, false); gui::Label* label = static_cast(button->GetChildren().front()); - label->GetMaterial().SetColor(0xffafafaf); + label->GetMaterial().SetColor(clrGrayAF); } return false; @@ -1114,7 +1114,7 @@ void OptionsMenu::OnMouseLeave(gui::Widget* sender, bool wasReset) button->Select(_state == i, false); gui::Label* label = static_cast(button->GetChildren().front()); - label->GetMaterial().SetColor(_state == i ? 0xffeb733e : 0xffafafaf); + label->GetMaterial().SetColor(_state == i ? glm::vec4(235.0f/255.0f, 115.0f/255.0f, 62.0f/255.0f, 1.0f) : clrGrayAF); // 0xffeb733e : clrGrayAF return; } } @@ -1278,7 +1278,7 @@ gui::Button* OptionsMenu::CreateMenuButton2(StringValue name, gui::Widget* paren gui::Button* button = _menu->CreateMenuButton(svNull, "", "GUI\\buttonBg4.png", "GUI\\buttonBgSel4.png", parent, guiEvent, IdentityVec2, gui::Button::bsSelAnim, clrWhite, Menu::ssButton1); button->SetAlign(gui::Widget::waLeft); - gui::Label* label = _menu->CreateLabel(name, button, "Header", NullVec2, gui::Text::haLeft, gui::Text::vaCenter, 0xffafafaf); + gui::Label* label = _menu->CreateLabel(name, button, "Header", NullVec2, gui::Text::haLeft, gui::Text::vaCenter, clrGrayAF); label->SetAlign(gui::Widget::waLeft); label->SetPos(button->GetSize().x + 10.0f, 0.0f); label->AdjustSizeByText(); @@ -1380,7 +1380,7 @@ void OptionsMenu::SetState(State value) StartOptionsMenu::StartOptionsMenu(Menu* menu, gui::Widget* parent): MenuFrame(menu, parent), _lastCameraIndex(-1) { - glm::vec4 color1(0xffafafaf); + glm::vec4 color1 = clrGrayAF; StringValue strMenuItems[cMenuItemEnd] = {svApply}; const StringValue cPrefCameraStr[GameMode::cPrefCameraEnd] = {svCameraSecView, svCameraOrtho}; diff --git a/src/Rock3dGame/source/game/Player.cpp b/src/Rock3dGame/source/game/Player.cpp index 59c7bbe5..7b92c011 100644 --- a/src/Rock3dGame/source/game/Player.cpp +++ b/src/Rock3dGame/source/game/Player.cpp @@ -20,9 +20,17 @@ const float Player::cHumanArmorK[cDifficultyEnd] = {2.0f, 1.75f, 1.5f}; const std::string Player::cSlotTypeStr[cSlotTypeEnd] = {"stWheel", "stTruba", "stArmor", "stMotor", "stHyper", "stMine", "stWeapon1", "stWeapon2", "stWeapon3", "stWeapon4"}; -const glm::vec4 Player::cLeftColors[Player::cColorsCount] = {clrWhite, clrBlue, clrRed, clrGreen, clrYellow, glm::vec4(0xffff9000), clrGray20}; - -const glm::vec4 Player::cRightColors[Player::cColorsCount] = {glm::vec4(0xff06affa), glm::vec4(0xffb70bae), glm::vec4(0xffb1c903), glm::vec4(0xffa93900), glm::vec4(0xff30373d), glm::vec4(0xff009f15), glm::vec4(0xff70769c)}; +const glm::vec4 Player::cLeftColors[Player::cColorsCount] = {clrWhite, clrBlue, clrRed, clrGreen, clrYellow, glm::vec4(1.0f, 144.0f/255.0f, 0.0f, 1.0f), clrGray20}; // 0xffff9000 + +const glm::vec4 Player::cRightColors[Player::cColorsCount] = { + glm::vec4( 6.0f/255.0f, 175.0f/255.0f, 250.0f/255.0f, 1.0f), // 0xff06affa + glm::vec4(183.0f/255.0f, 11.0f/255.0f, 174.0f/255.0f, 1.0f), // 0xffb70bae + glm::vec4(177.0f/255.0f, 201.0f/255.0f, 3.0f/255.0f, 1.0f), // 0xffb1c903 + glm::vec4(169.0f/255.0f, 57.0f/255.0f, 0.0f/255.0f, 1.0f), // 0xffa93900 + glm::vec4( 48.0f/255.0f, 55.0f/255.0f, 61.0f/255.0f, 1.0f), // 0xff30373d + glm::vec4( 0.0f/255.0f, 159.0f/255.0f, 21.0f/255.0f, 1.0f), // 0xff009f15 + glm::vec4(112.0f/255.0f, 118.0f/255.0f, 156.0f/255.0f, 1.0f) // 0xff70769c +}; Slot::ClassList Slot::classList; diff --git a/src/Rock3dGame/source/game/Race.cpp b/src/Rock3dGame/source/game/Race.cpp index 5519ccc2..f65de37c 100644 --- a/src/Rock3dGame/source/game/Race.cpp +++ b/src/Rock3dGame/source/game/Race.cpp @@ -6981,7 +6981,16 @@ void Race::OnLateProgress(float deltaTime, bool pxStep) Player* Race::AddPlayer(int plrId) { - const glm::vec4 color[cMaxPlayers] = {glm::vec4(0xFF5B29A5), glm::vec4(0xFF9E9E9E), glm::vec4(0xFFFF80C0), glm::vec4(0xFF83F7CC), glm::vec4(0xFF83E500), glm::vec4(0xFFD8E585), glm::vec4(0xFF6100B9), glm::vec4(0xFF006CA4)}; + const glm::vec4 color[cMaxPlayers] = { + glm::vec4( 91.0f/255.0f, 41.0f/255.0f, 165.0f/255.0f, 1.0f), // 0xFF5B29A5 + glm::vec4(158.0f/255.0f, 158.0f/255.0f, 158.0f/255.0f, 1.0f), // 0xFF9E9E9E + glm::vec4( 1.0f, 128.0f/255.0f, 192.0f/255.0f, 1.0f), // 0xFFFF80C0 + glm::vec4(131.0f/255.0f, 247.0f/255.0f, 204.0f/255.0f, 1.0f), // 0xFF83F7CC + glm::vec4(131.0f/255.0f, 229.0f/255.0f, 0.0f, 1.0f), // 0xFF83E500 + glm::vec4(216.0f/255.0f, 229.0f/255.0f, 133.0f/255.0f, 1.0f), // 0xFFD8E585 + glm::vec4( 97.0f/255.0f, 0.0f, 185.0f/255.0f, 1.0f), // 0xFF6100B9 + glm::vec4( 0.0f, 108.0f/255.0f, 164.0f/255.0f, 1.0f) // 0xFF006CA4 + }; Player* player = new Player(this); player->AddRef(); diff --git a/src/Rock3dGame/source/game/RaceMenu2.cpp b/src/Rock3dGame/source/game/RaceMenu2.cpp index d13a2a09..f08c210b 100644 --- a/src/Rock3dGame/source/game/RaceMenu2.cpp +++ b/src/Rock3dGame/source/game/RaceMenu2.cpp @@ -368,7 +368,7 @@ void SpaceshipFrame::OnShow(bool value) menu()->GetEnv()->SetLampPos(glm::vec3(52.307316f, 24.327570f, 32.772705f), 2); menu()->GetEnv()->SetLampRot(glm::quat(0.61423278f, 0.21948183f, 0.18329506f, -0.73549527f), 2); - menu()->GetEnv()->SetLampColor(glm::vec4(0xff88fefe), 2); + menu()->GetEnv()->SetLampColor(glm::vec4(136.0f/255.0f, 254.0f/255.0f, 254.0f/255.0f, 1.0f), 2); // 0xff88fefe menu()->GetEnv()->SwitchOnLamp(2, true); CameraManager* camera = menu()->GetRace()->GetWorld()->GetCamera(); @@ -2323,8 +2323,8 @@ void GamersFrame::OnProcessNetEvent(unsigned id, NetEventData* data) AngarFrame::AngarFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent): MenuFrame(menu, parent), _raceMenu(raceMenu), _planetIndex(-1), _planetPrevIndex(-1), _doorTime(-1.0f) { - const glm::vec4 color = glm::vec4(0xff76cef2); - const glm::vec4 color2 = glm::vec4(214.0f, 214.0f, 214.0f, 255.0f)/255.0f; + const glm::vec4 color = glm::vec4(118.0f/255.0f, 206.0f/255.0f, 242.0f/255.0f, 1.0f); // 0xff76cef2 + const glm::vec4 color2 = glm::vec4(214.0f/255.0f, 214.0f/255.0f, 214.0f/255.0f, 1.0f); const StringValue menuItemsStr[cMenuItemEnd] = {svBack}; StringValue strLabels[cLabelEnd] = {svNull, svNull, svNull}; @@ -2806,7 +2806,7 @@ void AngarFrame::OnProgress(float deltaTime) AchievmentFrame::AchievmentFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent): MenuFrame(menu, parent), _raceMenu(raceMenu) { - const glm::vec4 color = glm::vec4(0xFFFA5800); + const glm::vec4 color = glm::vec4(250.0f/255.0f, 88.0f/255.0f, 0.0f, 1.0f); // 0xFFFA5800 const glm::vec4 color2 = clrWhite; const StringValue menuItemsStr[cMenuItemEnd] = {svBack}; @@ -2867,7 +2867,8 @@ const AchievmentFrame::AchievmentBox* AchievmentFrame::AddAchievment(unsigned in newBox.image = menu()->CreatePlane(_panel, this, "", false, IdentityVec2, gui::Material::bmTransparency); newBox.image->GetMaterial().GetSampler().SetFiltering(graph::Sampler2d::sfLinear); - newBox.price = menu()->CreateLabel(svNull, newBox.image, "Item", NullVec2, gui::Text::haCenter, gui::Text::vaCenter, glm::vec4(0xFFC3C2C0)); + newBox.price = menu()->CreateLabel(svNull, newBox.image, "Item", NullVec2, gui::Text::haCenter, gui::Text::vaCenter, + glm::vec4(195.0f/255.0f, 194.0f/255.0f, 192.0f/255.0f, 1.0f)); // 0xFFC3C2C0 newBox.button = menu()->CreateMenuButton(svNull, "", "", "", newBox.image, this, IdentityVec2, gui::Button::bsSelAnim); _achievments.push_back(newBox); diff --git a/src/Rock3dGame/source/game/ResourceManager.cpp b/src/Rock3dGame/source/game/ResourceManager.cpp index 164c5a50..c39d2dd3 100644 --- a/src/Rock3dGame/source/game/ResourceManager.cpp +++ b/src/Rock3dGame/source/game/ResourceManager.cpp @@ -1476,7 +1476,8 @@ void ResourceManager::LoadEffects() LoadImage2dLibMat("Effect\\protonRay", "Effect\\protonRay.dds", true, graph::Material::bmAdditive, FloatRange(1.0f, 0.0f)); LoadImage2dLibMat("Effect\\protonRing", "Effect\\protonRing.dds", true, graph::Material::bmAdditive, FloatRange(1.0f, 0.0f)); LoadImage2dLibMat("Effect\\phaseRing", "Effect\\phaseRing.dds", true, graph::Material::bmAdditive); - LoadImage2dLibMat("Effect\\thunder1", "Effect\\thunder1.dds", true, graph::Material::bmAdditive, FloatRange(1.0f, 0.0f), ColorRange(glm::vec4(0xFFEC008C), glm::vec4(0xFF0000FF))); + LoadImage2dLibMat("Effect\\thunder1", "Effect\\thunder1.dds", true, graph::Material::bmAdditive, FloatRange(1.0f, 0.0f), + ColorRange(glm::vec4(236.0f/255.0f, 0.0f, 140.0f/255.0f, 1.0f), clrBlue)); // 0xFFEC008C LoadImage2dLibMat("Effect\\flareLaser1", "Effect\\flare2b.dds", true, graph::Material::bmAdditive, FloatRange(0.7f, 0.0f)); LoadImage2dLibMat("Effect\\flareLaser2", "Effect\\flare1_tc.dds", true, graph::Material::bmAdditive, FloatRange(1.0f, 0.0f)); LoadImage2dLibMat("Effect\\flareLaser3", "Effect\\flare2a.dds", true, graph::Material::bmAdditive, FloatRange(1.0f, 0.0f)); diff --git a/src/Rock3dGame/source/game/TraceGfx.cpp b/src/Rock3dGame/source/game/TraceGfx.cpp index bcd7f068..5887cb1d 100644 --- a/src/Rock3dGame/source/game/TraceGfx.cpp +++ b/src/Rock3dGame/source/game/TraceGfx.cpp @@ -87,7 +87,7 @@ void TraceGfx::DoRender(graph::Engine& engine) for (Trace::Pathes::const_iterator iter = _trace->GetPathes().begin(); iter != _trace->GetPathes().end(); ++iter, ++iPath) { WayPath* path = *iter; - glm::vec4 pathColor = path == _selPath ? clrGreen : glm::vec4(Vec3GlmToDx(resColor.GetValue(iPath / (pathCnt - 1.0f)))); + glm::vec4 pathColor = path == _selPath ? clrGreen : glm::vec4(resColor.GetValue(iPath / (pathCnt - 1.0f)), 0.0f); res::VertexData vBuf; path->GetTriStripVBuf(vBuf, &upVec); if (vBuf.IsInit()) From ae19eabe9e70461f425a258f4ddf54f9cbf66885 Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Sun, 30 Oct 2022 21:24:40 +0300 Subject: [PATCH 41/55] math: fix black 3d scene after replace D3DXCOLOR with glm::vec4 --- src/Rock3dEngine/source/graph/FogPlane.cpp | 2 +- src/Rock3dEngine/source/graph/GrassField.cpp | 4 ++-- src/Rock3dEngine/source/graph/MappingShaders.cpp | 10 +++++----- src/Rock3dEngine/source/graph/WaterPlane.cpp | 2 +- 4 files changed, 9 insertions(+), 9 deletions(-) diff --git a/src/Rock3dEngine/source/graph/FogPlane.cpp b/src/Rock3dEngine/source/graph/FogPlane.cpp index 42d4b2db..bcc1df1d 100644 --- a/src/Rock3dEngine/source/graph/FogPlane.cpp +++ b/src/Rock3dEngine/source/graph/FogPlane.cpp @@ -53,7 +53,7 @@ void FogPlane::DoRender(graph::Engine& engine) dwVal = engine.GetContext().GetRenderState(rsFogEnd); fogParamsVec.y = *(float*)(&dwVal); - glm::vec4 fogColorVec = glm::vec4(engine.GetContext().GetRenderState(rsFogColor)); + glm::vec4 fogColorVec = ColorToVec4(engine.GetContext().GetRenderState(rsFogColor)); shader.SetValueDir("fogColor", fogColorVec); } shader.SetValueDir("fogParams", fogParamsVec); diff --git a/src/Rock3dEngine/source/graph/GrassField.cpp b/src/Rock3dEngine/source/graph/GrassField.cpp index 4d30d0e5..9b30db89 100644 --- a/src/Rock3dEngine/source/graph/GrassField.cpp +++ b/src/Rock3dEngine/source/graph/GrassField.cpp @@ -194,13 +194,13 @@ void GrassField::DoRender(graph::Engine& engine) dwVal = engine.GetContext().GetRenderState(rsFogEnd); fogParamsVec.y = *(float*)(&dwVal); - glm::vec4 fogColorVec = glm::vec4(engine.GetContext().GetRenderState(rsFogColor)); + glm::vec4 fogColorVec = ColorToVec4(engine.GetContext().GetRenderState(rsFogColor)); shader.SetValueDir("fogColor", fogColorVec); } shader.SetValueDir("fogParams", fogParamsVec); bool isNight = engine.GetContext().IsNight(); - shader.SetValueDir("diffLight", isNight ? glm::vec4(engine.GetContext().GetRenderState(rsAmbient)) : clrWhite); + shader.SetValueDir("diffLight", isNight ? ColorToVec4(engine.GetContext().GetRenderState(rsAmbient)) : clrWhite); shader.Apply(engine); for (unsigned i = 0; i < _fieldList.size(); ++i) diff --git a/src/Rock3dEngine/source/graph/MappingShaders.cpp b/src/Rock3dEngine/source/graph/MappingShaders.cpp index e2c5a59e..b0460e2b 100644 --- a/src/Rock3dEngine/source/graph/MappingShaders.cpp +++ b/src/Rock3dEngine/source/graph/MappingShaders.cpp @@ -88,7 +88,7 @@ void LightShader::DoBeginDraw(Engine& engine) //Послдений проход bool lastPass = _curLight >= lightCnt - 1; // - _fogColor = glm::vec4(engine.GetContext().GetRenderState(rsFogColor)); + _fogColor = ColorToVec4(engine.GetContext().GetRenderState(rsFogColor)); engine.GetContext().SetRenderState(rsFogColor, Vec4ToColor(_fogColor / static_cast(lightCnt))); const LightCI& light = engine.GetContext().GetLight(_curLight); @@ -124,7 +124,7 @@ void LightShader::DoBeginDraw(Engine& engine) } SetParam(_params[numLights], static_cast(lightCnt)); - SetParam(_params[glAmbient], glm::vec4(engine.GetContext().GetRenderState(rsAmbient))); + SetParam(_params[glAmbient], ColorToVec4(engine.GetContext().GetRenderState(rsAmbient))); SetParam(_params[ambLight], light.GetDesc().ambient); SetParam(_params[diffLight], light.GetDesc().diffuse); @@ -165,7 +165,7 @@ void LightShader::DoBeginDraw(Engine& engine) dwVal = engine.GetContext().GetRenderState(rsFogEnd); fogParamsVec.y = *(float*)(&dwVal); - glm::vec4 fogColorVec = glm::vec4(engine.GetContext().GetRenderState(rsFogColor)); + glm::vec4 fogColorVec = ColorToVec4(engine.GetContext().GetRenderState(rsFogColor)); SetParam(_params[fogColor], fogColorVec); } @@ -228,7 +228,7 @@ void ReflMappShader::DoBeginDraw(Engine& engine) _MyBase::DoBeginDraw(engine); SetParam(_params[reflectivity], _reflectivity); - SetParam(_params[alphaBlendColor], glm::vec4(engine.GetContext().GetTextureStageState(0, tssConstant))); + SetParam(_params[alphaBlendColor], ColorToVec4(engine.GetContext().GetTextureStageState(0, tssConstant))); if (GetReflTex()) SetTexParam(_params[envTex], GetReflTex()->GetTex()); @@ -264,7 +264,7 @@ void ReflBumbMappShader::DoBeginDraw(Engine& engine) _MyBase::DoBeginDraw(engine); SetParam(_params[reflectivity], 0.4f); - SetParam(_params[alphaBlendColor], glm::vec4(engine.GetContext().GetTextureStageState(0, tssConstant))); + SetParam(_params[alphaBlendColor], ColorToVec4(engine.GetContext().GetTextureStageState(0, tssConstant))); if (GetReflTex()) SetTexParam(_params[envTex], GetReflTex()->GetTex()); diff --git a/src/Rock3dEngine/source/graph/WaterPlane.cpp b/src/Rock3dEngine/source/graph/WaterPlane.cpp index b69ddfbd..dc6a100f 100644 --- a/src/Rock3dEngine/source/graph/WaterPlane.cpp +++ b/src/Rock3dEngine/source/graph/WaterPlane.cpp @@ -107,7 +107,7 @@ void WaterPlane::DoRender(graph::Engine& engine) dwVal = engine.GetContext().GetRenderState(rsFogEnd); fogParamsVec.y = *(float*)(&dwVal); - glm::vec4 fogColorVec = glm::vec4(engine.GetContext().GetRenderState(rsFogColor)); + glm::vec4 fogColorVec = ColorToVec4(engine.GetContext().GetRenderState(rsFogColor)); shader.SetValueDir("fogColor", fogColorVec); } shader.SetValueDir("fogParams", fogParamsVec); From ab76f8a3afd47e07e962e29834f2b7536512a00a Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Sun, 30 Oct 2022 23:16:35 +0300 Subject: [PATCH 42/55] math: auto replace D3DXPLANE with glm::vec4 in src/*.h,*.cpp,*.inl --- src/MathLib/header/lslMath.h | 2 +- src/MathLib/header/lslMath.inl | 4 +-- src/MathLib/header/r3dMath.h | 30 +++++++++---------- src/MathLib/source/r3dMath.cpp | 14 ++++----- src/Rock3dEngine/header/graph/ActorManager.h | 2 +- src/Rock3dEngine/header/graph/WaterPlane.h | 8 ++--- src/Rock3dEngine/source/GraphManager.cpp | 12 ++++---- .../source/graph/ActorManager.cpp | 6 ++-- src/Rock3dEngine/source/graph/ContextInfo.cpp | 10 +++---- src/Rock3dEngine/source/graph/StdNode.cpp | 4 +-- src/Rock3dEngine/source/graph/WaterPlane.cpp | 6 ++-- src/Rock3dGame/header/game/Trace.h | 2 +- src/Rock3dGame/source/edit/SceneControl.cpp | 2 +- src/Rock3dGame/source/game/DataBase.cpp | 12 ++++---- src/Rock3dGame/source/game/Player.cpp | 2 +- src/Rock3dGame/source/game/Trace.cpp | 4 +-- src/Rock3dGame/source/game/Weapon.cpp | 4 +-- 17 files changed, 62 insertions(+), 62 deletions(-) diff --git a/src/MathLib/header/lslMath.h b/src/MathLib/header/lslMath.h index 75407acf..6fd69abe 100644 --- a/src/MathLib/header/lslMath.h +++ b/src/MathLib/header/lslMath.h @@ -76,7 +76,7 @@ void Line2NormVecToPoint(const glm::vec3& line, const glm::vec2& point, glm::vec glm::vec2 Line2NormVecToPoint(const glm::vec3& line, const glm::vec2& point); bool RayCastIntersectSphere(const glm::vec3& rayPos, const glm::vec3& rayVec, const glm::vec3& spherePos, float sphereRadius, float* t = 0); -float PlaneDistToPoint(const D3DXPLANE& plane, const glm::vec3& point); +float PlaneDistToPoint(const glm::vec4& plane, const glm::vec3& point); const float floatErrComp = 0.00001f; const D3DXMATRIX IdentityMatrix(1.0f, 0.0f, 0.0f, 0.0f, diff --git a/src/MathLib/header/lslMath.inl b/src/MathLib/header/lslMath.inl index 447c37b8..46fd956c 100644 --- a/src/MathLib/header/lslMath.inl +++ b/src/MathLib/header/lslMath.inl @@ -109,7 +109,7 @@ inline glm::vec4 ColorVToVec4(const D3DCOLORVALUE &cv) return v4glm; } -inline glm::vec4 PlaneToVec4Glm(const D3DXPLANE pl) +inline glm::vec4 PlaneToVec4Glm(const glm::vec4 pl) { glm::vec4 v4(pl.a, pl.b, pl.c, pl.d); return v4; @@ -664,7 +664,7 @@ inline bool RayCastIntersectSphere(const glm::vec3& rayPos, const glm::vec3& ray return tRay > 0; } -inline float PlaneDistToPoint(const D3DXPLANE& plane, const glm::vec3& point) +inline float PlaneDistToPoint(const glm::vec4& plane, const glm::vec3& point) { return D3DXPlaneDotCoord(&plane, &Vec3GlmToDx(point)); }; diff --git a/src/MathLib/header/r3dMath.h b/src/MathLib/header/r3dMath.h index aefb0bc7..5fd676f8 100644 --- a/src/MathLib/header/r3dMath.h +++ b/src/MathLib/header/r3dMath.h @@ -80,7 +80,7 @@ struct AABB void FromPoints(const glm::vec3& pnt1, const glm::vec3& pnt2); void FromDimensions(const glm::vec3& dimensions); - void FromPlaneAndScale(const D3DXPLANE& plane, const glm::vec3& vec); + void FromPlaneAndScale(const glm::vec4& plane, const glm::vec3& vec); void Transform(const D3DXMATRIX& m); void Offset(const glm::vec3& vec); void Add(const AABB& aabb); @@ -119,7 +119,7 @@ struct AABB float GetDiameter() const; float GetRadius() const; glm::vec3 GetVertex(unsigned index) const; - D3DXPLANE GetPlane(unsigned index) const; + glm::vec4 GetPlane(unsigned index) const; //vertex[0] - min //vertex[1] - max glm::vec3 GetPlaneVert(unsigned index, unsigned vertex) const; @@ -180,25 +180,25 @@ struct Frustum { struct { - D3DXPLANE left; - D3DXPLANE top; - D3DXPLANE right; - D3DXPLANE bottom; - D3DXPLANE pNear; - D3DXPLANE pFar; + glm::vec4 left; + glm::vec4 top; + glm::vec4 right; + glm::vec4 bottom; + glm::vec4 pNear; + glm::vec4 pFar; }; struct { - D3DXPLANE planes[6]; + glm::vec4 planes[6]; }; }; }; //error - ошибка проникновения, т.е. совпадающие координаты или координаты остающие на величину ошибки считаются нестабильными поэтому луч также проходит черех них даже если они сзади на величину error -bool RayCastIntersectPlane(const glm::vec3& rayStart, const glm::vec3& rayVec, const D3DXPLANE& plane, float& outT); -bool RayCastIntersectPlane(const glm::vec3& rayStart, const glm::vec3& rayVec, const D3DXPLANE& plane, glm::vec3& outVec); +bool RayCastIntersectPlane(const glm::vec3& rayStart, const glm::vec3& rayVec, const glm::vec4& plane, float& outT); +bool RayCastIntersectPlane(const glm::vec3& rayStart, const glm::vec3& rayVec, const glm::vec4& plane, glm::vec3& outVec); //Погрешность 10% -bool RayCastIntersectSquare(const glm::vec3& rayStart, const glm::vec3& rayVec, const glm::vec3& min, const glm::vec3& max, const D3DXPLANE& plane, float* outT, glm::vec3* outVec, const float error = 0); +bool RayCastIntersectSquare(const glm::vec3& rayStart, const glm::vec3& rayVec, const glm::vec3& min, const glm::vec3& max, const glm::vec4& plane, float* outT, glm::vec3* outVec, const float error = 0); void GetSampleOffsetsDownScale3x3(DWORD dwWidth, DWORD dwHeight, glm::vec2 avSampleOffsets[9]); void GetSampleOffsetsDownScale4x4(DWORD dwWidth, DWORD dwHeight, glm::vec2 avSampleOffsets[16]); @@ -229,9 +229,9 @@ const glm::vec4 clrGreen (0.0f, 1.0f, 0.0f, 1.0f); const glm::vec4 clrBlue (0.0f, 0.0f, 1.0f, 1.0f); const glm::vec4 clrYellow (1.0f, 1.0f, 0.0f, 1.0f); -const D3DXPLANE XPlane (1.0f, 0.0f, 0.0f, 0.0f); -const D3DXPLANE YPlane (0.0f, 1.0f, 0.0f, 0.0f); -const D3DXPLANE ZPlane (0.0f, 0.0f, 1.0f, 0.0f); +const glm::vec4 XPlane (1.0f, 0.0f, 0.0f, 0.0f); +const glm::vec4 YPlane (0.0f, 1.0f, 0.0f, 0.0f); +const glm::vec4 ZPlane (0.0f, 0.0f, 1.0f, 0.0f); const AABB NullAABB(0); //} diff --git a/src/MathLib/source/r3dMath.cpp b/src/MathLib/source/r3dMath.cpp index 17abeb80..9b4acfa4 100644 --- a/src/MathLib/source/r3dMath.cpp +++ b/src/MathLib/source/r3dMath.cpp @@ -548,9 +548,9 @@ glm::vec3 AABB::GetVertex(unsigned index) const } } -D3DXPLANE AABB::GetPlane(unsigned index) const +glm::vec4 AABB::GetPlane(unsigned index) const { - D3DXPLANE res; + glm::vec4 res; switch (index) { case cLeftPlane: @@ -583,7 +583,7 @@ D3DXPLANE AABB::GetPlane(unsigned index) const glm::vec3 AABB::GetPlaneVert(unsigned index, unsigned vertex) const { - /*D3DXPLANE plane = GetPlane(index); + /*glm::vec4 plane = GetPlane(index); glm::vec3 norm(plane); glm::vec3 invNorm = IdentityVector - glm::vec3(abs(norm.x), abs(norm.y), abs(norm.z)); @@ -752,7 +752,7 @@ void Frustum::Refresh(const D3DXMATRIX& viewProjMat) Frustum::SpaceContains Frustum::ContainsAABB(const AABB& aabb) const { - typedef D3DXPLANE PlaneArray[6]; + typedef glm::vec4 PlaneArray[6]; AABB::Corners corners; aabb.ExtractCorners(corners); @@ -790,7 +790,7 @@ Frustum::SpaceContains Frustum::ContainsAABB(const AABB& aabb) const return scContainsPartially; } -bool RayCastIntersectPlane(const glm::vec3& rayStart, const glm::vec3& rayVec, const D3DXPLANE& plane, float& outT) +bool RayCastIntersectPlane(const glm::vec3& rayStart, const glm::vec3& rayVec, const glm::vec4& plane, float& outT) { const float EPSILON = 1.0e-10f; @@ -803,7 +803,7 @@ bool RayCastIntersectPlane(const glm::vec3& rayStart, const glm::vec3& rayVec, c return false; } -bool RayCastIntersectPlane(const glm::vec3& rayStart, const glm::vec3& rayVec, const D3DXPLANE& plane, glm::vec3& outVec) +bool RayCastIntersectPlane(const glm::vec3& rayStart, const glm::vec3& rayVec, const glm::vec4& plane, glm::vec3& outVec) { float t; bool res = RayCastIntersectPlane(rayStart, rayVec, plane, t); @@ -812,7 +812,7 @@ bool RayCastIntersectPlane(const glm::vec3& rayStart, const glm::vec3& rayVec, c return res; } -bool RayCastIntersectSquare(const glm::vec3& rayStart, const glm::vec3& rayVec, const glm::vec3& min, const glm::vec3& max, const D3DXPLANE& plane, float* outT, glm::vec3* outVec, const float error) +bool RayCastIntersectSquare(const glm::vec3& rayStart, const glm::vec3& rayVec, const glm::vec3& min, const glm::vec3& max, const glm::vec4& plane, float* outT, glm::vec3* outVec, const float error) { const float Arad45 = 0.707106781f; diff --git a/src/Rock3dEngine/header/graph/ActorManager.h b/src/Rock3dEngine/header/graph/ActorManager.h index 2057bca9..93d7b102 100644 --- a/src/Rock3dEngine/header/graph/ActorManager.h +++ b/src/Rock3dEngine/header/graph/ActorManager.h @@ -48,7 +48,7 @@ class ActorManager struct Planar { unsigned id; - D3DXPLANE plane; + glm::vec4 plane; //ActorList actors; }; diff --git a/src/Rock3dEngine/header/graph/WaterPlane.h b/src/Rock3dEngine/header/graph/WaterPlane.h index d2e36a03..29557284 100644 --- a/src/Rock3dEngine/header/graph/WaterPlane.h +++ b/src/Rock3dEngine/header/graph/WaterPlane.h @@ -15,9 +15,9 @@ class ReflRender: public GraphObjRender private: typedef GraphObjRender _MyBase; public: - typedef std::vector ClipPlanes; + typedef std::vector ClipPlanes; private: - D3DXPLANE _reflPlane; + glm::vec4 _reflPlane; ClipPlanes _clipPlanes; D3DXMATRIX _reflMat; @@ -28,8 +28,8 @@ class ReflRender: public GraphObjRender virtual void BeginRT(Engine& engine, const RtFlags& flags); virtual void EndRT(Engine& engine); - const D3DXPLANE& GetReflPlane() const; - void SetReflPlane(const D3DXPLANE& value); + const glm::vec4& GetReflPlane() const; + void SetReflPlane(const glm::vec4& value); const ClipPlanes& GetClipPlanes() const; void SetClipPlanes(const ClipPlanes& value); diff --git a/src/Rock3dEngine/source/GraphManager.cpp b/src/Rock3dEngine/source/GraphManager.cpp index 3eeb37ab..95a316cd 100644 --- a/src/Rock3dEngine/source/GraphManager.cpp +++ b/src/Rock3dEngine/source/GraphManager.cpp @@ -1483,7 +1483,7 @@ void GraphManager::RemoveActor(graph::Actor* value) _actorManager->RemoveActor(value); } -bool LineCastIntersPlane(const glm::vec3& rayStart, const glm::vec3& rayVec, const D3DXPLANE& plane, float& outT) +bool LineCastIntersPlane(const glm::vec3& rayStart, const glm::vec3& rayVec, const glm::vec4& plane, float& outT) { const float EPSILON = 1.0e-10f; @@ -1496,7 +1496,7 @@ bool LineCastIntersPlane(const glm::vec3& rayStart, const glm::vec3& rayVec, con return false; } -unsigned PlaneBBIntersect(const BoundBox& bb, const D3DXPLANE& plane, glm::vec3 points[]) +unsigned PlaneBBIntersect(const BoundBox& bb, const glm::vec4& plane, glm::vec3 points[]) { //конечные вершины ребер для каждого вертекса const int lines[12][2] = {{0, 1}, {1, 2}, {2, 3}, {3, 0}, {4, 5}, {5, 6}, {6, 7}, {7, 4}, {0, 4}, {1, 5}, {2, 6}, {3, 7}}; @@ -1525,7 +1525,7 @@ unsigned PlaneBBIntersect(const BoundBox& bb, const D3DXPLANE& plane, glm::vec3 return res; } -unsigned PlaneAABBIntersect(const AABB& aabb, const D3DXPLANE& plane, glm::vec3 points[]) +unsigned PlaneAABBIntersect(const AABB& aabb, const glm::vec4& plane, glm::vec3 points[]) { BoundBox bb(aabb); @@ -1536,7 +1536,7 @@ bool ComputeZBounds(graph::Engine& engine, const graph::CameraCI& camera, const { bool res = false; - D3DXPLANE posNearPlane; + glm::vec4 posNearPlane; D3DXPlaneFromPointNormal(&posNearPlane, &Vec3GlmToDx(camera.GetDesc().pos), &Vec3GlmToDx(camera.GetDesc().dir)); glm::vec3 rayVec[4] = {glm::vec3(-1.0f, -1.0f, 1.0f), glm::vec3(1.0f, -1.0f, 1.0f), glm::vec3(-1.0f, 1.0f, 1.0f), glm::vec3(1.0f, 1.0f, 1.0f)}; @@ -1792,7 +1792,7 @@ void GraphManager::RenderPlanarReflScene(graph::CameraCI& camera) ActorList tracks; _actorManager->Culling(osColorPlanarRefl, &camera, tracks); - typedef std::list Planes; + typedef std::list Planes; Planes planes; for (ActorList::const_iterator iter = tracks.begin(); iter != tracks.end(); ++iter) @@ -1806,7 +1806,7 @@ void GraphManager::RenderPlanarReflScene(graph::CameraCI& camera) actor->LocalToWorldNorm(norm, norm); glm::vec3 pos = actor->GetWorldPos(); - D3DXPLANE plane; + glm::vec4 plane; D3DXPlaneFromPointNormal(&plane, &(pos + norm * height), &norm); _planarReflRender->SetReflPlane(plane); diff --git a/src/Rock3dEngine/source/graph/ActorManager.cpp b/src/Rock3dEngine/source/graph/ActorManager.cpp index 824ef013..46103450 100644 --- a/src/Rock3dEngine/source/graph/ActorManager.cpp +++ b/src/Rock3dEngine/source/graph/ActorManager.cpp @@ -304,8 +304,8 @@ const ActorManager::Planar& ActorManager::GetPlanar(Actor* actor) D3DXMATRIX mat = actor->GetInvWorldMat(); D3DXMatrixTranspose(&mat, &mat); - D3DXPLANE plane; - D3DXPlaneTransform(&plane, &D3DXPLANE(Vec4GlmToDx(actor->vec1())), &mat); + glm::vec4 plane; + D3DXPlaneTransform(&plane, &glm::vec4(Vec4GlmToDx(actor->vec1())), &mat); D3DXPlaneNormalize(&plane, &plane); float minDist = 0; @@ -314,7 +314,7 @@ const ActorManager::Planar& ActorManager::GetPlanar(Actor* actor) for (Planars::iterator iter = _planars.begin(); iter != _planars.end(); ++iter) { - const D3DXPLANE& testPlane = iter->plane; + const glm::vec4& testPlane = iter->plane; float dist = abs(testPlane.d - plane.d); float angle = abs(D3DXPlaneDotNormal(&testPlane, &D3DXVECTOR3(plane))); diff --git a/src/Rock3dEngine/source/graph/ContextInfo.cpp b/src/Rock3dEngine/source/graph/ContextInfo.cpp index 3de7694b..d5612659 100644 --- a/src/Rock3dEngine/source/graph/ContextInfo.cpp +++ b/src/Rock3dEngine/source/graph/ContextInfo.cpp @@ -207,7 +207,7 @@ Intersect FrustumAABBIntersect(const Frustum& frustum, bool incZ, const AABB& aa return ret; } -bool LineCastIntersPlane(const glm::vec3& rayStart, const glm::vec3& rayVec, const D3DXPLANE& plane, float& outT) +bool LineCastIntersPlane(const glm::vec3& rayStart, const glm::vec3& rayVec, const glm::vec4& plane, float& outT) { const float EPSILON = 1.0e-10f; @@ -220,7 +220,7 @@ bool LineCastIntersPlane(const glm::vec3& rayStart, const glm::vec3& rayVec, con return false; } -unsigned PlaneBBIntersect(const BoundBox& bb, const D3DXPLANE& plane, glm::vec3 points[]) +unsigned PlaneBBIntersect(const BoundBox& bb, const glm::vec4& plane, glm::vec3 points[]) { //конечные вершины ребер для каждого вертекса const int lines[12][2] = {{0, 1}, {1, 2}, {2, 3}, {3, 0}, {4, 5}, {5, 6}, {6, 7}, {7, 4}, {0, 4}, {1, 5}, {2, 6}, {3, 7}}; @@ -249,7 +249,7 @@ unsigned PlaneBBIntersect(const BoundBox& bb, const D3DXPLANE& plane, glm::vec3 return res; } -unsigned PlaneAABBIntersect(const AABB& aabb, const D3DXPLANE& plane, glm::vec3 points[]) +unsigned PlaneAABBIntersect(const AABB& aabb, const glm::vec4& plane, glm::vec3 points[]) { BoundBox bb(aabb); @@ -259,7 +259,7 @@ unsigned PlaneAABBIntersect(const AABB& aabb, const D3DXPLANE& plane, glm::vec3 bool CameraCI::ComputeZBounds(const AABB& aabb, float& minZ, float& maxZ) const { bool res = false; - D3DXPLANE posNearPlane; + glm::vec4 posNearPlane; D3DXPlaneFromPointNormal(&posNearPlane, &Vec3GlmToDx(_desc.pos), &Vec3GlmToDx(_desc.dir)); BoundBox box(aabb); @@ -308,7 +308,7 @@ bool CameraCI::ComputeZBounds(const AABB& aabb, float& minZ, float& maxZ) const } //поиск пересечений aabb с фрустумом - /*D3DXPLANE nearPlane; + /*glm::vec4 nearPlane; D3DXPlaneFromPointNormal(&nearPlane, &NullVector, &ZVector); glm::vec3 points[4]; unsigned numPoints = PlaneBBIntersect(projBox, nearPlane, points); diff --git a/src/Rock3dEngine/source/graph/StdNode.cpp b/src/Rock3dEngine/source/graph/StdNode.cpp index 88b40645..68b85dc8 100644 --- a/src/Rock3dEngine/source/graph/StdNode.cpp +++ b/src/Rock3dEngine/source/graph/StdNode.cpp @@ -1076,7 +1076,7 @@ MovCoordSys::~MovCoordSys() MovCoordSys::DirMove MovCoordSys::CompDirMove(const glm::vec3& rayStart, const glm::vec3& rayVec) { - const D3DXPLANE planes[3] = {XPlane, YPlane, ZPlane}; + const glm::vec4 planes[3] = {XPlane, YPlane, ZPlane}; const glm::vec3 coordOff[3] = {XVector / 2.0f, YVector / 2.0f, ZVector / 2.0f}; const DirMove moves[3] = {dmYZ, dmXZ, dmXY}; @@ -1261,7 +1261,7 @@ ScaleCoordSys::DirMove ScaleCoordSys::CompDirMove(const glm::vec3& rayStart, con glm::vec3 plLine[3]; for (int i = 0; i < 3; ++i) plLine[i] = bbPlanes[i] * plSize; - D3DXPLANE upPlane; + glm::vec4 upPlane; D3DXPlaneFromPoints(&upPlane, &Vec3GlmToDx(plLine[0]), &Vec3GlmToDx(plLine[1]), &Vec3GlmToDx(plLine[2])); // glm::vec3 maxVec = NullVector; diff --git a/src/Rock3dEngine/source/graph/WaterPlane.cpp b/src/Rock3dEngine/source/graph/WaterPlane.cpp index dc6a100f..ef8ddd3b 100644 --- a/src/Rock3dEngine/source/graph/WaterPlane.cpp +++ b/src/Rock3dEngine/source/graph/WaterPlane.cpp @@ -10,7 +10,7 @@ namespace graph ReflRender::ReflRender() { - SetReflPlane(D3DXPLANE(0.0f, 0.0f, 1.0f, 0.0f)); + SetReflPlane(glm::vec4(0.0f, 0.0f, 1.0f, 0.0f)); } void ReflRender::BeginRT(Engine& engine, const RtFlags& flags) @@ -55,12 +55,12 @@ void ReflRender::EndRT(Engine& engine) engine.GetContext().UnApplyCamera(&_reflCamera); } -const D3DXPLANE& ReflRender::GetReflPlane() const +const glm::vec4& ReflRender::GetReflPlane() const { return _reflPlane; } -void ReflRender::SetReflPlane(const D3DXPLANE& value) +void ReflRender::SetReflPlane(const glm::vec4& value) { _reflPlane = value; D3DXMatrixReflect(&_reflMat, &_reflPlane); diff --git a/src/Rock3dGame/header/game/Trace.h b/src/Rock3dGame/header/game/Trace.h index b604fd45..9f814d7f 100644 --- a/src/Rock3dGame/header/game/Trace.h +++ b/src/Rock3dGame/header/game/Trace.h @@ -115,7 +115,7 @@ class WayNode: public Object const glm::vec3& GetNextNormLine() const; float GetNextNodeRadius() const; - D3DXPLANE GetWayPlane() const; + glm::vec4 GetWayPlane() const; public: Tile(WayNode* node); diff --git a/src/Rock3dGame/source/edit/SceneControl.cpp b/src/Rock3dGame/source/edit/SceneControl.cpp index 23c73c69..864accb5 100644 --- a/src/Rock3dGame/source/edit/SceneControl.cpp +++ b/src/Rock3dGame/source/edit/SceneControl.cpp @@ -444,7 +444,7 @@ glm::vec3 SceneControl::ComputePoint(const glm::vec3& curPos, const glm::vec3& r }; glm::vec3 pos = curPos; - D3DXPLANE plane; + glm::vec4 plane; D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(pos), &Vec3GlmToDx(planeNorm)); glm::vec3 newPos; if (abs(glm::dot(planeNorm, rayVec)) < 0.05f || !RayCastIntersectPlane(rayStart, rayVec, plane, newPos)) diff --git a/src/Rock3dGame/source/game/DataBase.cpp b/src/Rock3dGame/source/game/DataBase.cpp index 745ae7f8..389a042f 100644 --- a/src/Rock3dGame/source/game/DataBase.cpp +++ b/src/Rock3dGame/source/game/DataBase.cpp @@ -1971,7 +1971,7 @@ void DataBase::LoadWorld1() LoadDecor("World1\\zdanie1", "World1\\zdaine1.r3d", "World1\\zdanie1"); LoadDecor("World1\\zdanie2", "World1\\zdaine2.r3d", "World1\\zdanie2"); - D3DXPLANE plane; + glm::vec4 plane; float cosAng = cos(15.0f * D3DX_PI/180.0f); D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(glm::vec3(0, 0, 6.2f)), &Vec3GlmToDx(glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng))); glm::vec4 vec1 = PlaneToVec4Glm(plane); @@ -2044,7 +2044,7 @@ void DataBase::LoadWorld2() SaveMapObj(mapObj, MapObjLib::ctDecoration, "World2\\semaphore"); } - D3DXPLANE plane; + glm::vec4 plane; float cosAng = cos(15.0f * D3DX_PI/180.0f); D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(glm::vec3(0, 0, 6.2f)), &Vec3GlmToDx(glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng))); glm::vec4 vec1 = PlaneToVec4Glm(plane); @@ -2098,7 +2098,7 @@ void DataBase::LoadWorld3() LoadDecor("World3\\stone2", "World3\\stone2.r3d", "World3\\stone"); LoadDecor("World3\\stone3", "World3\\stone3.r3d", "World3\\stone"); - D3DXPLANE plane; + glm::vec4 plane; float cosAng = cos(15.0f * D3DX_PI/180.0f); D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(glm::vec3(0, 0, 6.2f)), &Vec3GlmToDx(glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng))); glm::vec4 vec1 = PlaneToVec4Glm(plane); @@ -2138,7 +2138,7 @@ void DataBase::LoadWorld4() LoadDecor("World4\\volcano", "World4\\volcano.r3d", "World4\\volcano"); LoadDecor("World4\\crystals", "World4\\crystals.r3d", "World4\\crystals"); - D3DXPLANE plane; + glm::vec4 plane; float cosAng = cos(15.0f * D3DX_PI/180.0f); D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(glm::vec3(0, 0, 6.2f)), &Vec3GlmToDx(glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng))); glm::vec4 vec1 = PlaneToVec4Glm(plane); @@ -2172,7 +2172,7 @@ void DataBase::LoadWorld5() LoadDecor("World5\\transportship", "World5\\transportship.r3d", "World5\\transportship"); LoadDecor("World5\\piece", "World5\\piece.r3d", "World5\\piece"); - D3DXPLANE plane; + glm::vec4 plane; D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(glm::vec3(0, 0, 6.2f)), &Vec3GlmToDx(ZVector)); glm::vec4 plane1 = PlaneToVec4Glm(plane); @@ -2208,7 +2208,7 @@ void DataBase::LoadWorld6() LoadDecor("World6\\stone2", "World6\\stone2.r3d", "World6\\stone"); LoadDecor("World6\\stone3", "World6\\stone3.r3d", "World6\\stone"); - D3DXPLANE plane; + glm::vec4 plane; float cosAng = cos(15.0f * D3DX_PI/180.0f); D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(glm::vec3(0, 0, 6.2f)), &Vec3GlmToDx(glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng))); glm::vec4 vec1 = PlaneToVec4Glm(plane); diff --git a/src/Rock3dGame/source/game/Player.cpp b/src/Rock3dGame/source/game/Player.cpp index 7b92c011..3e459e43 100644 --- a/src/Rock3dGame/source/game/Player.cpp +++ b/src/Rock3dGame/source/game/Player.cpp @@ -1574,7 +1574,7 @@ Player* Player::FindClosestEnemy(float viewAngle, bool zTest) dir = glm::normalize(enemyPos - carPos); float angle = glm::dot(dir, carDir); - D3DXPLANE dirPlane; + glm::vec4 dirPlane; D3DXPlaneFromPointNormal(&dirPlane, &Vec3GlmToDx(carPos), &Vec3GlmToDx(carDir)); float dist = D3DXPlaneDotCoord(&dirPlane, &Vec3GlmToDx(enemyPos)); float absDist = abs(dist); diff --git a/src/Rock3dGame/source/game/Trace.cpp b/src/Rock3dGame/source/game/Trace.cpp index af6eb2c3..d49af136 100644 --- a/src/Rock3dGame/source/game/Trace.cpp +++ b/src/Rock3dGame/source/game/Trace.cpp @@ -323,7 +323,7 @@ glm::vec2 WayNode::Tile::ComputeTrackNormOff(const glm::vec2& point, unsigned tr return _norm * trackOff; } -void PlaneFromDirVec(const glm::vec3& dir, const glm::vec3& norm, const glm::vec3& pos, D3DXPLANE& plane) +void PlaneFromDirVec(const glm::vec3& dir, const glm::vec3& norm, const glm::vec3& pos, glm::vec4& plane) { glm::vec3 right, up; right = glm::cross(dir, norm); @@ -336,7 +336,7 @@ bool WayNode::Tile::RayCast(const glm::vec3& rayPos, const glm::vec3& rayVec, fl glm::vec3 dir = GetNextPos() - GetPos(); dir = glm::normalize(dir); - D3DXPLANE plane; + glm::vec4 plane; //Условие неколлинеарности векторов if (glm::dot(dir, rayVec) > 0.001f) //плоскость перепендикулярно лучу в центре цилиндра тайла diff --git a/src/Rock3dGame/source/game/Weapon.cpp b/src/Rock3dGame/source/game/Weapon.cpp index 56b499a7..c7e2adec 100644 --- a/src/Rock3dGame/source/game/Weapon.cpp +++ b/src/Rock3dGame/source/game/Weapon.cpp @@ -657,7 +657,7 @@ void Proj::MasloContact(const px::Scene::OnContactEvent& contact) if (car == NULL || _time1 >= 0 || car->IsMineLocked()) return; - D3DXPLANE plane; + glm::vec4 plane; D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(car->GetGrActor().GetWorldPos()), &Vec3GlmToDx(car->GetGrActor().GetWorldRight())); float dist = PlaneDistToPoint(plane, GetWorldPos()); @@ -1189,7 +1189,7 @@ void Proj::ThunderContact(const px::Scene::OnContactEvent& contact) float angle = velNorm.dot(norm); if (abs(angle) > 0.1f) { - D3DXPLANE plane; + glm::vec4 plane; D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(NullVector), &Vec3GlmToDx(glm::make_vec3(norm.get()))); D3DXMATRIX mat; D3DXMatrixReflect(&mat, &plane); From 1b34cfaa2c0ff59ee647632d185becbe2e62de62 Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Mon, 31 Oct 2022 11:52:02 +0300 Subject: [PATCH 43/55] math: fix build after replace D3DXPLANE with glm::vec4 --- src/MathLib/header/lslMath.h | 2 +- src/MathLib/header/lslMath.inl | 66 ++++++++++++++-- src/MathLib/source/r3dMath.cpp | 78 +++++++++---------- src/Rock3dEngine/source/GraphManager.cpp | 11 ++- .../source/graph/ActorManager.cpp | 9 +-- src/Rock3dEngine/source/graph/ContextInfo.cpp | 21 +++-- src/Rock3dEngine/source/graph/StdNode.cpp | 3 +- src/Rock3dEngine/source/graph/WaterPlane.cpp | 6 +- src/Rock3dGame/source/edit/SceneControl.cpp | 5 +- src/Rock3dGame/source/game/DataBase.cpp | 43 +++------- src/Rock3dGame/source/game/Player.cpp | 5 +- src/Rock3dGame/source/game/Trace.cpp | 4 +- src/Rock3dGame/source/game/Weapon.cpp | 10 +-- 13 files changed, 140 insertions(+), 123 deletions(-) diff --git a/src/MathLib/header/lslMath.h b/src/MathLib/header/lslMath.h index 6fd69abe..fc32360d 100644 --- a/src/MathLib/header/lslMath.h +++ b/src/MathLib/header/lslMath.h @@ -76,7 +76,7 @@ void Line2NormVecToPoint(const glm::vec3& line, const glm::vec2& point, glm::vec glm::vec2 Line2NormVecToPoint(const glm::vec3& line, const glm::vec2& point); bool RayCastIntersectSphere(const glm::vec3& rayPos, const glm::vec3& rayVec, const glm::vec3& spherePos, float sphereRadius, float* t = 0); -float PlaneDistToPoint(const glm::vec4& plane, const glm::vec3& point); +float PlaneDotCoord(const glm::vec4& plane, const glm::vec3& point); const float floatErrComp = 0.00001f; const D3DXMATRIX IdentityMatrix(1.0f, 0.0f, 0.0f, 0.0f, diff --git a/src/MathLib/header/lslMath.inl b/src/MathLib/header/lslMath.inl index 46fd956c..59027b39 100644 --- a/src/MathLib/header/lslMath.inl +++ b/src/MathLib/header/lslMath.inl @@ -88,6 +88,12 @@ inline D3DXVECTOR4 Vec4GlmToDx(const glm::vec4 v4) return v4Dx; } +inline D3DXPLANE Vec4ToPlane(const glm::vec4 v4) +{ + D3DXPLANE plane(v4.x, v4.y, v4.z, v4.w); + return plane; +} + inline D3DCOLOR Vec4ToColor(const glm::vec4 &vec) { return D3DCOLOR_COLORVALUE(vec.r, vec.g, vec.b, vec.a); @@ -109,12 +115,6 @@ inline glm::vec4 ColorVToVec4(const D3DCOLORVALUE &cv) return v4glm; } -inline glm::vec4 PlaneToVec4Glm(const glm::vec4 pl) -{ - glm::vec4 v4(pl.a, pl.b, pl.c, pl.d); - return v4; -} - inline glm::vec3 Vec3TransformCoord(const glm::vec3 &vec, const D3DXMATRIX &mat) { D3DXVECTOR3 res; @@ -664,9 +664,59 @@ inline bool RayCastIntersectSphere(const glm::vec3& rayPos, const glm::vec3& ray return tRay > 0; } -inline float PlaneDistToPoint(const glm::vec4& plane, const glm::vec3& point) +inline glm::vec4 PlaneNormalize(const glm::vec4 &plane) +{ + glm::vec4 pOut; + float norm = sqrt(plane.x * plane.x + plane.y * plane.y + plane.z * plane.z); + if (norm) + { + pOut.x = plane.x / norm; + pOut.y = plane.y / norm; + pOut.z = plane.z / norm; + pOut.w = plane.w / norm; + } + else + { + pOut.x = 0.0f; + pOut.y = 0.0f; + pOut.z = 0.0f; + pOut.w = 0.0f; + } + return pOut; +} + +inline glm::vec4 PlaneTransform(const glm::vec4 &plane, const D3DXMATRIX &mat) +{ + glm::vec4 pOut; + pOut.x = mat.m[0][0] * plane.x + mat.m[1][0] * plane.y + mat.m[2][0] * plane.z + mat.m[3][0] * plane.w; + pOut.y = mat.m[0][1] * plane.x + mat.m[1][1] * plane.y + mat.m[2][1] * plane.z + mat.m[3][1] * plane.w; + pOut.z = mat.m[0][2] * plane.x + mat.m[1][2] * plane.y + mat.m[2][2] * plane.z + mat.m[3][2] * plane.w; + pOut.w = mat.m[0][3] * plane.x + mat.m[1][3] * plane.y + mat.m[2][3] * plane.z + mat.m[3][3] * plane.w; + return pOut; +} + +inline glm::vec4 PlaneFromPointNormal(const glm::vec3 &point, const glm::vec3 &normal) +{ + return glm::vec4(normal, -glm::dot(point, normal)); +} + +inline glm::vec4 PlaneFromPoints(const glm::vec3 &pv1, const glm::vec3 &pv2, const glm::vec3 &pv3) +{ + glm::vec3 edge1 = pv2 - pv1; + glm::vec3 edge2 = pv3 - pv1; + glm::vec3 normal = glm::cross(edge1, edge2); + normal = glm::normalize(normal); + return PlaneFromPointNormal(pv1, normal); +} + +inline float PlaneDotNormal(const glm::vec4 &plane, const glm::vec3 &point) +{ + return plane.x * point.x + plane.y * point.y + plane.z * point.z; +} + +inline float PlaneDotCoord(const glm::vec4 &plane, const glm::vec3 &point) { - return D3DXPlaneDotCoord(&plane, &Vec3GlmToDx(point)); + return plane.x * point.x + plane.y * point.y + plane.z * point.z + plane.w; }; //} \ No newline at end of file diff --git a/src/MathLib/source/r3dMath.cpp b/src/MathLib/source/r3dMath.cpp index 9b4acfa4..0ac20911 100644 --- a/src/MathLib/source/r3dMath.cpp +++ b/src/MathLib/source/r3dMath.cpp @@ -554,27 +554,27 @@ glm::vec4 AABB::GetPlane(unsigned index) const switch (index) { case cLeftPlane: - D3DXPlaneFromPointNormal(&res, &Vec3GlmToDx(min), &Vec3GlmToDx(-XVector)); + res = PlaneFromPointNormal(min, -XVector); break; case cTopPlane: - D3DXPlaneFromPointNormal(&res, &Vec3GlmToDx(min), &Vec3GlmToDx(-YVector)); + res = PlaneFromPointNormal(min, -YVector); break; case cBackPlane: - D3DXPlaneFromPointNormal(&res, &Vec3GlmToDx(min), &Vec3GlmToDx(-ZVector)); + res = PlaneFromPointNormal(min, -ZVector); break; case cRightPlane: - D3DXPlaneFromPointNormal(&res, &Vec3GlmToDx(max), &Vec3GlmToDx(XVector)); + res = PlaneFromPointNormal(max, XVector); break; case cBottomPlane: - D3DXPlaneFromPointNormal(&res, &Vec3GlmToDx(max), &Vec3GlmToDx(YVector)); + res = PlaneFromPointNormal(max, YVector); break; case cFrontPlane: - D3DXPlaneFromPointNormal(&res, &Vec3GlmToDx(max), &Vec3GlmToDx(ZVector)); + res = PlaneFromPointNormal(max, ZVector); break; } @@ -708,46 +708,46 @@ void Frustum::CalculateCorners(Corners& pPoints, const D3DXMATRIX& invViewProj) void Frustum::Refresh(const D3DXMATRIX& viewProjMat) { //extract left plane - left.a = viewProjMat._14 - viewProjMat._12; - left.b = viewProjMat._24 - viewProjMat._22; - left.c = viewProjMat._34 - viewProjMat._32; - left.d = viewProjMat._44 - viewProjMat._42; - D3DXPlaneNormalize(&left, &left); + left.x = viewProjMat._14 - viewProjMat._12; + left.y = viewProjMat._24 - viewProjMat._22; + left.z = viewProjMat._34 - viewProjMat._32; + left.w = viewProjMat._44 - viewProjMat._42; + left = PlaneNormalize(left); //extract top plane - top.a = viewProjMat._14 + viewProjMat._11; - top.b = viewProjMat._24 + viewProjMat._21; - top.c = viewProjMat._34 + viewProjMat._31; - top.d = viewProjMat._44 + viewProjMat._41; - D3DXPlaneNormalize(&top, &top); + top.x = viewProjMat._14 + viewProjMat._11; + top.y = viewProjMat._24 + viewProjMat._21; + top.z = viewProjMat._34 + viewProjMat._31; + top.w = viewProjMat._44 + viewProjMat._41; + top = PlaneNormalize(top); //extract right plane - right.a = viewProjMat._14 + viewProjMat._12; - right.b = viewProjMat._24 + viewProjMat._22; - right.c = viewProjMat._34 + viewProjMat._32; - right.d = viewProjMat._44 + viewProjMat._42; - D3DXPlaneNormalize(&right, &right); + right.x = viewProjMat._14 + viewProjMat._12; + right.y = viewProjMat._24 + viewProjMat._22; + right.z = viewProjMat._34 + viewProjMat._32; + right.w = viewProjMat._44 + viewProjMat._42; + right = PlaneNormalize(right); //extract bottom plane - bottom.a = viewProjMat._14 - viewProjMat._11; - bottom.b = viewProjMat._24 - viewProjMat._21; - bottom.c = viewProjMat._34 - viewProjMat._31; - bottom.d = viewProjMat._44 - viewProjMat._41; - D3DXPlaneNormalize(&bottom, &bottom); + bottom.x = viewProjMat._14 - viewProjMat._11; + bottom.y = viewProjMat._24 - viewProjMat._21; + bottom.z = viewProjMat._34 - viewProjMat._31; + bottom.w = viewProjMat._44 - viewProjMat._41; + bottom = PlaneNormalize(bottom); //extract near plane - pNear.a = viewProjMat._13; - pNear.b = viewProjMat._23; - pNear.c = viewProjMat._33; - pNear.d = viewProjMat._43; - D3DXPlaneNormalize(&pNear, &pNear); + pNear.x = viewProjMat._13; + pNear.y = viewProjMat._23; + pNear.z = viewProjMat._33; + pNear.w = viewProjMat._43; + pNear = PlaneNormalize(pNear); //extract far plane - pFar.a = viewProjMat._14 - viewProjMat._13; - pFar.b = viewProjMat._24 - viewProjMat._23; - pFar.c = viewProjMat._34 - viewProjMat._33; - pFar.d = viewProjMat._44 - viewProjMat._43; - D3DXPlaneNormalize(&pFar, &pFar); + pFar.x = viewProjMat._14 - viewProjMat._13; + pFar.y = viewProjMat._24 - viewProjMat._23; + pFar.z = viewProjMat._34 - viewProjMat._33; + pFar.w = viewProjMat._44 - viewProjMat._43; + pFar = PlaneNormalize(pFar); } Frustum::SpaceContains Frustum::ContainsAABB(const AABB& aabb) const @@ -771,7 +771,7 @@ Frustum::SpaceContains Frustum::ContainsAABB(const AABB& aabb) const PointIn = true; for (int iCorner = 0; iCorner < 8; ++iCorner) - if (D3DXPlaneDotCoord(&planes[iPlane], &Vec3GlmToDx(corners[iCorner])) < 0) + if (PlaneDotCoord(planes[iPlane], corners[iCorner]) < 0) { PointIn = false; --inCount; @@ -794,10 +794,10 @@ bool RayCastIntersectPlane(const glm::vec3& rayStart, const glm::vec3& rayVec, c { const float EPSILON = 1.0e-10f; - float d = D3DXPlaneDotNormal(&plane, &Vec3GlmToDx(rayVec)); + float d = PlaneDotNormal(plane, rayVec); if (abs(d) > EPSILON) { - outT = -D3DXPlaneDotCoord(&plane, &Vec3GlmToDx(rayStart)) / d; + outT = -PlaneDotCoord(plane, rayStart) / d; return outT > 0; } return false; diff --git a/src/Rock3dEngine/source/GraphManager.cpp b/src/Rock3dEngine/source/GraphManager.cpp index 95a316cd..dcf931bf 100644 --- a/src/Rock3dEngine/source/GraphManager.cpp +++ b/src/Rock3dEngine/source/GraphManager.cpp @@ -1487,10 +1487,10 @@ bool LineCastIntersPlane(const glm::vec3& rayStart, const glm::vec3& rayVec, con { const float EPSILON = 1.0e-10f; - float d = D3DXPlaneDotNormal(&plane, &Vec3GlmToDx(rayVec)); + float d = PlaneDotCoord(plane, rayVec); if (abs(d) > EPSILON) { - outT = -D3DXPlaneDotCoord(&plane, &Vec3GlmToDx(rayStart)) / d; + outT = -PlaneDotCoord(plane, rayStart) / d; return true; } return false; @@ -1536,8 +1536,7 @@ bool ComputeZBounds(graph::Engine& engine, const graph::CameraCI& camera, const { bool res = false; - glm::vec4 posNearPlane; - D3DXPlaneFromPointNormal(&posNearPlane, &Vec3GlmToDx(camera.GetDesc().pos), &Vec3GlmToDx(camera.GetDesc().dir)); + glm::vec4 posNearPlane = PlaneFromPointNormal(camera.GetDesc().pos, camera.GetDesc().dir); glm::vec3 rayVec[4] = {glm::vec3(-1.0f, -1.0f, 1.0f), glm::vec3(1.0f, -1.0f, 1.0f), glm::vec3(-1.0f, 1.0f, 1.0f), glm::vec3(1.0f, 1.0f, 1.0f)}; glm::vec3 rayPos[4] = {glm::vec3(-1.0f, -1.0f, 0.0f), glm::vec3(1.0f, -1.0f, 0.0f), glm::vec3(-1.0f, 1.0f, 0.0f), glm::vec3(1.0f, 1.0f, 0.0f)}; @@ -1551,8 +1550,8 @@ bool ComputeZBounds(graph::Engine& engine, const graph::CameraCI& camera, const float tNear, tFar; if (aabb.LineCastIntersect(rayPos[i], rayVec[i], tNear, tFar)) { - tNear = D3DXPlaneDotCoord(&posNearPlane, &Vec3GlmToDx(rayPos[i] + rayVec[i] * tNear)); - tFar = D3DXPlaneDotCoord(&posNearPlane, &Vec3GlmToDx(rayPos[i] + rayVec[i] * tFar)); + tNear = PlaneDotCoord(posNearPlane, rayPos[i] + rayVec[i] * tNear); + tFar = PlaneDotCoord(posNearPlane, rayPos[i] + rayVec[i] * tFar); if (tNear < minZ || !res) minZ = tNear; diff --git a/src/Rock3dEngine/source/graph/ActorManager.cpp b/src/Rock3dEngine/source/graph/ActorManager.cpp index 46103450..62bf47a7 100644 --- a/src/Rock3dEngine/source/graph/ActorManager.cpp +++ b/src/Rock3dEngine/source/graph/ActorManager.cpp @@ -304,9 +304,8 @@ const ActorManager::Planar& ActorManager::GetPlanar(Actor* actor) D3DXMATRIX mat = actor->GetInvWorldMat(); D3DXMatrixTranspose(&mat, &mat); - glm::vec4 plane; - D3DXPlaneTransform(&plane, &glm::vec4(Vec4GlmToDx(actor->vec1())), &mat); - D3DXPlaneNormalize(&plane, &plane); + glm::vec4 plane = PlaneTransform(actor->vec1(), mat); + plane = PlaneNormalize(plane); float minDist = 0; float minAngle = 0; @@ -315,8 +314,8 @@ const ActorManager::Planar& ActorManager::GetPlanar(Actor* actor) for (Planars::iterator iter = _planars.begin(); iter != _planars.end(); ++iter) { const glm::vec4& testPlane = iter->plane; - float dist = abs(testPlane.d - plane.d); - float angle = abs(D3DXPlaneDotNormal(&testPlane, &D3DXVECTOR3(plane))); + float dist = abs(testPlane.w - plane.w); + float angle = abs(PlaneDotNormal(testPlane, glm::vec3(plane))); if (dist < 0.5f && angle > 0.99f //&& (planarIter == _planars.end() || diff --git a/src/Rock3dEngine/source/graph/ContextInfo.cpp b/src/Rock3dEngine/source/graph/ContextInfo.cpp index d5612659..93250865 100644 --- a/src/Rock3dEngine/source/graph/ContextInfo.cpp +++ b/src/Rock3dEngine/source/graph/ContextInfo.cpp @@ -160,7 +160,7 @@ Intersect FrustumAABBIntersect(const Frustum& frustum, bool incZ, const AABB& aa for (int i = 0; i < ePlane; ++i) { - glm::vec3 normal(frustum.planes[i].a, frustum.planes[i].b, frustum.planes[i].c); + glm::vec3 normal(frustum.planes[i].x, frustum.planes[i].y, frustum.planes[i].z); // X axis if (normal.x > 0) @@ -198,9 +198,9 @@ Intersect FrustumAABBIntersect(const Frustum& frustum, bool incZ, const AABB& aa vMax.z = aabb.min.z; } - if (D3DXPlaneDotCoord(&frustum.planes[i], &Vec3GlmToDx(vMin)) > 0) + if (PlaneDotCoord(frustum.planes[i], vMin) > 0) return fiOutside; - if (D3DXPlaneDotCoord(&frustum.planes[i], &Vec3GlmToDx(vMax)) >= 0) + if (PlaneDotCoord(frustum.planes[i], vMax) >= 0) ret = fiIntersect; } @@ -211,10 +211,10 @@ bool LineCastIntersPlane(const glm::vec3& rayStart, const glm::vec3& rayVec, con { const float EPSILON = 1.0e-10f; - float d = D3DXPlaneDotNormal(&plane, &Vec3GlmToDx(rayVec)); + float d = PlaneDotNormal(plane, rayVec); if (abs(d) > EPSILON) { - outT = -D3DXPlaneDotCoord(&plane, &Vec3GlmToDx(rayStart)) / d; + outT = -PlaneDotCoord(plane, rayStart) / d; return true; } return false; @@ -259,8 +259,7 @@ unsigned PlaneAABBIntersect(const AABB& aabb, const glm::vec4& plane, glm::vec3 bool CameraCI::ComputeZBounds(const AABB& aabb, float& minZ, float& maxZ) const { bool res = false; - glm::vec4 posNearPlane; - D3DXPlaneFromPointNormal(&posNearPlane, &Vec3GlmToDx(_desc.pos), &Vec3GlmToDx(_desc.dir)); + glm::vec4 posNearPlane = PlaneFromPointNormal(_desc.pos, _desc.dir); BoundBox box(aabb); BoundBox viewBox, projBox; @@ -295,8 +294,8 @@ bool CameraCI::ComputeZBounds(const AABB& aabb, float& minZ, float& maxZ) const float tNear, tFar; if (aabb.LineCastIntersect(rayPos[i], rayVec[i], tNear, tFar)) { - tNear = D3DXPlaneDotCoord(&posNearPlane, &Vec3GlmToDx(rayPos[i] + rayVec[i] * tNear)); - tFar = D3DXPlaneDotCoord(&posNearPlane, &Vec3GlmToDx(rayPos[i] + rayVec[i] * tFar)); + tNear = PlaneDotCoord(posNearPlane, rayPos[i] + rayVec[i] * tNear); + tFar = PlaneDotCoord(posNearPlane, rayPos[i] + rayVec[i] * tFar); if (tNear < minZ || !res) minZ = tNear; @@ -341,7 +340,7 @@ bool CameraCI::ComputeZBounds(const AABB& aabb, float& minZ, float& maxZ) const for (int k = 0; k < 3; ++k) { int numPlane = (i + k + 1) % 4; - float planeDot = D3DXPlaneDotCoord(&frustum.planes[numPlane], &Vec3GlmToDx(points[j])); + float planeDot = PlaneDotCoord(frustum.planes[numPlane], points[j]); if (k == 0) fContain = planeDot; //лежит вне @@ -354,7 +353,7 @@ bool CameraCI::ComputeZBounds(const AABB& aabb, float& minZ, float& maxZ) const if (contain) { - float z = D3DXPlaneDotCoord(&posNearPlane, &Vec3GlmToDx(points[j])); + float z = PlaneDotCoord(posNearPlane, points[j]); if (z < minZ || !res) minZ = z; diff --git a/src/Rock3dEngine/source/graph/StdNode.cpp b/src/Rock3dEngine/source/graph/StdNode.cpp index 68b85dc8..7d20a20b 100644 --- a/src/Rock3dEngine/source/graph/StdNode.cpp +++ b/src/Rock3dEngine/source/graph/StdNode.cpp @@ -1261,8 +1261,7 @@ ScaleCoordSys::DirMove ScaleCoordSys::CompDirMove(const glm::vec3& rayStart, con glm::vec3 plLine[3]; for (int i = 0; i < 3; ++i) plLine[i] = bbPlanes[i] * plSize; - glm::vec4 upPlane; - D3DXPlaneFromPoints(&upPlane, &Vec3GlmToDx(plLine[0]), &Vec3GlmToDx(plLine[1]), &Vec3GlmToDx(plLine[2])); + glm::vec4 upPlane = PlaneFromPoints(plLine[0], plLine[1], plLine[2]); // glm::vec3 maxVec = NullVector; for (int i = 0; i < 3; ++i) diff --git a/src/Rock3dEngine/source/graph/WaterPlane.cpp b/src/Rock3dEngine/source/graph/WaterPlane.cpp index ef8ddd3b..ff5558dd 100644 --- a/src/Rock3dEngine/source/graph/WaterPlane.cpp +++ b/src/Rock3dEngine/source/graph/WaterPlane.cpp @@ -30,14 +30,14 @@ void ReflRender::BeginRT(Engine& engine, const RtFlags& flags) engine.GetContext().ApplyCamera(&_reflCamera); DWORD enableClipPlanes = cClipPlanes[0]; - engine.GetDriver().GetDevice()->SetClipPlane(0, _reflPlane); + engine.GetDriver().GetDevice()->SetClipPlane(0, glm::value_ptr(_reflPlane)); LSL_ASSERT(_clipPlanes.size() <= 5); for (unsigned i = 0; i < _clipPlanes.size(); ++i) { enableClipPlanes |= cClipPlanes[i + 1]; - engine.GetDriver().GetDevice()->SetClipPlane(i + 1, _clipPlanes[i]); + engine.GetDriver().GetDevice()->SetClipPlane(i + 1, glm::value_ptr(_clipPlanes[i])); } engine.GetContext().SetRenderState(rsClipPlaneEnable, enableClipPlanes); @@ -63,7 +63,7 @@ const glm::vec4& ReflRender::GetReflPlane() const void ReflRender::SetReflPlane(const glm::vec4& value) { _reflPlane = value; - D3DXMatrixReflect(&_reflMat, &_reflPlane); + D3DXMatrixReflect(&_reflMat, &Vec4ToPlane(_reflPlane)); } const ReflRender::ClipPlanes& ReflRender::GetClipPlanes() const diff --git a/src/Rock3dGame/source/edit/SceneControl.cpp b/src/Rock3dGame/source/edit/SceneControl.cpp index 864accb5..88717b05 100644 --- a/src/Rock3dGame/source/edit/SceneControl.cpp +++ b/src/Rock3dGame/source/edit/SceneControl.cpp @@ -444,14 +444,13 @@ glm::vec3 SceneControl::ComputePoint(const glm::vec3& curPos, const glm::vec3& r }; glm::vec3 pos = curPos; - glm::vec4 plane; - D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(pos), &Vec3GlmToDx(planeNorm)); + glm::vec4 plane = PlaneFromPointNormal(pos, planeNorm); glm::vec3 newPos; if (abs(glm::dot(planeNorm, rayVec)) < 0.05f || !RayCastIntersectPlane(rayStart, rayVec, plane, newPos)) { newPos = NullVector; - D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(pos), &Vec3GlmToDx(XVector)); + plane = PlaneFromPointNormal(pos, XVector); if (dirMove == dmZ && abs(glm::dot(XVector, rayVec)) < 0.05f || !RayCastIntersectPlane(rayStart, rayVec, plane, newPos)) newPos = NullVector; } diff --git a/src/Rock3dGame/source/game/DataBase.cpp b/src/Rock3dGame/source/game/DataBase.cpp index 389a042f..1e5e0412 100644 --- a/src/Rock3dGame/source/game/DataBase.cpp +++ b/src/Rock3dGame/source/game/DataBase.cpp @@ -1971,11 +1971,8 @@ void DataBase::LoadWorld1() LoadDecor("World1\\zdanie1", "World1\\zdaine1.r3d", "World1\\zdanie1"); LoadDecor("World1\\zdanie2", "World1\\zdaine2.r3d", "World1\\zdanie2"); - glm::vec4 plane; float cosAng = cos(15.0f * D3DX_PI/180.0f); - D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(glm::vec3(0, 0, 6.2f)), &Vec3GlmToDx(glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng))); - glm::vec4 vec1 = PlaneToVec4Glm(plane); - + glm::vec4 vec1 = PlaneFromPointNormal(glm::vec3(0, 0, 6.2f), glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng)); glm::vec4 vec3(0.0f, -0.15f, 0.075f, 0.0f); LoadTrack("World1\\jump", "World1\\Track\\jump.r3d", "World1\\Track\\track1", true, true); @@ -2044,11 +2041,8 @@ void DataBase::LoadWorld2() SaveMapObj(mapObj, MapObjLib::ctDecoration, "World2\\semaphore"); } - glm::vec4 plane; float cosAng = cos(15.0f * D3DX_PI/180.0f); - D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(glm::vec3(0, 0, 6.2f)), &Vec3GlmToDx(glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng))); - glm::vec4 vec1 = PlaneToVec4Glm(plane); - + glm::vec4 vec1 = PlaneFromPointNormal(glm::vec3(0, 0, 6.2f), glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng)); glm::vec4 vec3(0.0f, -0.15f, 0.10f, 0.0f); LoadTrack("World2\\jump", "World2\\Track\\jump.r3d", "World2\\Track\\track1", true, true, true); @@ -2098,14 +2092,9 @@ void DataBase::LoadWorld3() LoadDecor("World3\\stone2", "World3\\stone2.r3d", "World3\\stone"); LoadDecor("World3\\stone3", "World3\\stone3.r3d", "World3\\stone"); - glm::vec4 plane; float cosAng = cos(15.0f * D3DX_PI/180.0f); - D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(glm::vec3(0, 0, 6.2f)), &Vec3GlmToDx(glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng))); - glm::vec4 vec1 = PlaneToVec4Glm(plane); - - D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(glm::vec3(0, 0, 6.2f)), &Vec3GlmToDx(ZVector)); - glm::vec4 vec1Up = PlaneToVec4Glm(plane); - + glm::vec4 vec1 = PlaneFromPointNormal(glm::vec3(0, 0, 6.2f), glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng)); + glm::vec4 vec1Up = PlaneFromPointNormal(glm::vec3(0, 0, 6.2f), ZVector); glm::vec4 vec3(0.0f, -0.15f, 0.125f, 0.0f); LoadTrack("World3\\most", "World3\\Track\\most.r3d", "World3\\Track\\most", true, true, false, false, "", true); @@ -2138,11 +2127,8 @@ void DataBase::LoadWorld4() LoadDecor("World4\\volcano", "World4\\volcano.r3d", "World4\\volcano"); LoadDecor("World4\\crystals", "World4\\crystals.r3d", "World4\\crystals"); - glm::vec4 plane; float cosAng = cos(15.0f * D3DX_PI/180.0f); - D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(glm::vec3(0, 0, 6.2f)), &Vec3GlmToDx(glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng))); - glm::vec4 vec1 = PlaneToVec4Glm(plane); - + glm::vec4 vec1 = PlaneFromPointNormal(glm::vec3(0, 0, 6.2f), glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng)); glm::vec4 vec3(0.0f, -0.25f, 0.25f, 0.0f); LoadTrack("World4\\most", "World4\\Track\\most.r3d", "World4\\Track\\track1", true, true, false, false, "World4\\Track\\pxMost.r3d", true); @@ -2172,15 +2158,9 @@ void DataBase::LoadWorld5() LoadDecor("World5\\transportship", "World5\\transportship.r3d", "World5\\transportship"); LoadDecor("World5\\piece", "World5\\piece.r3d", "World5\\piece"); - glm::vec4 plane; - - D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(glm::vec3(0, 0, 6.2f)), &Vec3GlmToDx(ZVector)); - glm::vec4 plane1 = PlaneToVec4Glm(plane); - + glm::vec4 plane1 = PlaneFromPointNormal(glm::vec3(0, 0, 6.2f), ZVector); float cosAng = cos(20.0f * D3DX_PI/180.0f); - D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(glm::vec3(0, 0, 6.2f)), &Vec3GlmToDx(glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng))); - glm::vec4 plane2 = PlaneToVec4Glm(plane); - + glm::vec4 plane2 = PlaneFromPointNormal(glm::vec3(0, 0, 6.2f), glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng)); glm::vec4 vec3(0.0f, -0.15f, 0.125f, 0.0f); LoadTrack("World5\\most", "World5\\Track\\most.r3d", "World5\\Track\\most", true, true, false, false, "", true); @@ -2208,14 +2188,9 @@ void DataBase::LoadWorld6() LoadDecor("World6\\stone2", "World6\\stone2.r3d", "World6\\stone"); LoadDecor("World6\\stone3", "World6\\stone3.r3d", "World6\\stone"); - glm::vec4 plane; float cosAng = cos(15.0f * D3DX_PI/180.0f); - D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(glm::vec3(0, 0, 6.2f)), &Vec3GlmToDx(glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng))); - glm::vec4 vec1 = PlaneToVec4Glm(plane); - - D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(glm::vec3(0, 0, 6.2f)), &Vec3GlmToDx(ZVector)); - glm::vec4 vec1Up = PlaneToVec4Glm(plane); - + glm::vec4 vec1 = PlaneFromPointNormal(glm::vec3(0, 0, 6.2f), glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng)); + glm::vec4 vec1Up = PlaneFromPointNormal(glm::vec3(0, 0, 6.2f), ZVector); glm::vec4 vec3(0.0f, -0.15f, 0.125f, 0.0f); LoadTrack("World6\\most", "World6\\Track\\most.r3d", "World6\\Track\\track1", true, true, false, false, "World6\\Track\\pxMost.r3d"); diff --git a/src/Rock3dGame/source/game/Player.cpp b/src/Rock3dGame/source/game/Player.cpp index 3e459e43..ff888e91 100644 --- a/src/Rock3dGame/source/game/Player.cpp +++ b/src/Rock3dGame/source/game/Player.cpp @@ -1574,9 +1574,8 @@ Player* Player::FindClosestEnemy(float viewAngle, bool zTest) dir = glm::normalize(enemyPos - carPos); float angle = glm::dot(dir, carDir); - glm::vec4 dirPlane; - D3DXPlaneFromPointNormal(&dirPlane, &Vec3GlmToDx(carPos), &Vec3GlmToDx(carDir)); - float dist = D3DXPlaneDotCoord(&dirPlane, &Vec3GlmToDx(enemyPos)); + glm::vec4 dirPlane = PlaneFromPointNormal(carPos, carDir); + float dist = PlaneDotCoord(dirPlane, enemyPos); float absDist = abs(dist); //Объект ближе diff --git a/src/Rock3dGame/source/game/Trace.cpp b/src/Rock3dGame/source/game/Trace.cpp index d49af136..692d216a 100644 --- a/src/Rock3dGame/source/game/Trace.cpp +++ b/src/Rock3dGame/source/game/Trace.cpp @@ -328,7 +328,7 @@ void PlaneFromDirVec(const glm::vec3& dir, const glm::vec3& norm, const glm::vec glm::vec3 right, up; right = glm::cross(dir, norm); up = glm::cross(right, dir); - D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(pos), &Vec3GlmToDx(up)); + plane = PlaneFromPointNormal(pos, up); } bool WayNode::Tile::RayCast(const glm::vec3& rayPos, const glm::vec3& rayVec, float* dist) const @@ -344,7 +344,7 @@ bool WayNode::Tile::RayCast(const glm::vec3& rayPos, const glm::vec3& rayVec, fl //Вектора коллиниарны else //Строим плоскость через центр тайла перпендикулярно направлению - D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx((GetPos() + GetNextPos()) / 2.0f), &Vec3GlmToDx(dir)); + plane = PlaneFromPointNormal((GetPos() + GetNextPos()) / 2.0f, dir); float tmp; bool res = RayCastIntersectPlane(rayPos, rayVec, plane, tmp) && IsContains(rayPos + rayVec * tmp); diff --git a/src/Rock3dGame/source/game/Weapon.cpp b/src/Rock3dGame/source/game/Weapon.cpp index c7e2adec..f7317d85 100644 --- a/src/Rock3dGame/source/game/Weapon.cpp +++ b/src/Rock3dGame/source/game/Weapon.cpp @@ -657,9 +657,8 @@ void Proj::MasloContact(const px::Scene::OnContactEvent& contact) if (car == NULL || _time1 >= 0 || car->IsMineLocked()) return; - glm::vec4 plane; - D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(car->GetGrActor().GetWorldPos()), &Vec3GlmToDx(car->GetGrActor().GetWorldRight())); - float dist = PlaneDistToPoint(plane, GetWorldPos()); + glm::vec4 plane = PlaneFromPointNormal(car->GetGrActor().GetWorldPos(), car->GetGrActor().GetWorldRight()); + float dist = PlaneDotCoord(plane, GetWorldPos()); if (car->GetPxActor().GetNxActor()->getLinearVelocity().magnitude() > 3.0f) car->LockClutch(abs(dist) > 0.1f && dist > 0 ? -_desc.damage : _desc.damage); @@ -1189,10 +1188,9 @@ void Proj::ThunderContact(const px::Scene::OnContactEvent& contact) float angle = velNorm.dot(norm); if (abs(angle) > 0.1f) { - glm::vec4 plane; - D3DXPlaneFromPointNormal(&plane, &Vec3GlmToDx(NullVector), &Vec3GlmToDx(glm::make_vec3(norm.get()))); + glm::vec4 plane = PlaneFromPointNormal(NullVector, glm::make_vec3(norm.get())); D3DXMATRIX mat; - D3DXMatrixReflect(&mat, &plane); + D3DXMatrixReflect(&mat, &Vec4ToPlane(plane)); glm::vec3 vel = glm::make_vec3(velocity.get()); vel = Vec3TransformNormal(vel, mat); From f3411f705fa2c270de57b9d48cefcd1099eb6714 Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Mon, 31 Oct 2022 22:43:27 +0300 Subject: [PATCH 44/55] math: replace D3DX_PI with glm::pi, glm::half_pi and so on --- src/MapEditor/ClassView.cpp | 4 +- src/MathLib/header/MathCommon.h | 1 + src/Rock3dEngine/header/graph/ContextInfo.h | 4 +- src/Rock3dEngine/source/GraphManager.cpp | 2 +- src/Rock3dEngine/source/graph/BloomEffect.cpp | 2 +- src/Rock3dEngine/source/graph/ContextInfo.cpp | 2 +- .../source/graph/RenderToTexture.cpp | 2 +- .../source/graph/SceneManager.cpp | 2 +- src/Rock3dEngine/source/graph/StdNode.cpp | 2 +- src/Rock3dEngine/source/gui/GUI.cpp | 18 +-- src/Rock3dGame/header/game/DataBase.h | 2 +- src/Rock3dGame/source/edit/SceneControl.cpp | 8 +- src/Rock3dGame/source/game/AICar.cpp | 12 +- src/Rock3dGame/source/game/CameraManager.cpp | 32 ++--- src/Rock3dGame/source/game/DataBase.cpp | 122 +++++++++--------- src/Rock3dGame/source/game/Environment.cpp | 4 +- src/Rock3dGame/source/game/GameBase.cpp | 2 +- src/Rock3dGame/source/game/GameCar.cpp | 12 +- src/Rock3dGame/source/game/GameObject.cpp | 16 +-- src/Rock3dGame/source/game/HudMenu.cpp | 4 +- src/Rock3dGame/source/game/HumanPlayer.cpp | 4 +- src/Rock3dGame/source/game/MainMenu2.cpp | 20 +-- src/Rock3dGame/source/game/Menu.cpp | 4 +- src/Rock3dGame/source/game/OptionsMenu.cpp | 8 +- src/Rock3dGame/source/game/Player.cpp | 10 +- src/Rock3dGame/source/game/Race.cpp | 98 +++++++------- src/Rock3dGame/source/game/RaceMenu2.cpp | 58 ++++----- src/Rock3dGame/source/game/Weapon.cpp | 8 +- src/Rock3dGame/source/net/NetPlayer.cpp | 2 +- 29 files changed, 234 insertions(+), 231 deletions(-) diff --git a/src/MapEditor/ClassView.cpp b/src/MapEditor/ClassView.cpp index 671f6e06..a81ed266 100644 --- a/src/MapEditor/ClassView.cpp +++ b/src/MapEditor/ClassView.cpp @@ -156,7 +156,9 @@ void CClassView::SelectItem(const glm::vec3& mapObjPos) } if (_autoRot) { - glm::quat rot = glm::quat(glm::vec3(D3DX_PI/12 * RandomRange(-1.0f, 1.0f), D3DX_PI/12 * RandomRange(-1.0f, 1.0f), D3DX_PI/12 * RandomRange(-1.0f, 1.0f))); + glm::quat rot = glm::quat(glm::vec3(glm::pi() / 12 * RandomRange(-1.0f, 1.0f), + glm::pi() / 12 * RandomRange(-1.0f, 1.0f), + glm::pi() / 12 * RandomRange(-1.0f, 1.0f))); _newMapObj->SetRot(rot); } diff --git a/src/MathLib/header/MathCommon.h b/src/MathLib/header/MathCommon.h index 63dc1d6d..501af8ef 100644 --- a/src/MathLib/header/MathCommon.h +++ b/src/MathLib/header/MathCommon.h @@ -6,6 +6,7 @@ #include // glm::vec3 #include // glm::vec4 #include // glm::mat4 +#include // glm::pi #include // glm::quat #include // glm::value_ptr, glm::make_vec3, ... #include // glm::length2 diff --git a/src/Rock3dEngine/header/graph/ContextInfo.h b/src/Rock3dEngine/header/graph/ContextInfo.h index fdceb1cf..9e1d22cc 100644 --- a/src/Rock3dEngine/header/graph/ContextInfo.h +++ b/src/Rock3dEngine/header/graph/ContextInfo.h @@ -190,8 +190,8 @@ struct LightDesc attenuation0 = 1; attenuation1 = 0; attenuation2 = 0; - phi = D3DX_PI/2.0f; - theta = D3DX_PI/4.0f; + phi = glm::half_pi(); + theta = glm::quarter_pi(); pos = NullVector; dir = XVector; diff --git a/src/Rock3dEngine/source/GraphManager.cpp b/src/Rock3dEngine/source/GraphManager.cpp index dcf931bf..4f45118e 100644 --- a/src/Rock3dEngine/source/GraphManager.cpp +++ b/src/Rock3dEngine/source/GraphManager.cpp @@ -2286,7 +2286,7 @@ bool GraphManager::Render(float deltaTime, bool pause) { radVec = glm::vec3(1, 0, 0); } - glm::quat radQuat = glm::angleAxis(D3DX_PI / 2.5f, radVec); + glm::quat radQuat = glm::angleAxis(glm::pi() / 2.5f, radVec); Vec3Rotate(glm::vec3(0, 0, 1), radQuat, radVec); radVec = radVec * 1000.0f; diff --git a/src/Rock3dEngine/source/graph/BloomEffect.cpp b/src/Rock3dEngine/source/graph/BloomEffect.cpp index 8d750612..f90de098 100644 --- a/src/Rock3dEngine/source/graph/BloomEffect.cpp +++ b/src/Rock3dEngine/source/graph/BloomEffect.cpp @@ -29,7 +29,7 @@ void GetSamplesDownScale4x4(DWORD dwWidth, DWORD dwHeight, glm::vec2 avSampleOff inline float GaussianDistribution( float x, float y, float rho ) { - float g = 1.0f / sqrtf( 2.0f * D3DX_PI * rho * rho ); + float g = 1.0f / sqrtf( 2.0f * glm::pi() * rho * rho ); g *= expf( -( x * x + y * y ) / ( 2 * rho * rho ) ); return g; diff --git a/src/Rock3dEngine/source/graph/ContextInfo.cpp b/src/Rock3dEngine/source/graph/ContextInfo.cpp index 93250865..7ed2d2f5 100644 --- a/src/Rock3dEngine/source/graph/ContextInfo.cpp +++ b/src/Rock3dEngine/source/graph/ContextInfo.cpp @@ -53,7 +53,7 @@ DWORD ContextInfo::GetDefTextureStageState(int stage, TextureStageState state) CameraDesc::CameraDesc() { aspect = 1.0f; - fov = D3DX_PI/2.0f; + fov = glm::half_pi(); nearDist = 1.0f; farDist = 100.0f; style = csPerspective; diff --git a/src/Rock3dEngine/source/graph/RenderToTexture.cpp b/src/Rock3dEngine/source/graph/RenderToTexture.cpp index 85ade260..ec846f2c 100644 --- a/src/Rock3dEngine/source/graph/RenderToTexture.cpp +++ b/src/Rock3dEngine/source/graph/RenderToTexture.cpp @@ -183,7 +183,7 @@ void RenderToCubeTex::BeginCubeSurf(Engine& engine) camDesc.aspect = 1; camDesc.nearDist = 1.0f; camDesc.farDist = 100.0f; - camDesc.fov = D3DX_PI/2; + camDesc.fov = glm::half_pi(); switch(_flags.faceType) { diff --git a/src/Rock3dEngine/source/graph/SceneManager.cpp b/src/Rock3dEngine/source/graph/SceneManager.cpp index bb214cd3..49f88894 100644 --- a/src/Rock3dEngine/source/graph/SceneManager.cpp +++ b/src/Rock3dEngine/source/graph/SceneManager.cpp @@ -510,7 +510,7 @@ void BaseSceneNode::MoveAroundTarget(const glm::vec3& worldTarget, float pitchDe // calculate the current pitch. // 0 is looking down and PI is looking up float pitchNow = acos(glm::dot(worldUp, normalT2C)); - pitchNow = lsl::ClampValue(pitchNow + pitchDelta, 0 + 0.025f, D3DX_PI - 0.025f); + pitchNow = lsl::ClampValue(pitchNow + pitchDelta, 0 + 0.025f, glm::pi() - 0.025f); // create a new vector pointing up and then rotate it down // into the new position D3DXMATRIX pitchMat; diff --git a/src/Rock3dEngine/source/graph/StdNode.cpp b/src/Rock3dEngine/source/graph/StdNode.cpp index 7d20a20b..3e4b8d68 100644 --- a/src/Rock3dEngine/source/graph/StdNode.cpp +++ b/src/Rock3dEngine/source/graph/StdNode.cpp @@ -1402,7 +1402,7 @@ void FillDataCylinder(res::MeshData& mesh, float botRadius, float topRadius, flo LSL_ASSERT(isBot || isTop && slices > 2 && height > 0); - float aStep = 2 * D3DX_PI / slices; + float aStep = 2 * glm::pi() / slices; unsigned botVCnt = isBot * slices + 1; unsigned topVCnt = isTop * slices + 1; unsigned botFCnt = isBot * slices; diff --git a/src/Rock3dEngine/source/gui/GUI.cpp b/src/Rock3dEngine/source/gui/GUI.cpp index f6cdd0bb..36a534fc 100644 --- a/src/Rock3dEngine/source/gui/GUI.cpp +++ b/src/Rock3dEngine/source/gui/GUI.cpp @@ -2835,7 +2835,7 @@ StepperBox::StepperBox(Manager* manager): Widget(manager), _selIndex(-1), _items _right->SetAlign(waLeft); _right->SetEvent(_childEvent); _right->SetStyle(Button::bsSelAnim); - _right->SetRot(D3DX_PI); + _right->SetRot(glm::pi()); _left = manager->CreateButton(); _left->SetParent(this); @@ -3449,7 +3449,7 @@ ViewPort3d::ViewPort3d(Manager* manager): _MyBase(manager), _style(msStatic), _s _view3d->AddRef(); InsertGraphic(_view3d); - _rot3dSpeed = glm::angleAxis(3.0f * D3DX_PI / 4.0f, ZVector); + _rot3dSpeed = glm::angleAxis(3.0f * glm::quarter_pi(), ZVector); } ViewPort3d::~ViewPort3d() @@ -3500,13 +3500,13 @@ bool ViewPort3d::OnMouseOver(const MouseMove& mMove) { //Вращение по двум осям /*D3DXQUATERNION rotY; - D3DXQuaternionRotationAxis(&rotY, &YVector, D3DX_PI * mMove.dtCoord.x/100.0f); + D3DXQuaternionRotationAxis(&rotY, &YVector, glm::pi() * mMove.dtCoord.x/100.0f); D3DXQUATERNION rotX; - D3DXQuaternionRotationAxis(&rotX, &XVector, -D3DX_PI * mMove.dtCoord.y/100.0f); + D3DXQuaternionRotationAxis(&rotX, &XVector, -glm::pi() * mMove.dtCoord.y/100.0f); SetRot3d(GetRot3d() * rotY * rotX);*/ //Вращение по одной оси, совпадающией с up mesh - glm::quat rotZ = glm::angleAxis(D3DX_PI * mMove.dtCoord.x / 200.0f, ZVector); + glm::quat rotZ = glm::angleAxis(glm::pi() * mMove.dtCoord.x / 200.0f, ZVector); GetBox()->SetRot(GetBox()->GetRot() * rotZ); } } @@ -3685,14 +3685,14 @@ void ScrollBox::ApplyOptions() case soVert: _scrollBut[sdDown] = NewArrow(); _scrollBut[sdUp] = NewArrow(); - _scrollBut[sdUp]->SetRot(D3DX_PI); + _scrollBut[sdUp]->SetRot(glm::pi()); break; case soHor: _scrollBut[sdLeft] = NewArrow(); - _scrollBut[sdLeft]->SetRot(-D3DX_PI/2.0f); + _scrollBut[sdLeft]->SetRot(-glm::half_pi()); _scrollBut[sdRight] = NewArrow(); - _scrollBut[sdRight]->SetRot(D3DX_PI/2.0f); + _scrollBut[sdRight]->SetRot(glm::half_pi()); break; } @@ -4629,7 +4629,7 @@ VolumeBar::VolumeBar(Manager* manager): Widget(manager), _volume(0.0f), _stepCou _right->SetAlign(waLeft); _right->SetEvent(_childEvent); _right->SetStyle(Button::bsSelAnim); - _right->SetRot(D3DX_PI); + _right->SetRot(glm::pi()); _left = manager->CreateButton(); _left->SetParent(this); diff --git a/src/Rock3dGame/header/game/DataBase.h b/src/Rock3dGame/header/game/DataBase.h index fb13f142..46fff327 100644 --- a/src/Rock3dGame/header/game/DataBase.h +++ b/src/Rock3dGame/header/game/DataBase.h @@ -25,7 +25,7 @@ class DataBase: public Component struct CarDesc { - CarDesc(): mass(0), centerMassPos(NullVector), bodyScale(IdentityVector), bodyOffset(NullVector), bodyAABB(NullAABB), bodyOffsetModel(NullVector), bodyScaleModel(IdentityVector), wheelRadius(0), wheelScaleModel(IdentityVector), inverseWheelMass(0), maxSpeed(0), tireSpring(2.0f), steerSpeed(D3DX_PI/1.6f), steerRot(D3DX_PI), flyYTorque(D3DX_PI/2), clampXTorque(0), clampYTorque(0), angDamping(1, 1, 0), maxRPM(7000), frontWheelDrive(true), backWheelDrive(false), gravEngine(false), clutchImmunity(false), wheelEff(true), halfWheelEff(false), guseniza(false), podushka(false), wakeFrictionModel(false), suspensionTravel(0), suspensionSpring(0), suspensionDamper(0), suspensionTarget(0), soundMotorIdle(""), soundMotorHigh(""), motorVolumeRange(0, 1), motorFreqRange(0, 1), bump(false) {} + CarDesc(): mass(0), centerMassPos(NullVector), bodyScale(IdentityVector), bodyOffset(NullVector), bodyAABB(NullAABB), bodyOffsetModel(NullVector), bodyScaleModel(IdentityVector), wheelRadius(0), wheelScaleModel(IdentityVector), inverseWheelMass(0), maxSpeed(0), tireSpring(2.0f), steerSpeed(glm::pi()/1.6f), steerRot(glm::pi()), flyYTorque(glm::half_pi()), clampXTorque(0), clampYTorque(0), angDamping(1, 1, 0), maxRPM(7000), frontWheelDrive(true), backWheelDrive(false), gravEngine(false), clutchImmunity(false), wheelEff(true), halfWheelEff(false), guseniza(false), podushka(false), wakeFrictionModel(false), suspensionTravel(0), suspensionSpring(0), suspensionDamper(0), suspensionTarget(0), soundMotorIdle(""), soundMotorHigh(""), motorVolumeRange(0, 1), motorFreqRange(0, 1), bump(false) {} float mass; glm::vec3 centerMassPos; diff --git a/src/Rock3dGame/source/edit/SceneControl.cpp b/src/Rock3dGame/source/edit/SceneControl.cpp index 88717b05..1c134272 100644 --- a/src/Rock3dGame/source/edit/SceneControl.cpp +++ b/src/Rock3dGame/source/edit/SceneControl.cpp @@ -175,11 +175,11 @@ bool SceneControl::Control::OnMouseMoveEvent(const game::MouseMove& mMove) } // - float angleZ = offCoord.x / 400.0f * 2 * D3DX_PI; - angleZ = ceil(angleZ / (D3DX_PI/12.0f)) * (D3DX_PI/12.0f); + float angleZ = offCoord.x / 400.0f * 2 * glm::pi(); + angleZ = ceil(angleZ / (glm::pi()/12.0f)) * (glm::pi()/12.0f); // - float angleY = -offCoord.y / 400.0f * 2 * D3DX_PI; - angleY = ceil(angleY / (D3DX_PI/12.0f)) * (D3DX_PI/12.0f); + float angleY = -offCoord.y / 400.0f * 2 * glm::pi(); + angleY = ceil(angleY / (glm::pi()/12.0f)) * (glm::pi()/12.0f); glm::quat rotZ = glm::angleAxis(angleZ, ZVector); glm::quat rotY = glm::angleAxis(angleY, _owner->_edit->GetWorld()->GetCamera()->GetRight()); diff --git a/src/Rock3dGame/source/game/AICar.cpp b/src/Rock3dGame/source/game/AICar.cpp index d9368f57..ee073c59 100644 --- a/src/Rock3dGame/source/game/AICar.cpp +++ b/src/Rock3dGame/source/game/AICar.cpp @@ -9,7 +9,7 @@ namespace r3d namespace game { -const float AICar::cSteerAngleBias = D3DX_PI/128.0f; +const float AICar::cSteerAngleBias = glm::pi()/128.0f; const float AICar::cMaxSpeedBlocking = 0.5f; const float AICar::cMaxTimeBlocking = 1.0f; @@ -130,7 +130,7 @@ void AICar::PathState::ComputeMovDir(AICar* owner, float deltaTime, const Player dirArea = 5.0f + abs(car.speed) * car.kSteerControl * 10; //Корректировка траектории движения относительно поворота - if (nextTile->GetTile().GetTurnAngle() > D3DX_PI/12) + if (nextTile->GetTile().GetTurnAngle() > glm::pi()/12) { float edgeDist = Line2DistToPoint(nextTile->GetTile().GetEdgeLine(), car.pos); if (edgeDist < car.size) @@ -157,7 +157,7 @@ void AICar::PathState::ComputeMovDir(AICar* owner, float deltaTime, const Player //Берм в качестве расчетного либо активный узел либо следующий тайл WayNode* curBreakTile = curNode ? curNode : nextTile; // - if (curBreakTile->GetTile().GetTurnAngle() > D3DX_PI/12) + if (curBreakTile->GetTile().GetTurnAngle() > glm::pi()/12) { float kLong = car.kSteerControl * car.kSteerControl; float normDist = Line2DistToPoint(curBreakTile->GetTile().GetMidNormLine(), car.pos); @@ -282,7 +282,7 @@ AICar::AttackState::~AttackState() Player* AICar::AttackState::FindEnemy(AICar* owner, const Player::CarState& car, int dir, Player* currentEnemy) { //ищем новую или более доступную цель - Player* enemy = owner->_player->FindClosestEnemy(D3DX_PI/4 * dir, true); + Player* enemy = owner->_player->FindClosestEnemy(glm::quarter_pi() * dir, true); if (currentEnemy && currentEnemy == enemy) return enemy; @@ -390,7 +390,7 @@ void AICar::AttackState::RunHyper(AICar* owner, const CarState& car, const PathS float distTile = car.curTile->GetTile().ComputeLength(1.0f - car.curTile->GetTile().ComputeCoordX(car.pos)); float maxDistHyper = hyperDrive ? (hyperDrive->GetDesc().Front().speed + car.speed) : 0.0f; - bool hyperDist = (path.nextTile == NULL || path.nextTile->GetTile().GetTurnAngle() < D3DX_PI/6 || distTile > maxDistHyper); + bool hyperDist = (path.nextTile == NULL || path.nextTile->GetTile().GetTurnAngle() < glm::pi()/6 || distTile > maxDistHyper); if (hyperDrive && car.speed > 1.0f && hyperDist && !path._break) { @@ -508,7 +508,7 @@ void AICar::ControlState::Update(AICar* owner, float deltaTime, const Player::Ca //Вычисляем угол между направлением машины и направляющей движения steerAngle = abs(acos(Vec2Dot(car.dir, path.moveDir))); //учет инерционности рулевого управления - //steerAngle = std::max(0.0f, steerAngle - D3DX_PI * deltaTime * 2.0f); + //steerAngle = std::max(0.0f, steerAngle - glm::pi() * deltaTime * 2.0f); //float errorSteer = //Угол поворота колес diff --git a/src/Rock3dGame/source/game/CameraManager.cpp b/src/Rock3dGame/source/game/CameraManager.cpp index a45c97f8..18b6a47b 100644 --- a/src/Rock3dGame/source/game/CameraManager.cpp +++ b/src/Rock3dGame/source/game/CameraManager.cpp @@ -9,7 +9,7 @@ namespace r3d namespace game { -CameraManager::CameraManager(World* world): _world(world), _player(0), _target(0, 0, 0, 5.0f), _light(0), _style(cStyleEnd), _near(1.0f), _far(100.0f), _clampAngle(0.0f, 0.0f, 25.0f * D3DX_PI/180, 80.0f * D3DX_PI/180), _angleSpeed(D3DX_PI/48, 0, 0), _stableAngle(75.0f * D3DX_PI/180, 0, 0), _flyCurTime(-1) +CameraManager::CameraManager(World* world): _world(world), _player(0), _target(0, 0, 0, 5.0f), _light(0), _style(cStyleEnd), _near(1.0f), _far(100.0f), _clampAngle(0.0f, 0.0f, glm::radians(25.0f), glm::radians(80.0f)), _angleSpeed(glm::pi()/48, 0, 0), _stableAngle(glm::radians(75.0f), 0, 0), _flyCurTime(-1) { _camera = new graph::Camera(); _camera->SetPos(glm::vec3(50.0f, 50.0f, 50.0f)); @@ -165,8 +165,8 @@ void CameraManager::Control::OnInputFrame(float deltaTime) if (_manager->_style == csBlock) return; - static float cIsoAngY = 15.5f * D3DX_PI / 180; - const float cIsoAngZ = 45.0f * D3DX_PI / 180; + static float cIsoAngY = glm::radians(15.5f); + const float cIsoAngZ = glm::radians(45.0f); const float targDist = 20.0f; static float cIsoBorder = 5.0f; @@ -179,13 +179,13 @@ void CameraManager::Control::OnInputFrame(float deltaTime) if (tmp != 1) { tmp = 1; - cIsoAngY = 16.0f * D3DX_PI / 180; + cIsoAngY = glm::radians(16.0f); cIsoBorder = 5.5f; } else { tmp = 0; - cIsoAngY = 15.5f * D3DX_PI / 180; + cIsoAngY = glm::radians(15.5f); cIsoBorder = 5.0f; } } @@ -203,17 +203,17 @@ void CameraManager::Control::OnInputFrame(float deltaTime) } else if (tmp == 2) { - cIsoAngY = 16.5f * D3DX_PI / 180; + cIsoAngY = glm::radians(16.5f); cIsoBorder = 5.5f; } else if (tmp == 1) { - cIsoAngY = 16.0f * D3DX_PI / 180; + cIsoAngY = glm::radians(16.0f); cIsoBorder = 5.5f; } else { - cIsoAngY = 15.5f * D3DX_PI / 180; + cIsoAngY = glm::radians(15.5f); cIsoBorder = 5.0f; } } @@ -226,9 +226,9 @@ void CameraManager::Control::OnInputFrame(float deltaTime) glm::quat cIsoRot = isoRotZ * isoRotY; const float speedMove = 20.0f * deltaTime; - const float angleSpeed = D3DX_PI / 2.0f * deltaTime; + const float angleSpeed = glm::half_pi() * deltaTime; const float retAngleSpeed = angleSpeed * 2.0f; - const float maxAngle = D3DX_PI / 6; + const float maxAngle = glm::pi() / 6; const glm::vec3 cCamTargetOff(-4.6f, 0.0f, 2.4f); ControlManager* control = _manager->_world->GetControl(); @@ -373,7 +373,7 @@ void CameraManager::Control::OnInputFrame(float deltaTime) camPos2 += targetPos; D3DXVec3Lerp(&camPos, &camPos1, &camPos2, 8.0f * deltaTime);*/ - glm::quat yRot = glm::angleAxis(D3DX_PI * 12.0f, glm::vec3(0, 1, 0)); + glm::quat yRot = glm::angleAxis(glm::pi() * 12.0f, glm::vec3(0, 1, 0)); camQuat = camQuat * yRot; pos = camPos; @@ -705,11 +705,11 @@ void CameraManager::ChangeStyle(Style value) } if (_style == csAutoObserver || _style == csBlock) - _camera->SetFov(60 * D3DX_PI / 180); + _camera->SetFov(glm::radians(60.0f)); else if (_style == csThirdPerson) - _camera->SetFov(75 * D3DX_PI / 180); + _camera->SetFov(glm::radians(75.0f)); else - _camera->SetFov(90 * D3DX_PI / 180); + _camera->SetFov(glm::radians(90.0f)); if (_style == csFreeView) { @@ -830,7 +830,7 @@ void CameraManager::GetObserverCoord(const glm::vec3& targetPos, float targetDis if (dragX) { - dAngZ = lsl::ClampValue(dMPos.x * D3DX_PI * 0.001f, -D3DX_PI/2, D3DX_PI/2); + dAngZ = lsl::ClampValue(dMPos.x * glm::pi() * 0.001f, -glm::half_pi(), glm::half_pi()); } glm::quat dRotZ = glm::angleAxis(dAngZ, ZVector); @@ -908,7 +908,7 @@ void CameraManager::GetObserverCoord(const glm::vec3& targetPos, float targetDis if (dragY) { - float dAngY = lsl::ClampValue(-dMPos.y * D3DX_PI * 0.001f, -D3DX_PI/2, D3DX_PI/2); + float dAngY = lsl::ClampValue(-dMPos.y * glm::pi() * 0.001f, -glm::half_pi(), glm::half_pi()); angLow = _clampAngle.z; angUp = _clampAngle.w; diff --git a/src/Rock3dGame/source/game/DataBase.cpp b/src/Rock3dGame/source/game/DataBase.cpp index 1e5e0412..c0f2af3f 100644 --- a/src/Rock3dGame/source/game/DataBase.cpp +++ b/src/Rock3dGame/source/game/DataBase.cpp @@ -844,8 +844,8 @@ void DataBase::LoadEffects() graph::FxFlowEmitter::FlowDesc descFlow; descFlow.speedPos = Vec3Range(glm::vec3(-1.5f, -1.5f, 1.0f), glm::vec3(1.5f, 1.5f, 5.0f), Vec3Range::vdVolume) * 3.0f; - glm::quat spRot1 = glm::angleAxis(D3DX_PI, -IdentityVector); - glm::quat spRot2 = glm::angleAxis(2.0f * D3DX_PI, IdentityVector); + glm::quat spRot1 = glm::angleAxis(glm::pi(), -IdentityVector); + glm::quat spRot2 = glm::angleAxis(2.0f * glm::pi(), IdentityVector); descFlow.speedRot = QuatRange(spRot1, spRot2, QuatRange::vdVolume, Point2U(100, 100)); descFlow.gravitation = glm::vec3(0, 0, -9.80f); @@ -865,8 +865,8 @@ void DataBase::LoadEffects() graph::FxFlowEmitter::FlowDesc descFlow; descFlow.speedPos = Vec3Range(glm::vec3(-1.5f, -1.5f, 4.0f), glm::vec3(1.5f, 1.5f, 5.0f), Vec3Range::vdVolume) * 3.0f; - glm::quat spRot1 = glm::angleAxis(D3DX_PI, -IdentityVector); - glm::quat spRot2 = glm::angleAxis(2.0f * D3DX_PI, IdentityVector); + glm::quat spRot1 = glm::angleAxis(glm::pi(), -IdentityVector); + glm::quat spRot2 = glm::angleAxis(2.0f * glm::pi(), IdentityVector); descFlow.speedRot = QuatRange(spRot1, spRot2, QuatRange::vdVolume, Point2U(100, 100)); descFlow.gravitation = glm::vec3(0, 0, -9.80f); @@ -1015,7 +1015,7 @@ void DataBase::LoadEffects() desc.startScale = Vec3Range(glm::vec3(0.8f, 0.8f, 0.8f), glm::vec3(1.1f, 1.1f, 1.1f)); glm::quat rot1 = glm::angleAxis(0.0f, glm::vec3(0.0f, 0.0f, 1.0f)); - glm::quat rot2 = glm::angleAxis(2 * D3DX_PI, glm::vec3(0.0f, 0.0f, 1.0f)); + glm::quat rot2 = glm::angleAxis(2 * glm::pi(), glm::vec3(0.0f, 0.0f, 1.0f)); desc.startRot = QuatRange(rot1, rot2, QuatRange::vdVolume); graph::FxFlowEmitter::FlowDesc descFlow; @@ -1260,7 +1260,7 @@ void DataBase::LoadEffects() LoadFxSprite("frostRay", "Effect\\frostRay", NullVector, Vec3Range(IdentityVector, NullVector), NullQuaternion, false, graph::SceneNode::amTwoSide, 1.0f, 0, 0.0f, true, glm::vec2(1.0f, 0.5f), gtEffect, true); //frostShot { - glm::quat lineRot1 = glm::angleAxis(D3DX_PI, ZVector); + glm::quat lineRot1 = glm::angleAxis(glm::pi(), ZVector); LoadFxSprite("frostShot", "Effect\\frostLine", NullVector, Vec3Range(IdentityVector, NullVector), QuatRange(NullQuaternion, lineRot1), false, graph::SceneNode::amTwoSide, 1.0f, 0, 1.0f, false, glm::vec2(4.0f, 4.0f)); } @@ -1277,8 +1277,8 @@ void DataBase::LoadEffects() desc.startTime = FloatRange(0.1f, 0.2f); desc.density = FloatRange(2.0f, 3.0f); desc.startPos = Vec3Range(glm::vec3(-0.1f, -0.1f, -0.5f), glm::vec3(0.1f, 0.1f, 0.1f), Vec3Range::vdVolume); - glm::quat spRot1 = glm::angleAxis(D3DX_PI, -ZVector); - glm::quat spRot2 = glm::angleAxis(2.0f * D3DX_PI, ZVector); + glm::quat spRot1 = glm::angleAxis(glm::pi(), -ZVector); + glm::quat spRot2 = glm::angleAxis(2.0f * glm::pi(), ZVector); desc.startRot = QuatRange(spRot1, spRot2, QuatRange::vdVolume); graph::FxFlowEmitter::FlowDesc descFlow; @@ -1355,8 +1355,8 @@ void DataBase::LoadEffects() graph::FxFlowEmitter::FlowDesc descFlow; descFlow.speedPos = Vec3Range(glm::vec3(-1.5f, -1.5f, 2.0f), glm::vec3(1.5f, 1.5f, 5.0f), Vec3Range::vdVolume) * 3.0f; // - glm::quat spRot1 = glm::angleAxis(D3DX_PI, -IdentityVector); - glm::quat spRot2 = glm::angleAxis(2.0f * D3DX_PI, IdentityVector); + glm::quat spRot1 = glm::angleAxis(glm::pi(), -IdentityVector); + glm::quat spRot2 = glm::angleAxis(2.0f * glm::pi(), IdentityVector); descFlow.speedRot = QuatRange(spRot1, spRot2, QuatRange::vdVolume, Point2U(100, 100)); // descFlow.gravitation = glm::vec3(0, 0, -9.80f); @@ -1726,7 +1726,7 @@ void DataBase::LoadEffects() desc.startTime = FloatRange(0.7f); desc.density = FloatRange(1.0f, 1.0f); desc.startPos = Vec3Range(glm::vec3(-0.6f, -0.6f, -0.6f), glm::vec3(0.6f, 0.6f, 0.6f), Vec3Range::vdVolume); - glm::quat rot = glm::angleAxis(D3DX_PI, ZVector); + glm::quat rot = glm::angleAxis(glm::pi(), ZVector); desc.startRot = QuatRange(NullQuaternion, rot, QuatRange::vdLinear); desc.startScale = glm::vec3(IdentityVector) * 4.0f; @@ -1756,7 +1756,7 @@ void DataBase::LoadEffects() desc.startTime = 0.5f; desc.density = FloatRange(1.0f, 1.0f); desc.startPos = Vec3Range(glm::vec3(-0.3f, -0.3f, -0.3f), glm::vec3(0.3f, 0.3f, 0.3f), Vec3Range::vdVolume); - glm::quat rot = glm::angleAxis(D3DX_PI, ZVector); + glm::quat rot = glm::angleAxis(glm::pi(), ZVector); desc.startRot = QuatRange(NullQuaternion, rot, QuatRange::vdLinear); desc.startScale = glm::vec3(IdentityVector) * 1.5f; @@ -1865,8 +1865,8 @@ void DataBase::LoadEffects() desc.startTime = 0; desc.density = 5.0f; desc.startPos = Vec3Range(glm::vec3(-2.0f, -2.0f, 0.0f), glm::vec3(2.0f, 2.0f, 0.0f), Vec3Range::vdVolume); - glm::quat rot1 = glm::angleAxis(-D3DX_PI / 3.0f, ZVector); - glm::quat rot2 = glm::angleAxis(D3DX_PI / 3.0f, ZVector); + glm::quat rot1 = glm::angleAxis(-glm::pi() / 3.0f, ZVector); + glm::quat rot2 = glm::angleAxis(glm::pi() / 3.0f, ZVector); desc.startRot = QuatRange(rot1, rot2, QuatRange::vdLinear); desc.startScale = glm::vec3(1.0f, 1.0f, 1.0f); @@ -1971,7 +1971,7 @@ void DataBase::LoadWorld1() LoadDecor("World1\\zdanie1", "World1\\zdaine1.r3d", "World1\\zdanie1"); LoadDecor("World1\\zdanie2", "World1\\zdaine2.r3d", "World1\\zdanie2"); - float cosAng = cos(15.0f * D3DX_PI/180.0f); + float cosAng = cos(glm::radians(15.0f)); glm::vec4 vec1 = PlaneFromPointNormal(glm::vec3(0, 0, 6.2f), glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng)); glm::vec4 vec3(0.0f, -0.15f, 0.075f, 0.0f); @@ -2041,7 +2041,7 @@ void DataBase::LoadWorld2() SaveMapObj(mapObj, MapObjLib::ctDecoration, "World2\\semaphore"); } - float cosAng = cos(15.0f * D3DX_PI/180.0f); + float cosAng = cos(glm::radians(15.0f)); glm::vec4 vec1 = PlaneFromPointNormal(glm::vec3(0, 0, 6.2f), glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng)); glm::vec4 vec3(0.0f, -0.15f, 0.10f, 0.0f); @@ -2092,7 +2092,7 @@ void DataBase::LoadWorld3() LoadDecor("World3\\stone2", "World3\\stone2.r3d", "World3\\stone"); LoadDecor("World3\\stone3", "World3\\stone3.r3d", "World3\\stone"); - float cosAng = cos(15.0f * D3DX_PI/180.0f); + float cosAng = cos(glm::radians(15.0f)); glm::vec4 vec1 = PlaneFromPointNormal(glm::vec3(0, 0, 6.2f), glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng)); glm::vec4 vec1Up = PlaneFromPointNormal(glm::vec3(0, 0, 6.2f), ZVector); glm::vec4 vec3(0.0f, -0.15f, 0.125f, 0.0f); @@ -2127,7 +2127,7 @@ void DataBase::LoadWorld4() LoadDecor("World4\\volcano", "World4\\volcano.r3d", "World4\\volcano"); LoadDecor("World4\\crystals", "World4\\crystals.r3d", "World4\\crystals"); - float cosAng = cos(15.0f * D3DX_PI/180.0f); + float cosAng = cos(glm::radians(15.0f)); glm::vec4 vec1 = PlaneFromPointNormal(glm::vec3(0, 0, 6.2f), glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng)); glm::vec4 vec3(0.0f, -0.25f, 0.25f, 0.0f); @@ -2159,7 +2159,7 @@ void DataBase::LoadWorld5() LoadDecor("World5\\piece", "World5\\piece.r3d", "World5\\piece"); glm::vec4 plane1 = PlaneFromPointNormal(glm::vec3(0, 0, 6.2f), ZVector); - float cosAng = cos(20.0f * D3DX_PI/180.0f); + float cosAng = cos(glm::radians(20.0f)); glm::vec4 plane2 = PlaneFromPointNormal(glm::vec3(0, 0, 6.2f), glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng)); glm::vec4 vec3(0.0f, -0.15f, 0.125f, 0.0f); @@ -2188,7 +2188,7 @@ void DataBase::LoadWorld6() LoadDecor("World6\\stone2", "World6\\stone2.r3d", "World6\\stone"); LoadDecor("World6\\stone3", "World6\\stone3.r3d", "World6\\stone"); - float cosAng = cos(15.0f * D3DX_PI/180.0f); + float cosAng = cos(glm::radians(15.0f)); glm::vec4 vec1 = PlaneFromPointNormal(glm::vec3(0, 0, 6.2f), glm::vec3(-sqrt(1.0f - cosAng * cosAng), 0.0f, cosAng)); glm::vec4 vec1Up = PlaneFromPointNormal(glm::vec3(0, 0, 6.2f), ZVector); glm::vec4 vec3(0.0f, -0.15f, 0.125f, 0.0f); @@ -2655,7 +2655,7 @@ void DataBase::LoadMisc() graph::PlaneNode* node = AddPlaneNode(mapObj, IdentityVec2); //glm::quat rot; - //D3DXQuaternionRotationAxis(&rot, &ZVector, -D3DX_PI/2); + //D3DXQuaternionRotationAxis(&rot, &ZVector, -glm::half_pi()); //node->SetRot(rot); node->SetScale(glm::vec3(4.0f, 3.0f, 1.0f)); node->animMode(graph::SceneNode::amRepeat); @@ -3654,9 +3654,9 @@ void DataBase::LoadCars() desc.tireSpring = 0.0f; desc.steerSpeed = 3.5f; desc.steerRot = 3.5f; - desc.flyYTorque = D3DX_PI/6; - desc.clampXTorque = D3DX_PI/12; - desc.clampYTorque = D3DX_PI/6; + desc.flyYTorque = glm::pi()/6; + desc.clampXTorque = glm::pi()/12; + desc.clampYTorque = glm::pi()/6; desc.wakeFrictionModel = false; desc.suspensionTravel = 0.30f; @@ -3687,9 +3687,9 @@ void DataBase::LoadCars() desc.tireSpring = 0.0f; desc.steerSpeed = 3.5f; desc.steerRot = 3.5f; - desc.flyYTorque = D3DX_PI/2; - desc.clampXTorque = D3DX_PI/12; - desc.clampYTorque = D3DX_PI/9; + desc.flyYTorque = glm::half_pi(); + desc.clampXTorque = glm::pi()/12; + desc.clampYTorque = glm::pi()/9; desc.wakeFrictionModel = false; desc.suspensionTravel = 0.20f; @@ -3722,9 +3722,9 @@ void DataBase::LoadCars() desc.tireSpring = 0.0f; desc.steerSpeed = 3.5f; desc.steerRot = 3.5f; - desc.flyYTorque = D3DX_PI/6; - desc.clampXTorque = D3DX_PI/12; - desc.clampYTorque = D3DX_PI/9; + desc.flyYTorque = glm::pi()/6; + desc.clampXTorque = glm::pi()/12; + desc.clampYTorque = glm::pi()/9; desc.wakeFrictionModel = false; desc.suspensionTravel = 0.25f; @@ -3758,9 +3758,9 @@ void DataBase::LoadCars() desc.tireSpring = 0.0f; desc.steerSpeed = 3.5f; desc.steerRot = 3.5f; - desc.flyYTorque = D3DX_PI/6; - desc.clampXTorque = D3DX_PI/12; - desc.clampYTorque = D3DX_PI/9; + desc.flyYTorque = glm::pi()/6; + desc.clampXTorque = glm::pi()/12; + desc.clampYTorque = glm::pi()/9; desc.wakeFrictionModel = false; desc.suspensionTravel = 0.25f; @@ -3789,9 +3789,9 @@ void DataBase::LoadCars() desc.tireSpring = 0.0f; desc.steerSpeed = 3.5f; desc.steerRot = 3.5f; - desc.flyYTorque = D3DX_PI/3; - desc.clampXTorque = D3DX_PI/12; - desc.clampYTorque = D3DX_PI/6; + desc.flyYTorque = glm::pi()/3; + desc.clampXTorque = glm::pi()/12; + desc.clampYTorque = glm::pi()/6; desc.wakeFrictionModel = false; desc.suspensionTravel = 0.25f; @@ -3820,8 +3820,8 @@ void DataBase::LoadCars() desc.steerSpeed = 3.5f; desc.steerRot = 3.5f; desc.flyYTorque = 0; - desc.clampXTorque = D3DX_PI/12; - desc.clampYTorque = D3DX_PI/6; + desc.clampXTorque = glm::pi()/12; + desc.clampYTorque = glm::pi()/6; desc.wakeFrictionModel = true; desc.suspensionTravel = 0.1f; @@ -3854,8 +3854,8 @@ void DataBase::LoadCars() desc.steerSpeed = 3.5f; desc.steerRot = 3.5f; desc.flyYTorque = 0; - desc.clampXTorque = D3DX_PI/12; - desc.clampYTorque = D3DX_PI/6; + desc.clampXTorque = glm::pi()/12; + desc.clampYTorque = glm::pi()/6; desc.wakeFrictionModel = true; desc.suspensionTravel = 0.1f; @@ -3887,8 +3887,8 @@ void DataBase::LoadCars() desc.steerSpeed = 3.5f; desc.steerRot = 3.5f; desc.flyYTorque = 0; - desc.clampXTorque = D3DX_PI/12; - desc.clampYTorque = D3DX_PI/6; + desc.clampXTorque = glm::pi()/12; + desc.clampYTorque = glm::pi()/6; desc.wakeFrictionModel = true; desc.suspensionTravel = 0.1f; @@ -3923,8 +3923,8 @@ void DataBase::LoadCars() desc.steerSpeed = 3.5f; desc.steerRot = 3.5f; desc.flyYTorque = 0; - desc.clampXTorque = D3DX_PI/12; - desc.clampYTorque = D3DX_PI/6; + desc.clampXTorque = glm::pi()/12; + desc.clampYTorque = glm::pi()/6; desc.wakeFrictionModel = true; desc.suspensionTravel = 0.1f; @@ -3963,8 +3963,8 @@ void DataBase::LoadCars() desc.tireSpring = 0.0f; desc.steerSpeed = 4.0f; desc.flyYTorque = 0; - desc.clampXTorque = D3DX_PI/12; - desc.clampYTorque = D3DX_PI/9; + desc.clampXTorque = glm::pi()/12; + desc.clampYTorque = glm::pi()/9; desc.maxRPM = 3750; desc.wakeFrictionModel = false; @@ -3996,8 +3996,8 @@ void DataBase::LoadCars() desc.tireSpring = 0.0f; desc.steerSpeed = 4.0f; desc.flyYTorque = 0; - desc.clampXTorque = D3DX_PI/12; - desc.clampYTorque = D3DX_PI/9; + desc.clampXTorque = glm::pi()/12; + desc.clampYTorque = glm::pi()/9; desc.maxRPM = 3750; desc.wakeFrictionModel = false; @@ -4030,8 +4030,8 @@ void DataBase::LoadCars() desc.steerSpeed = 3.5f; desc.steerRot = 4.0f; desc.flyYTorque = 0; - desc.clampXTorque = D3DX_PI/12; - desc.clampYTorque = D3DX_PI/12; + desc.clampXTorque = glm::pi()/12; + desc.clampYTorque = glm::pi()/12; desc.wheelEff = false; desc.clutchImmunity = true; desc.wakeFrictionModel = true; @@ -4065,8 +4065,8 @@ void DataBase::LoadCars() desc.steerSpeed = 3.5f; desc.steerRot = 4.0f; desc.flyYTorque = 0; - desc.clampXTorque = D3DX_PI/12; - desc.clampYTorque = D3DX_PI/12; + desc.clampXTorque = glm::pi()/12; + desc.clampYTorque = glm::pi()/12; desc.wheelEff = false; desc.clutchImmunity = true; desc.wakeFrictionModel = true; @@ -4097,8 +4097,8 @@ void DataBase::LoadCars() desc.tireSpring = 0.0f; desc.steerSpeed = 4.0f; desc.flyYTorque = 0; - desc.clampXTorque = D3DX_PI/12; - desc.clampYTorque = D3DX_PI/6; + desc.clampXTorque = glm::pi()/12; + desc.clampYTorque = glm::pi()/6; desc.wakeFrictionModel = false; desc.suspensionTravel = 0.3f; @@ -4125,8 +4125,8 @@ void DataBase::LoadCars() desc.tireSpring = 0.0f; desc.steerSpeed = 4.0f; desc.flyYTorque = 0; - desc.clampXTorque = D3DX_PI/12; - desc.clampYTorque = D3DX_PI/6; + desc.clampXTorque = glm::pi()/12; + desc.clampYTorque = glm::pi()/6; desc.wakeFrictionModel = false; desc.suspensionTravel = 0.2f; @@ -4155,9 +4155,9 @@ void DataBase::LoadCars() desc.tireSpring = 0.0f; desc.steerSpeed = 4.0f; desc.steerRot = 3.5f; - desc.flyYTorque = D3DX_PI/6; - desc.clampXTorque = D3DX_PI/12; - desc.clampYTorque = D3DX_PI/6; + desc.flyYTorque = glm::pi()/6; + desc.clampXTorque = glm::pi()/12; + desc.clampYTorque = glm::pi()/6; desc.wakeFrictionModel = false; desc.suspensionTravel = 0.20f; @@ -4187,8 +4187,8 @@ void DataBase::LoadCars() desc.steerSpeed = 3.5f; desc.steerRot = 3.5f; desc.flyYTorque = 0; - desc.clampXTorque = D3DX_PI/12; - desc.clampYTorque = D3DX_PI/6; + desc.clampXTorque = glm::pi()/12; + desc.clampYTorque = glm::pi()/6; desc.wakeFrictionModel = true; desc.suspensionTravel = 0.1f; diff --git a/src/Rock3dGame/source/game/Environment.cpp b/src/Rock3dGame/source/game/Environment.cpp index e1c693fd..380ccc44 100644 --- a/src/Rock3dGame/source/game/Environment.cpp +++ b/src/Rock3dGame/source/game/Environment.cpp @@ -63,8 +63,8 @@ Environment::Environment(World* world): _world(world), _wheater(ewClody), _world for (int i = 0; i < 4; ++i) _lampSwitchOn[i] = true; - glm::quat rot1 = glm::angleAxis(D3DX_PI / 4.0f, YVector); - glm::quat rot2 = glm::angleAxis(-D3DX_PI / 4.0f, ZVector); + glm::quat rot1 = glm::angleAxis(glm::quarter_pi(), YVector); + glm::quat rot2 = glm::angleAxis(-glm::quarter_pi(), ZVector); _sunRot = rot2 * rot1; //текстура по умолчанию. Обязательно должна быть! diff --git a/src/Rock3dGame/source/game/GameBase.cpp b/src/Rock3dGame/source/game/GameBase.cpp index cfb351e2..ae09bc63 100644 --- a/src/Rock3dGame/source/game/GameBase.cpp +++ b/src/Rock3dGame/source/game/GameBase.cpp @@ -1216,7 +1216,7 @@ void PodushkaAnim::OnProgress(float deltaTime) if (abs(linSpeed) > 1.0f) { D3DXMATRIX localMat = _target->GetMat(); - glm::quat rotQuat = glm::angleAxis(D3DX_PI * deltaTime * linSpeed * 0.1f, XVector); + glm::quat rotQuat = glm::angleAxis(glm::pi() * deltaTime * linSpeed * 0.1f, XVector); D3DXMATRIX rotMat = Matrix4GlmToDx(glm::transpose(glm::mat4_cast(rotQuat))); const res::FaceGroup& fg = _target->GetMesh()->GetData()->faceGroups[_target->GetMeshId()]; diff --git a/src/Rock3dGame/source/game/GameCar.cpp b/src/Rock3dGame/source/game/GameCar.cpp index 3b68b116..5e25139f 100644 --- a/src/Rock3dGame/source/game/GameCar.cpp +++ b/src/Rock3dGame/source/game/GameCar.cpp @@ -10,7 +10,7 @@ namespace r3d namespace game { -const float GameCar::cMaxSteerAngle = D3DX_PI / 6; +const float GameCar::cMaxSteerAngle = glm::pi() / 6; CarMotorDesc::CarMotorDesc(): maxRPM(7000), idlingRPM(1000), maxTorque(2000.0f), SEM(0.7f), gearDiff(3.42f), autoGear(true), brakeTorque(7500), restTorque(400.0f) { @@ -30,7 +30,7 @@ float CarMotorDesc::CalcRPM(float wheelAxleSpeed, unsigned curGear) const return static_cast(idlingRPM); else { - float rpm = abs(wheelAxleSpeed) * gears[curGear] * gearDiff * 60.0f / (2.0f * D3DX_PI); + float rpm = abs(wheelAxleSpeed) * gears[curGear] * gearDiff * 60.0f / (2.0f * glm::pi()); return std::min(rpm, static_cast(maxRPM)); } @@ -192,7 +192,7 @@ void CarWheel::PxSyncWheel(float alpha) glm::quat resRot = quat1 * quat2; if (invertWheel) { - glm::quat invRot = glm::angleAxis(D3DX_PI, ZVector); + glm::quat invRot = glm::angleAxis(glm::pi(), ZVector); resRot = resRot * invRot; } @@ -449,7 +449,7 @@ void CarWheels::SetSteerContactModify(ContactModify* value) } } -GameCar::GameCar(): _clutchStrength(0), _clutchTime(0.0f), _springTime(0), _mineTime(0), _curGear(-1), _moveCar(mcNone), _steerWheel(swNone), _kSteerControl(1.0f), _steerSpeed(D3DX_PI/2.0f), _steerRot(D3DX_PI), _angDamping(IdentityVector), _flyYTorque(D3DX_PI/1.6f), _clampXTorque(0), _clampYTorque(0), _motorTorqueK(1), _wheelSteerK(1), _gravEngine(false), _clutchImmunity(false), _maxSpeed(0), _tireSpring(0), _disableColor(false), _steerAngle(0), _anyWheelContact(false), _wheelsContact(false), _bodyContact(false) +GameCar::GameCar(): _clutchStrength(0), _clutchTime(0.0f), _springTime(0), _mineTime(0), _curGear(-1), _moveCar(mcNone), _steerWheel(swNone), _kSteerControl(1.0f), _steerSpeed(glm::half_pi()), _steerRot(glm::pi()), _angDamping(IdentityVector), _flyYTorque(glm::pi()/1.6f), _clampXTorque(0), _clampYTorque(0), _motorTorqueK(1), _wheelSteerK(1), _gravEngine(false), _clutchImmunity(false), _maxSpeed(0), _tireSpring(0), _disableColor(false), _steerAngle(0), _anyWheelContact(false), _wheelsContact(false), _bodyContact(false) { _wheels = new Wheels(this); @@ -626,8 +626,8 @@ void GameCar::WheelsProgress(float deltaTime, float motorTorque, float breakTorq } /*else if (lastSteer != swNone) { - //const float cFixAngleStep = 15.0f * D3DX_PI / 180.0f; - const float cFixAngleStep = 22.5f * D3DX_PI / 180.0f; + //const float cFixAngleStep = glm::radians(15.0f); + const float cFixAngleStep = glm::radians(22.5f); NxQuat fixRot; fixRot.fromAngleAxisFast(0, NxVec3(0, 0, 1)); diff --git a/src/Rock3dGame/source/game/GameObject.cpp b/src/Rock3dGame/source/game/GameObject.cpp index 2a496c62..c0832825 100644 --- a/src/Rock3dGame/source/game/GameObject.cpp +++ b/src/Rock3dGame/source/game/GameObject.cpp @@ -305,11 +305,11 @@ void GameObject::OnFrame(float deltaTime, float pxAlpha) { if (_rotSyncAngle > 0) { - _rotSyncAngle = std::max(_rotSyncAngle - 1.3f * D3DX_PI * deltaTime, 0.0f); + _rotSyncAngle = std::max(_rotSyncAngle - 1.3f * glm::pi() * deltaTime, 0.0f); } else { - _rotSyncAngle = std::min(_rotSyncAngle + 1.3f * D3DX_PI * deltaTime, 0.0f); + _rotSyncAngle = std::min(_rotSyncAngle + 1.3f * glm::pi() * deltaTime, 0.0f); } glm::quat rot = glm::angleAxis(-_rotSyncAngle, _rotSyncAxis); _grActor->SetRot(rot * _grActor->GetRot()); @@ -330,11 +330,11 @@ void GameObject::OnFrame(float deltaTime, float pxAlpha) { if (_rotSyncAngle2 > 0) { - _rotSyncAngle2 = std::max(_rotSyncAngle2 - 1.3f * D3DX_PI * deltaTime, 0.0f); + _rotSyncAngle2 = std::max(_rotSyncAngle2 - 1.3f * glm::pi() * deltaTime, 0.0f); } else { - _rotSyncAngle2 = std::min(_rotSyncAngle2 + 1.3f * D3DX_PI * deltaTime, 0.0f); + _rotSyncAngle2 = std::min(_rotSyncAngle2 + 1.3f * glm::pi() * deltaTime, 0.0f); } glm::quat rot = glm::angleAxis(-_rotSyncAngle2, _rotSyncAxis2); @@ -856,9 +856,9 @@ void GameObject::SetRotSync(const glm::quat& value) _rotSyncAngle = glm::angle(_rotSync); float angle = abs(_rotSyncAngle); - if (angle > D3DX_PI) + if (angle > glm::pi()) { - _rotSyncAngle = (2 * D3DX_PI - angle) * (_rotSyncAngle > 0 ? -1.0f : 1.0f); + _rotSyncAngle = (2 * glm::pi() - angle) * (_rotSyncAngle > 0 ? -1.0f : 1.0f); } SetSyncFrameEvent(true); @@ -893,9 +893,9 @@ void GameObject::SetRotSync2(const glm::quat& curSync, const glm::quat& newSync) _rotSyncAngle2 = glm::angle(dRot); float angle = abs(_rotSyncAngle2); - if (angle > D3DX_PI) + if (angle > glm::pi()) { - _rotSyncAngle2 = (2 * D3DX_PI - angle) * (_rotSyncAngle2 > 0 ? -1.0f : 1.0f); + _rotSyncAngle2 = (2 * glm::pi() - angle) * (_rotSyncAngle2 > 0 ? -1.0f : 1.0f); } _rotSync2 = newSync; diff --git a/src/Rock3dGame/source/game/HudMenu.cpp b/src/Rock3dGame/source/game/HudMenu.cpp index db7c507f..14749163 100644 --- a/src/Rock3dGame/source/game/HudMenu.cpp +++ b/src/Rock3dGame/source/game/HudMenu.cpp @@ -978,7 +978,7 @@ void MiniMapFrame::AlignMidNodes(Node& node1, Node& node2, float cosErr, float s void MiniMapFrame::BuildPath(WayPath& path, res::VertexData& data) { - const float cosErr = cos(20.0f * D3DX_PI/180); + const float cosErr = cos(glm::radians(20.0f)); const float sizeErr = 2.0f; const float smRadius = 10.0f; const int smSlice = 2; @@ -1142,7 +1142,7 @@ void MiniMapFrame::UpdatePlayers(float deltaTime) void MiniMapFrame::UpdateMap() { - const float cosErr = cos(20.0f * D3DX_PI/180); + const float cosErr = cos(glm::radians(20.0f)); const float sizeErr = 2.0f; for (Trace::Pathes::const_iterator iter = GetTrace()->GetPathes().begin(); iter != GetTrace()->GetPathes().end(); ++iter) diff --git a/src/Rock3dGame/source/game/HumanPlayer.cpp b/src/Rock3dGame/source/game/HumanPlayer.cpp index 69098b6f..4bdee217 100644 --- a/src/Rock3dGame/source/game/HumanPlayer.cpp +++ b/src/Rock3dGame/source/game/HumanPlayer.cpp @@ -225,7 +225,7 @@ void HumanPlayer::Shot(WeaponType weapon, MapObj* target) void HumanPlayer::Shot(WeaponType weapon) { - float viewAngle = D3DX_PI/5.5f; + float viewAngle = glm::pi()/5.5f; WeaponItem* wpn = GetWeapon(weapon); if (wpn && wpn->GetSlot()->GetRecord() && wpn->GetSlot()->GetRecord()->GetName() == "sphereGun") viewAngle = 0; @@ -248,7 +248,7 @@ void HumanPlayer::Shot() { LSL_ASSERT(_player->GetCar().mapObj); - Player* enemy = _player->FindClosestEnemy(D3DX_PI/4, false); + Player* enemy = _player->FindClosestEnemy(glm::quarter_pi(), false); Shot(enemy ? enemy->GetCar().mapObj : 0); } diff --git a/src/Rock3dGame/source/game/MainMenu2.cpp b/src/Rock3dGame/source/game/MainMenu2.cpp index c0f6b551..ca02809d 100644 --- a/src/Rock3dGame/source/game/MainMenu2.cpp +++ b/src/Rock3dGame/source/game/MainMenu2.cpp @@ -142,13 +142,13 @@ NetBrowserFrame::NetBrowserFrame(Menu* menu, MainMenu* mainMenu, gui::Widget* pa _grid->SetAlign(gui::Widget::waTop); _downArrow = menu->CreateArrow(root(), this); - _downArrow->SetRot(-D3DX_PI/2); + _downArrow->SetRot(-glm::half_pi()); glm::vec2 size = _downArrow->GetSize(); _downArrow->SetSize(menu->StretchImage(*_downArrow->GetFon(), glm::vec2(30.0f, 30.0f), true, true, true, false)); _downArrow->SetSelSize(menu->GetImageSize(*_downArrow->GetSel()) * _downArrow->GetSize().x / size.x); _upArrow = menu->CreateArrow(root(), this); - _upArrow->SetRot(D3DX_PI/2); + _upArrow->SetRot(glm::half_pi()); size = _upArrow->GetSize(); _upArrow->SetSize(menu->StretchImage(*_upArrow->GetFon(), glm::vec2(30.0f, 30.0f), true, true, true, false)); _upArrow->SetSelSize(menu->GetImageSize(*_upArrow->GetSel()) * _upArrow->GetSize().x / size.x); @@ -542,13 +542,13 @@ LobbyFrame::LobbyFrame(Menu* menu, MainMenu* mainMenu, gui::Widget* parent): Men _grid->SetAlign(gui::Widget::waTop); _downArrow = menu->CreateArrow(root(), this); - _downArrow->SetRot(-D3DX_PI/2); + _downArrow->SetRot(-glm::half_pi()); glm::vec2 size = _downArrow->GetSize(); _downArrow->SetSize(menu->StretchImage(*_downArrow->GetFon(), glm::vec2(30.0f, 30.0f), true, true, true, false)); _downArrow->SetSelSize(menu->GetImageSize(*_downArrow->GetSel()) * _downArrow->GetSize().x / size.x); _upArrow = menu->CreateArrow(root(), this); - _upArrow->SetRot(D3DX_PI/2); + _upArrow->SetRot(glm::half_pi()); size = _upArrow->GetSize(); _upArrow->SetSize(menu->StretchImage(*_upArrow->GetFon(), glm::vec2(30.0f, 30.0f), true, true, true, false)); _upArrow->SetSelSize(menu->GetImageSize(*_upArrow->GetSel()) * _upArrow->GetSize().x / size.x); @@ -805,13 +805,13 @@ MatchmakingFrame::MatchmakingFrame(Menu* menu, MainMenu* mainMenu, gui::Widget* _grid->SetAlign(gui::Widget::waTop); _downArrow = menu->CreateArrow(root(), this); - _downArrow->SetRot(-D3DX_PI/2); + _downArrow->SetRot(-glm::half_pi()); glm::vec2 size = _downArrow->GetSize(); _downArrow->SetSize(menu->StretchImage(*_downArrow->GetFon(), glm::vec2(30.0f, 30.0f), true, true, true, false)); _downArrow->SetSelSize(menu->GetImageSize(*_downArrow->GetSel()) * _downArrow->GetSize().x / size.x); _upArrow = menu->CreateArrow(root(), this); - _upArrow->SetRot(D3DX_PI/2); + _upArrow->SetRot(glm::half_pi()); size = _upArrow->GetSize(); _upArrow->SetSize(menu->StretchImage(*_upArrow->GetFon(), glm::vec2(30.0f, 30.0f), true, true, true, false)); _upArrow->SetSelSize(menu->GetImageSize(*_upArrow->GetSel()) * _upArrow->GetSize().x / size.x); @@ -1071,13 +1071,13 @@ SteamBrowserFrame::SteamBrowserFrame(Menu* menu, MainMenu* mainMenu, gui::Widget _grid->SetAlign(gui::Widget::waTop); _downArrow = menu->CreateArrow(root(), this); - _downArrow->SetRot(-D3DX_PI/2); + _downArrow->SetRot(-glm::half_pi()); glm::vec2 size = _downArrow->GetSize(); _downArrow->SetSize(menu->StretchImage(*_downArrow->GetFon(), glm::vec2(30.0f, 30.0f), true, true, true, false)); _downArrow->SetSelSize(menu->GetImageSize(*_downArrow->GetSel()) * _downArrow->GetSize().x / size.x); _upArrow = menu->CreateArrow(root(), this); - _upArrow->SetRot(D3DX_PI/2); + _upArrow->SetRot(glm::half_pi()); size = _upArrow->GetSize(); _upArrow->SetSize(menu->StretchImage(*_upArrow->GetFon(), glm::vec2(30.0f, 30.0f), true, true, true, false)); _upArrow->SetSelSize(menu->GetImageSize(*_upArrow->GetSel()) * _upArrow->GetSize().x / size.x); @@ -1678,13 +1678,13 @@ ProfileFrame::ProfileFrame(Menu* menu, MainMenu* mainMenu, gui::Widget* parent): _grid->SetAlign(gui::Widget::waTop); _downArrow = menu->CreateArrow(root(), this); - _downArrow->SetRot(-D3DX_PI/2); + _downArrow->SetRot(-glm::half_pi()); glm::vec2 size = _downArrow->GetSize(); _downArrow->SetSize(menu->StretchImage(*_downArrow->GetFon(), glm::vec2(30.0f, 30.0f), true, true, true, false)); _downArrow->SetSelSize(menu->GetImageSize(*_downArrow->GetSel()) * _downArrow->GetSize().x / size.x); _upArrow = menu->CreateArrow(root(), this); - _upArrow->SetRot(D3DX_PI/2); + _upArrow->SetRot(glm::half_pi()); size = _upArrow->GetSize(); _upArrow->SetSize(menu->StretchImage(*_upArrow->GetFon(), glm::vec2(30.0f, 30.0f), true, true, true, false)); _upArrow->SetSelSize(menu->GetImageSize(*_upArrow->GetSel()) * _upArrow->GetSize().x / size.x); diff --git a/src/Rock3dGame/source/game/Menu.cpp b/src/Rock3dGame/source/game/Menu.cpp index 0daa17dd..601ec248 100644 --- a/src/Rock3dGame/source/game/Menu.cpp +++ b/src/Rock3dGame/source/game/Menu.cpp @@ -347,9 +347,9 @@ glm::vec2 Menu::StretchImage(gui::Material& material, const glm::vec2& size, boo glm::quat Menu::GetIsoRot() { - glm::quat rotZ = glm::angleAxis(-2.0f * D3DX_PI / 3.0f, ZVector); + glm::quat rotZ = glm::angleAxis(-2.0f * glm::pi() / 3.0f, ZVector); glm::quat rotY = glm::angleAxis(0.0f, YVector); - glm::quat rotX = glm::angleAxis(-D3DX_PI / 3.0f, XVector); + glm::quat rotX = glm::angleAxis(-glm::pi() / 3.0f, XVector); return rotX * rotY * rotZ; } diff --git a/src/Rock3dGame/source/game/OptionsMenu.cpp b/src/Rock3dGame/source/game/OptionsMenu.cpp index 0f24dac4..070a66d7 100644 --- a/src/Rock3dGame/source/game/OptionsMenu.cpp +++ b/src/Rock3dGame/source/game/OptionsMenu.cpp @@ -83,13 +83,13 @@ GameFrame::GameFrame(Menu* menu, OptionsMenu* optionsMenu, gui::Widget* parent): } _downArrow = menu->CreateArrow(root(), this); - _downArrow->SetRot(-D3DX_PI/2); + _downArrow->SetRot(-glm::half_pi()); glm::vec2 size = _downArrow->GetSize(); _downArrow->SetSize(menu->StretchImage(*_downArrow->GetFon(), glm::vec2(30.0f, 30.0f), true, true, true, false)); _downArrow->SetSelSize(menu->GetImageSize(*_downArrow->GetSel()) * _downArrow->GetSize().x / size.x); _upArrow = menu->CreateArrow(root(), this); - _upArrow->SetRot(D3DX_PI/2); + _upArrow->SetRot(glm::half_pi()); size = _upArrow->GetSize(); _upArrow->SetSize(menu->StretchImage(*_upArrow->GetFon(), glm::vec2(30.0f, 30.0f), true, true, true, false)); _upArrow->SetSelSize(menu->GetImageSize(*_upArrow->GetSel()) * _upArrow->GetSize().x / size.x); @@ -670,13 +670,13 @@ ControlsFrame::ControlsFrame(Menu* menu, OptionsMenu* optionsMenu, gui::Widget* _grid->SetAlign(gui::Widget::waLeftTop); _downArrow = menu->CreateArrow(root(), this); - _downArrow->SetRot(-D3DX_PI/2); + _downArrow->SetRot(-glm::half_pi()); glm::vec2 size = _downArrow->GetSize(); _downArrow->SetSize(menu->StretchImage(*_downArrow->GetFon(), glm::vec2(30.0f, 30.0f), true, true, true, false)); _downArrow->SetSelSize(menu->GetImageSize(*_downArrow->GetSel()) * _downArrow->GetSize().x / size.x); _upArrow = menu->CreateArrow(root(), this); - _upArrow->SetRot(D3DX_PI/2); + _upArrow->SetRot(glm::half_pi()); size = _upArrow->GetSize(); _upArrow->SetSize(menu->StretchImage(*_upArrow->GetFon(), glm::vec2(30.0f, 30.0f), true, true, true, false)); _upArrow->SetSelSize(menu->GetImageSize(*_upArrow->GetSel()) * _upArrow->GetSize().x / size.x); diff --git a/src/Rock3dGame/source/game/Player.cpp b/src/Rock3dGame/source/game/Player.cpp index ff888e91..7eaa2d4a 100644 --- a/src/Rock3dGame/source/game/Player.cpp +++ b/src/Rock3dGame/source/game/Player.cpp @@ -1014,7 +1014,7 @@ void Player::CarState::Update(float deltaTime) lastDir = dir3; summAngle += dirAngle; summAngleTime += deltaTime; - if (dirAngle > D3DX_PI/24) + if (dirAngle > glm::pi()/24) { summAngleTime = 0; } @@ -1023,7 +1023,7 @@ void Player::CarState::Update(float deltaTime) summAngle = 0; summAngleTime = 0; } - if (summAngle > D3DX_PI/2 && summAngleTime <= 1.0f) + if (summAngle > glm::half_pi() && summAngleTime <= 1.0f) { summAngle = 0; summAngleTime = 0; @@ -1176,8 +1176,8 @@ void Player::InitLight(HeadLight headLight, const glm::vec3& pos, const glm::qua _lights[headLight]->GetSource()->SetType(D3DLIGHT_SPOT); _lights[headLight]->GetSource()->SetAmbient(clrBlack); _lights[headLight]->GetSource()->SetDiffuse(clrWhite * 1.0f); - _lights[headLight]->GetSource()->SetPhi(D3DX_PI/3.0f); - _lights[headLight]->GetSource()->SetTheta(D3DX_PI/6.0f); + _lights[headLight]->GetSource()->SetPhi(glm::pi()/3.0f); + _lights[headLight]->GetSource()->SetTheta(glm::pi()/6.0f); } _lights[headLight]->GetSource()->SetPos(pos); @@ -1581,7 +1581,7 @@ Player* Player::FindClosestEnemy(float viewAngle, bool zTest) //Объект ближе bool b1 = enemy == NULL || absDist < minDist; //Объект расположен с правильной стороны относительно машины - bool b2 = viewAngle == 0.0f || (viewAngle > 0 ? (angle >= cos(viewAngle)) : (angle <= cos(D3DX_PI/2 - viewAngle))); + bool b2 = viewAngle == 0.0f || (viewAngle > 0 ? (angle >= cos(viewAngle)) : (angle <= cos(glm::half_pi() - viewAngle))); if (b1 && b2) { diff --git a/src/Rock3dGame/source/game/Race.cpp b/src/Rock3dGame/source/game/Race.cpp index f65de37c..23209c34 100644 --- a/src/Rock3dGame/source/game/Race.cpp +++ b/src/Rock3dGame/source/game/Race.cpp @@ -1455,7 +1455,7 @@ void Workshop::LoadWeapons() projDesc.mass = 100.0f; projDesc.damage = 60.0f/4; projDesc.minTimeLife = 4.0f; - projDesc.angleSpeed = 4.0f * D3DX_PI; + projDesc.angleSpeed = 4.0f * glm::pi(); desc.projList.push_back(projDesc); desc.shotDelay = 4.0f; @@ -1492,7 +1492,7 @@ void Workshop::LoadWeapons() projDesc.modelSize = false; projDesc.speed = 30.0f; projDesc.speedRelativeMin = 20; - projDesc.angleSpeed = D3DX_PI * 4.0f; + projDesc.angleSpeed = glm::pi() * 4.0f; projDesc.maxDist = 150.0f; projDesc.mass = 100.0f; projDesc.damage = 15.0f; @@ -1531,7 +1531,7 @@ void Workshop::LoadWeapons() projDesc.modelSize = true; projDesc.speed = 30.0f; projDesc.speedRelativeMin = 20; - projDesc.angleSpeed = D3DX_PI; + projDesc.angleSpeed = glm::pi(); projDesc.maxDist = 300.0f; projDesc.mass = 300.0f; projDesc.damage = 40.0f; @@ -1608,7 +1608,7 @@ void Workshop::LoadWeapons() projDesc.SetModel(_race->GetDB()->GetRecord(MapObjLib::ctEffects, "frostHit")); projDesc.SetModel2(_race->GetDB()->GetRecord(MapObjLib::ctEffects, "frost")); projDesc.pos = glm::vec3(0.7f, 0.0f, 0.3f); - projDesc.rot = glm::angleAxis(D3DX_PI / 24.0f, YVector); + projDesc.rot = glm::angleAxis(glm::pi() / 24.0f, YVector); projDesc.size = glm::vec3(0.5f, 0.5f, 0.0f); projDesc.maxDist = 100.0f; projDesc.damage = 19.0f/0.5f; @@ -2548,7 +2548,7 @@ void Garage::FillStandartSlots(Car* car, const std::string& wheel, bool truba, c if (hyperDrive) { place.show = true; - glm::quat rot = glm::angleAxis(D3DX_PI, ZVector); + glm::quat rot = glm::angleAxis(glm::pi(), ZVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("hyperdrive"), rot, *hyperDrive)); } if (!place.items.empty()) @@ -2721,13 +2721,13 @@ void Garage::LoadCars() place.pos = glm::vec3(0.0f, 1.0f, 0.3f); glm::vec3 offset; - glm::quat rot = glm::angleAxis(-D3DX_PI / 3.0f, XVector); + glm::quat rot = glm::angleAxis(-glm::pi() / 3.0f, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("rocketLauncher"), rot)); - rot = glm::angleAxis(-D3DX_PI / 3.0f, XVector); + rot = glm::angleAxis(-glm::pi() / 3.0f, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("pulsator"), rot)); - rot = glm::angleAxis(-D3DX_PI, XVector); + rot = glm::angleAxis(-glm::pi(), XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("fireGun"), rot)); offset = glm::vec3(1.25f, -0.3f, 0.05f); @@ -2742,10 +2742,10 @@ void Garage::LoadCars() place.pos = glm::vec3(0.0f, -1.0f, 0.3f); glm::vec3 offset; - glm::quat rot = glm::angleAxis(D3DX_PI / 3.0f, XVector); + glm::quat rot = glm::angleAxis(glm::pi() / 3.0f, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("rocketLauncher"), rot)); - rot = glm::angleAxis(D3DX_PI / 3.0f, XVector); + rot = glm::angleAxis(glm::pi() / 3.0f, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("pulsator"), rot)); place.items.push_back(&GetShop().GetSlot("fireGun")); @@ -2798,13 +2798,13 @@ void Garage::LoadCars() place.pos = glm::vec3(0.0f, 1.4f, 0.0f); glm::vec3 offset; - glm::quat rot = glm::angleAxis(-D3DX_PI / 2.0f, XVector); + glm::quat rot = glm::angleAxis(-glm::half_pi(), XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("rocketLauncher"), rot)); - rot = glm::angleAxis(-D3DX_PI / 2.0f, XVector); + rot = glm::angleAxis(-glm::half_pi(), XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("pulsator"), rot)); - rot = glm::angleAxis(-D3DX_PI, XVector); + rot = glm::angleAxis(-glm::pi(), XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("fireGun"), rot)); offset = glm::vec3(0.85f, -0.8f, 0.0f); @@ -2812,17 +2812,17 @@ void Garage::LoadCars() place.items.push_back(&GetShop().GetSlot("torpedaWeapon")); - rot = glm::angleAxis(-D3DX_PI / 2.0f, XVector); + rot = glm::angleAxis(-glm::half_pi(), XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("turel"), rot)); - rot = glm::angleAxis(-D3DX_PI / 2.0f, XVector); + rot = glm::angleAxis(-glm::half_pi(), XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("phaseImpulse"), rot)); - rot = glm::angleAxis(-D3DX_PI / 24.0f, YVector); + rot = glm::angleAxis(-glm::pi() / 24.0f, YVector); offset = glm::vec3(0.85f, -0.6f, 0.0f); place.items.push_back(PlaceItem(&GetShop().GetSlot("mortira"), rot, offset)); - rot = glm::angleAxis(-D3DX_PI / 2.0f, XVector); + rot = glm::angleAxis(-glm::half_pi(), XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("hyperBlaster"), rot)); car->SetSlot(Player::stWeapon2, place); @@ -2834,10 +2834,10 @@ void Garage::LoadCars() place.pos = glm::vec3(0.0f, -1.4f, 0.0f); glm::vec3 offset; - glm::quat rot = glm::angleAxis(D3DX_PI / 2.0f, XVector); + glm::quat rot = glm::angleAxis(glm::half_pi(), XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("rocketLauncher"), rot)); - rot = glm::angleAxis(D3DX_PI / 2.0f, XVector); + rot = glm::angleAxis(glm::half_pi(), XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("pulsator"), rot)); place.items.push_back(&GetShop().GetSlot("fireGun")); @@ -2847,17 +2847,17 @@ void Garage::LoadCars() place.items.push_back(&GetShop().GetSlot("torpedaWeapon")); - rot = glm::angleAxis(D3DX_PI / 2.0f, XVector); + rot = glm::angleAxis(glm::half_pi(), XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("turel"), rot)); - rot = glm::angleAxis(D3DX_PI / 2.0f, XVector); + rot = glm::angleAxis(glm::half_pi(), XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("phaseImpulse"), rot)); - rot = glm::angleAxis(-D3DX_PI / 24.0f, YVector); + rot = glm::angleAxis(-glm::pi() / 24.0f, YVector); offset = glm::vec3(0.85f, 0.6f, 0.0f); place.items.push_back(PlaceItem(&GetShop().GetSlot("mortira"), rot, offset)); - rot = glm::angleAxis(D3DX_PI / 2.0f, XVector); + rot = glm::angleAxis(glm::half_pi(), XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("hyperBlaster"), rot)); car->SetSlot(Player::stWeapon3, place); @@ -2903,13 +2903,13 @@ void Garage::LoadCars() place.pos = glm::vec3(0.2f, 0.6f, 0.25f); glm::vec3 offset; - glm::quat rot = glm::angleAxis(-D3DX_PI / 3.0f, XVector); + glm::quat rot = glm::angleAxis(-glm::pi() / 3.0f, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("rocketLauncher"), rot)); - rot = glm::angleAxis(-D3DX_PI / 3.0f, XVector); + rot = glm::angleAxis(-glm::pi() / 3.0f, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("pulsator"), rot)); - rot = glm::angleAxis(-D3DX_PI, XVector); + rot = glm::angleAxis(-glm::pi(), XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("fireGun"), rot)); //offset = glm::vec3(1.2f, -0.05f, -0.1f); @@ -2917,16 +2917,16 @@ void Garage::LoadCars() place.items.push_back(&GetShop().GetSlot("torpedaWeapon")); - rot = glm::angleAxis(-D3DX_PI / 3.0f, XVector); + rot = glm::angleAxis(-glm::pi() / 3.0f, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("turel"), rot)); - rot = glm::angleAxis(-D3DX_PI / 3.0f, XVector); + rot = glm::angleAxis(-glm::pi() / 3.0f, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("phaseImpulse"), rot)); - rot = glm::angleAxis(-D3DX_PI / 24.0f, YVector); + rot = glm::angleAxis(-glm::pi() / 24.0f, YVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("mortira"), rot)); - rot = glm::angleAxis(-D3DX_PI / 3.0f, XVector); + rot = glm::angleAxis(-glm::pi() / 3.0f, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("hyperBlaster"), rot)); car->SetSlot(Player::stWeapon2, place); @@ -2938,10 +2938,10 @@ void Garage::LoadCars() place.pos = glm::vec3(0.2f, -0.6f, 0.25f); glm::vec3 offset; - glm::quat rot = glm::angleAxis(D3DX_PI / 3.0f, XVector); + glm::quat rot = glm::angleAxis(glm::pi() / 3.0f, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("rocketLauncher"), rot)); - rot = glm::angleAxis(D3DX_PI / 3.0f, XVector); + rot = glm::angleAxis(glm::pi() / 3.0f, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("pulsator"), rot)); place.items.push_back(&GetShop().GetSlot("fireGun")); @@ -2951,16 +2951,16 @@ void Garage::LoadCars() place.items.push_back(&GetShop().GetSlot("torpedaWeapon")); - rot = glm::angleAxis(D3DX_PI / 3.0f, XVector); + rot = glm::angleAxis(glm::pi() / 3.0f, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("turel"), rot)); - rot = glm::angleAxis(D3DX_PI / 3.0f, XVector); + rot = glm::angleAxis(glm::pi() / 3.0f, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("phaseImpulse"), rot)); - rot = glm::angleAxis(-D3DX_PI / 24.0f, YVector); + rot = glm::angleAxis(-glm::pi() / 24.0f, YVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("mortira"), rot)); - rot = glm::angleAxis(D3DX_PI / 3.0f, XVector); + rot = glm::angleAxis(glm::pi() / 3.0f, XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("hyperBlaster"), rot)); car->SetSlot(Player::stWeapon3, place); @@ -3000,13 +3000,13 @@ void Garage::LoadCars() place.pos = glm::vec3(0.3f, 0.8f, 0.4f); glm::vec3 offset; - glm::quat rot = glm::angleAxis(-D3DX_PI / 2.0f, XVector); + glm::quat rot = glm::angleAxis(-glm::half_pi(), XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("rocketLauncher"), rot)); - rot = glm::angleAxis(-D3DX_PI / 2.0f, XVector); + rot = glm::angleAxis(-glm::half_pi(), XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("pulsator"), rot)); - rot = glm::angleAxis(-D3DX_PI, XVector); + rot = glm::angleAxis(-glm::pi(), XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("fireGun"), rot)); offset = glm::vec3(0.95f, -0.1f, -0.1f); @@ -3014,16 +3014,16 @@ void Garage::LoadCars() place.items.push_back(&GetShop().GetSlot("torpedaWeapon")); - rot = glm::angleAxis(-D3DX_PI / 2.0f, XVector); + rot = glm::angleAxis(-glm::half_pi(), XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("turel"), rot)); - rot = glm::angleAxis(-D3DX_PI / 2.0f, XVector); + rot = glm::angleAxis(-glm::half_pi(), XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("phaseImpulse"), rot)); - rot = glm::angleAxis(-D3DX_PI / 24.0f, YVector); + rot = glm::angleAxis(-glm::pi() / 24.0f, YVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("mortira"), rot)); - rot = glm::angleAxis(-D3DX_PI / 2.0f, XVector); + rot = glm::angleAxis(-glm::half_pi(), XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("hyperBlaster"), rot)); car->SetSlot(Player::stWeapon2, place); @@ -3035,10 +3035,10 @@ void Garage::LoadCars() place.pos = glm::vec3(0.3f, -0.8f, 0.4f); glm::vec3 offset; - glm::quat rot = glm::angleAxis(D3DX_PI / 2.0f, XVector); + glm::quat rot = glm::angleAxis(glm::half_pi(), XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("rocketLauncher"), rot)); - rot = glm::angleAxis(D3DX_PI / 2.0f, XVector); + rot = glm::angleAxis(glm::half_pi(), XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("pulsator"), rot)); place.items.push_back(&GetShop().GetSlot("fireGun")); @@ -3048,16 +3048,16 @@ void Garage::LoadCars() place.items.push_back(&GetShop().GetSlot("torpedaWeapon")); - rot = glm::angleAxis(D3DX_PI / 2.0f, XVector); + rot = glm::angleAxis(glm::half_pi(), XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("turel"), rot)); - rot = glm::angleAxis(D3DX_PI / 2.0f, XVector); + rot = glm::angleAxis(glm::half_pi(), XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("phaseImpulse"), rot)); - rot = glm::angleAxis(-D3DX_PI / 24.0f, YVector); + rot = glm::angleAxis(-glm::pi() / 24.0f, YVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("mortira"), rot)); - rot = glm::angleAxis(D3DX_PI / 2.0f, XVector); + rot = glm::angleAxis(glm::half_pi(), XVector); place.items.push_back(PlaceItem(&GetShop().GetSlot("hyperBlaster"), rot)); car->SetSlot(Player::stWeapon3, place); diff --git a/src/Rock3dGame/source/game/RaceMenu2.cpp b/src/Rock3dGame/source/game/RaceMenu2.cpp index f08c210b..add6fd9f 100644 --- a/src/Rock3dGame/source/game/RaceMenu2.cpp +++ b/src/Rock3dGame/source/game/RaceMenu2.cpp @@ -41,7 +41,7 @@ void CarFrame::OnProgress(float deltaTime) if (_secretMapObj->GetGameObj().GetGrActor().GetVisible()) { glm::quat rot = _secretMapObj->GetGameObj().GetRot(); - glm::quat dRot = glm::angleAxis(2.0f * D3DX_PI * deltaTime * 0.1f, ZVector); + glm::quat dRot = glm::angleAxis(2.0f * glm::pi() * deltaTime * 0.1f, ZVector); _secretMapObj->GetGameObj().SetRot(rot * dRot); } } @@ -102,7 +102,7 @@ void CarFrame::SetCar(Garage::Car* value, const glm::vec4& color, bool secret) if ((*iter)->invertWheel) { - glm::quat rot = glm::angleAxis(D3DX_PI, glm::vec3(0, 0, 1)); + glm::quat rot = glm::angleAxis(glm::pi(), glm::vec3(0, 0, 1)); (*iter)->SetRot(rot); } @@ -226,9 +226,9 @@ void CarFrame::SetCamStyle(CamStyle value, bool instant) } camera->SetTarget(glm::vec4(0, 0, 0, 5.0f)); - camera->SetClampAngle(glm::vec4(0.0f, 0.0f, 25.0f * D3DX_PI/180, 80.0f * D3DX_PI/180)); - camera->SetAngleSpeed(glm::vec3(D3DX_PI/48, 0, 0)); - camera->SetStableAngle(glm::vec3(75.0f * D3DX_PI/180, 0, 0)); + camera->SetClampAngle(glm::vec4(0.0f, 0.0f, glm::radians(25.0f), glm::radians(80.0f))); + camera->SetAngleSpeed(glm::vec3(glm::pi()/48, 0, 0)); + camera->SetStableAngle(glm::vec3(glm::radians(75.0f), 0, 0)); break; } @@ -313,8 +313,8 @@ SpaceshipFrame::SpaceshipFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* pare float aspect = imageSize.x/imageSize.y; spaceSprite->SetPos(center); spaceSprite->SetScale(glm::vec3(aspect * 70.0f, 70.0f, 1.0f)); - spaceSprite->SetPitchAngle(-D3DX_PI/2); - spaceSprite->SetRollAngle(-D3DX_PI/2); + spaceSprite->SetPitchAngle(-glm::half_pi()); + spaceSprite->SetRollAngle(-glm::half_pi()); } { @@ -380,9 +380,9 @@ void SpaceshipFrame::OnShow(bool value) camera->ChangeStyle(CameraManager::csAutoObserver); camera->SetTarget(glm::vec4(0, 0, 0, 50.0f)); - camera->SetClampAngle(glm::vec4(40.0f * D3DX_PI/180, 30.0f * D3DX_PI/180, 45.0f * D3DX_PI/180, 80.0f * D3DX_PI/180)); - camera->SetAngleSpeed(glm::vec3(D3DX_PI/96, 0, 0)); - camera->SetStableAngle(glm::vec3(65.0f * D3DX_PI/180, 0, 0)); + camera->SetClampAngle(glm::vec4(glm::radians(40.0f), glm::radians(30.0f), glm::radians(45.0f), glm::radians(80.0f))); + camera->SetAngleSpeed(glm::vec3(glm::pi()/96, 0, 0)); + camera->SetStableAngle(glm::vec3(glm::radians(65.0f), 0, 0)); _redLampTime = 0.0f; } @@ -412,7 +412,7 @@ GarageFrame::GarageFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent): M _leftPanel = menu->CreatePlane(root(), this, "GUI\\rightPanel2.png", true, IdentityVec2, gui::Material::bmTransparency); _leftPanel->SetAlign(gui::Widget::waRight); - _leftPanel->SetRot(D3DX_PI); + _leftPanel->SetRot(glm::pi()); _headerBg = menu->CreatePlane(_topPanel, this, "GUI\\header2.png", true, IdentityVec2, gui::Material::bmTransparency); _headerBg->SetAlign(gui::Widget::waCenter); @@ -465,7 +465,7 @@ GarageFrame::GarageFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent): M _leftArrow->SetAlign(gui::Widget::waLeft); _rightArrow = _raceMenu->CreateArrow(root(), this); _rightArrow->SetAlign(gui::Widget::waLeft); - _rightArrow->SetRot(D3DX_PI); + _rightArrow->SetRot(glm::pi()); gui::Widget* labelsParent[cLabelEnd] = {_headerBg, _bottomPanel, _bottomPanel, _moneyBg, _bottomPanel}; for (int i = 0; i < cLabelEnd; ++i) @@ -474,7 +474,7 @@ GarageFrame::GarageFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent): M _leftColorGrid = menu->CreateGrid(_leftPanel, NULL, gui::Grid::gsVertical); _leftColorGrid->SetAlign(gui::Widget::waLeft); - _leftColorGrid->SetRot(-D3DX_PI); + _leftColorGrid->SetRot(-glm::pi()); _leftColorGrid->hideInvisible(false); UpdateColorList(_leftColorGrid, Player::cLeftColors, Player::cColorsCount); @@ -1054,13 +1054,13 @@ WorkshopFrame::WorkshopFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent _goodGrid->SetAlign(gui::Widget::waLeft); _downArrow = _raceMenu->CreateArrow(_leftPanel, this); - _downArrow->SetRot(-D3DX_PI/2); + _downArrow->SetRot(-glm::half_pi()); glm::vec2 size = _downArrow->GetSize(); _downArrow->SetSize(menu->StretchImage(*_downArrow->GetFon(), glm::vec2(30.0f, 30.0f), true, true, true, false)); _downArrow->SetSelSize(menu->GetImageSize(*_downArrow->GetSel()) * _downArrow->GetSize().x / size.x); _upArrow = _raceMenu->CreateArrow(_leftPanel, this); - _upArrow->SetRot(D3DX_PI/2); + _upArrow->SetRot(glm::half_pi()); size = _upArrow->GetSize(); _upArrow->SetSize(menu->StretchImage(*_upArrow->GetFon(), glm::vec2(30.0f, 30.0f), true, true, true, false)); _upArrow->SetSelSize(menu->GetImageSize(*_upArrow->GetSel()) * _upArrow->GetSize().x / size.x); @@ -1084,7 +1084,7 @@ WorkshopFrame::WorkshopFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent float size = std::min(slot.plane->GetSize().x, slot.plane->GetSize().y); slot.viewport->SetSize(size, size); - glm::quat quat = glm::angleAxis(D3DX_PI / 2.0f, ZVector); + glm::quat quat = glm::angleAxis(glm::half_pi(), ZVector); slot.viewport->SetRot3dSpeed(quat); slot.mesh3d = menu->CreateMesh3d(slot.viewport, NULL, NULL); @@ -1155,9 +1155,9 @@ gui::ViewPort3d* WorkshopFrame::AddGood(Slot* slot, int index, int count) gui::Mesh3d* mesh3d = static_cast(viewPort->GetBox()->GetChildren().front()); mesh3d->GetOrCreateMaterial()->GetSampler().SetFiltering(graph::BaseSampler::sfAnisotropic); - glm::quat quat = glm::angleAxis(D3DX_PI / 2.0f, ZVector); + glm::quat quat = glm::angleAxis(glm::half_pi(), ZVector); viewPort->SetRot3dSpeed(quat); - quat = glm::angleAxis(2.0f * D3DX_PI * index / count, ZVector); + quat = glm::angleAxis(2.0f * glm::pi() * index / count, ZVector); viewPort->GetBox()->SetRot(viewPort->GetBox()->GetRot() * quat); } @@ -2083,9 +2083,9 @@ GamersFrame::GamersFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent): M _space->SetAnchor(gui::Widget::waCenter); _viewport = menu->CreateViewPort3d(root(), NULL, "", gui::ViewPort3d::msAnim, false); - glm::quat quat = glm::angleAxis(D3DX_PI / 24.0f, ZVector); + glm::quat quat = glm::angleAxis(glm::pi() / 24.0f, ZVector); _viewport->SetRot3dSpeed(quat); - quat = glm::angleAxis(D3DX_PI / 2.0f, XVector); + quat = glm::angleAxis(glm::half_pi(), XVector); _viewport->GetBox()->SetRot(quat); _mesh3d = menu->CreateMesh3d(_viewport, NULL, NULL); @@ -2107,7 +2107,7 @@ GamersFrame::GamersFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent): M _rightArrow = _raceMenu->CreateArrow(root(), this); _rightArrow->SetAlign(gui::Widget::waRight); - _rightArrow->SetRot(D3DX_PI); + _rightArrow->SetRot(glm::pi()); _nextArrow = _raceMenu->CreateArrow2(_bottomPanel, this); _nextArrow->SetAlign(gui::Widget::waLeft); @@ -2353,7 +2353,7 @@ AngarFrame::AngarFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent): Men _planetBoss = menu->CreatePlane(_planetInfo, this, "", true, IdentityVec2, gui::Material::bmTransparency); _planetBossCar = menu->CreateViewPort3d(_planetInfo, NULL, "", gui::ViewPort3d::msAnim); - glm::quat quat = glm::angleAxis(D3DX_PI / 2.0f, ZVector); + glm::quat quat = glm::angleAxis(glm::half_pi(), ZVector); _planetBossCar->SetRot3dSpeed(quat); for (int i = 0; i < cMenuItemEnd; ++i) @@ -2395,9 +2395,9 @@ AngarFrame::PlanetBox& AngarFrame::AddPlanet(Planet* planet, int index) box = &_planets.back(); box->viewport = menu()->CreateMesh3dBox(_planetGrid, this, planet->GetMesh(), planet->GetTexture(), gui::ViewPort3d::msStatic, Menu::ssButton5); - glm::quat quat = glm::angleAxis(D3DX_PI / 24.0f, ZVector); + glm::quat quat = glm::angleAxis(glm::pi() / 24.0f, ZVector); box->viewport->SetRot3dSpeed(quat); - quat = glm::angleAxis(D3DX_PI / 2.0f, XVector); + quat = glm::angleAxis(glm::half_pi(), XVector); box->viewport->GetBox()->SetRot(quat); box->viewport->SetSize(glm::vec2(180.0f, 180.0f)); gui::Mesh3d* mesh3d = static_cast(box->viewport->GetBox()->GetChildren().front()); @@ -3164,7 +3164,7 @@ RaceMainFrame::RaceMainFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent _speedBarValue->SetPos(glm::vec2(_speedBar->GetSize().x/2 - 15.0f, 0.0f)); _viewportCar = menu->CreateViewPort3d(_topPanel, NULL, "", gui::ViewPort3d::msAnim); - glm::quat quat = glm::angleAxis(D3DX_PI / 2.0f, ZVector); + glm::quat quat = glm::angleAxis(glm::half_pi(), ZVector); _viewportCar->SetRot3dSpeed(quat); _playerGrid = menu->CreateDummy(root(), NULL); @@ -3192,10 +3192,10 @@ RaceMainFrame::RaceMainFrame(Menu* menu, RaceMenu* raceMenu, gui::Widget* parent _slots[i] = menu->CreateMesh3dBox(_topPanel, NULL, NULL, NULL, gui::ViewPort3d::msAnim); _slots[i]->SetSize(glm::vec2(50.0f, 50.0f)); - glm::quat quat = glm::angleAxis(D3DX_PI / 2.0f, ZVector); + glm::quat quat = glm::angleAxis(glm::half_pi(), ZVector); _slots[i]->SetRot3dSpeed(quat); - quat = glm::angleAxis(2.0f * D3DX_PI * i / 6.0f, ZVector); + quat = glm::angleAxis(2.0f * glm::pi() * i / 6.0f, ZVector); _slots[i]->GetBox()->SetRot(_slots[i]->GetBox()->GetRot() * quat); } @@ -3259,7 +3259,7 @@ RaceMainFrame::PlayerBox* RaceMainFrame::AddPlayer(NetPlayer* netPlayer, unsigne newBox.readyState = menu()->CreatePlane(newBox.bgRoot, NULL, "", false, IdentityVec2, gui::Material::bmTransparency); newBox.viewportCar = menu()->CreateViewPort3d(newBox.bgRoot, NULL, "", gui::ViewPort3d::msAnim); - glm::quat quat = glm::angleAxis(D3DX_PI / 2.0f, ZVector); + glm::quat quat = glm::angleAxis(glm::half_pi(), ZVector); newBox.viewportCar->SetRot3dSpeed(quat); _players.push_back(newBox); @@ -3289,7 +3289,7 @@ void RaceMainFrame::AdjustPlayer(PlayerBox* box, bool invert) { float dir = invert ? -1.0f : 1.0f; - box->bg->SetRot(invert ? D3DX_PI : 0.0f); + box->bg->SetRot(invert ? glm::pi() : 0.0f); box->photo->SetSize(menu()->StretchImage(box->photo->GetMaterial(), glm::vec2(100.0f, 97.0f), true, false, true, false)); box->photo->SetPos(glm::vec2(-60.0f * dir, 0.0f)); diff --git a/src/Rock3dGame/source/game/Weapon.cpp b/src/Rock3dGame/source/game/Weapon.cpp index f7317d85..f515a974 100644 --- a/src/Rock3dGame/source/game/Weapon.cpp +++ b/src/Rock3dGame/source/game/Weapon.cpp @@ -1021,7 +1021,7 @@ void Proj::SpringUpdate(float deltaTime) { _time1 += deltaTime; float alpha = lsl::ClampValue(_time1/0.1f, 0.0f, 1.0f); - dAngle = -D3DX_PI * deltaTime * 1.0f; + dAngle = -glm::pi() * deltaTime * 1.0f; _vec1.x = dAngle; if (alpha == 1.0f) @@ -1029,7 +1029,7 @@ void Proj::SpringUpdate(float deltaTime) } else { - dAngle = D3DX_PI * deltaTime * 0.75f; + dAngle = glm::pi() * deltaTime * 0.75f; } _vec1.x = _vec1.x + (dAngle - _vec1.x) * lsl::ClampValue(deltaTime * 6.0f, 0.0f, 1.0f); @@ -1052,7 +1052,7 @@ void Proj::SpringUpdate(float deltaTime) _time1 += deltaTime; float alpha = lsl::ClampValue(_time1/1.0f, 0.0f, 1.0f); - angle = -D3DX_PI/6 + (D3DX_PI/6 - (-D3DX_PI/6)) * alpha; + angle = -glm::pi()/6 + (glm::pi()/6 - (-glm::pi()/6)) * alpha; glm::quat rot; D3DXQuaternionRotationAxis(&rot, &YVector, angle); @@ -1130,7 +1130,7 @@ void Proj::ImpulseContact(const px::Scene::OnContactEvent& contact) return; } - MapObj* taget = FindNextTaget(D3DX_PI/2); + MapObj* taget = FindNextTaget(glm::half_pi()); if (taget == 0) { this->Death(dtEnergy, contactActor); diff --git a/src/Rock3dGame/source/net/NetPlayer.cpp b/src/Rock3dGame/source/net/NetPlayer.cpp index 5ddf0e87..7789941e 100644 --- a/src/Rock3dGame/source/net/NetPlayer.cpp +++ b/src/Rock3dGame/source/net/NetPlayer.cpp @@ -581,7 +581,7 @@ void NetPlayer::ResponseStream(const net::NetMessage& msg, net::BitStream& strea glm::quat dRot = QuatRotation(car->GetGrActor().GetRot(), rot); glm::vec3 dRotAxis = glm::axis(dRot); float dRotAngle = glm::angle(dRot); - if (abs(dRotAngle) > D3DX_PI/24) + if (abs(dRotAngle) > glm::pi()/24) { car->GetPxActor().SetRot(rot); car->SetRotSync(dRot); From de1d36b453b295412f3949bbaadbeacb85c487b6 Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Tue, 1 Nov 2022 10:04:51 +0300 Subject: [PATCH 45/55] math: unification of output variable names in lslMath.inl --- src/MathLib/header/lslMath.inl | 355 +++++++++++++++++---------------- 1 file changed, 178 insertions(+), 177 deletions(-) diff --git a/src/MathLib/header/lslMath.inl b/src/MathLib/header/lslMath.inl index 59027b39..ff2d5d26 100644 --- a/src/MathLib/header/lslMath.inl +++ b/src/MathLib/header/lslMath.inl @@ -47,51 +47,51 @@ inline float NumAbsAdd(float absVal, float addVal) inline glm::mat4 Matrix4DxToGlm(const D3DXMATRIX &mat) { // mat - DX, mat.m[0] 1-st row, mat.m[0][1] = mat._12 - 1-st row 2-nd column - glm::mat4 mat4glm(mat._11, mat._21, mat._31, mat._41, // 1-st column + glm::mat4 outMat(mat._11, mat._21, mat._31, mat._41, // 1-st column mat._12, mat._22, mat._32, mat._42, // 2-nd column mat._13, mat._23, mat._33, mat._43, // 3-rd column mat._14, mat._24, mat._34, mat._44);// 4-th column - return mat4glm; + return outMat; } inline D3DXMATRIX Matrix4GlmToDx(const glm::mat4 &mat) { // mat - GLM, mat[0] 1-st column, mat[0][1] = mat[0].y - 1-st column 2-nd row - D3DXMATRIX matrix(mat[0].x, mat[1].x, mat[2].x, mat[3].x, + D3DXMATRIX outMat(mat[0].x, mat[1].x, mat[2].x, mat[3].x, mat[0].y, mat[1].y, mat[2].y, mat[3].y, mat[0].z, mat[1].z, mat[2].z, mat[3].z, mat[0].w, mat[1].w, mat[2].w, mat[3].w); - return matrix; + return outMat; } inline glm::vec3 Vec3DxToGlm(const D3DXVECTOR3 v3) { - glm::vec3 v3glm(v3.x, v3.y, v3.z); - return v3glm; + glm::vec3 outVec(v3.x, v3.y, v3.z); + return outVec; } inline D3DXVECTOR3 Vec3GlmToDx(const glm::vec3 v3) { - D3DXVECTOR3 v3dx(v3.x, v3.y, v3.z); - return v3dx; + D3DXVECTOR3 outVec(v3.x, v3.y, v3.z); + return outVec; } inline glm::vec4 Vec4DxToGlm(const D3DXVECTOR4 v4) { - glm::vec4 v4glm(v4.x, v4.y, v4.z, v4.w); - return v4glm; + glm::vec4 outVec(v4.x, v4.y, v4.z, v4.w); + return outVec; } inline D3DXVECTOR4 Vec4GlmToDx(const glm::vec4 v4) { - D3DXVECTOR4 v4Dx(v4.x, v4.y, v4.z, v4.w); - return v4Dx; + D3DXVECTOR4 outVec(v4.x, v4.y, v4.z, v4.w); + return outVec; } inline D3DXPLANE Vec4ToPlane(const glm::vec4 v4) { - D3DXPLANE plane(v4.x, v4.y, v4.z, v4.w); - return plane; + D3DXPLANE outPlane(v4.x, v4.y, v4.z, v4.w); + return outPlane; } inline D3DCOLOR Vec4ToColor(const glm::vec4 &vec) @@ -101,54 +101,53 @@ inline D3DCOLOR Vec4ToColor(const glm::vec4 &vec) inline glm::vec4 ColorToVec4(const D3DCOLOR &col) { - glm::vec4 vec; - vec.r = (col >> 16 & 255) / 255.0f; - vec.g = (col >> 8 & 255) / 255.0f; - vec.b = (col & 255) / 255.0f; - vec.a = (col >> 24 & 255) / 255.0f; - return vec; + glm::vec4 outVec; + outVec.r = (col >> 16 & 255) / 255.0f; + outVec.g = (col >> 8 & 255) / 255.0f; + outVec.b = (col & 255) / 255.0f; + outVec.a = (col >> 24 & 255) / 255.0f; + return outVec; } inline glm::vec4 ColorVToVec4(const D3DCOLORVALUE &cv) { - glm::vec4 v4glm(cv.r, cv.g, cv.b, cv.a); - return v4glm; + glm::vec4 outVec(cv.r, cv.g, cv.b, cv.a); + return outVec; } inline glm::vec3 Vec3TransformCoord(const glm::vec3 &vec, const D3DXMATRIX &mat) { - D3DXVECTOR3 res; - D3DXVec3TransformCoord(&res, &Vec3GlmToDx(vec), &mat); - return Vec3DxToGlm(res); + D3DXVECTOR3 outVec; + D3DXVec3TransformCoord(&outVec, &Vec3GlmToDx(vec), &mat); + return Vec3DxToGlm(outVec); } inline glm::vec3 Vec3TransformNormal(const glm::vec3 &vec, const D3DXMATRIX &mat) { - D3DXVECTOR3 res; - D3DXVec3TransformNormal(&res, &Vec3GlmToDx(vec), &mat); - return Vec3DxToGlm(res); + D3DXVECTOR3 outVec; + D3DXVec3TransformNormal(&outVec, &Vec3GlmToDx(vec), &mat); + return Vec3DxToGlm(outVec); } inline glm::vec4 Vec3Transform(const glm::vec3 &vec, const D3DXMATRIX &mat) { - D3DXVECTOR4 res; - D3DXVec3Transform(&res, &Vec3GlmToDx(vec), &mat); - return Vec4DxToGlm(res); + D3DXVECTOR4 outVec; + D3DXVec3Transform(&outVec, &Vec3GlmToDx(vec), &mat); + return Vec4DxToGlm(outVec); } - inline glm::vec4 Vec4Transform(const glm::vec4 &vec, const D3DXMATRIX &mat) { - D3DXVECTOR4 res; - D3DXVec4Transform(&res, &Vec4GlmToDx(vec), &mat); - return Vec4DxToGlm(res); + D3DXVECTOR4 outVec; + D3DXVec4Transform(&outVec, &Vec4GlmToDx(vec), &mat); + return Vec4DxToGlm(outVec); } inline float ScalarTransform(float scalar, const glm::vec3& vec, const D3DXMATRIX& mat) { - D3DXVECTOR3 res; - D3DXVec3TransformNormal(&res, &Vec3GlmToDx(vec * scalar), &mat); - float len = D3DXVec3Length(&res); + D3DXVECTOR3 outVec; + D3DXVec3TransformNormal(&outVec, &Vec3GlmToDx(vec * scalar), &mat); + float len = D3DXVec3Length(&outVec); return scalar < 0 ? -len : len; } @@ -167,29 +166,29 @@ inline void BuildWorldMatrix(const glm::vec3& pos, const glm::vec3& scale, const inline D3DXMATRIX BuildWorldMatrix(const glm::vec3& pos, const glm::vec3& scale, const glm::quat& rot) { - D3DXMATRIX res; - BuildWorldMatrix(pos, scale, rot, res); - return res; + D3DXMATRIX outMat; + BuildWorldMatrix(pos, scale, rot, outMat); + return outMat; } -inline void MatrixRotationFromAxis(const glm::vec3& xVec, const glm::vec3& yVec, const glm::vec3& zVec, D3DXMATRIX& matOut) +inline void MatrixRotationFromAxis(const glm::vec3& xVec, const glm::vec3& yVec, const glm::vec3& zVec, D3DXMATRIX& outMat) { - matOut._11 = xVec.x; - matOut._12 = xVec.y; - matOut._13 = xVec.z; - matOut._14 = 0.0f; - matOut._21 = yVec.x; - matOut._22 = yVec.y; - matOut._23 = yVec.z; - matOut._24 = 0.0f; - matOut._31 = zVec.x; - matOut._32 = zVec.y; - matOut._33 = zVec.z; - matOut._34 = 0.0f; - matOut._41 = 0.0f; - matOut._42 = 0.0f; - matOut._43 = 0.0f; - matOut._44 = 1.0f; + outMat._11 = xVec.x; + outMat._12 = xVec.y; + outMat._13 = xVec.z; + outMat._14 = 0.0f; + outMat._21 = yVec.x; + outMat._22 = yVec.y; + outMat._23 = yVec.z; + outMat._24 = 0.0f; + outMat._31 = zVec.x; + outMat._32 = zVec.y; + outMat._33 = zVec.z; + outMat._34 = 0.0f; + outMat._41 = 0.0f; + outMat._42 = 0.0f; + outMat._43 = 0.0f; + outMat._44 = 1.0f; } inline void MatrixSetTranslation(const glm::vec3& vec, D3DXMATRIX& outMat) @@ -222,30 +221,32 @@ inline void MatrixScale(const glm::vec3& vec, D3DXMATRIX& outMat) inline void MatGetPos(const D3DXMATRIX& mat, glm::vec3& outPos) { - outPos = Vec3DxToGlm(mat.m[3]); + outPos.x = mat.m[3][0]; + outPos.y = mat.m[3][1]; + outPos.z = mat.m[3][2]; } inline glm::vec3 MatGetPos(const D3DXMATRIX& mat) { - glm::vec3 res; - MatGetPos(mat, res); - return res; + glm::vec3 outPos; + MatGetPos(mat, outPos); + return outPos; } inline glm::vec2 Vec2Minimize(const glm::vec2 &vec1, const glm::vec2 &vec2) { - glm::vec2 pOut; - pOut.x = vec1.x < vec2.x ? vec1.x : vec2.x; - pOut.y = vec1.y < vec2.y ? vec1.y : vec2.y; - return pOut; + glm::vec2 outVec; + outVec.x = vec1.x < vec2.x ? vec1.x : vec2.x; + outVec.y = vec1.y < vec2.y ? vec1.y : vec2.y; + return outVec; } inline glm::vec2 Vec2Maximize(const glm::vec2 &vec1, const glm::vec2 &vec2) { - glm::vec2 pOut; - pOut.x = vec1.x > vec2.x ? vec1.x : vec2.x; - pOut.y = vec1.y > vec2.y ? vec1.y : vec2.y; - return pOut; + glm::vec2 outVec; + outVec.x = vec1.x > vec2.x ? vec1.x : vec2.x; + outVec.y = vec1.y > vec2.y ? vec1.y : vec2.y; + return outVec; } inline glm::vec2 Vec2TransformCoord(const glm::vec2 &vec, const glm::mat4 &mat) @@ -267,10 +268,10 @@ inline float Vec2Dot(const glm::vec2 &vec1, const glm::vec2 &vec2) inline glm::vec2 Vec2Lerp(const glm::vec2 &vec1, const glm::vec2 &vec2, float scalar) { - glm::vec2 res; - res.x = vec1.x + scalar * (vec2.x - vec1.x); - res.y = vec1.y + scalar * (vec2.y - vec1.y); - return res; + glm::vec2 outVec; + outVec.x = vec1.x + scalar * (vec2.x - vec1.x); + outVec.y = vec1.y + scalar * (vec2.y - vec1.y); + return outVec; } inline float Vec2CCW(const glm::vec2 &vec1, const glm::vec2 &vec2) @@ -290,9 +291,9 @@ inline void Vec2NormCCW(const glm::vec2& vec, glm::vec2& outVec) inline glm::vec2 Vec2NormCCW(const glm::vec2& vec2) { - glm::vec2 res; - Vec2NormCCW(vec2, res); - return res; + glm::vec2 outVec; + Vec2NormCCW(vec2, outVec); + return outVec; } //Поворот вектора на 90 градуос по часовой стрелки, иначе говоря его нормаль @@ -310,32 +311,32 @@ inline float Vec2Proj(const glm::vec2& vec1, const glm::vec2& vec2) return Vec2Dot(vec1, vec2) / glm::length(vec2); } -inline void operator*=(glm::vec2& vec1, const glm::vec2& vec2) +inline void operator*=(glm::vec2& outVec1, const glm::vec2& vec2) { - vec1.x *= vec2.x; - vec1.y *= vec2.y; + outVec1.x *= vec2.x; + outVec1.y *= vec2.y; } inline glm::vec2 operator*(const glm::vec2& vec1, const glm::vec2& vec2) { - glm::vec2 res = vec1; - res *= vec2; + glm::vec2 outVec = vec1; + outVec *= vec2; - return res; + return outVec; } -inline void operator/=(glm::vec2& vec1, const glm::vec2& vec2) +inline void operator/=(glm::vec2& outVec1, const glm::vec2& vec2) { - vec1.x /= vec2.x; - vec1.y /= vec2.y; + outVec1.x /= vec2.x; + outVec1.y /= vec2.y; } inline glm::vec2 operator/(const glm::vec2& vec1, const glm::vec2& vec2) { - glm::vec2 res = vec1; - res /= vec2; + glm::vec2 outVec = vec1; + outVec /= vec2; - return res; + return outVec; } inline glm::vec3 Vec3FromVec2(const glm::vec2& vec) @@ -343,42 +344,42 @@ inline glm::vec3 Vec3FromVec2(const glm::vec2& vec) return glm::vec3(vec.x, vec.y, 0.0f); } -inline void Vec3Invert(const glm::vec3& vec, glm::vec3& rOut) +inline void Vec3Invert(const glm::vec3& vec, glm::vec3& outVec) { - rOut.x = 1 / vec.x; - rOut.y = 1 / vec.y; - rOut.z = 1 / vec.z; + outVec.x = 1 / vec.x; + outVec.y = 1 / vec.y; + outVec.z = 1 / vec.z; }; inline glm::vec3 Vec3Invert(const glm::vec3& vec) { - glm::vec3 res; - Vec3Invert(vec, res); - return res; + glm::vec3 outVec; + Vec3Invert(vec, outVec); + return outVec; }; -inline void Vec3Abs(const glm::vec3& vec, glm::vec3& rOut) +inline void Vec3Abs(const glm::vec3& vec, glm::vec3& outVec) { - rOut.x = abs(vec.x); - rOut.y = abs(vec.y); - rOut.z = abs(vec.z); + outVec.x = abs(vec.x); + outVec.y = abs(vec.y); + outVec.z = abs(vec.z); } inline glm::vec3 Vec3Abs(const glm::vec3& vec) { - glm::vec3 res; - Vec3Abs(vec, res); - return res; + glm::vec3 outVec; + Vec3Abs(vec, outVec); + return outVec; } // It's possible to use glm:mix, but it gives a bit different result for Z axe. inline glm::vec3 Vec3Lerp(const glm::vec3 &vec1, const glm::vec3 &vec2, float scalar) { - glm::vec3 res; - res.x = vec1.x + scalar * (vec2.x - vec1.x); - res.y = vec1.y + scalar * (vec2.y - vec1.y); - res.z = vec1.z + scalar * (vec2.z - vec1.z); - return res; + glm::vec3 outVec; + outVec.x = vec1.x + scalar * (vec2.x - vec1.x); + outVec.y = vec1.y + scalar * (vec2.y - vec1.y); + outVec.z = vec1.z + scalar * (vec2.z - vec1.z); + return outVec; } inline void Vec3Rotate(const glm::vec3& v, const glm::quat& quat, glm::vec3& outVec) @@ -395,34 +396,34 @@ inline void Vec3Rotate(const glm::vec3& v, const glm::quat& quat, glm::vec3& out outVec /= glm::length2(quat); } -inline void operator*=(glm::vec3& vec1, const glm::vec3& vec2) +inline void operator*=(glm::vec3& outVec1, const glm::vec3& vec2) { - vec1.x *= vec2.x; - vec1.y *= vec2.y; - vec1.z *= vec2.z; + outVec1.x *= vec2.x; + outVec1.y *= vec2.y; + outVec1.z *= vec2.z; } inline glm::vec3 operator*(const glm::vec3& vec1, const glm::vec3& vec2) { - glm::vec3 res = vec1; - res *= vec2; + glm::vec3 outVec = vec1; + outVec *= vec2; - return res; + return outVec; } -inline void operator/=(glm::vec3& vec1, const glm::vec3& vec2) +inline void operator/=(glm::vec3& outVec1, const glm::vec3& vec2) { - vec1.x /= vec2.x; - vec1.y /= vec2.y; - vec1.z /= vec2.z; + outVec1.x /= vec2.x; + outVec1.y /= vec2.y; + outVec1.z /= vec2.z; } inline glm::vec3 operator/(const glm::vec3& vec1, const glm::vec3& vec2) { - glm::vec3 res = vec1; - res /= vec2; + glm::vec3 outVec = vec1; + outVec /= vec2; - return res; + return outVec; } inline bool operator>=(const glm::vec3& vec1, float scalar) @@ -453,20 +454,20 @@ inline bool operator<(const glm::vec3& vec1, const glm::vec3& vec2) vec1.z < vec2.z; } -inline void operator*=(glm::vec4& vec1, const glm::vec4& vec2) +inline void operator*=(glm::vec4& outVec1, const glm::vec4& vec2) { - vec1.r *= vec2.r; - vec1.g *= vec2.g; - vec1.b *= vec2.b; - vec1.a *= vec2.a; + outVec1.r *= vec2.r; + outVec1.g *= vec2.g; + outVec1.b *= vec2.b; + outVec1.a *= vec2.a; } inline glm::vec4 operator*(const glm::vec4& vec1, const glm::vec4& vec2) { - glm::vec4 res = vec1; - res *= vec2; + glm::vec4 outVec = vec1; + outVec *= vec2; - return res; + return outVec; } inline void QuatShortestArc(const glm::vec3& from, const glm::vec3& to, glm::quat& outQuat) @@ -522,7 +523,7 @@ inline glm::quat QuatRotation(const glm::quat& quat1, const glm::quat& quat2) return quat2 * glm::inverse(quat1); } -inline const glm::vec3& QuatRotateVec3(glm::vec3& res, const glm::vec3& vec, const glm::quat& quat) +inline const glm::vec3& QuatRotateVec3(glm::vec3& outVec, const glm::vec3& vec, const glm::quat& quat) { glm::quat q(vec.x * quat.x + vec.y * quat.y + vec.z * quat.z, vec.x * quat.w + vec.z * quat.y - vec.y * quat.z, @@ -530,11 +531,11 @@ inline const glm::vec3& QuatRotateVec3(glm::vec3& res, const glm::vec3& vec, con vec.z * quat.w + vec.y * quat.x - vec.x * quat.y); float norm = glm::length2(quat); - res = glm::vec3(quat.w * q.x + quat.x * q.w + quat.y * q.z - quat.z * q.y, + outVec = glm::vec3(quat.w * q.x + quat.x * q.w + quat.y * q.z - quat.z * q.y, quat.w * q.y + quat.y * q.w + quat.z * q.x - quat.x * q.z, quat.w * q.z + quat.z * q.w + quat.x * q.y - quat.y * q.x) * (1.0f/norm); - return res; + return outVec; } inline void Line2FromNorm(const glm::vec2& norm, const glm::vec2& point, glm::vec3& outLine) @@ -549,9 +550,9 @@ inline void Line2FromNorm(const glm::vec2& norm, const glm::vec2& point, glm::ve inline glm::vec3 Line2FromNorm(const glm::vec2& norm, const glm::vec2& point) { - glm::vec3 res; - Line2FromNorm(norm, point, res); - return res; + glm::vec3 outVec; + Line2FromNorm(norm, point, outVec); + return outVec; } inline void Line2FromDir(const glm::vec2& dir, const glm::vec2& point, glm::vec3& outLine) @@ -563,22 +564,22 @@ inline void Line2FromDir(const glm::vec2& dir, const glm::vec2& point, glm::vec3 inline glm::vec3 Line2FromDir(const glm::vec2& dir, const glm::vec2& point) { - glm::vec3 res; - Line2FromDir(dir, point, res); - return res; + glm::vec3 outVec; + Line2FromDir(dir, point, outVec); + return outVec; } -inline void Line2GetNorm(const glm::vec3& line, glm::vec2& norm) +inline void Line2GetNorm(const glm::vec3& line, glm::vec2& outNorm) { - norm.x = line.x; - norm.y = line.y; + outNorm.x = line.x; + outNorm.y = line.y; } -inline void Line2GetDir(const glm::vec3& line, glm::vec2& dir) +inline void Line2GetDir(const glm::vec3& line, glm::vec2& outDir) { - dir.x = line.x; - dir.y = line.y; - Vec2NormCCW(dir, dir); + outDir.x = line.x; + outDir.y = line.y; + Vec2NormCCW(outDir, outDir); } inline void Line2GetRadiusVec(const glm::vec3& line, glm::vec2& outVec) @@ -589,16 +590,16 @@ inline void Line2GetRadiusVec(const glm::vec3& line, glm::vec2& outVec) inline glm::vec2 Line2GetRadiusVec(const glm::vec3& line) { - glm::vec2 res; - Line2GetRadiusVec(line, res); - return res; + glm::vec2 outVec; + Line2GetRadiusVec(line, outVec); + return outVec; } inline glm::vec2 Line2GetNorm(const glm::vec3& line) { - glm::vec2 res; - Line2GetNorm(line, res); - return res; + glm::vec2 outVec; + Line2GetNorm(line, outVec); + return outVec; } inline float Line2DistToPoint(const glm::vec3& line, const glm::vec2& point) @@ -615,25 +616,25 @@ inline void Line2NormVecToPoint(const glm::vec3& line, const glm::vec2& point, g inline glm::vec2 Line2NormVecToPoint(const glm::vec3& line, const glm::vec2& point) { - glm::vec2 res; - Line2NormVecToPoint(line, point, res); - return res; + glm::vec2 outNormVec; + Line2NormVecToPoint(line, point, outNormVec); + return outNormVec; } inline Vec3Range operator*(const Vec3Range& val1, float val2) { - Vec3Range res = val1; - res *= val2; + Vec3Range outVR = val1; + outVR *= val2; - return res; + return outVR; } inline Vec3Range operator*(const Vec3Range& val1, const glm::vec3& val2) { - Vec3Range res = val1; - res *= val2; + Vec3Range outVR = val1; + outVR *= val2; - return res; + return outVR; } //ray = rayPos + t * rayVec @@ -666,33 +667,33 @@ inline bool RayCastIntersectSphere(const glm::vec3& rayPos, const glm::vec3& ray inline glm::vec4 PlaneNormalize(const glm::vec4 &plane) { - glm::vec4 pOut; + glm::vec4 outVec; float norm = sqrt(plane.x * plane.x + plane.y * plane.y + plane.z * plane.z); if (norm) { - pOut.x = plane.x / norm; - pOut.y = plane.y / norm; - pOut.z = plane.z / norm; - pOut.w = plane.w / norm; + outVec.x = plane.x / norm; + outVec.y = plane.y / norm; + outVec.z = plane.z / norm; + outVec.w = plane.w / norm; } else { - pOut.x = 0.0f; - pOut.y = 0.0f; - pOut.z = 0.0f; - pOut.w = 0.0f; + outVec.x = 0.0f; + outVec.y = 0.0f; + outVec.z = 0.0f; + outVec.w = 0.0f; } - return pOut; + return outVec; } inline glm::vec4 PlaneTransform(const glm::vec4 &plane, const D3DXMATRIX &mat) { - glm::vec4 pOut; - pOut.x = mat.m[0][0] * plane.x + mat.m[1][0] * plane.y + mat.m[2][0] * plane.z + mat.m[3][0] * plane.w; - pOut.y = mat.m[0][1] * plane.x + mat.m[1][1] * plane.y + mat.m[2][1] * plane.z + mat.m[3][1] * plane.w; - pOut.z = mat.m[0][2] * plane.x + mat.m[1][2] * plane.y + mat.m[2][2] * plane.z + mat.m[3][2] * plane.w; - pOut.w = mat.m[0][3] * plane.x + mat.m[1][3] * plane.y + mat.m[2][3] * plane.z + mat.m[3][3] * plane.w; - return pOut; + glm::vec4 outVec; + outVec.x = mat.m[0][0] * plane.x + mat.m[1][0] * plane.y + mat.m[2][0] * plane.z + mat.m[3][0] * plane.w; + outVec.y = mat.m[0][1] * plane.x + mat.m[1][1] * plane.y + mat.m[2][1] * plane.z + mat.m[3][1] * plane.w; + outVec.z = mat.m[0][2] * plane.x + mat.m[1][2] * plane.y + mat.m[2][2] * plane.z + mat.m[3][2] * plane.w; + outVec.w = mat.m[0][3] * plane.x + mat.m[1][3] * plane.y + mat.m[2][3] * plane.z + mat.m[3][3] * plane.w; + return outVec; } inline glm::vec4 PlaneFromPointNormal(const glm::vec3 &point, const glm::vec3 &normal) From 5847702231de23774c0798f01fd36688b4d370eb Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Tue, 1 Nov 2022 13:25:25 +0300 Subject: [PATCH 46/55] math: replace all D3DXPLANE and D3DX* (except D3DXMATRIX) ftom .inl --- src/MathLib/header/lslMath.inl | 211 +++++++++++++----- src/Rock3dEngine/source/GraphManager.cpp | 11 +- src/Rock3dEngine/source/graph/ContextInfo.cpp | 16 +- src/Rock3dEngine/source/graph/DepthMap.cpp | 3 +- src/Rock3dEngine/source/graph/Engine.cpp | 3 +- .../source/graph/SceneManager.cpp | 16 +- .../source/graph/ShadowMapRender.cpp | 6 +- src/Rock3dEngine/source/graph/WaterPlane.cpp | 2 +- src/Rock3dGame/source/game/Weapon.cpp | 3 +- 9 files changed, 174 insertions(+), 97 deletions(-) diff --git a/src/MathLib/header/lslMath.inl b/src/MathLib/header/lslMath.inl index ff2d5d26..74e20afd 100644 --- a/src/MathLib/header/lslMath.inl +++ b/src/MathLib/header/lslMath.inl @@ -64,36 +64,15 @@ inline D3DXMATRIX Matrix4GlmToDx(const glm::mat4 &mat) return outMat; } -inline glm::vec3 Vec3DxToGlm(const D3DXVECTOR3 v3) +inline D3DVECTOR Vec3GlmToDx(const glm::vec3 v3) { - glm::vec3 outVec(v3.x, v3.y, v3.z); + D3DVECTOR outVec; + outVec.x = v3.x; + outVec.y = v3.y; + outVec.z = v3.z; return outVec; } -inline D3DXVECTOR3 Vec3GlmToDx(const glm::vec3 v3) -{ - D3DXVECTOR3 outVec(v3.x, v3.y, v3.z); - return outVec; -} - -inline glm::vec4 Vec4DxToGlm(const D3DXVECTOR4 v4) -{ - glm::vec4 outVec(v4.x, v4.y, v4.z, v4.w); - return outVec; -} - -inline D3DXVECTOR4 Vec4GlmToDx(const glm::vec4 v4) -{ - D3DXVECTOR4 outVec(v4.x, v4.y, v4.z, v4.w); - return outVec; -} - -inline D3DXPLANE Vec4ToPlane(const glm::vec4 v4) -{ - D3DXPLANE outPlane(v4.x, v4.y, v4.z, v4.w); - return outPlane; -} - inline D3DCOLOR Vec4ToColor(const glm::vec4 &vec) { return D3DCOLOR_COLORVALUE(vec.r, vec.g, vec.b, vec.a); @@ -117,50 +96,89 @@ inline glm::vec4 ColorVToVec4(const D3DCOLORVALUE &cv) inline glm::vec3 Vec3TransformCoord(const glm::vec3 &vec, const D3DXMATRIX &mat) { - D3DXVECTOR3 outVec; - D3DXVec3TransformCoord(&outVec, &Vec3GlmToDx(vec), &mat); - return Vec3DxToGlm(outVec); + glm::vec3 outVec; + float norm = mat.m[0][3] * vec.x + mat.m[1][3] * vec.y + mat.m[2][3] * vec.z + mat.m[3][3]; + + outVec.x = (mat.m[0][0] * vec.x + mat.m[1][0] * vec.y + mat.m[2][0] * vec.z + mat.m[3][0]) / norm; + outVec.y = (mat.m[0][1] * vec.x + mat.m[1][1] * vec.y + mat.m[2][1] * vec.z + mat.m[3][1]) / norm; + outVec.z = (mat.m[0][2] * vec.x + mat.m[1][2] * vec.y + mat.m[2][2] * vec.z + mat.m[3][2]) / norm; + return outVec; } inline glm::vec3 Vec3TransformNormal(const glm::vec3 &vec, const D3DXMATRIX &mat) { - D3DXVECTOR3 outVec; - D3DXVec3TransformNormal(&outVec, &Vec3GlmToDx(vec), &mat); - return Vec3DxToGlm(outVec); + glm::vec3 outVec; + outVec.x = mat.m[0][0] * vec.x + mat.m[1][0] * vec.y + mat.m[2][0] * vec.z; + outVec.y = mat.m[0][1] * vec.x + mat.m[1][1] * vec.y + mat.m[2][1] * vec.z; + outVec.z = mat.m[0][2] * vec.x + mat.m[1][2] * vec.y + mat.m[2][2] * vec.z; + return outVec; } inline glm::vec4 Vec3Transform(const glm::vec3 &vec, const D3DXMATRIX &mat) { - D3DXVECTOR4 outVec; - D3DXVec3Transform(&outVec, &Vec3GlmToDx(vec), &mat); - return Vec4DxToGlm(outVec); + glm::vec4 outVec; + outVec.x = mat.m[0][0] * vec.x + mat.m[1][0] * vec.y + mat.m[2][0] * vec.z + mat.m[3][0]; + outVec.y = mat.m[0][1] * vec.x + mat.m[1][1] * vec.y + mat.m[2][1] * vec.z + mat.m[3][1]; + outVec.z = mat.m[0][2] * vec.x + mat.m[1][2] * vec.y + mat.m[2][2] * vec.z + mat.m[3][2]; + outVec.w = mat.m[0][3] * vec.x + mat.m[1][3] * vec.y + mat.m[2][3] * vec.z + mat.m[3][3]; + return outVec; } inline glm::vec4 Vec4Transform(const glm::vec4 &vec, const D3DXMATRIX &mat) { - D3DXVECTOR4 outVec; - D3DXVec4Transform(&outVec, &Vec4GlmToDx(vec), &mat); - return Vec4DxToGlm(outVec); + glm::vec4 outVec; + outVec.x = mat.m[0][0] * vec.x + mat.m[1][0] * vec.y + mat.m[2][0] * vec.z + mat.m[3][0] * vec.w; + outVec.y = mat.m[0][1] * vec.x + mat.m[1][1] * vec.y + mat.m[2][1] * vec.z + mat.m[3][1] * vec.w; + outVec.z = mat.m[0][2] * vec.x + mat.m[1][2] * vec.y + mat.m[2][2] * vec.z + mat.m[3][2] * vec.w; + outVec.w = mat.m[0][3] * vec.x + mat.m[1][3] * vec.y + mat.m[2][3] * vec.z + mat.m[3][3] * vec.w; + return outVec; } inline float ScalarTransform(float scalar, const glm::vec3& vec, const D3DXMATRIX& mat) { - D3DXVECTOR3 outVec; - D3DXVec3TransformNormal(&outVec, &Vec3GlmToDx(vec * scalar), &mat); - float len = D3DXVec3Length(&outVec); + glm::vec3 outVec = Vec3TransformNormal(vec * scalar, mat); + float len = glm::length(outVec); return scalar < 0 ? -len : len; } -inline void BuildWorldMatrix(const glm::vec3& pos, const glm::vec3& scale, const glm::quat& rot, D3DXMATRIX& outMat) +inline D3DXMATRIX MatrixMultiply(const D3DXMATRIX &mat1, const D3DXMATRIX &mat2) { - D3DXMATRIX scaleMat; - D3DXMatrixScaling(&scaleMat, scale.x, scale.y, scale.z); + D3DXMATRIX outMat; + int i, j; + for (i = 0; i < 4; i++) + { + for (j = 0; j < 4; j++) + { + outMat.m[i][j] = mat1.m[i][0] * mat2.m[0][j] + mat1.m[i][1] * mat2.m[1][j] + mat1.m[i][2] * mat2.m[2][j] + + mat1.m[i][3] * mat2.m[3][j]; + } + } + return outMat; +} - D3DXMATRIX rotMat = Matrix4GlmToDx(glm::transpose(glm::mat4_cast(rot))); +inline D3DXMATRIX MatrixScaling(float sx, float sy, float sz) +{ + D3DXMATRIX outMat = IdentityMatrix; + outMat.m[0][0] = sx; + outMat.m[1][1] = sy; + outMat.m[2][2] = sz; + return outMat; +} - D3DXMATRIX transMat; - D3DXMatrixTranslation(&transMat, pos.x, pos.y, pos.z); +inline D3DXMATRIX MatrixTranslation(float x, float y, float z) +{ + D3DXMATRIX outMat = IdentityMatrix; + outMat.m[3][0] = x; + outMat.m[3][1] = y; + outMat.m[3][2] = z; + return outMat; +} +inline void BuildWorldMatrix(const glm::vec3& pos, const glm::vec3& scale, const glm::quat& rot, D3DXMATRIX& outMat) +{ + D3DXMATRIX scaleMat = MatrixScaling(scale.x, scale.y, scale.z); + D3DXMATRIX rotMat = Matrix4GlmToDx(glm::transpose(glm::mat4_cast(rot))); + D3DXMATRIX transMat = MatrixTranslation(pos.x, pos.y, pos.z); outMat = scaleMat * rotMat * transMat; } @@ -171,6 +189,67 @@ inline D3DXMATRIX BuildWorldMatrix(const glm::vec3& pos, const glm::vec3& scale, return outMat; } +inline D3DXMATRIX MatrixLookAtRH(const glm::vec3 &eye, const glm::vec3 &at, const glm::vec3 &up) +{ + D3DXMATRIX outMat; + glm::vec3 right, upn, vec; + + vec = glm::normalize(at - eye); + right = glm::cross(up, vec); + upn = glm::cross(vec, right); + right = glm::normalize(right); + upn = glm::normalize(upn); + + outMat.m[0][0] = -right.x; + outMat.m[1][0] = -right.y; + outMat.m[2][0] = -right.z; + outMat.m[3][0] = glm::dot(right, eye); + outMat.m[0][1] = upn.x; + outMat.m[1][1] = upn.y; + outMat.m[2][1] = upn.z; + outMat.m[3][1] = -glm::dot(upn, eye); + outMat.m[0][2] = -vec.x; + outMat.m[1][2] = -vec.y; + outMat.m[2][2] = -vec.z; + outMat.m[3][2] = glm::dot(vec, eye); + outMat.m[0][3] = 0.0f; + outMat.m[1][3] = 0.0f; + outMat.m[2][3] = 0.0f; + outMat.m[3][3] = 1.0f; + + return outMat; +} + +inline D3DXMATRIX MatrixRotationAxis(const glm::vec3 &vec, float angle) +{ + D3DXMATRIX outMat; + glm::vec3 nv = glm::normalize(vec); + + float sangle, cangle, cdiff; + sangle = sinf(angle); + cangle = cosf(angle); + cdiff = 1.0f - cangle; + + outMat.m[0][0] = cdiff * nv.x * nv.x + cangle; + outMat.m[1][0] = cdiff * nv.x * nv.y - sangle * nv.z; + outMat.m[2][0] = cdiff * nv.x * nv.z + sangle * nv.y; + outMat.m[3][0] = 0.0f; + outMat.m[0][1] = cdiff * nv.y * nv.x + sangle * nv.z; + outMat.m[1][1] = cdiff * nv.y * nv.y + cangle; + outMat.m[2][1] = cdiff * nv.y * nv.z - sangle * nv.x; + outMat.m[3][1] = 0.0f; + outMat.m[0][2] = cdiff * nv.z * nv.x - sangle * nv.y; + outMat.m[1][2] = cdiff * nv.z * nv.y + sangle * nv.x; + outMat.m[2][2] = cdiff * nv.z * nv.z + cangle; + outMat.m[3][2] = 0.0f; + outMat.m[0][3] = 0.0f; + outMat.m[1][3] = 0.0f; + outMat.m[2][3] = 0.0f; + outMat.m[3][3] = 1.0f; + + return outMat; +} + inline void MatrixRotationFromAxis(const glm::vec3& xVec, const glm::vec3& yVec, const glm::vec3& zVec, D3DXMATRIX& outMat) { outMat._11 = xVec.x; @@ -488,21 +567,6 @@ inline void QuatShortestArc(const glm::vec3& from, const glm::vec3& to, glm::qua } else outQuat = NullQuaternion; - - /*const float TINY = 1e8; - - glm::vec3 c = glm::cross(from, to); - outQuat = D3DXQUATERNION(c.x, c.y, c.z, glm::dot(from, to)); - - outQuat.w += 1.0f; // reducing angle to halfangle - if(outQuat.w <= TINY ) // angle close to PI - { - if( ( from.z*from.z ) > ( from.x*from.x ) ) - outQuat = D3DXQUATERNION(0, from.z, - from.y, outQuat.w); //from*vector3(1,0,0) - else - outQuat = D3DXQUATERNION(from.y, -from.x, 0, outQuat.w); //from*vector3(0,0,1) - } - D3DXQuaternionNormalize(&outQuat, &outQuat);*/ } inline glm::quat QuatShortestArc(const glm::vec3& from, const glm::vec3& to) @@ -686,6 +750,29 @@ inline glm::vec4 PlaneNormalize(const glm::vec4 &plane) return outVec; } +inline D3DXMATRIX MatrixReflect(const glm::vec4 &plane) +{ + glm::vec4 normPlane = PlaneNormalize(plane); + D3DXMATRIX outMat; + outMat.m[0][0] = 1.0f - 2.0f * normPlane.x * normPlane.x; + outMat.m[0][1] = -2.0f * normPlane.x * normPlane.y; + outMat.m[0][2] = -2.0f * normPlane.x * normPlane.z; + outMat.m[0][3] = 0.0f; + outMat.m[1][0] = -2.0f * normPlane.x * normPlane.y; + outMat.m[1][1] = 1.0f - 2.0f * normPlane.y * normPlane.y; + outMat.m[1][2] = -2.0f * normPlane.y * normPlane.z; + outMat.m[1][3] = 0.0f; + outMat.m[2][0] = -2.0f * normPlane.z * normPlane.x; + outMat.m[2][1] = -2.0f * normPlane.z * normPlane.y; + outMat.m[2][2] = 1.0f - 2.0f * normPlane.z * normPlane.z; + outMat.m[2][3] = 0.0f; + outMat.m[3][0] = -2.0f * normPlane.w * normPlane.x; + outMat.m[3][1] = -2.0f * normPlane.w * normPlane.y; + outMat.m[3][2] = -2.0f * normPlane.w * normPlane.z; + outMat.m[3][3] = 1.0f; + return outMat; +} + inline glm::vec4 PlaneTransform(const glm::vec4 &plane, const D3DXMATRIX &mat) { glm::vec4 outVec; diff --git a/src/Rock3dEngine/source/GraphManager.cpp b/src/Rock3dEngine/source/GraphManager.cpp index 4f45118e..c55831cb 100644 --- a/src/Rock3dEngine/source/GraphManager.cpp +++ b/src/Rock3dEngine/source/GraphManager.cpp @@ -1805,8 +1805,7 @@ void GraphManager::RenderPlanarReflScene(graph::CameraCI& camera) actor->LocalToWorldNorm(norm, norm); glm::vec3 pos = actor->GetWorldPos(); - glm::vec4 plane; - D3DXPlaneFromPointNormal(&plane, &(pos + norm * height), &norm); + glm::vec4 plane = PlaneFromPointNormal(pos + norm * height, norm); _planarReflRender->SetReflPlane(plane); @@ -1825,16 +1824,16 @@ void GraphManager::RenderPlanarReflScene(graph::CameraCI& camera) glm::vec3 dir = *dir = glm::cross(right, norm); graph::ReflRender::ClipPlanes clipPlanes; - D3DXPlaneFromPointNormal(&plane, &aabb.min, &dir); + plane = PlaneFromPointNormal(aabb.min, dir); clipPlanes.push_back(plane); - D3DXPlaneFromPointNormal(&plane, &aabb.min, &right); + plane = PlaneFromPointNormal(aabb.min, right); clipPlanes.push_back(plane); - D3DXPlaneFromPointNormal(&plane, &aabb.max, &(-dir)); + plane = PlaneFromPointNormal(aabb.max, -dir); clipPlanes.push_back(plane); - D3DXPlaneFromPointNormal(&plane, &aabb.max, &(-right)); + plane = PlaneFromPointNormal(aabb.max, -right); clipPlanes.push_back(plane); _planarReflRender->SetClipPlanes(clipPlanes); diff --git a/src/Rock3dEngine/source/graph/ContextInfo.cpp b/src/Rock3dEngine/source/graph/ContextInfo.cpp index 7ed2d2f5..91b51202 100644 --- a/src/Rock3dEngine/source/graph/ContextInfo.cpp +++ b/src/Rock3dEngine/source/graph/ContextInfo.cpp @@ -307,8 +307,7 @@ bool CameraCI::ComputeZBounds(const AABB& aabb, float& minZ, float& maxZ) const } //поиск пересечений aabb с фрустумом - /*glm::vec4 nearPlane; - D3DXPlaneFromPointNormal(&nearPlane, &NullVector, &ZVector); + /*glm::vec4 nearPlane = PlaneFromPointNormal(NullVector, ZVector); glm::vec3 points[4]; unsigned numPoints = PlaneBBIntersect(projBox, nearPlane, points); for (unsigned i = 0; i < numPoints; ++i) @@ -395,7 +394,7 @@ void CameraCI::GetViewProjPerspective(D3DXMATRIX& mat) const else { CalcProjPerspective(mat); - D3DXMatrixMultiply(&mat, &GetView(), &mat); + mat = MatrixMultiply(GetView(), mat); } } @@ -406,7 +405,7 @@ void CameraCI::GetWVPPerspective(D3DXMATRIX& mat) const else { CalcProjPerspective(mat); - D3DXMatrixMultiply(&mat, &GetTransform(ctWorldView), &mat); + mat = MatrixMultiply(GetTransform(ctWorldView), mat); } } @@ -469,8 +468,7 @@ const D3DXMATRIX& CameraCI::GetTransform(Transform transform) const default: //Используется правостороння система координат (как в 3dMax-e) - D3DXMatrixLookAtRH(&_matrices[transform], &Vec3GlmToDx(_desc.pos), &Vec3GlmToDx(_desc.pos + _desc.dir), - &Vec3GlmToDx(_desc.up)); + _matrices[transform] = MatrixLookAtRH(_desc.pos, _desc.pos + _desc.dir, _desc.up); } break; @@ -509,15 +507,15 @@ const D3DXMATRIX& CameraCI::GetTransform(Transform transform) const } case ctWorldView: - D3DXMatrixMultiply(&_matrices[transform], &_worldMat, &GetTransform(ctView)); + _matrices[transform] = MatrixMultiply(_worldMat, GetTransform(ctView)); break; case ctViewProj: - D3DXMatrixMultiply(&_matrices[transform], &GetTransform(ctView), &GetTransform(ctProj)); + _matrices[transform] = MatrixMultiply(GetTransform(ctView), GetTransform(ctProj)); break; case ctWVP: - D3DXMatrixMultiply(&_matrices[transform], &_worldMat, &GetTransform(ctViewProj)); + _matrices[transform] = MatrixMultiply(_worldMat, GetTransform(ctViewProj)); break; } diff --git a/src/Rock3dEngine/source/graph/DepthMap.cpp b/src/Rock3dEngine/source/graph/DepthMap.cpp index d1fecb02..af9de24a 100644 --- a/src/Rock3dEngine/source/graph/DepthMap.cpp +++ b/src/Rock3dEngine/source/graph/DepthMap.cpp @@ -20,8 +20,7 @@ void DepthMapShader::DoBeginDraw(Engine& engine) if (tech == ttDepthMapAlphaTest) SetTextureDir("opacityTex", engine.GetContext().GetTexture(0)); - D3DXMATRIX matWVP; - D3DXMatrixMultiply(&matWVP, &engine.GetContext().GetWorldMat(), &viewProjMat); + D3DXMATRIX matWVP = MatrixMultiply(engine.GetContext().GetWorldMat(), viewProjMat); SetValueDir("depthMatrix", matWVP); } diff --git a/src/Rock3dEngine/source/graph/Engine.cpp b/src/Rock3dEngine/source/graph/Engine.cpp index b8e14820..04d44236 100644 --- a/src/Rock3dEngine/source/graph/Engine.cpp +++ b/src/Rock3dEngine/source/graph/Engine.cpp @@ -542,8 +542,7 @@ void Engine::RenderSpritePT(const glm::vec3& pos, const glm::vec3& scale, float rotMat._41 = rotMat._42 = rotMat._43 = 0.0f; //Локальный поворот спрайта (только для не направленных) - D3DXMATRIX rotZ; - D3DXMatrixRotationAxis(&rotZ, &Vec3GlmToDx(camera.GetDesc().dir), turnAngle); + D3DXMATRIX rotZ = MatrixRotationAxis(camera.GetDesc().dir, turnAngle); rotMat *= rotZ; } diff --git a/src/Rock3dEngine/source/graph/SceneManager.cpp b/src/Rock3dEngine/source/graph/SceneManager.cpp index 49f88894..b346062d 100644 --- a/src/Rock3dEngine/source/graph/SceneManager.cpp +++ b/src/Rock3dEngine/source/graph/SceneManager.cpp @@ -247,7 +247,7 @@ void BaseSceneNode::BuildWorldMatrix() const if (_parent) { const D3DXMATRIX& mat = _parent->GetWorldMat(); - D3DXMatrixMultiply(&_worldMat, &_localMat, &mat); + _worldMat = MatrixMultiply(_localMat, mat); D3DXMatrixInverse(&_invWorldMat, 0, &_worldMat); } else @@ -513,12 +513,9 @@ void BaseSceneNode::MoveAroundTarget(const glm::vec3& worldTarget, float pitchDe pitchNow = lsl::ClampValue(pitchNow + pitchDelta, 0 + 0.025f, glm::pi() - 0.025f); // create a new vector pointing up and then rotate it down // into the new position - D3DXMATRIX pitchMat; - D3DXMATRIX turnMat; - normalT2C = GetWorldUp(); - D3DXMatrixRotationAxis(&pitchMat, &Vec3GlmToDx(normalCameraRight), pitchNow); - D3DXMatrixRotationAxis(&turnMat, &Vec3GlmToDx(worldUp), -turnDelta); + D3DXMATRIX pitchMat = MatrixRotationAxis(normalCameraRight, pitchNow); + D3DXMATRIX turnMat = MatrixRotationAxis(worldUp, -turnDelta); normalT2C = Vec3TransformNormal(normalT2C, pitchMat); normalT2C = Vec3TransformNormal(normalT2C, turnMat); normalT2C *= dist; @@ -1081,16 +1078,15 @@ void BaseSceneNode::SetWorldRot(const glm::quat& value) D3DXMATRIX BaseSceneNode::GetWorldScale() const { - D3DXMATRIX res = IdentityMatrix; - D3DXMatrixMultiply(&res, &res, &GetInvWorldMat()); + D3DXMATRIX res = MatrixMultiply(IdentityMatrix, GetInvWorldMat()); const BaseSceneNode* node = this; do { //Применяем опреацию масштабирования - D3DXMatrixMultiply(&res, &res, &node->GetScaleMat()); + res = MatrixMultiply(res, node->GetScaleMat()); //Переводим на уровень трансформации пониже - D3DXMatrixMultiply(&res, &res, &node->GetMat()); + res = MatrixMultiply(res, node->GetMat()); node = node->GetParent(); diff --git a/src/Rock3dEngine/source/graph/ShadowMapRender.cpp b/src/Rock3dEngine/source/graph/ShadowMapRender.cpp index 83af3422..9006c026 100644 --- a/src/Rock3dEngine/source/graph/ShadowMapRender.cpp +++ b/src/Rock3dEngine/source/graph/ShadowMapRender.cpp @@ -14,8 +14,8 @@ const unsigned ShadowMapRender::cShadowMapSize = 2048; void ShadowMapShader::DoBeginDraw(Engine& engine) { D3DXMATRIX shadowWVP = shadowViewProj; - D3DXMatrixMultiply(&shadowWVP, &engine.GetContext().GetWorldMat(), &shadowWVP); - D3DXMatrixMultiply(&shadowWVP, &shadowWVP, &mTexScale); + shadowWVP = MatrixMultiply(engine.GetContext().GetWorldMat(), shadowWVP); + shadowWVP = MatrixMultiply(shadowWVP, mTexScale); SetValue("matWVP", engine.GetContext().GetCamera().GetWVP()); SetValue("matShadow", shadowWVP); @@ -278,7 +278,7 @@ void ShadowMapRender::BeginShadowMapp(Engine& engine) desc.farDist = _splitDistances[_curNumSplit + 1]; _myCamera.SetDesc(desc); - D3DXMatrixMultiply(&shader.shadowViewProj, &engine.GetContext().GetLight(iLight).GetCamera().GetView(), &_splitLightProjMat[_curNumSplit]); + shader.shadowViewProj = MatrixMultiply(engine.GetContext().GetLight(iLight).GetCamera().GetView(), _splitLightProjMat[_curNumSplit]); engine.GetContext().ApplyCamera(&_myCamera); } diff --git a/src/Rock3dEngine/source/graph/WaterPlane.cpp b/src/Rock3dEngine/source/graph/WaterPlane.cpp index ff5558dd..39a22665 100644 --- a/src/Rock3dEngine/source/graph/WaterPlane.cpp +++ b/src/Rock3dEngine/source/graph/WaterPlane.cpp @@ -63,7 +63,7 @@ const glm::vec4& ReflRender::GetReflPlane() const void ReflRender::SetReflPlane(const glm::vec4& value) { _reflPlane = value; - D3DXMatrixReflect(&_reflMat, &Vec4ToPlane(_reflPlane)); + _reflMat = MatrixReflect(_reflPlane); } const ReflRender::ClipPlanes& ReflRender::GetClipPlanes() const diff --git a/src/Rock3dGame/source/game/Weapon.cpp b/src/Rock3dGame/source/game/Weapon.cpp index f515a974..0880ec37 100644 --- a/src/Rock3dGame/source/game/Weapon.cpp +++ b/src/Rock3dGame/source/game/Weapon.cpp @@ -1189,8 +1189,7 @@ void Proj::ThunderContact(const px::Scene::OnContactEvent& contact) if (abs(angle) > 0.1f) { glm::vec4 plane = PlaneFromPointNormal(NullVector, glm::make_vec3(norm.get())); - D3DXMATRIX mat; - D3DXMatrixReflect(&mat, &Vec4ToPlane(plane)); + D3DXMATRIX mat = MatrixReflect(plane); glm::vec3 vel = glm::make_vec3(velocity.get()); vel = Vec3TransformNormal(vel, mat); From 951e3029dbf17a356aecfb5a8dfcd48711b0abda Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Tue, 1 Nov 2022 15:08:40 +0300 Subject: [PATCH 47/55] math: replace D3DX* functs part 1, remove d3dx9math.cpp --- src/MathLib/header/lslMath.inl | 92 ++++++++ src/MathLib/source/r3dMath.cpp | 8 +- .../source/graph/ActorManager.cpp | 2 +- src/Rock3dEngine/source/graph/ContextInfo.cpp | 10 +- src/Rock3dEngine/source/graph/FxManager.cpp | 9 +- .../source/graph/SceneManager.cpp | 27 +-- src/Rock3dEngine/source/graph/SkyBox.cpp | 2 +- src/Rock3dEngine/source/gui/GUI.cpp | 10 +- src/Rock3dGame/source/edit/SceneControl.cpp | 3 +- src/Rock3dGame/source/game/CameraManager.cpp | 2 +- src/Rock3dGame/source/game/DataBase.cpp | 3 +- src/Rock3dGame/source/game/GameBase.cpp | 6 +- src/Rock3dGame/source/game/GameCar.cpp | 4 +- src/Rock3dGame/source/game/Weapon.cpp | 6 +- src/XPlatform/source/d3dx9math.cpp | 217 ------------------ 15 files changed, 127 insertions(+), 274 deletions(-) delete mode 100644 src/XPlatform/source/d3dx9math.cpp diff --git a/src/MathLib/header/lslMath.inl b/src/MathLib/header/lslMath.inl index 74e20afd..a0d276c5 100644 --- a/src/MathLib/header/lslMath.inl +++ b/src/MathLib/header/lslMath.inl @@ -174,6 +174,17 @@ inline D3DXMATRIX MatrixTranslation(float x, float y, float z) return outMat; } +inline D3DXMATRIX MatrixTranspose(const D3DXMATRIX &mat) +{ + D3DXMATRIX outMat; + int i, j; + for (i = 0; i < 4; ++i) + for (j = 0; j < 4; ++j) + outMat.m[i][j] = mat.m[j][i]; + + return outMat; +} + inline void BuildWorldMatrix(const glm::vec3& pos, const glm::vec3& scale, const glm::quat& rot, D3DXMATRIX& outMat) { D3DXMATRIX scaleMat = MatrixScaling(scale.x, scale.y, scale.z); @@ -189,6 +200,77 @@ inline D3DXMATRIX BuildWorldMatrix(const glm::vec3& pos, const glm::vec3& scale, return outMat; } +inline D3DXMATRIX MatrixInverse(float *pdeterminant, const D3DXMATRIX &mat) +{ + D3DXMATRIX outMat; + float det, t[3], v[16]; + int i, j; + + t[0] = mat.m[2][2] * mat.m[3][3] - mat.m[2][3] * mat.m[3][2]; + t[1] = mat.m[1][2] * mat.m[3][3] - mat.m[1][3] * mat.m[3][2]; + t[2] = mat.m[1][2] * mat.m[2][3] - mat.m[1][3] * mat.m[2][2]; + v[0] = mat.m[1][1] * t[0] - mat.m[2][1] * t[1] + mat.m[3][1] * t[2]; + v[4] = -mat.m[1][0] * t[0] + mat.m[2][0] * t[1] - mat.m[3][0] * t[2]; + + t[0] = mat.m[1][0] * mat.m[2][1] - mat.m[2][0] * mat.m[1][1]; + t[1] = mat.m[1][0] * mat.m[3][1] - mat.m[3][0] * mat.m[1][1]; + t[2] = mat.m[2][0] * mat.m[3][1] - mat.m[3][0] * mat.m[2][1]; + v[8] = mat.m[3][3] * t[0] - mat.m[2][3] * t[1] + mat.m[1][3] * t[2]; + v[12] = -mat.m[3][2] * t[0] + mat.m[2][2] * t[1] - mat.m[1][2] * t[2]; + + det = mat.m[0][0] * v[0] + mat.m[0][1] * v[4] + mat.m[0][2] * v[8] + mat.m[0][3] * v[12]; + if (det == 0.0f) + return outMat; + if (pdeterminant) + *pdeterminant = det; + + t[0] = mat.m[2][2] * mat.m[3][3] - mat.m[2][3] * mat.m[3][2]; + t[1] = mat.m[0][2] * mat.m[3][3] - mat.m[0][3] * mat.m[3][2]; + t[2] = mat.m[0][2] * mat.m[2][3] - mat.m[0][3] * mat.m[2][2]; + v[1] = -mat.m[0][1] * t[0] + mat.m[2][1] * t[1] - mat.m[3][1] * t[2]; + v[5] = mat.m[0][0] * t[0] - mat.m[2][0] * t[1] + mat.m[3][0] * t[2]; + + t[0] = mat.m[0][0] * mat.m[2][1] - mat.m[2][0] * mat.m[0][1]; + t[1] = mat.m[3][0] * mat.m[0][1] - mat.m[0][0] * mat.m[3][1]; + t[2] = mat.m[2][0] * mat.m[3][1] - mat.m[3][0] * mat.m[2][1]; + v[9] = -mat.m[3][3] * t[0] - mat.m[2][3] * t[1] - mat.m[0][3] * t[2]; + v[13] = mat.m[3][2] * t[0] + mat.m[2][2] * t[1] + mat.m[0][2] * t[2]; + + t[0] = mat.m[1][2] * mat.m[3][3] - mat.m[1][3] * mat.m[3][2]; + t[1] = mat.m[0][2] * mat.m[3][3] - mat.m[0][3] * mat.m[3][2]; + t[2] = mat.m[0][2] * mat.m[1][3] - mat.m[0][3] * mat.m[1][2]; + v[2] = mat.m[0][1] * t[0] - mat.m[1][1] * t[1] + mat.m[3][1] * t[2]; + v[6] = -mat.m[0][0] * t[0] + mat.m[1][0] * t[1] - mat.m[3][0] * t[2]; + + t[0] = mat.m[0][0] * mat.m[1][1] - mat.m[1][0] * mat.m[0][1]; + t[1] = mat.m[3][0] * mat.m[0][1] - mat.m[0][0] * mat.m[3][1]; + t[2] = mat.m[1][0] * mat.m[3][1] - mat.m[3][0] * mat.m[1][1]; + v[10] = mat.m[3][3] * t[0] + mat.m[1][3] * t[1] + mat.m[0][3] * t[2]; + v[14] = -mat.m[3][2] * t[0] - mat.m[1][2] * t[1] - mat.m[0][2] * t[2]; + + t[0] = mat.m[1][2] * mat.m[2][3] - mat.m[1][3] * mat.m[2][2]; + t[1] = mat.m[0][2] * mat.m[2][3] - mat.m[0][3] * mat.m[2][2]; + t[2] = mat.m[0][2] * mat.m[1][3] - mat.m[0][3] * mat.m[1][2]; + v[3] = -mat.m[0][1] * t[0] + mat.m[1][1] * t[1] - mat.m[2][1] * t[2]; + v[7] = mat.m[0][0] * t[0] - mat.m[1][0] * t[1] + mat.m[2][0] * t[2]; + + v[11] = -mat.m[0][0] * (mat.m[1][1] * mat.m[2][3] - mat.m[1][3] * mat.m[2][1]) + + mat.m[1][0] * (mat.m[0][1] * mat.m[2][3] - mat.m[0][3] * mat.m[2][1]) - + mat.m[2][0] * (mat.m[0][1] * mat.m[1][3] - mat.m[0][3] * mat.m[1][1]); + + v[15] = mat.m[0][0] * (mat.m[1][1] * mat.m[2][2] - mat.m[1][2] * mat.m[2][1]) - + mat.m[1][0] * (mat.m[0][1] * mat.m[2][2] - mat.m[0][2] * mat.m[2][1]) + + mat.m[2][0] * (mat.m[0][1] * mat.m[1][2] - mat.m[0][2] * mat.m[1][1]); + + det = 1.0f / det; + + for (i = 0; i < 4; i++) + for (j = 0; j < 4; j++) + outMat.m[i][j] = v[4 * i + j] * det; + + return outMat; +} + inline D3DXMATRIX MatrixLookAtRH(const glm::vec3 &eye, const glm::vec3 &at, const glm::vec3 &up) { D3DXMATRIX outMat; @@ -220,6 +302,16 @@ inline D3DXMATRIX MatrixLookAtRH(const glm::vec3 &eye, const glm::vec3 &at, cons return outMat; } +inline D3DXMATRIX MatrixOrthoRH(float w, float h, float zn, float zf) +{ + D3DXMATRIX outMat = IdentityMatrix; + outMat.m[0][0] = 2.0f / w; + outMat.m[1][1] = 2.0f / h; + outMat.m[2][2] = 1.0f / (zn - zf); + outMat.m[3][2] = zn / (zn - zf); + return outMat; +} + inline D3DXMATRIX MatrixRotationAxis(const glm::vec3 &vec, float angle) { D3DXMATRIX outMat; diff --git a/src/MathLib/source/r3dMath.cpp b/src/MathLib/source/r3dMath.cpp index 0ac20911..5dd86faa 100644 --- a/src/MathLib/source/r3dMath.cpp +++ b/src/MathLib/source/r3dMath.cpp @@ -588,20 +588,20 @@ glm::vec3 AABB::GetPlaneVert(unsigned index, unsigned vertex) const glm::vec3 invNorm = IdentityVector - glm::vec3(abs(norm.x), abs(norm.y), abs(norm.z)); glm::vec3 fixCoord; - D3DXVec3Scale(norm, GetSizes()/2, fixCoord); + Vec3Scale(norm, GetSizes()/2, fixCoord); glm::vec3 fixCenter; - D3DXVec3Scale(norm, GetCenter(), fixCenter); + Vec3Scale(norm, GetCenter(), fixCenter); fixCoord += fixCenter; glm::vec3 res; switch (vertex) { case 0: - D3DXVec3Scale(min, invNorm, res); + Vec3Scale(min, invNorm, res); return res + fixCoord; case 1: - D3DXVec3Scale(max, invNorm, res); + Vec3Scale(max, invNorm, res); return res + fixCoord; default: diff --git a/src/Rock3dEngine/source/graph/ActorManager.cpp b/src/Rock3dEngine/source/graph/ActorManager.cpp index 62bf47a7..cd853bdb 100644 --- a/src/Rock3dEngine/source/graph/ActorManager.cpp +++ b/src/Rock3dEngine/source/graph/ActorManager.cpp @@ -302,7 +302,7 @@ void ActorManager::BuildPlanar(unsigned scene) const ActorManager::Planar& ActorManager::GetPlanar(Actor* actor) { D3DXMATRIX mat = actor->GetInvWorldMat(); - D3DXMatrixTranspose(&mat, &mat); + mat = MatrixTranspose(mat); glm::vec4 plane = PlaneTransform(actor->vec1(), mat); plane = PlaneNormalize(plane); diff --git a/src/Rock3dEngine/source/graph/ContextInfo.cpp b/src/Rock3dEngine/source/graph/ContextInfo.cpp index 91b51202..f08d6272 100644 --- a/src/Rock3dEngine/source/graph/ContextInfo.cpp +++ b/src/Rock3dEngine/source/graph/ContextInfo.cpp @@ -482,17 +482,15 @@ const D3DXMATRIX& CameraCI::GetTransform(Transform transform) const break; case csOrtho: - D3DXMatrixOrthoRH(&_matrices[transform], _desc.width, _desc.width / _desc.aspect, _desc.nearDist, _desc.farDist); + _matrices[transform] = MatrixOrthoRH(_desc.width, _desc.width / _desc.aspect, _desc.nearDist, _desc.farDist); break; case csViewPort: case csViewPortInv: { glm::vec2 viewSize = glm::vec2(_desc.width, _desc.width / _desc.aspect); - D3DXMATRIX viewMat; - D3DXMatrixTranslation(&viewMat, -1.0f, _desc.style == csViewPortInv ? -1.0f : 1.0f, 0.0f); - D3DXMATRIX matScale; - D3DXMatrixScaling(&matScale, 2.0f/viewSize.x, _desc.style == csViewPortInv ? 2.0f/viewSize.y : -2.0f/viewSize.y, 1.0f); + D3DXMATRIX viewMat = MatrixTranslation(-1.0f, _desc.style == csViewPortInv ? -1.0f : 1.0f, 0.0f); + D3DXMATRIX matScale = MatrixScaling(2.0f/viewSize.x, _desc.style == csViewPortInv ? 2.0f/viewSize.y : -2.0f/viewSize.y, 1.0f); matScale._33 = 1.0f/(-500.0f - 500.0f); matScale._43 = -500.0f/(-500.0f - 500.0f); _matrices[transform] = matScale * viewMat; @@ -529,7 +527,7 @@ const D3DXMATRIX& CameraCI::GetInvTransform(Transform transform) const { if (_invMatChanged.test(transform)) { - D3DXMatrixInverse(&_invMatrices[transform], 0, &GetTransform(transform)); + _invMatrices[transform] = MatrixInverse(0, GetTransform(transform)); _invMatChanged.reset(transform); } diff --git a/src/Rock3dEngine/source/graph/FxManager.cpp b/src/Rock3dEngine/source/graph/FxManager.cpp index 1d340d14..d5f0ba84 100644 --- a/src/Rock3dEngine/source/graph/FxManager.cpp +++ b/src/Rock3dEngine/source/graph/FxManager.cpp @@ -31,12 +31,9 @@ void FxParticle::BuildWorldMat() const if (_worldMatChanged) { _worldMatChanged = false; - - D3DXMATRIX scaleMat, rotMat, transMat; - - D3DXMatrixScaling(&scaleMat, _scale.x, _scale.y, _scale.z); - rotMat = Matrix4GlmToDx(glm::transpose(glm::mat4_cast(_rot))); - D3DXMatrixTranslation(&transMat, _pos.x, _pos.y, _pos.z); + D3DXMATRIX scaleMat = MatrixScaling(_scale.x, _scale.y, _scale.z); + D3DXMATRIX rotMat = Matrix4GlmToDx(glm::transpose(glm::mat4_cast(_rot))); + D3DXMATRIX transMat = MatrixTranslation(_pos.x, _pos.y, _pos.z); _worldMat = scaleMat * rotMat * transMat; } diff --git a/src/Rock3dEngine/source/graph/SceneManager.cpp b/src/Rock3dEngine/source/graph/SceneManager.cpp index b346062d..bd43fe27 100644 --- a/src/Rock3dEngine/source/graph/SceneManager.cpp +++ b/src/Rock3dEngine/source/graph/SceneManager.cpp @@ -239,7 +239,7 @@ void BaseSceneNode::BuildMatrix() const //Поворот не влияет на локальное направление перемещения //Растяжение не влияет на локальное перемещение, т.е. единица длины одна и таже _localMat = GetScaleMat() * GetRotMat() * GetTransMat(); - D3DXMatrixInverse(&_invLocalMat, 0, &_localMat); + _invLocalMat = MatrixInverse(0, _localMat); } void BaseSceneNode::BuildWorldMatrix() const @@ -248,7 +248,7 @@ void BaseSceneNode::BuildWorldMatrix() const { const D3DXMATRIX& mat = _parent->GetWorldMat(); _worldMat = MatrixMultiply(_localMat, mat); - D3DXMatrixInverse(&_invWorldMat, 0, &_worldMat); + _invWorldMat = MatrixInverse(0, _worldMat); } else { @@ -879,8 +879,7 @@ D3DXMATRIX BaseSceneNode::GetScaleMat() const //if (glm::length(vec) < 0.0001f) // vec = IdentityVector * 0.0005f; - D3DXMATRIX scaleMat; - D3DXMatrixScaling(&scaleMat, vec.x, vec.y, vec.z); + D3DXMATRIX scaleMat = MatrixScaling(vec.x, vec.y, vec.z); return scaleMat; } @@ -918,14 +917,14 @@ D3DXMATRIX BaseSceneNode::GetRotMat() const else { if (!_rotInvalidate.test(rsEulerAngles)) - { + { EulerAngles eulAng = Eul_(-_rollAngle, -_pitchAngle, -_turnAngle, EulOrdXYZs); Eul_ToHMatrix(eulAng, _rotMat.m); //D3DXMatrixRotationYawPitchRoll(&_rotMat, _pitchAngle, _rollAngle, _turnAngle); } else { - D3DXMatrixIdentity(&_rotMat); + _rotMat = IdentityMatrix; } } } @@ -936,9 +935,7 @@ D3DXMATRIX BaseSceneNode::GetRotMat() const D3DXMATRIX BaseSceneNode::GetTransMat() const { - D3DXMATRIX transMat; - D3DXMatrixTranslation(&transMat, _position.x, _position.y, _position.z); - return transMat; + return MatrixTranslation(_position.x, _position.y, _position.z); } const D3DXMATRIX& BaseSceneNode::GetMat() const @@ -1004,13 +1001,9 @@ D3DXMATRIX BaseSceneNode::GetWorldCombMat(CombMatType type) const { case cmtScaleTrans: { - glm::vec3 vec; - D3DXMATRIX scaleMat = GetWorldScale(); - - D3DXMATRIX transMat; - vec = GetWorldPos(); - D3DXMatrixTranslation(&transMat, vec.x, vec.y, vec.z); + glm::vec3 vec = GetWorldPos(); + D3DXMATRIX transMat = MatrixTranslation(vec.x, vec.y, vec.z); return scaleMat * transMat; } @@ -1027,10 +1020,8 @@ D3DXMATRIX BaseSceneNode::GetWorldCombMat(CombMatType type) const case cmtRotTrans: { D3DXMATRIX rotMat = Matrix4GlmToDx(glm::transpose(glm::mat4_cast(GetWorldRot()))); - - D3DXMATRIX transMat; glm::vec3 pos = GetWorldPos(); - D3DXMatrixTranslation(&transMat, pos.x, pos.y, pos.z); + D3DXMATRIX transMat = MatrixTranslation(pos.x, pos.y, pos.z); return rotMat * transMat; } diff --git a/src/Rock3dEngine/source/graph/SkyBox.cpp b/src/Rock3dEngine/source/graph/SkyBox.cpp index fa5bdfbf..29e398ba 100644 --- a/src/Rock3dEngine/source/graph/SkyBox.cpp +++ b/src/Rock3dEngine/source/graph/SkyBox.cpp @@ -52,7 +52,7 @@ void SkyBox::Render(Engine& engine) skyWVP._41 = 0.0f; skyWVP._42 = 0.0f; skyWVP._43 = 0.0f; - D3DXMatrixInverse(&skyWVP, 0, &skyWVP); + skyWVP = MatrixInverse(0, skyWVP); shader.SetValueDir("matInvWVP", skyWVP); shader.Apply(engine); diff --git a/src/Rock3dEngine/source/gui/GUI.cpp b/src/Rock3dEngine/source/gui/GUI.cpp index 36a534fc..521e4965 100644 --- a/src/Rock3dEngine/source/gui/GUI.cpp +++ b/src/Rock3dEngine/source/gui/GUI.cpp @@ -1268,11 +1268,11 @@ void Widget::BuildMatrix(MatrixChange change) const break; case mcInvLocal: - D3DXMatrixInverse(&_matrix[mcInvLocal], 0, &GetMat()); + _matrix[mcInvLocal] = MatrixInverse(0, GetMat()); break; case mcInvWorld: - D3DXMatrixInverse(&_matrix[mcInvWorld], 0, &GetWorldMat()); + _matrix[mcInvWorld] = MatrixInverse(0, GetWorldMat()); break; } } @@ -3499,10 +3499,8 @@ bool ViewPort3d::OnMouseOver(const MouseMove& mMove) if (_style == msViewer) { //Вращение по двум осям - /*D3DXQUATERNION rotY; - D3DXQuaternionRotationAxis(&rotY, &YVector, glm::pi() * mMove.dtCoord.x/100.0f); - D3DXQUATERNION rotX; - D3DXQuaternionRotationAxis(&rotX, &XVector, -glm::pi() * mMove.dtCoord.y/100.0f); + /*glm::quat rotY = glm::angleAxis(glm::pi() * mMove.dtCoord.x/100.0f, YVector); + glm::quat rotX = glm::angleAxis(-glm::pi() * mMove.dtCoord.y/100.0f, XVector); SetRot3d(GetRot3d() * rotY * rotX);*/ //Вращение по одной оси, совпадающией с up mesh diff --git a/src/Rock3dGame/source/edit/SceneControl.cpp b/src/Rock3dGame/source/edit/SceneControl.cpp index 1c134272..e8fcb973 100644 --- a/src/Rock3dGame/source/edit/SceneControl.cpp +++ b/src/Rock3dGame/source/edit/SceneControl.cpp @@ -293,8 +293,7 @@ void SceneControl::ComputeLink(INode* node, const glm::vec3& pos, glm::vec3& res float zDist; repeat = false; - D3DXMATRIX worldMat; - D3DXMatrixTranslation(&worldMat, newOff.x, newOff.y, newOff.z); + D3DXMATRIX worldMat = MatrixTranslation(newOff.x, newOff.y, newOff.z); worldMat = node->GetMat() * worldMat; D3DXMATRIX invWorldMat; D3DXMatrixInverse(&invWorldMat, 0, &worldMat); diff --git a/src/Rock3dGame/source/game/CameraManager.cpp b/src/Rock3dGame/source/game/CameraManager.cpp index 18b6a47b..9da4cebb 100644 --- a/src/Rock3dGame/source/game/CameraManager.cpp +++ b/src/Rock3dGame/source/game/CameraManager.cpp @@ -371,7 +371,7 @@ void CameraManager::Control::OnInputFrame(float deltaTime) glm::vec3 camPos2; Vec3Rotate(cCamTargetOff, camQuat2, camPos2); camPos2 += targetPos; - D3DXVec3Lerp(&camPos, &camPos1, &camPos2, 8.0f * deltaTime);*/ + camPos = Vec3Lerp(camPos1, camPos2, 8.0f * deltaTime);*/ glm::quat yRot = glm::angleAxis(glm::pi() * 12.0f, glm::vec3(0, 1, 0)); camQuat = camQuat * yRot; diff --git a/src/Rock3dGame/source/game/DataBase.cpp b/src/Rock3dGame/source/game/DataBase.cpp index c0f2af3f..3224d1c8 100644 --- a/src/Rock3dGame/source/game/DataBase.cpp +++ b/src/Rock3dGame/source/game/DataBase.cpp @@ -2654,8 +2654,7 @@ void DataBase::LoadMisc() game::GameObject& gameObj = mapObj->GetGameObj(); graph::PlaneNode* node = AddPlaneNode(mapObj, IdentityVec2); - //glm::quat rot; - //D3DXQuaternionRotationAxis(&rot, &ZVector, -glm::half_pi()); + //glm::quat rot = glm::angleAxis(-glm::half_pi(), ZVector); //node->SetRot(rot); node->SetScale(glm::vec3(4.0f, 3.0f, 1.0f)); node->animMode(graph::SceneNode::amRepeat); diff --git a/src/Rock3dGame/source/game/GameBase.cpp b/src/Rock3dGame/source/game/GameBase.cpp index ae09bc63..e736425f 100644 --- a/src/Rock3dGame/source/game/GameBase.cpp +++ b/src/Rock3dGame/source/game/GameBase.cpp @@ -1222,10 +1222,8 @@ void PodushkaAnim::OnProgress(float deltaTime) const res::FaceGroup& fg = _target->GetMesh()->GetData()->faceGroups[_target->GetMeshId()]; glm::vec3 offset = (fg.minPos + fg.maxPos) / 2.0f; - D3DXMATRIX matOffs1; - D3DXMatrixTranslation(&matOffs1, -offset.x, -offset.y, -offset.z); - D3DXMATRIX matOffs2; - D3DXMatrixTranslation(&matOffs2, offset.x, offset.y, offset.z); + D3DXMATRIX matOffs1 = MatrixTranslation(-offset.x, -offset.y, -offset.z); + D3DXMATRIX matOffs2 = MatrixTranslation(offset.x, offset.y, offset.z); localMat = localMat * matOffs1 * rotMat * matOffs2; _target->SetLocalMat(localMat); diff --git a/src/Rock3dGame/source/game/GameCar.cpp b/src/Rock3dGame/source/game/GameCar.cpp index 5e25139f..1c830c5d 100644 --- a/src/Rock3dGame/source/game/GameCar.cpp +++ b/src/Rock3dGame/source/game/GameCar.cpp @@ -636,8 +636,8 @@ void GameCar::WheelsProgress(float deltaTime, float motorTorque, float breakTorq glm::quat rot; fixRot.getXYZW(rot); - glm::vec3 xAxis; - D3DXQuaternionToAxisAngle(&rot, &xAxis, &dFixAngle); + glm::vec3 xAxis = glm::axis(rot); + dFixAngle = glm::angle(rot); dFixAxis.set(xAxis); dFixAxis.normalize(); diff --git a/src/Rock3dGame/source/game/Weapon.cpp b/src/Rock3dGame/source/game/Weapon.cpp index 0880ec37..8da8c7c1 100644 --- a/src/Rock3dGame/source/game/Weapon.cpp +++ b/src/Rock3dGame/source/game/Weapon.cpp @@ -1034,8 +1034,7 @@ void Proj::SpringUpdate(float deltaTime) _vec1.x = _vec1.x + (dAngle - _vec1.x) * lsl::ClampValue(deltaTime * 6.0f, 0.0f, 1.0f); - glm::quat rot; - D3DXQuaternionRotationAxis(&rot, &YVector, _vec1.x); + glm::quat rot = glm::angleAxis(_vec1.x, YVector); car->SetRot(rot * car->GetRot()); } else if (_state1 || _time1 > 0.0f) @@ -1054,8 +1053,7 @@ void Proj::SpringUpdate(float deltaTime) float alpha = lsl::ClampValue(_time1/1.0f, 0.0f, 1.0f); angle = -glm::pi()/6 + (glm::pi()/6 - (-glm::pi()/6)) * alpha; - glm::quat rot; - D3DXQuaternionRotationAxis(&rot, &YVector, angle); + glm::quat rot = glm::angleAxis(angle, YVector); car->SetRot(rot * testRot); if (alpha == 1.0f) diff --git a/src/XPlatform/source/d3dx9math.cpp b/src/XPlatform/source/d3dx9math.cpp deleted file mode 100644 index ae0e1b56..00000000 --- a/src/XPlatform/source/d3dx9math.cpp +++ /dev/null @@ -1,217 +0,0 @@ -#include -#include -#include -#include "d3dx9math.h" - -//This file contains parts of WINE project source code for d3dx9math licensed under GPLv2 - -//Implementation copied from WINE project d3dx9_36/math.c -glm::vec3* D3DXVec3Normalize(glm::vec3* out, const glm::vec3* pv) { - FLOAT norm = pv->norm(); - if (!norm) { - out->x = 0.0f; - out->y = 0.0f; - out->z = 0.0f; - } else { - out->x = pv->x / norm; - out->y = pv->y / norm; - out->z = pv->z / norm; - } - - return out; -} - -//Implementation copied from WINE project d3dx9_36/math.c -glm::vec4* D3DXVec3Transform(glm::vec4* out, const glm::vec3* pv, const D3DXMATRIX* pm) { - glm::vec4 result; - - result.x = pm->m[0][0] * pv->x + pm->m[1][0] * pv->y + pm->m[2][0] * pv->z + pm->m[3][0]; - result.y = pm->m[0][1] * pv->x + pm->m[1][1] * pv->y + pm->m[2][1] * pv->z + pm->m[3][1]; - result.z = pm->m[0][2] * pv->x + pm->m[1][2] * pv->y + pm->m[2][2] * pv->z + pm->m[3][2]; - result.w = pm->m[0][3] * pv->x + pm->m[1][3] * pv->y + pm->m[2][3] * pv->z + pm->m[3][3]; - *out = result; - return out; -} - -//Implementation copied from WINE project d3dx9_36/math.c -glm::vec3* D3DXVec3TransformNormal(glm::vec3* out, const glm::vec3* pv, const D3DXMATRIX* pm) { - const glm::vec3 v = *pv; - - out->x = pm->m[0][0] * v.x + pm->m[1][0] * v.y + pm->m[2][0] * v.z; - out->y = pm->m[0][1] * v.x + pm->m[1][1] * v.y + pm->m[2][1] * v.z; - out->z = pm->m[0][2] * v.x + pm->m[1][2] * v.y + pm->m[2][2] * v.z; - - return out; -} - -//Implementation copied from WINE project d3dx9_36/math.c -glm::vec4* D3DXVec4Transform(glm::vec4 *out, const glm::vec4 *pv, const D3DXMATRIX *pm) { - glm::vec4 result; - - result.x = pm->m[0][0] * pv->x + pm->m[1][0] * pv->y + pm->m[2][0] * pv->z + pm->m[3][0] * pv->w; - result.y = pm->m[0][1] * pv->x + pm->m[1][1] * pv->y + pm->m[2][1] * pv->z + pm->m[3][1] * pv->w; - result.z = pm->m[0][2] * pv->x + pm->m[1][2] * pv->y + pm->m[2][2] * pv->z + pm->m[3][2] * pv->w; - result.w = pm->m[0][3] * pv->x + pm->m[1][3] * pv->y + pm->m[2][3] * pv->z + pm->m[3][3] * pv->w; - - *out = result; - return out; -} - -float D3DXVec4Length(glm::vec4* v) { - return (float) sqrt(v->x * v->x + v->y * v->y + v->z * v->z + v->w * v->w); -} - - -void D3DXMatrixIdentity(D3DXMATRIX* mat) { - mat->identity(); -} - -//Implementation copied from WINE project d3dx9_36/math.c -float D3DXMatrixDeterminant(const D3DXMATRIX *pm) { - FLOAT t[3], v[4]; - - t[0] = pm->m[2][2] * pm->m[3][3] - pm->m[2][3] * pm->m[3][2]; - t[1] = pm->m[1][2] * pm->m[3][3] - pm->m[1][3] * pm->m[3][2]; - t[2] = pm->m[1][2] * pm->m[2][3] - pm->m[1][3] * pm->m[2][2]; - v[0] = pm->m[1][1] * t[0] - pm->m[2][1] * t[1] + pm->m[3][1] * t[2]; - v[1] = -pm->m[1][0] * t[0] + pm->m[2][0] * t[1] - pm->m[3][0] * t[2]; - - t[0] = pm->m[1][0] * pm->m[2][1] - pm->m[2][0] * pm->m[1][1]; - t[1] = pm->m[1][0] * pm->m[3][1] - pm->m[3][0] * pm->m[1][1]; - t[2] = pm->m[2][0] * pm->m[3][1] - pm->m[3][0] * pm->m[2][1]; - v[2] = pm->m[3][3] * t[0] - pm->m[2][3] * t[1] + pm->m[1][3] * t[2]; - v[3] = -pm->m[3][2] * t[0] + pm->m[2][2] * t[1] - pm->m[1][2] * t[2]; - - return pm->m[0][0] * v[0] + pm->m[0][1] * v[1] + - pm->m[0][2] * v[2] + pm->m[0][3] * v[3]; -} - -D3DXMATRIX* D3DXMatrixMultiply(D3DXMATRIX *out, const D3DXMATRIX *m1, const D3DXMATRIX *m2) { - *out = *m1 * *m2; - return out; -} - -//Implementation copied from WINE project d3dx9_36/math.c -D3DXMATRIX* D3DXMatrixInverse(D3DXMATRIX *out, FLOAT *pdeterminant, const D3DXMATRIX *pm) { - FLOAT det, t[3], v[16]; - UINT i, j; - - t[0] = pm->m[2][2] * pm->m[3][3] - pm->m[2][3] * pm->m[3][2]; - t[1] = pm->m[1][2] * pm->m[3][3] - pm->m[1][3] * pm->m[3][2]; - t[2] = pm->m[1][2] * pm->m[2][3] - pm->m[1][3] * pm->m[2][2]; - v[0] = pm->m[1][1] * t[0] - pm->m[2][1] * t[1] + pm->m[3][1] * t[2]; - v[4] = -pm->m[1][0] * t[0] + pm->m[2][0] * t[1] - pm->m[3][0] * t[2]; - - t[0] = pm->m[1][0] * pm->m[2][1] - pm->m[2][0] * pm->m[1][1]; - t[1] = pm->m[1][0] * pm->m[3][1] - pm->m[3][0] * pm->m[1][1]; - t[2] = pm->m[2][0] * pm->m[3][1] - pm->m[3][0] * pm->m[2][1]; - v[8] = pm->m[3][3] * t[0] - pm->m[2][3] * t[1] + pm->m[1][3] * t[2]; - v[12] = -pm->m[3][2] * t[0] + pm->m[2][2] * t[1] - pm->m[1][2] * t[2]; - - det = pm->m[0][0] * v[0] + pm->m[0][1] * v[4] + - pm->m[0][2] * v[8] + pm->m[0][3] * v[12]; - - if (det == 0.0f) - return nullptr; - if (pdeterminant) - *pdeterminant = det; - - t[0] = pm->m[2][2] * pm->m[3][3] - pm->m[2][3] * pm->m[3][2]; - t[1] = pm->m[0][2] * pm->m[3][3] - pm->m[0][3] * pm->m[3][2]; - t[2] = pm->m[0][2] * pm->m[2][3] - pm->m[0][3] * pm->m[2][2]; - v[1] = -pm->m[0][1] * t[0] + pm->m[2][1] * t[1] - pm->m[3][1] * t[2]; - v[5] = pm->m[0][0] * t[0] - pm->m[2][0] * t[1] + pm->m[3][0] * t[2]; - - t[0] = pm->m[0][0] * pm->m[2][1] - pm->m[2][0] * pm->m[0][1]; - t[1] = pm->m[3][0] * pm->m[0][1] - pm->m[0][0] * pm->m[3][1]; - t[2] = pm->m[2][0] * pm->m[3][1] - pm->m[3][0] * pm->m[2][1]; - v[9] = -pm->m[3][3] * t[0] - pm->m[2][3] * t[1]- pm->m[0][3] * t[2]; - v[13] = pm->m[3][2] * t[0] + pm->m[2][2] * t[1] + pm->m[0][2] * t[2]; - - t[0] = pm->m[1][2] * pm->m[3][3] - pm->m[1][3] * pm->m[3][2]; - t[1] = pm->m[0][2] * pm->m[3][3] - pm->m[0][3] * pm->m[3][2]; - t[2] = pm->m[0][2] * pm->m[1][3] - pm->m[0][3] * pm->m[1][2]; - v[2] = pm->m[0][1] * t[0] - pm->m[1][1] * t[1] + pm->m[3][1] * t[2]; - v[6] = -pm->m[0][0] * t[0] + pm->m[1][0] * t[1] - pm->m[3][0] * t[2]; - - t[0] = pm->m[0][0] * pm->m[1][1] - pm->m[1][0] * pm->m[0][1]; - t[1] = pm->m[3][0] * pm->m[0][1] - pm->m[0][0] * pm->m[3][1]; - t[2] = pm->m[1][0] * pm->m[3][1] - pm->m[3][0] * pm->m[1][1]; - v[10] = pm->m[3][3] * t[0] + pm->m[1][3] * t[1] + pm->m[0][3] * t[2]; - v[14] = -pm->m[3][2] * t[0] - pm->m[1][2] * t[1] - pm->m[0][2] * t[2]; - - t[0] = pm->m[1][2] * pm->m[2][3] - pm->m[1][3] * pm->m[2][2]; - t[1] = pm->m[0][2] * pm->m[2][3] - pm->m[0][3] * pm->m[2][2]; - t[2] = pm->m[0][2] * pm->m[1][3] - pm->m[0][3] * pm->m[1][2]; - v[3] = -pm->m[0][1] * t[0] + pm->m[1][1] * t[1] - pm->m[2][1] * t[2]; - v[7] = pm->m[0][0] * t[0] - pm->m[1][0] * t[1] + pm->m[2][0] * t[2]; - - v[11] = -pm->m[0][0] * (pm->m[1][1] * pm->m[2][3] - pm->m[1][3] * pm->m[2][1]) + - pm->m[1][0] * (pm->m[0][1] * pm->m[2][3] - pm->m[0][3] * pm->m[2][1]) - - pm->m[2][0] * (pm->m[0][1] * pm->m[1][3] - pm->m[0][3] * pm->m[1][1]); - - v[15] = pm->m[0][0] * (pm->m[1][1] * pm->m[2][2] - pm->m[1][2] * pm->m[2][1]) - - pm->m[1][0] * (pm->m[0][1] * pm->m[2][2] - pm->m[0][2] * pm->m[2][1]) + - pm->m[2][0] * (pm->m[0][1] * pm->m[1][2] - pm->m[0][2] * pm->m[1][1]); - - det = 1.0f / det; - - for (i = 0; i < 4; i++) - for (j = 0; j < 4; j++) - out->m[i][j] = v[4 * i + j] * det; - - return out; -} - -//Implementation copied from WINE project d3dx9_36/math.c -D3DXMATRIX* D3DXMatrixTranspose(D3DXMATRIX* out, const D3DXMATRIX* pm) { - const D3DXMATRIX m = *pm; - int i,j; - - for (i=0; i<4; i++) - for (j=0; j<4; j++) out->m[i][j] = m.m[j][i]; - - return out; -} - -//Implementation copied from WINE project d3dx9_36/math.c -D3DXMATRIX * D3DXMatrixLookAtLH(D3DXMATRIX *out, const glm::vec3 *eye, const glm::vec3 *at, const glm::vec3 *up) { - glm::vec3 right, upn, vec; - - vec = *at - *eye; - D3DXVec3Normalize(&vec, &vec); - right.cross(*up, vec); - upn.cross(vec, right); - D3DXVec3Normalize(&right, &right); - D3DXVec3Normalize(&upn, &upn); - out->m[0][0] = right.x; - out->m[1][0] = right.y; - out->m[2][0] = right.z; - out->m[3][0] = -right.dot(*eye); - out->m[0][1] = upn.x; - out->m[1][1] = upn.y; - out->m[2][1] = upn.z; - out->m[3][1] = -upn.dot(*eye); - out->m[0][2] = vec.x; - out->m[1][2] = vec.y; - out->m[2][2] = vec.z; - out->m[3][2] = -vec.dot(*eye); - out->m[0][3] = 0.0f; - out->m[1][3] = 0.0f; - out->m[2][3] = 0.0f; - out->m[3][3] = 1.0f; - - return out; -} - -//Implementation copied from WINE project d3dx9_36/math.c -D3DXMATRIX* D3DXMatrixPerspectiveFovLH(D3DXMATRIX *pout, float fovy, float aspect, float zn, float zf) { - D3DXMatrixIdentity(pout); - pout->m[0][0] = 1.0f / (aspect * tanf(fovy/2.0f)); - pout->m[1][1] = 1.0f / tanf(fovy/2.0f); - pout->m[2][2] = zf / (zf - zn); - pout->m[2][3] = 1.0f; - pout->m[3][2] = (zf * zn) / (zn - zf); - pout->m[3][3] = 0.0f; - return pout; -} From 0a3502d77854bdfa1617a2e66bdc976af1a530bb Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Tue, 1 Nov 2022 16:02:35 +0300 Subject: [PATCH 48/55] math: auto replace D3DXMATRIX with D3DMATRIX in src/*.h,*.cpp,*.inl --- src/MathLib/header/lslMath.h | 26 +++--- src/MathLib/header/lslMath.inl | 87 ++++++++----------- src/MathLib/header/lslVariant.h | 12 +-- src/MathLib/header/r3dMath.h | 18 ++-- src/MathLib/source/lslVariant.cpp | 2 +- src/MathLib/source/r3dMath.cpp | 20 ++--- src/NetLib/include/net/NetCommon.h | 8 +- src/Rock3dEngine/header/graph/ContextInfo.h | 48 +++++----- src/Rock3dEngine/header/graph/DepthMap.h | 6 +- src/Rock3dEngine/header/graph/Engine.h | 2 +- src/Rock3dEngine/header/graph/FxManager.h | 6 +- .../header/graph/MaterialLibrary.h | 4 +- src/Rock3dEngine/header/graph/SceneManager.h | 36 ++++---- .../header/graph/ShadowMapRender.h | 6 +- src/Rock3dEngine/header/graph/StdNode.h | 4 +- src/Rock3dEngine/header/graph/WaterPlane.h | 2 +- src/Rock3dEngine/header/gui/GUI.h | 18 ++-- .../source/graph/ActorManager.cpp | 4 +- src/Rock3dEngine/source/graph/ContextInfo.cpp | 44 +++++----- src/Rock3dEngine/source/graph/DepthMap.cpp | 6 +- src/Rock3dEngine/source/graph/Engine.cpp | 8 +- src/Rock3dEngine/source/graph/FxManager.cpp | 12 +-- .../source/graph/MaterialLibrary.cpp | 4 +- .../source/graph/SceneManager.cpp | 62 ++++++------- .../source/graph/ShadowMapRender.cpp | 12 +-- src/Rock3dEngine/source/graph/SkyBox.cpp | 4 +- src/Rock3dEngine/source/graph/StdNode.cpp | 2 +- src/Rock3dEngine/source/gui/GUI.cpp | 24 ++--- src/Rock3dGame/header/edit/SceneControl.h | 2 +- src/Rock3dGame/header/edit/Trace.h | 2 +- src/Rock3dGame/header/edit/Utils.h | 2 +- src/Rock3dGame/header/game/Player.h | 2 +- src/Rock3dGame/include/ISceneControl.h | 2 +- src/Rock3dGame/source/edit/EditTrace.cpp | 2 +- src/Rock3dGame/source/edit/EditUtils.cpp | 2 +- src/Rock3dGame/source/edit/SceneControl.cpp | 6 +- src/Rock3dGame/source/game/CameraManager.cpp | 6 +- src/Rock3dGame/source/game/GameBase.cpp | 8 +- src/Rock3dGame/source/game/HudMenu.cpp | 4 +- src/Rock3dGame/source/game/Player.cpp | 2 +- src/Rock3dGame/source/game/Weapon.cpp | 2 +- src/Rock3dGame/source/snd/Audio.cpp | 2 +- 42 files changed, 260 insertions(+), 271 deletions(-) diff --git a/src/MathLib/header/lslMath.h b/src/MathLib/header/lslMath.h index fc32360d..b2f5116e 100644 --- a/src/MathLib/header/lslMath.h +++ b/src/MathLib/header/lslMath.h @@ -18,17 +18,17 @@ float Random(); float RandomRange(float from, float to); int RandomRange(int from, int to); float NumAbsAdd(float absVal, float addVal); -float ScalarTransform(float scalar, const glm::vec3& vec, const D3DXMATRIX& mat); - -void BuildWorldMatrix(const glm::vec3& pos, const glm::vec3& scale, const glm::quat& rot, D3DXMATRIX& outMat); -D3DXMATRIX BuildWorldMatrix(const glm::vec3& pos, const glm::vec3& scale, const glm::quat& rot); -void MatrixRotationFromAxis(const glm::vec3& xVec, const glm::vec3& yVec, const glm::vec3& zVec, D3DXMATRIX& matOut); -void MatrixSetTranslation(const glm::vec3& vec, D3DXMATRIX& outMat); -void MatrixTranslate(const glm::vec3& vec, D3DXMATRIX& outMat); -void MatrixSetScale(const glm::vec3& vec, D3DXMATRIX& outMat); -void MatrixScale(const glm::vec3& vec, D3DXMATRIX& outMat); -void MatGetPos(const D3DXMATRIX& mat, glm::vec3& outPos); -glm::vec3 MatGetPos(const D3DXMATRIX& mat); +float ScalarTransform(float scalar, const glm::vec3& vec, const D3DMATRIX& mat); + +void BuildWorldMatrix(const glm::vec3& pos, const glm::vec3& scale, const glm::quat& rot, D3DMATRIX& outMat); +D3DMATRIX BuildWorldMatrix(const glm::vec3& pos, const glm::vec3& scale, const glm::quat& rot); +void MatrixRotationFromAxis(const glm::vec3& xVec, const glm::vec3& yVec, const glm::vec3& zVec, D3DMATRIX& matOut); +void MatrixSetTranslation(const glm::vec3& vec, D3DMATRIX& outMat); +void MatrixTranslate(const glm::vec3& vec, D3DMATRIX& outMat); +void MatrixSetScale(const glm::vec3& vec, D3DMATRIX& outMat); +void MatrixScale(const glm::vec3& vec, D3DMATRIX& outMat); +void MatGetPos(const D3DMATRIX& mat, glm::vec3& outPos); +glm::vec3 MatGetPos(const D3DMATRIX& mat); // glm::vec2 Vec2TransformCoord(const glm::vec2 &vec, const glm::mat4 &mat); @@ -45,7 +45,7 @@ glm::vec2 operator/(const glm::vec2& vec1, const glm::vec2& vec2); glm::vec3 Vec3FromVec2(const glm::vec2& vec); void Vec3Invert(const glm::vec3& vec, glm::vec3& rOut); glm::vec3 Vec3Invert(const glm::vec3& vec); -glm::vec3 Vec3TransformCoord(const glm::vec3& vec, const D3DXMATRIX& mat); +glm::vec3 Vec3TransformCoord(const glm::vec3& vec, const D3DMATRIX& mat); void Vec3Abs(const glm::vec3& vec, glm::vec3& rOut); glm::vec3 Vec3Abs(const glm::vec3& vec); void Vec3Rotate(const glm::vec3& v, const glm::quat& quat, glm::vec3& outVec); @@ -79,7 +79,7 @@ bool RayCastIntersectSphere(const glm::vec3& rayPos, const glm::vec3& rayVec, co float PlaneDotCoord(const glm::vec4& plane, const glm::vec3& point); const float floatErrComp = 0.00001f; -const D3DXMATRIX IdentityMatrix(1.0f, 0.0f, 0.0f, 0.0f, +const D3DMATRIX IdentityMatrix(1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f); diff --git a/src/MathLib/header/lslMath.inl b/src/MathLib/header/lslMath.inl index a0d276c5..e814c62d 100644 --- a/src/MathLib/header/lslMath.inl +++ b/src/MathLib/header/lslMath.inl @@ -44,7 +44,7 @@ inline float NumAbsAdd(float absVal, float addVal) return absVal > 0 ? absVal + addVal : absVal - addVal; } -inline glm::mat4 Matrix4DxToGlm(const D3DXMATRIX &mat) +inline glm::mat4 Matrix4DxToGlm(const D3DMATRIX &mat) { // mat - DX, mat.m[0] 1-st row, mat.m[0][1] = mat._12 - 1-st row 2-nd column glm::mat4 outMat(mat._11, mat._21, mat._31, mat._41, // 1-st column @@ -54,10 +54,10 @@ inline glm::mat4 Matrix4DxToGlm(const D3DXMATRIX &mat) return outMat; } -inline D3DXMATRIX Matrix4GlmToDx(const glm::mat4 &mat) +inline D3DMATRIX Matrix4GlmToDx(const glm::mat4 &mat) { // mat - GLM, mat[0] 1-st column, mat[0][1] = mat[0].y - 1-st column 2-nd row - D3DXMATRIX outMat(mat[0].x, mat[1].x, mat[2].x, mat[3].x, + D3DMATRIX outMat(mat[0].x, mat[1].x, mat[2].x, mat[3].x, mat[0].y, mat[1].y, mat[2].y, mat[3].y, mat[0].z, mat[1].z, mat[2].z, mat[3].z, mat[0].w, mat[1].w, mat[2].w, mat[3].w); @@ -94,7 +94,7 @@ inline glm::vec4 ColorVToVec4(const D3DCOLORVALUE &cv) return outVec; } -inline glm::vec3 Vec3TransformCoord(const glm::vec3 &vec, const D3DXMATRIX &mat) +inline glm::vec3 Vec3TransformCoord(const glm::vec3 &vec, const D3DMATRIX &mat) { glm::vec3 outVec; float norm = mat.m[0][3] * vec.x + mat.m[1][3] * vec.y + mat.m[2][3] * vec.z + mat.m[3][3]; @@ -105,7 +105,7 @@ inline glm::vec3 Vec3TransformCoord(const glm::vec3 &vec, const D3DXMATRIX &mat) return outVec; } -inline glm::vec3 Vec3TransformNormal(const glm::vec3 &vec, const D3DXMATRIX &mat) +inline glm::vec3 Vec3TransformNormal(const glm::vec3 &vec, const D3DMATRIX &mat) { glm::vec3 outVec; outVec.x = mat.m[0][0] * vec.x + mat.m[1][0] * vec.y + mat.m[2][0] * vec.z; @@ -114,7 +114,7 @@ inline glm::vec3 Vec3TransformNormal(const glm::vec3 &vec, const D3DXMATRIX &mat return outVec; } -inline glm::vec4 Vec3Transform(const glm::vec3 &vec, const D3DXMATRIX &mat) +inline glm::vec4 Vec3Transform(const glm::vec3 &vec, const D3DMATRIX &mat) { glm::vec4 outVec; outVec.x = mat.m[0][0] * vec.x + mat.m[1][0] * vec.y + mat.m[2][0] * vec.z + mat.m[3][0]; @@ -124,7 +124,7 @@ inline glm::vec4 Vec3Transform(const glm::vec3 &vec, const D3DXMATRIX &mat) return outVec; } -inline glm::vec4 Vec4Transform(const glm::vec4 &vec, const D3DXMATRIX &mat) +inline glm::vec4 Vec4Transform(const glm::vec4 &vec, const D3DMATRIX &mat) { glm::vec4 outVec; outVec.x = mat.m[0][0] * vec.x + mat.m[1][0] * vec.y + mat.m[2][0] * vec.z + mat.m[3][0] * vec.w; @@ -134,16 +134,16 @@ inline glm::vec4 Vec4Transform(const glm::vec4 &vec, const D3DXMATRIX &mat) return outVec; } -inline float ScalarTransform(float scalar, const glm::vec3& vec, const D3DXMATRIX& mat) +inline float ScalarTransform(float scalar, const glm::vec3& vec, const D3DMATRIX& mat) { glm::vec3 outVec = Vec3TransformNormal(vec * scalar, mat); float len = glm::length(outVec); return scalar < 0 ? -len : len; } -inline D3DXMATRIX MatrixMultiply(const D3DXMATRIX &mat1, const D3DXMATRIX &mat2) +inline D3DMATRIX MatrixMultiply(const D3DMATRIX &mat1, const D3DMATRIX &mat2) { - D3DXMATRIX outMat; + D3DMATRIX outMat; int i, j; for (i = 0; i < 4; i++) { @@ -156,53 +156,42 @@ inline D3DXMATRIX MatrixMultiply(const D3DXMATRIX &mat1, const D3DXMATRIX &mat2) return outMat; } -inline D3DXMATRIX MatrixScaling(float sx, float sy, float sz) +inline D3DMATRIX MatrixScaling(float sx, float sy, float sz) { - D3DXMATRIX outMat = IdentityMatrix; + D3DMATRIX outMat = IdentityMatrix; outMat.m[0][0] = sx; outMat.m[1][1] = sy; outMat.m[2][2] = sz; return outMat; } -inline D3DXMATRIX MatrixTranslation(float x, float y, float z) +inline D3DMATRIX MatrixTranslation(float x, float y, float z) { - D3DXMATRIX outMat = IdentityMatrix; + D3DMATRIX outMat = IdentityMatrix; outMat.m[3][0] = x; outMat.m[3][1] = y; outMat.m[3][2] = z; return outMat; } -inline D3DXMATRIX MatrixTranspose(const D3DXMATRIX &mat) +inline void BuildWorldMatrix(const glm::vec3& pos, const glm::vec3& scale, const glm::quat& rot, D3DMATRIX& outMat) { - D3DXMATRIX outMat; - int i, j; - for (i = 0; i < 4; ++i) - for (j = 0; j < 4; ++j) - outMat.m[i][j] = mat.m[j][i]; - - return outMat; -} - -inline void BuildWorldMatrix(const glm::vec3& pos, const glm::vec3& scale, const glm::quat& rot, D3DXMATRIX& outMat) -{ - D3DXMATRIX scaleMat = MatrixScaling(scale.x, scale.y, scale.z); - D3DXMATRIX rotMat = Matrix4GlmToDx(glm::transpose(glm::mat4_cast(rot))); - D3DXMATRIX transMat = MatrixTranslation(pos.x, pos.y, pos.z); + D3DMATRIX scaleMat = MatrixScaling(scale.x, scale.y, scale.z); + D3DMATRIX rotMat = Matrix4GlmToDx(glm::transpose(glm::mat4_cast(rot))); + D3DMATRIX transMat = MatrixTranslation(pos.x, pos.y, pos.z); outMat = scaleMat * rotMat * transMat; } -inline D3DXMATRIX BuildWorldMatrix(const glm::vec3& pos, const glm::vec3& scale, const glm::quat& rot) +inline D3DMATRIX BuildWorldMatrix(const glm::vec3& pos, const glm::vec3& scale, const glm::quat& rot) { - D3DXMATRIX outMat; + D3DMATRIX outMat; BuildWorldMatrix(pos, scale, rot, outMat); return outMat; } -inline D3DXMATRIX MatrixInverse(float *pdeterminant, const D3DXMATRIX &mat) +inline D3DMATRIX MatrixInverse(float *pdeterminant, const D3DMATRIX &mat) { - D3DXMATRIX outMat; + D3DMATRIX outMat; float det, t[3], v[16]; int i, j; @@ -271,9 +260,9 @@ inline D3DXMATRIX MatrixInverse(float *pdeterminant, const D3DXMATRIX &mat) return outMat; } -inline D3DXMATRIX MatrixLookAtRH(const glm::vec3 &eye, const glm::vec3 &at, const glm::vec3 &up) +inline D3DMATRIX MatrixLookAtRH(const glm::vec3 &eye, const glm::vec3 &at, const glm::vec3 &up) { - D3DXMATRIX outMat; + D3DMATRIX outMat; glm::vec3 right, upn, vec; vec = glm::normalize(at - eye); @@ -302,9 +291,9 @@ inline D3DXMATRIX MatrixLookAtRH(const glm::vec3 &eye, const glm::vec3 &at, cons return outMat; } -inline D3DXMATRIX MatrixOrthoRH(float w, float h, float zn, float zf) +inline D3DMATRIX MatrixOrthoRH(float w, float h, float zn, float zf) { - D3DXMATRIX outMat = IdentityMatrix; + D3DMATRIX outMat = IdentityMatrix; outMat.m[0][0] = 2.0f / w; outMat.m[1][1] = 2.0f / h; outMat.m[2][2] = 1.0f / (zn - zf); @@ -312,9 +301,9 @@ inline D3DXMATRIX MatrixOrthoRH(float w, float h, float zn, float zf) return outMat; } -inline D3DXMATRIX MatrixRotationAxis(const glm::vec3 &vec, float angle) +inline D3DMATRIX MatrixRotationAxis(const glm::vec3 &vec, float angle) { - D3DXMATRIX outMat; + D3DMATRIX outMat; glm::vec3 nv = glm::normalize(vec); float sangle, cangle, cdiff; @@ -342,7 +331,7 @@ inline D3DXMATRIX MatrixRotationAxis(const glm::vec3 &vec, float angle) return outMat; } -inline void MatrixRotationFromAxis(const glm::vec3& xVec, const glm::vec3& yVec, const glm::vec3& zVec, D3DXMATRIX& outMat) +inline void MatrixRotationFromAxis(const glm::vec3& xVec, const glm::vec3& yVec, const glm::vec3& zVec, D3DMATRIX& outMat) { outMat._11 = xVec.x; outMat._12 = xVec.y; @@ -362,42 +351,42 @@ inline void MatrixRotationFromAxis(const glm::vec3& xVec, const glm::vec3& yVec, outMat._44 = 1.0f; } -inline void MatrixSetTranslation(const glm::vec3& vec, D3DXMATRIX& outMat) +inline void MatrixSetTranslation(const glm::vec3& vec, D3DMATRIX& outMat) { outMat._41 = vec.x; outMat._42 = vec.y; outMat._43 = vec.z; } -inline void MatrixTranslate(const glm::vec3& vec, D3DXMATRIX& outMat) +inline void MatrixTranslate(const glm::vec3& vec, D3DMATRIX& outMat) { outMat._41 += vec.x; outMat._42 += vec.y; outMat._43 += vec.z; } -inline void MatrixSetScale(const glm::vec3& vec, D3DXMATRIX& outMat) +inline void MatrixSetScale(const glm::vec3& vec, D3DMATRIX& outMat) { outMat._11 = vec.x; outMat._22 = vec.y; outMat._33 = vec.z; } -inline void MatrixScale(const glm::vec3& vec, D3DXMATRIX& outMat) +inline void MatrixScale(const glm::vec3& vec, D3DMATRIX& outMat) { outMat._11 *= vec.x; outMat._22 *= vec.y; outMat._33 *= vec.z; } -inline void MatGetPos(const D3DXMATRIX& mat, glm::vec3& outPos) +inline void MatGetPos(const D3DMATRIX& mat, glm::vec3& outPos) { outPos.x = mat.m[3][0]; outPos.y = mat.m[3][1]; outPos.z = mat.m[3][2]; } -inline glm::vec3 MatGetPos(const D3DXMATRIX& mat) +inline glm::vec3 MatGetPos(const D3DMATRIX& mat) { glm::vec3 outPos; MatGetPos(mat, outPos); @@ -842,10 +831,10 @@ inline glm::vec4 PlaneNormalize(const glm::vec4 &plane) return outVec; } -inline D3DXMATRIX MatrixReflect(const glm::vec4 &plane) +inline D3DMATRIX MatrixReflect(const glm::vec4 &plane) { glm::vec4 normPlane = PlaneNormalize(plane); - D3DXMATRIX outMat; + D3DMATRIX outMat; outMat.m[0][0] = 1.0f - 2.0f * normPlane.x * normPlane.x; outMat.m[0][1] = -2.0f * normPlane.x * normPlane.y; outMat.m[0][2] = -2.0f * normPlane.x * normPlane.z; @@ -865,7 +854,7 @@ inline D3DXMATRIX MatrixReflect(const glm::vec4 &plane) return outMat; } -inline glm::vec4 PlaneTransform(const glm::vec4 &plane, const D3DXMATRIX &mat) +inline glm::vec4 PlaneTransform(const glm::vec4 &plane, const D3DMATRIX &mat) { glm::vec4 outVec; outVec.x = mat.m[0][0] * plane.x + mat.m[1][0] * plane.y + mat.m[2][0] * plane.z + mat.m[3][0] * plane.w; diff --git a/src/MathLib/header/lslVariant.h b/src/MathLib/header/lslVariant.h index 4cf7f2a7..5448379e 100644 --- a/src/MathLib/header/lslVariant.h +++ b/src/MathLib/header/lslVariant.h @@ -115,7 +115,7 @@ class VariantVec: private Variant template<> Type GetTypeOf() const; template<> Type GetTypeOf() const; template<> Type GetTypeOf() const; - template<> Type GetTypeOf() const; + template<> Type GetTypeOf() const; public: VariantVec(); VariantVec(const VariantVec& value); @@ -130,7 +130,7 @@ class VariantVec: private Variant VariantVec(const glm::vec2* value, unsigned count); VariantVec(const glm::vec3* value, unsigned count); VariantVec(const glm::vec4* value, unsigned count); - VariantVec(const D3DXMATRIX* value, unsigned count); + VariantVec(const D3DMATRIX* value, unsigned count); // VariantVec(const int& value); VariantVec(const unsigned& value); @@ -142,7 +142,7 @@ class VariantVec: private Variant VariantVec(const glm::vec2& value); VariantVec(const glm::vec3& value); VariantVec(const glm::vec4& value); - VariantVec(const D3DXMATRIX& value); + VariantVec(const D3DMATRIX& value); using _MyBase::CheckType; using _MyBase::IsType; @@ -518,7 +518,7 @@ inline VariantVec::VariantVec(const glm::vec4* value, unsigned count) AssignData(value, count); } -inline VariantVec::VariantVec(const D3DXMATRIX* value, unsigned count) +inline VariantVec::VariantVec(const D3DMATRIX* value, unsigned count) { AssignData(value, count); } @@ -568,7 +568,7 @@ inline VariantVec::VariantVec(const glm::vec4& value) AssignData(&value, 1); } -inline VariantVec::VariantVec(const D3DXMATRIX& value) +inline VariantVec::VariantVec(const D3DMATRIX& value) { AssignData(&value, 1); } @@ -613,7 +613,7 @@ template<> inline VariantVec::Type VariantVec::GetTypeOf() const return vtVec4; } -template<> inline VariantVec::Type VariantVec::GetTypeOf() const +template<> inline VariantVec::Type VariantVec::GetTypeOf() const { return vtMatrix; } diff --git a/src/MathLib/header/r3dMath.h b/src/MathLib/header/r3dMath.h index 5fd676f8..51047dff 100644 --- a/src/MathLib/header/r3dMath.h +++ b/src/MathLib/header/r3dMath.h @@ -16,12 +16,12 @@ struct AABB2 explicit AABB2(const glm::vec2& size); AABB2(const glm::vec2& mMin, const glm::vec2& mMax); - static void Transform(const AABB2 &aabb, const D3DXMATRIX &m, AABB2 &rOut); + static void Transform(const AABB2 &aabb, const D3DMATRIX &m, AABB2 &rOut); static void Include(const AABB2& aabb, const glm::vec2& vec, AABB2& rOut); static void Add(const AABB2& aabb1, const AABB2& aabb2, AABB2& rOut); static void Offset(const AABB2& aabb, const glm::vec2& vec, AABB2& rOut); - void Transform(const D3DXMATRIX &m); + void Transform(const D3DMATRIX &m); void Include(const glm::vec2& vec); void Add(const AABB2& aabb); void Offset(const glm::vec2& vec); @@ -66,7 +66,7 @@ struct AABB //Статические методы могут быть ползены для неконстантных операций, т.е. там где происходит преобразование объекта и результат может быть записан в другое место //Эти методы в любом случае имеет смысл делать инлайновыми(и определять их в *.cpp), поскольку аналогичные унарные операции реализуются через них - static void Transform(const AABB& aabb, const D3DXMATRIX& m, AABB& rOut); + static void Transform(const AABB& aabb, const D3DMATRIX& m, AABB& rOut); static void Offset(const AABB& aabb, const glm::vec3& vec, AABB& rOut); static void Add(const AABB& aabb1, const AABB& aabb2, AABB& rOut); static void Include(const AABB& aabb, const glm::vec3& vec, AABB& rOut); @@ -81,7 +81,7 @@ struct AABB void FromPoints(const glm::vec3& pnt1, const glm::vec3& pnt2); void FromDimensions(const glm::vec3& dimensions); void FromPlaneAndScale(const glm::vec4& plane, const glm::vec3& vec); - void Transform(const D3DXMATRIX& m); + void Transform(const D3DMATRIX& m); void Offset(const glm::vec3& vec); void Add(const AABB& aabb); void Include(const glm::vec3& vec); @@ -110,7 +110,7 @@ struct AABB //startTolocal - преобразование из start в локальную систему координат this //localToStart - преобразование из this в локальную систему координат start //minDist - выходная минимальная дистанция между this и направленным объемом start - bool AABBLineCastIntersect(const AABB& start, const glm::vec3& vec, const D3DXMATRIX& startTolocal, const D3DXMATRIX& localToStart, float& minDist) const; + bool AABBLineCastIntersect(const AABB& start, const glm::vec3& vec, const D3DMATRIX& startTolocal, const D3DMATRIX& localToStart, float& minDist) const; //Пересечение направленным объемом AABB как лучом bool AABBRayCastIntersect(const AABB& aabb, const glm::vec3& rayVec, float& minDist, const float error = 0) const; @@ -148,13 +148,13 @@ struct BoundBox // 0(min)----1/----->X // - static void Transform(const BoundBox& bb, const D3DXMATRIX& m, BoundBox& rOut); + static void Transform(const BoundBox& bb, const D3DMATRIX& m, BoundBox& rOut); BoundBox(); explicit BoundBox(const AABB& aabb); void SetPlan(const int numPlan, const float valeur); - void Transform(const D3DXMATRIX& m); + void Transform(const D3DMATRIX& m); void ToAABB(AABB& aabb) const; @@ -170,9 +170,9 @@ struct Frustum Frustum(); - static void CalculateCorners(Corners& pPoints, const D3DXMATRIX& invViewProj); + static void CalculateCorners(Corners& pPoints, const D3DMATRIX& invViewProj); - void Refresh(const D3DXMATRIX& viewProjMat); + void Refresh(const D3DMATRIX& viewProjMat); SpaceContains ContainsAABB(const AABB& aabb) const; diff --git a/src/MathLib/source/lslVariant.cpp b/src/MathLib/source/lslVariant.cpp index 5c5d183b..b8d42abe 100644 --- a/src/MathLib/source/lslVariant.cpp +++ b/src/MathLib/source/lslVariant.cpp @@ -7,6 +7,6 @@ const unsigned Variant::cTypeSize[cTypeEnd] = {1, sizeof(int), sizeof(unsigned), sizeof(float), sizeof(double), sizeof(bool), sizeof(char)}; -const unsigned VariantVec::cMyTypeSize[cMyTypeEnd] = {sizeof(glm::vec2), sizeof(glm::vec3), sizeof(glm::vec4), sizeof(D3DXMATRIX)}; +const unsigned VariantVec::cMyTypeSize[cMyTypeEnd] = {sizeof(glm::vec2), sizeof(glm::vec3), sizeof(glm::vec4), sizeof(D3DMATRIX)}; //} \ No newline at end of file diff --git a/src/MathLib/source/r3dMath.cpp b/src/MathLib/source/r3dMath.cpp index 5dd86faa..3b5d00fa 100644 --- a/src/MathLib/source/r3dMath.cpp +++ b/src/MathLib/source/r3dMath.cpp @@ -45,9 +45,9 @@ AABB2::AABB2(const glm::vec2& mMin, const glm::vec2& mMax): min(mMin), max(mMax) { } -void AABB2::Transform(const AABB2 &aabb, const D3DXMATRIX &mIn, AABB2 &rOut) +void AABB2::Transform(const AABB2 &aabb, const D3DMATRIX &mIn, AABB2 &rOut) { - auto m = Matrix4DxToGlm(mIn); // remove after D3DXMATRIX replacement + auto m = Matrix4DxToGlm(mIn); // remove after D3DMATRIX replacement glm::vec2 oldMin = aabb.min; glm::vec2 oldMax = aabb.max; rOut.min = Vec2TransformCoord(oldMin, m); @@ -78,7 +78,7 @@ void AABB2::Offset(const AABB2& aabb, const glm::vec2& vec, AABB2& rOut) rOut.max = aabb.max + vec; } -void AABB2::Transform(const D3DXMATRIX &m) +void AABB2::Transform(const D3DMATRIX &m) { Transform(*this, m, *this); } @@ -156,7 +156,7 @@ AABB::AABB(const glm::vec3& minPoint, const glm::vec3& maxPoint): min(minPoint), { } -inline void AABB::Transform(const AABB& aabb, const D3DXMATRIX& m, AABB& rOut) +inline void AABB::Transform(const AABB& aabb, const D3DMATRIX& m, AABB& rOut) { glm::vec3 oldMin = aabb.min; glm::vec3 oldMax = aabb.max; @@ -214,7 +214,7 @@ void AABB::FromDimensions(const glm::vec3& dimensions) min = -max; } -void AABB::Transform(const D3DXMATRIX& m) +void AABB::Transform(const D3DMATRIX& m) { Transform(*this, m, *this); } @@ -397,7 +397,7 @@ bool AABB::AABBLineCastIntersect(const AABB& aabb, const glm::vec3& rayVec, floa return res; } -bool AABB::AABBLineCastIntersect(const AABB& start, const glm::vec3& vec, const D3DXMATRIX& startTolocal, const D3DXMATRIX& localToStart, float& minDist) const +bool AABB::AABBLineCastIntersect(const AABB& start, const glm::vec3& vec, const D3DMATRIX& startTolocal, const D3DMATRIX& localToStart, float& minDist) const { BoundBox startBB(start); startBB.Transform(startTolocal); @@ -666,7 +666,7 @@ BoundBox::BoundBox(const AABB& aabb) } } -void BoundBox::Transform(const BoundBox& bb, const D3DXMATRIX& m, BoundBox& rOut) +void BoundBox::Transform(const BoundBox& bb, const D3DMATRIX& m, BoundBox& rOut) { for (int i = 0; i < 8; ++i) rOut.v[i] = Vec3TransformCoord(bb.v[i], m); @@ -678,7 +678,7 @@ void BoundBox::SetPlan(const int numPlan, const float valeur) v[cBBPlans[numPlan][i]][cDirPlan[numPlan]] = valeur; } -void BoundBox::Transform(const D3DXMATRIX& m) +void BoundBox::Transform(const D3DMATRIX& m) { Transform(*this, m, *this); } @@ -694,7 +694,7 @@ Frustum::Frustum() } -void Frustum::CalculateCorners(Corners& pPoints, const D3DXMATRIX& invViewProj) +void Frustum::CalculateCorners(Corners& pPoints, const D3DMATRIX& invViewProj) { int i = 0; for (float fx = -1.0f; fx <= 1.0f; fx += 2.0f) @@ -705,7 +705,7 @@ void Frustum::CalculateCorners(Corners& pPoints, const D3DXMATRIX& invViewProj) } } -void Frustum::Refresh(const D3DXMATRIX& viewProjMat) +void Frustum::Refresh(const D3DMATRIX& viewProjMat) { //extract left plane left.x = viewProjMat._14 - viewProjMat._12; diff --git a/src/NetLib/include/net/NetCommon.h b/src/NetLib/include/net/NetCommon.h index 4ce6b0e1..ec194aa0 100644 --- a/src/NetLib/include/net/NetCommon.h +++ b/src/NetLib/include/net/NetCommon.h @@ -166,8 +166,8 @@ unsigned Read(std::istream& stream, glm::vec4& value); unsigned Write(std::ostream& stream, const glm::quat& value); unsigned Read(std::istream& stream, glm::quat& value); -unsigned Write(std::ostream& stream, const D3DXMATRIX& value); -unsigned Read(std::istream& stream, D3DXMATRIX& value); +unsigned Write(std::ostream& stream, const D3DMATRIX& value); +unsigned Read(std::istream& stream, D3DMATRIX& value); template unsigned Write(std::ostream& stream, const std::basic_string<_T>& value, unsigned size); template unsigned Read(std::istream& stream, std::basic_string<_T>& value, unsigned size); @@ -319,13 +319,13 @@ inline unsigned Read(std::istream& stream, glm::quat& value) return sizeof(value); } -inline unsigned Write(std::ostream& stream, const D3DXMATRIX& value) +inline unsigned Write(std::ostream& stream, const D3DMATRIX& value) { Write(stream, &value, sizeof(value)); return sizeof(value); } -inline unsigned Read(std::istream& stream, D3DXMATRIX& value) +inline unsigned Read(std::istream& stream, D3DMATRIX& value) { Read(stream, &value, sizeof(value)); return sizeof(value); diff --git a/src/Rock3dEngine/header/graph/ContextInfo.h b/src/Rock3dEngine/header/graph/ContextInfo.h index 9e1d22cc..238ddbb2 100644 --- a/src/Rock3dEngine/header/graph/ContextInfo.h +++ b/src/Rock3dEngine/header/graph/ContextInfo.h @@ -236,9 +236,9 @@ class CameraCI: public virtual lsl::Object private: CameraDesc _desc; - D3DXMATRIX _worldMat; - mutable D3DXMATRIX _matrices[cTransformEnd]; - mutable D3DXMATRIX _invMatrices[cTransformEnd]; + D3DMATRIX _worldMat; + mutable D3DMATRIX _matrices[cTransformEnd]; + mutable D3DMATRIX _invMatrices[cTransformEnd]; mutable std::bitset _matChanged; mutable std::bitset _invMatChanged; // @@ -247,10 +247,10 @@ class CameraCI: public virtual lsl::Object unsigned _idState; - void CalcProjPerspective(D3DXMATRIX& mat) const; + void CalcProjPerspective(D3DMATRIX& mat) const; void StateChanged(); - void WorldMatChanged(const D3DXMATRIX& worldMat); + void WorldMatChanged(const D3DMATRIX& worldMat); void ProjMatChanged(); void DescChanged(); public: @@ -262,10 +262,10 @@ class CameraCI: public virtual lsl::Object bool ComputeZBounds(const AABB& aabb, float& minZ, float& maxZ) const; void AdjustNearFarPlane(const AABB& aabb, float minNear, float maxFar); - void GetProjPerspective(D3DXMATRIX& mat) const; - void GetViewProjPerspective(D3DXMATRIX& mat) const; - void GetWVPPerspective(D3DXMATRIX& mat) const; - void SetProjMat(const D3DXMATRIX& value); + void GetProjPerspective(D3DMATRIX& mat) const; + void GetViewProjPerspective(D3DMATRIX& mat) const; + void GetWVPPerspective(D3DMATRIX& mat) const; + void SetProjMat(const D3DMATRIX& value); glm::vec3 ScreenToWorld(const glm::vec2& coord, float z, const glm::vec2& viewSize) const; glm::vec2 WorldToScreen(const glm::vec3& coord, const glm::vec2& viewSize) const; @@ -273,19 +273,19 @@ class CameraCI: public virtual lsl::Object const CameraDesc& GetDesc() const; void SetDesc(const CameraDesc& value); - const D3DXMATRIX& GetTransform(Transform transform) const; - const D3DXMATRIX& GetInvTransform(Transform transform) const; + const D3DMATRIX& GetTransform(Transform transform) const; + const D3DMATRIX& GetInvTransform(Transform transform) const; const Frustum& GetFrustum() const; - const D3DXMATRIX& GetView() const; - const D3DXMATRIX& GetProj() const; - const D3DXMATRIX& GetViewProj() const; - const D3DXMATRIX& GetWVP() const; + const D3DMATRIX& GetView() const; + const D3DMATRIX& GetProj() const; + const D3DMATRIX& GetViewProj() const; + const D3DMATRIX& GetWVP() const; // - const D3DXMATRIX& GetInvView() const; - const D3DXMATRIX& GetInvProj() const; - const D3DXMATRIX& GetInvViewProj() const; - const D3DXMATRIX& GetInvWVP() const; + const D3DMATRIX& GetInvView() const; + const D3DMATRIX& GetInvProj() const; + const D3DMATRIX& GetInvViewProj() const; + const D3DMATRIX& GetInvWVP() const; }; class LightCI: public lsl::Object @@ -341,9 +341,9 @@ class ContextInfo private: RenderDriver* _driver; - D3DXMATRIX _worldMat; + D3DMATRIX _worldMat; - std::vector _textureMatStack[cMaxTexSamplers]; + std::vector _textureMatStack[cMaxTexSamplers]; IDirect3DBaseTexture9* _textures[cMaxTexSamplers]; int _maxTextureStage; @@ -406,10 +406,10 @@ class ContextInfo void PopShader(BaseShader* value); bool IsShaderActive() const; - const D3DXMATRIX& GetWorldMat() const; - void SetWorldMat(const D3DXMATRIX& value); + const D3DMATRIX& GetWorldMat() const; + void SetWorldMat(const D3DMATRIX& value); - void PushTextureTransform(int stage, const D3DXMATRIX& value); + void PushTextureTransform(int stage, const D3DMATRIX& value); void PopTextureTransform(int stage); const MaterialDesc& GetMaterial() const; diff --git a/src/Rock3dEngine/header/graph/DepthMap.h b/src/Rock3dEngine/header/graph/DepthMap.h index 2823b57d..1dd198e9 100644 --- a/src/Rock3dEngine/header/graph/DepthMap.h +++ b/src/Rock3dEngine/header/graph/DepthMap.h @@ -27,7 +27,7 @@ class DepthMapShader: public Shader TechniqueType GetTech() const; void SetTech(TechniqueType value); - D3DXMATRIX viewProjMat; + D3DMATRIX viewProjMat; }; class DepthMapRender: public GraphObjRender @@ -40,8 +40,8 @@ class DepthMapRender: public GraphObjRender virtual void BeginRT(Engine& engine, const RtFlags& flags); virtual void EndRT(Engine& engine); - const D3DXMATRIX& GetViewProjMat() const; - void SetViewProjMat(const D3DXMATRIX& value); + const D3DMATRIX& GetViewProjMat() const; + void SetViewProjMat(const D3DMATRIX& value); DepthMapShader shader; }; diff --git a/src/Rock3dEngine/header/graph/Engine.h b/src/Rock3dEngine/header/graph/Engine.h index d7e1218f..e23a6e30 100644 --- a/src/Rock3dEngine/header/graph/Engine.h +++ b/src/Rock3dEngine/header/graph/Engine.h @@ -100,7 +100,7 @@ class Engine: public lsl::Object void BeginMeshPT(); void EndMeshPT(); void RenderPlanePT(); - void RenderSpritePT(const glm::vec3& pos, const glm::vec3& scale, float turnAngle, const glm::vec3* fixDirection, const D3DXMATRIX& localMat); + void RenderSpritePT(const glm::vec3& pos, const glm::vec3& scale, float turnAngle, const glm::vec3* fixDirection, const D3DMATRIX& localMat); void RenderScreenQuad(bool disableZBuf = false); diff --git a/src/Rock3dEngine/header/graph/FxManager.h b/src/Rock3dEngine/header/graph/FxManager.h index 67cf11cb..3aef3ec4 100644 --- a/src/Rock3dEngine/header/graph/FxManager.h +++ b/src/Rock3dEngine/header/graph/FxManager.h @@ -23,7 +23,7 @@ class FxParticle: public lsl::Object glm::quat _rot; glm::vec3 _scale; - mutable D3DXMATRIX _worldMat; + mutable D3DMATRIX _worldMat; mutable bool _worldMatChanged; mutable AABB _aabb; @@ -47,7 +47,7 @@ class FxParticle: public lsl::Object const glm::vec3& GetScale(); void SetScale(const glm::vec3& value); - const D3DXMATRIX& GetMatrix() const; + const D3DMATRIX& GetMatrix() const; AABB GetAABB() const; @@ -214,7 +214,7 @@ class FxEmitter: public lsl::Object, public lsl::Serializable glm::vec3 GetLocalPos(FxParticle* particle) const; glm::vec3 GetWorldPos(FxParticle* particle) const; - const D3DXMATRIX& GetMatrix() const; + const D3DMATRIX& GetMatrix() const; }; class FxParticleSystem: public BaseSceneNode diff --git a/src/Rock3dEngine/header/graph/MaterialLibrary.h b/src/Rock3dEngine/header/graph/MaterialLibrary.h index 69a4ac3a..a0cbcaeb 100644 --- a/src/Rock3dEngine/header/graph/MaterialLibrary.h +++ b/src/Rock3dEngine/header/graph/MaterialLibrary.h @@ -28,13 +28,13 @@ class BaseSampler Vec3Range _scale; QuatRange _rotate; - mutable D3DXMATRIX _matrix; + mutable D3DMATRIX _matrix; mutable bool _matChanged; mutable float _matFrame; mutable bool _defMat; void TransformationChanged() const; - const D3DXMATRIX& GetMatrix(float frame) const; + const D3DMATRIX& GetMatrix(float frame) const; void ApplyFiltering(); protected: diff --git a/src/Rock3dEngine/header/graph/SceneManager.h b/src/Rock3dEngine/header/graph/SceneManager.h index ab711a12..21386a0e 100644 --- a/src/Rock3dEngine/header/graph/SceneManager.h +++ b/src/Rock3dEngine/header/graph/SceneManager.h @@ -125,11 +125,11 @@ class BaseSceneNode: public lsl::Component, protected IProgressUser mutable glm::quat _rot; //Матрицы являются промежуточными переменными, и хранятся в полях объекта для оптимизации расчетов. Для вывода коорректных данных(если перерасчет матриц ещё не произошел) о самих матрицах и связных данных используется mutable для const - mutable D3DXMATRIX _rotMat; - mutable D3DXMATRIX _localMat; - mutable D3DXMATRIX _invLocalMat; - mutable D3DXMATRIX _worldMat; - mutable D3DXMATRIX _invWorldMat; + mutable D3DMATRIX _rotMat; + mutable D3DMATRIX _localMat; + mutable D3DMATRIX _invLocalMat; + mutable D3DMATRIX _worldMat; + mutable D3DMATRIX _invWorldMat; mutable AABB _aabbLocal; mutable AABB _aabbWorld; @@ -181,7 +181,7 @@ class BaseSceneNode: public lsl::Component, protected IProgressUser //Рендер в локальном пространстве координат virtual void DoRender(graph::Engine& engine) {}; //Рендер в глобальном пространстве координат - void Render(graph::Engine& engine, const D3DXMATRIX& worldMat); + void Render(graph::Engine& engine, const D3DMATRIX& worldMat); //Общая функция рендера virtual void Render(graph::Engine& engine); //Событие временного прогресса @@ -257,20 +257,20 @@ class BaseSceneNode: public lsl::Component, protected IProgressUser void SetRot(const glm::quat& value); //Локальные матрицы - D3DXMATRIX GetScaleMat() const; - D3DXMATRIX GetRotMat() const; - D3DXMATRIX GetTransMat() const; + D3DMATRIX GetScaleMat() const; + D3DMATRIX GetRotMat() const; + D3DMATRIX GetTransMat() const; //Рез. локальная матрица - const D3DXMATRIX& GetMat() const; + const D3DMATRIX& GetMat() const; //Матрица не должна содержать масштабирования! - void SetLocalMat(const D3DXMATRIX& value); - const D3DXMATRIX& GetInvMat() const; + void SetLocalMat(const D3DMATRIX& value); + const D3DMATRIX& GetInvMat() const; //Мировая матрица - const D3DXMATRIX& GetWorldMat() const; - const D3DXMATRIX& GetInvWorldMat() const; + const D3DMATRIX& GetWorldMat() const; + const D3DMATRIX& GetInvWorldMat() const; //Комбинированные матрицы - D3DXMATRIX GetCombMat(CombMatType type) const; - D3DXMATRIX GetWorldCombMat(CombMatType type) const; + D3DMATRIX GetCombMat(CombMatType type) const; + D3DMATRIX GetWorldCombMat(CombMatType type) const; //Мировые координаты glm::vec3 GetWorldPos() const; @@ -278,7 +278,7 @@ class BaseSceneNode: public lsl::Component, protected IProgressUser glm::quat GetWorldRot() const; void SetWorldRot(const glm::quat& value); //Невозможно представить мировое масштабирование с помощью одного вектора поскольку направление масштабирования зависит от поворота. Поэтому представляется в виде матрицы - D3DXMATRIX GetWorldScale() const; + D3DMATRIX GetWorldScale() const; // glm::vec3 GetWorldDir() const; glm::vec3 GetWorldRight() const; @@ -342,7 +342,7 @@ class Camera: public BaseSceneNode private: typedef BaseSceneNode _MyBase; public: - static void RenderFrustum(graph::Engine& engine, const D3DXMATRIX& invViewProj, const glm::vec4& colorBB); + static void RenderFrustum(graph::Engine& engine, const D3DMATRIX& invViewProj, const glm::vec4& colorBB); private: mutable graph::CameraDesc _desc; mutable graph::CameraCI _contextInfo; diff --git a/src/Rock3dEngine/header/graph/ShadowMapRender.h b/src/Rock3dEngine/header/graph/ShadowMapRender.h index 193fb88c..b6e065cf 100644 --- a/src/Rock3dEngine/header/graph/ShadowMapRender.h +++ b/src/Rock3dEngine/header/graph/ShadowMapRender.h @@ -17,8 +17,8 @@ class ShadowMapShader: public Shader protected: virtual void DoBeginDraw(Engine& engine); public: - D3DXMATRIX mTexScale; - D3DXMATRIX shadowViewProj; + D3DMATRIX mTexScale; + D3DMATRIX shadowViewProj; }; //Выисление карты освещенности, которая представляет собой проекционную текстуру на текстуру сцены. Т.е. накладывается постпроцессом. Содержит в себе степень освещенности (тени прикрытые диффузом) в помежутке 0..1. @@ -41,7 +41,7 @@ class ShadowMapRender: public GraphObjRender std::vector _splitDistances; std::vector _lightDist; - std::vector _splitLightProjMat; + std::vector _splitLightProjMat; // RtFlags _beginFlags; diff --git a/src/Rock3dEngine/header/graph/StdNode.h b/src/Rock3dEngine/header/graph/StdNode.h index ea5366dc..42ad2972 100644 --- a/src/Rock3dEngine/header/graph/StdNode.h +++ b/src/Rock3dEngine/header/graph/StdNode.h @@ -24,12 +24,12 @@ class MaterialNode glm::quat _rotate; D3DCULL _cullMode; - mutable D3DXMATRIX _matrix; + mutable D3DMATRIX _matrix; mutable bool _matChanged; mutable bool _defMat; void TransformationChanged() const; - const D3DXMATRIX& GetMatrix() const; + const D3DMATRIX& GetMatrix() const; void Begin(Engine& engine); void End(Engine& engine); diff --git a/src/Rock3dEngine/header/graph/WaterPlane.h b/src/Rock3dEngine/header/graph/WaterPlane.h index 29557284..fc18a989 100644 --- a/src/Rock3dEngine/header/graph/WaterPlane.h +++ b/src/Rock3dEngine/header/graph/WaterPlane.h @@ -20,7 +20,7 @@ class ReflRender: public GraphObjRender glm::vec4 _reflPlane; ClipPlanes _clipPlanes; - D3DXMATRIX _reflMat; + D3DMATRIX _reflMat; CameraCI _reflCamera; public: ReflRender(); diff --git a/src/Rock3dEngine/header/gui/GUI.h b/src/Rock3dEngine/header/gui/GUI.h index 1daf1c22..15a2c926 100644 --- a/src/Rock3dEngine/header/gui/GUI.h +++ b/src/Rock3dEngine/header/gui/GUI.h @@ -263,8 +263,8 @@ class Graphic3d: public Object const glm::vec3& GetScale() const; void SetScale(const glm::vec3& value); - D3DXMATRIX GetMat(); - D3DXMATRIX GetWorldMat(); + D3DMATRIX GetMat(); + D3DMATRIX GetWorldMat(); AABB GetChildAABB(); AABB GetLocalAABB(bool includeChild); AABB GetWorldAABB(bool includeChild); @@ -407,7 +407,7 @@ class Context: public Object void BeginDrawGraphic(Graphic& graphic); void EndDrawGraphic(Graphic& graphic); - void DrawGraphic3d(Graphic3d* graphic, const D3DXMATRIX& worldMat); + void DrawGraphic3d(Graphic3d* graphic, const D3DMATRIX& worldMat); template void DrawBaseText(_Text& text, AABB2* aabb); graph::Engine& GetEngine(); @@ -420,7 +420,7 @@ class Context: public Object void BeginDraw(); void EndDraw(); - void SetTransform(const D3DXMATRIX& value); + void SetTransform(const D3DMATRIX& value); void DrawPlane(Plane& plane); void DrawText(Text& text, AABB2* aabb = 0); @@ -538,7 +538,7 @@ class Widget: public Object, protected graph::IProgressUser bool _coord3d; glm::vec3 _pos3d; - mutable D3DXMATRIX _matrix[cMatrixChangeEnd]; + mutable D3DMATRIX _matrix[cMatrixChangeEnd]; mutable MatrixChanges _matrixChanges; glm::vec2 _size; @@ -704,10 +704,10 @@ class Widget: public Object, protected graph::IProgressUser glm::vec2 GetWorldPos() const; void SetWorldPos(const glm::vec2& value); - const D3DXMATRIX& GetMat() const; - const D3DXMATRIX& GetWorldMat() const; - const D3DXMATRIX& GetInvMat() const; - const D3DXMATRIX& GetInvWorldMat() const; + const D3DMATRIX& GetMat() const; + const D3DMATRIX& GetWorldMat() const; + const D3DMATRIX& GetInvMat() const; + const D3DMATRIX& GetInvWorldMat() const; //размер относительно центра localAABB const glm::vec2& GetSize() const; diff --git a/src/Rock3dEngine/source/graph/ActorManager.cpp b/src/Rock3dEngine/source/graph/ActorManager.cpp index cd853bdb..37e682c1 100644 --- a/src/Rock3dEngine/source/graph/ActorManager.cpp +++ b/src/Rock3dEngine/source/graph/ActorManager.cpp @@ -301,8 +301,8 @@ void ActorManager::BuildPlanar(unsigned scene) const ActorManager::Planar& ActorManager::GetPlanar(Actor* actor) { - D3DXMATRIX mat = actor->GetInvWorldMat(); - mat = MatrixTranspose(mat); + D3DMATRIX mat = actor->GetInvWorldMat(); + D3DXMatrixTranspose(&mat, &mat); glm::vec4 plane = PlaneTransform(actor->vec1(), mat); plane = PlaneNormalize(plane); diff --git a/src/Rock3dEngine/source/graph/ContextInfo.cpp b/src/Rock3dEngine/source/graph/ContextInfo.cpp index f08d6272..89142a54 100644 --- a/src/Rock3dEngine/source/graph/ContextInfo.cpp +++ b/src/Rock3dEngine/source/graph/ContextInfo.cpp @@ -112,7 +112,7 @@ void CameraCI::StateChanged() _frustChanged = true; } -void CameraCI::WorldMatChanged(const D3DXMATRIX& worldMat) +void CameraCI::WorldMatChanged(const D3DMATRIX& worldMat) { _worldMat = worldMat; @@ -122,7 +122,7 @@ void CameraCI::WorldMatChanged(const D3DXMATRIX& worldMat) _invMatChanged.set(ctWVP); } -void CameraCI::CalcProjPerspective(D3DXMATRIX& mat) const +void CameraCI::CalcProjPerspective(D3DMATRIX& mat) const { D3DXMatrixPerspectiveFovRH(&mat, _desc.fov, _desc.aspect, _desc.nearDist, _desc.farDist); } @@ -379,7 +379,7 @@ void CameraCI::AdjustNearFarPlane(const AABB& aabb, float minNear, float maxFar) DescChanged(); } -void CameraCI::GetProjPerspective(D3DXMATRIX& mat) const +void CameraCI::GetProjPerspective(D3DMATRIX& mat) const { if (_desc.style == csPerspective) mat = GetProj(); @@ -387,7 +387,7 @@ void CameraCI::GetProjPerspective(D3DXMATRIX& mat) const return CalcProjPerspective(mat); } -void CameraCI::GetViewProjPerspective(D3DXMATRIX& mat) const +void CameraCI::GetViewProjPerspective(D3DMATRIX& mat) const { if (_desc.style == csPerspective) mat = GetViewProj(); @@ -398,7 +398,7 @@ void CameraCI::GetViewProjPerspective(D3DXMATRIX& mat) const } } -void CameraCI::GetWVPPerspective(D3DXMATRIX& mat) const +void CameraCI::GetWVPPerspective(D3DMATRIX& mat) const { if (_desc.style == csPerspective) mat = GetViewProj(); @@ -409,7 +409,7 @@ void CameraCI::GetWVPPerspective(D3DXMATRIX& mat) const } } -void CameraCI::SetProjMat(const D3DXMATRIX& value) +void CameraCI::SetProjMat(const D3DMATRIX& value) { _matrices[ctProj] = value; @@ -451,7 +451,7 @@ void CameraCI::SetDesc(const CameraDesc& value) DescChanged(); } -const D3DXMATRIX& CameraCI::GetTransform(Transform transform) const +const D3DMATRIX& CameraCI::GetTransform(Transform transform) const { if (_matChanged.test(transform)) { @@ -489,8 +489,8 @@ const D3DXMATRIX& CameraCI::GetTransform(Transform transform) const case csViewPortInv: { glm::vec2 viewSize = glm::vec2(_desc.width, _desc.width / _desc.aspect); - D3DXMATRIX viewMat = MatrixTranslation(-1.0f, _desc.style == csViewPortInv ? -1.0f : 1.0f, 0.0f); - D3DXMATRIX matScale = MatrixScaling(2.0f/viewSize.x, _desc.style == csViewPortInv ? 2.0f/viewSize.y : -2.0f/viewSize.y, 1.0f); + D3DMATRIX viewMat = MatrixTranslation(-1.0f, _desc.style == csViewPortInv ? -1.0f : 1.0f, 0.0f); + D3DMATRIX matScale = MatrixScaling(2.0f/viewSize.x, _desc.style == csViewPortInv ? 2.0f/viewSize.y : -2.0f/viewSize.y, 1.0f); matScale._33 = 1.0f/(-500.0f - 500.0f); matScale._43 = -500.0f/(-500.0f - 500.0f); _matrices[transform] = matScale * viewMat; @@ -523,7 +523,7 @@ const D3DXMATRIX& CameraCI::GetTransform(Transform transform) const return _matrices[transform]; } -const D3DXMATRIX& CameraCI::GetInvTransform(Transform transform) const +const D3DMATRIX& CameraCI::GetInvTransform(Transform transform) const { if (_invMatChanged.test(transform)) { @@ -545,42 +545,42 @@ const Frustum& CameraCI::GetFrustum() const return _frustum; } -const D3DXMATRIX& CameraCI::GetView() const +const D3DMATRIX& CameraCI::GetView() const { return GetTransform(ctView); } -const D3DXMATRIX& CameraCI::GetProj() const +const D3DMATRIX& CameraCI::GetProj() const { return GetTransform(ctProj); } -const D3DXMATRIX& CameraCI::GetViewProj() const +const D3DMATRIX& CameraCI::GetViewProj() const { return GetTransform(ctViewProj); } -const D3DXMATRIX& CameraCI::GetWVP() const +const D3DMATRIX& CameraCI::GetWVP() const { return GetTransform(ctWVP); } -const D3DXMATRIX& CameraCI::GetInvView() const +const D3DMATRIX& CameraCI::GetInvView() const { return GetInvTransform(ctView); } -const D3DXMATRIX& CameraCI::GetInvProj() const +const D3DMATRIX& CameraCI::GetInvProj() const { return GetInvTransform(ctProj); } -const D3DXMATRIX& CameraCI::GetInvViewProj() const +const D3DMATRIX& CameraCI::GetInvViewProj() const { return GetInvTransform(ctViewProj); } -const D3DXMATRIX& CameraCI::GetInvWVP() const +const D3DMATRIX& CameraCI::GetInvWVP() const { return GetInvTransform(ctWVP); } @@ -773,7 +773,7 @@ void ContextInfo::BeginDraw() for (int i = 0; i <= _maxTextureStage; ++i) if (!_textureMatStack[i].empty()) { - D3DXMATRIX mat = _textureMatStack[i].front(); + D3DMATRIX mat = _textureMatStack[i].front(); for (unsigned j = 1; j < _textureMatStack[i].size(); ++j) mat = mat * _textureMatStack[i][j]; @@ -916,12 +916,12 @@ bool ContextInfo::IsShaderActive() const return _shaderStack.size() > 0; } -const D3DXMATRIX& ContextInfo::GetWorldMat() const +const D3DMATRIX& ContextInfo::GetWorldMat() const { return _worldMat; } -void ContextInfo::SetWorldMat(const D3DXMATRIX& value) +void ContextInfo::SetWorldMat(const D3DMATRIX& value) { _worldMat = value; if (!_cameraStack.empty()) @@ -933,7 +933,7 @@ void ContextInfo::SetWorldMat(const D3DXMATRIX& value) _driver->SetTransform(tstWorld, &_worldMat); } -void ContextInfo::PushTextureTransform(int stage, const D3DXMATRIX& value) +void ContextInfo::PushTextureTransform(int stage, const D3DMATRIX& value) { _textureMatStack[stage].push_back(value); } diff --git a/src/Rock3dEngine/source/graph/DepthMap.cpp b/src/Rock3dEngine/source/graph/DepthMap.cpp index af9de24a..7f790418 100644 --- a/src/Rock3dEngine/source/graph/DepthMap.cpp +++ b/src/Rock3dEngine/source/graph/DepthMap.cpp @@ -20,7 +20,7 @@ void DepthMapShader::DoBeginDraw(Engine& engine) if (tech == ttDepthMapAlphaTest) SetTextureDir("opacityTex", engine.GetContext().GetTexture(0)); - D3DXMATRIX matWVP = MatrixMultiply(engine.GetContext().GetWorldMat(), viewProjMat); + D3DMATRIX matWVP = MatrixMultiply(engine.GetContext().GetWorldMat(), viewProjMat); SetValueDir("depthMatrix", matWVP); } @@ -71,12 +71,12 @@ void DepthMapRender::EndRT(Engine& engine) UnApplyRT(engine); } -const D3DXMATRIX& DepthMapRender::GetViewProjMat() const +const D3DMATRIX& DepthMapRender::GetViewProjMat() const { return shader.viewProjMat; } -void DepthMapRender::SetViewProjMat(const D3DXMATRIX& value) +void DepthMapRender::SetViewProjMat(const D3DMATRIX& value) { shader.viewProjMat = value; } diff --git a/src/Rock3dEngine/source/graph/Engine.cpp b/src/Rock3dEngine/source/graph/Engine.cpp index 04d44236..94cfd9f9 100644 --- a/src/Rock3dEngine/source/graph/Engine.cpp +++ b/src/Rock3dEngine/source/graph/Engine.cpp @@ -503,11 +503,11 @@ void Engine::RenderPlanePT() while (!EndDraw(true)); } -void Engine::RenderSpritePT(const glm::vec3& pos, const glm::vec3& scale, float turnAngle, const glm::vec3* fixDirection, const D3DXMATRIX& localMat) +void Engine::RenderSpritePT(const glm::vec3& pos, const glm::vec3& scale, float turnAngle, const glm::vec3* fixDirection, const D3DMATRIX& localMat) { const CameraCI& camera = GetContext().GetCamera(); - D3DXMATRIX rotMat; + D3DMATRIX rotMat; //Направленный спрайт if (fixDirection) { @@ -542,12 +542,12 @@ void Engine::RenderSpritePT(const glm::vec3& pos, const glm::vec3& scale, float rotMat._41 = rotMat._42 = rotMat._43 = 0.0f; //Локальный поворот спрайта (только для не направленных) - D3DXMATRIX rotZ = MatrixRotationAxis(camera.GetDesc().dir, turnAngle); + D3DMATRIX rotZ = MatrixRotationAxis(camera.GetDesc().dir, turnAngle); rotMat *= rotZ; } //Результирующая матрица - D3DXMATRIX worldMat = localMat; + D3DMATRIX worldMat = localMat; MatrixScale(scale, worldMat); worldMat *= rotMat; MatrixSetTranslation(pos, worldMat); diff --git a/src/Rock3dEngine/source/graph/FxManager.cpp b/src/Rock3dEngine/source/graph/FxManager.cpp index d5f0ba84..d5d79950 100644 --- a/src/Rock3dEngine/source/graph/FxManager.cpp +++ b/src/Rock3dEngine/source/graph/FxManager.cpp @@ -31,9 +31,9 @@ void FxParticle::BuildWorldMat() const if (_worldMatChanged) { _worldMatChanged = false; - D3DXMATRIX scaleMat = MatrixScaling(_scale.x, _scale.y, _scale.z); - D3DXMATRIX rotMat = Matrix4GlmToDx(glm::transpose(glm::mat4_cast(_rot))); - D3DXMATRIX transMat = MatrixTranslation(_pos.x, _pos.y, _pos.z); + D3DMATRIX scaleMat = MatrixScaling(_scale.x, _scale.y, _scale.z); + D3DMATRIX rotMat = Matrix4GlmToDx(glm::transpose(glm::mat4_cast(_rot))); + D3DMATRIX transMat = MatrixTranslation(_pos.x, _pos.y, _pos.z); _worldMat = scaleMat * rotMat * transMat; } @@ -89,7 +89,7 @@ void FxParticle::SetScale(const glm::vec3& value) TransformChanged(); } -const D3DXMATRIX& FxParticle::GetMatrix() const +const D3DMATRIX& FxParticle::GetMatrix() const { BuildWorldMat(); @@ -588,7 +588,7 @@ glm::vec3 FxEmitter::GetWorldPos(FxParticle* particle) const return res; } -const D3DXMATRIX& FxEmitter::GetMatrix() const +const D3DMATRIX& FxEmitter::GetMatrix() const { return _worldCoordSys ? IdentityMatrix : _owner->GetWorldMat(); } @@ -1062,7 +1062,7 @@ void FxPlaneManager::RenderGroup(graph::Engine& engine, FxEmitter* emitter, FxPa glm::vec3 axe = glm::axis(particle->GetRot()); float angle = glm::angle(particle->GetRot()); - D3DXMATRIX worldMat = particle->GetMatrix() * emitter->GetMatrix(); + D3DMATRIX worldMat = particle->GetMatrix() * emitter->GetMatrix(); engine.GetContext().SetWorldMat(worldMat); engine.RenderPlanePT(); diff --git a/src/Rock3dEngine/source/graph/MaterialLibrary.cpp b/src/Rock3dEngine/source/graph/MaterialLibrary.cpp index af6fc756..3223076a 100644 --- a/src/Rock3dEngine/source/graph/MaterialLibrary.cpp +++ b/src/Rock3dEngine/source/graph/MaterialLibrary.cpp @@ -25,7 +25,7 @@ void BaseSampler::TransformationChanged() const _defMat = _offset == NullVector && _scale == IdentityVector && _rotate == NullQuaternion; } -const D3DXMATRIX& BaseSampler::GetMatrix(float frame) const +const D3DMATRIX& BaseSampler::GetMatrix(float frame) const { if (_matChanged || _matFrame != frame) { @@ -102,7 +102,7 @@ void BaseSampler::Apply(Engine& engine, DWORD stage) engine.GetContext().SetTexture(stage, GetTexSrc()); } - D3DXMATRIX mat = GetMatrix(engine.GetContext().GetFrame()); + D3DMATRIX mat = GetMatrix(engine.GetContext().GetFrame()); if (!_defMat) { engine.GetContext().PushTextureTransform(stage, mat); diff --git a/src/Rock3dEngine/source/graph/SceneManager.cpp b/src/Rock3dEngine/source/graph/SceneManager.cpp index bd43fe27..5b8542d5 100644 --- a/src/Rock3dEngine/source/graph/SceneManager.cpp +++ b/src/Rock3dEngine/source/graph/SceneManager.cpp @@ -246,7 +246,7 @@ void BaseSceneNode::BuildWorldMatrix() const { if (_parent) { - const D3DXMATRIX& mat = _parent->GetWorldMat(); + const D3DMATRIX& mat = _parent->GetWorldMat(); _worldMat = MatrixMultiply(_localMat, mat); _invWorldMat = MatrixInverse(0, _worldMat); } @@ -413,7 +413,7 @@ void BaseSceneNode::Assign(BaseSceneNode& value) SetScale(value.GetScale()); } -void BaseSceneNode::Render(graph::Engine& engine, const D3DXMATRIX& worldMat) +void BaseSceneNode::Render(graph::Engine& engine, const D3DMATRIX& worldMat) { if (_visible) { @@ -514,8 +514,8 @@ void BaseSceneNode::MoveAroundTarget(const glm::vec3& worldTarget, float pitchDe // create a new vector pointing up and then rotate it down // into the new position normalT2C = GetWorldUp(); - D3DXMATRIX pitchMat = MatrixRotationAxis(normalCameraRight, pitchNow); - D3DXMATRIX turnMat = MatrixRotationAxis(worldUp, -turnDelta); + D3DMATRIX pitchMat = MatrixRotationAxis(normalCameraRight, pitchNow); + D3DMATRIX turnMat = MatrixRotationAxis(worldUp, -turnDelta); normalT2C = Vec3TransformNormal(normalT2C, pitchMat); normalT2C = Vec3TransformNormal(normalT2C, turnMat); normalT2C *= dist; @@ -532,7 +532,7 @@ void BaseSceneNode::AdjustDistToTarget(const glm::vec3& worldTarget, float dista void BaseSceneNode::WorldToLocal(const glm::vec4& vec, glm::vec4& out) const { - const D3DXMATRIX& mat = GetInvWorldMat(); + const D3DMATRIX& mat = GetInvWorldMat(); out = Vec4Transform(vec, mat); } @@ -563,13 +563,13 @@ void BaseSceneNode::LocalToWorldNorm(const glm::vec3& vec, glm::vec3& out) const void BaseSceneNode::ParentToLocal(const glm::vec4& vec, glm::vec4& out) const { - const D3DXMATRIX& mat = GetInvMat(); + const D3DMATRIX& mat = GetInvMat(); out = Vec4Transform(vec, mat); } void BaseSceneNode::LocalToParent(const glm::vec4& vec, glm::vec4& out) const { - const D3DXMATRIX& mat = GetMat(); + const D3DMATRIX& mat = GetMat(); out = Vec4Transform(vec, mat); } @@ -872,18 +872,18 @@ void BaseSceneNode::SetRot(const glm::quat& value) ChangedRotation(rsQuaternion); } -D3DXMATRIX BaseSceneNode::GetScaleMat() const +D3DMATRIX BaseSceneNode::GetScaleMat() const { glm::vec3 vec = _scale; //Если масштабирование слишком мало, то матрица может оказаться вырожденной. Поэтому подменяем на вектор самой допустимо малой длины //if (glm::length(vec) < 0.0001f) // vec = IdentityVector * 0.0005f; - D3DXMATRIX scaleMat = MatrixScaling(vec.x, vec.y, vec.z); + D3DMATRIX scaleMat = MatrixScaling(vec.x, vec.y, vec.z); return scaleMat; } -D3DXMATRIX BaseSceneNode::GetRotMat() const +D3DMATRIX BaseSceneNode::GetRotMat() const { if (!_rotChanged) return _rotMat; @@ -933,18 +933,18 @@ D3DXMATRIX BaseSceneNode::GetRotMat() const return _rotMat; } -D3DXMATRIX BaseSceneNode::GetTransMat() const +D3DMATRIX BaseSceneNode::GetTransMat() const { return MatrixTranslation(_position.x, _position.y, _position.z); } -const D3DXMATRIX& BaseSceneNode::GetMat() const +const D3DMATRIX& BaseSceneNode::GetMat() const { ApplyTransformationChanged(); return _localMat; } -void BaseSceneNode::SetLocalMat(const D3DXMATRIX& value) +void BaseSceneNode::SetLocalMat(const D3DMATRIX& value) { _direction = glm::vec3(value.m[0][0], value.m[0][1], value.m[0][2]); glm::vec3 right = glm::vec3(value.m[1][0], value.m[1][1], value.m[1][2]); @@ -958,25 +958,25 @@ void BaseSceneNode::SetLocalMat(const D3DXMATRIX& value) TransformationChanged(); } -const D3DXMATRIX& BaseSceneNode::GetInvMat() const +const D3DMATRIX& BaseSceneNode::GetInvMat() const { ApplyTransformationChanged(); return _invLocalMat; } -const D3DXMATRIX& BaseSceneNode::GetWorldMat() const +const D3DMATRIX& BaseSceneNode::GetWorldMat() const { ApplyTransformationChanged(); return _worldMat; } -const D3DXMATRIX& BaseSceneNode::GetInvWorldMat() const +const D3DMATRIX& BaseSceneNode::GetInvWorldMat() const { ApplyTransformationChanged(); return _invWorldMat; } -D3DXMATRIX BaseSceneNode::GetCombMat(CombMatType type) const +D3DMATRIX BaseSceneNode::GetCombMat(CombMatType type) const { switch (type) { @@ -995,33 +995,33 @@ D3DXMATRIX BaseSceneNode::GetCombMat(CombMatType type) const } } -D3DXMATRIX BaseSceneNode::GetWorldCombMat(CombMatType type) const +D3DMATRIX BaseSceneNode::GetWorldCombMat(CombMatType type) const { switch (type) { case cmtScaleTrans: { - D3DXMATRIX scaleMat = GetWorldScale(); + D3DMATRIX scaleMat = GetWorldScale(); glm::vec3 vec = GetWorldPos(); - D3DXMATRIX transMat = MatrixTranslation(vec.x, vec.y, vec.z); + D3DMATRIX transMat = MatrixTranslation(vec.x, vec.y, vec.z); return scaleMat * transMat; } case cmtScaleRot: { - D3DXMATRIX scaleMat = GetWorldScale(); + D3DMATRIX scaleMat = GetWorldScale(); - D3DXMATRIX rotMat = Matrix4GlmToDx(glm::transpose(glm::mat4_cast(GetWorldRot()))); + D3DMATRIX rotMat = Matrix4GlmToDx(glm::transpose(glm::mat4_cast(GetWorldRot()))); return scaleMat * rotMat; } case cmtRotTrans: { - D3DXMATRIX rotMat = Matrix4GlmToDx(glm::transpose(glm::mat4_cast(GetWorldRot()))); + D3DMATRIX rotMat = Matrix4GlmToDx(glm::transpose(glm::mat4_cast(GetWorldRot()))); glm::vec3 pos = GetWorldPos(); - D3DXMATRIX transMat = MatrixTranslation(pos.x, pos.y, pos.z); + D3DMATRIX transMat = MatrixTranslation(pos.x, pos.y, pos.z); return rotMat * transMat; } @@ -1034,7 +1034,7 @@ D3DXMATRIX BaseSceneNode::GetWorldCombMat(CombMatType type) const glm::vec3 BaseSceneNode::GetWorldPos() const { - D3DXMATRIX tMat = GetWorldMat(); + D3DMATRIX tMat = GetWorldMat(); return glm::vec3(tMat.m[3][0], tMat.m[3][1], tMat.m[3][2]); } @@ -1067,9 +1067,9 @@ void BaseSceneNode::SetWorldRot(const glm::quat& value) return SetRot(value); } -D3DXMATRIX BaseSceneNode::GetWorldScale() const +D3DMATRIX BaseSceneNode::GetWorldScale() const { - D3DXMATRIX res = MatrixMultiply(IdentityMatrix, GetInvWorldMat()); + D3DMATRIX res = MatrixMultiply(IdentityMatrix, GetInvWorldMat()); const BaseSceneNode* node = this; do @@ -1093,20 +1093,20 @@ D3DXMATRIX BaseSceneNode::GetWorldScale() const glm::vec3 BaseSceneNode::GetWorldDir() const { - D3DXMATRIX tMat = GetWorldMat(); + D3DMATRIX tMat = GetWorldMat(); glm::vec3 res = glm::normalize(glm::vec3(tMat.m[0][0], tMat.m[0][1], tMat.m[0][2])); return res; } glm::vec3 BaseSceneNode::GetWorldRight() const { - D3DXMATRIX tMat = GetWorldMat(); + D3DMATRIX tMat = GetWorldMat(); return glm::vec3(tMat.m[1][0], tMat.m[1][1], tMat.m[1][2]); } glm::vec3 BaseSceneNode::GetWorldUp() const { - D3DXMATRIX tMat = GetWorldMat(); + D3DMATRIX tMat = GetWorldMat(); return glm::vec3(tMat.m[2][0], tMat.m[2][1], tMat.m[2][2]); } @@ -1307,7 +1307,7 @@ Camera::Camera(): _changedCI(true) { } -void Camera::RenderFrustum(graph::Engine& engine, const D3DXMATRIX& invViewProj, const glm::vec4& colorBB) +void Camera::RenderFrustum(graph::Engine& engine, const D3DMATRIX& invViewProj, const glm::vec4& colorBB) { using res::VertexPD; diff --git a/src/Rock3dEngine/source/graph/ShadowMapRender.cpp b/src/Rock3dEngine/source/graph/ShadowMapRender.cpp index 9006c026..bc530209 100644 --- a/src/Rock3dEngine/source/graph/ShadowMapRender.cpp +++ b/src/Rock3dEngine/source/graph/ShadowMapRender.cpp @@ -13,7 +13,7 @@ const unsigned ShadowMapRender::cShadowMapSize = 2048; void ShadowMapShader::DoBeginDraw(Engine& engine) { - D3DXMATRIX shadowWVP = shadowViewProj; + D3DMATRIX shadowWVP = shadowViewProj; shadowWVP = MatrixMultiply(engine.GetContext().GetWorldMat(), shadowWVP); shadowWVP = MatrixMultiply(shadowWVP, mTexScale); @@ -75,7 +75,7 @@ void ShadowMapRender::ComputeCropMatrix(unsigned numSplit, const LightCI& light, float fMinY = FLT_MAX; float fMinZ = FLT_MAX; - const D3DXMATRIX& mLightViewProj = light.GetCamera().GetViewProj(); + const D3DMATRIX& mLightViewProj = light.GetCamera().GetViewProj(); float fLightNear = light.GetCamera().GetDesc().nearDist; // for each corner point @@ -137,7 +137,7 @@ void ShadowMapRender::ComputeCropMatrix(unsigned numSplit, const LightCI& light, float fOffsetY = -0.5f * (fMaxY + fMinY) * fScaleY; float fOffsetZ = -fMinZ * fScaleZ; - D3DXMATRIX mCropView(fScaleX, 0.0f, 0.0f, 0.0f, + D3DMATRIX mCropView(fScaleX, 0.0f, 0.0f, 0.0f, 0.0f, fScaleY, 0.0f, 0.0f, 0.0f, 0.0f, fScaleZ, 0.0f, fOffsetX, fOffsetY, fOffsetZ, 1.0f); @@ -163,7 +163,7 @@ void ShadowMapRender::CalcSplitScheme(const CameraCI& camera, const LightCI& lig if (_disableCropLight) { - D3DXMATRIX mCropView( + D3DMATRIX mCropView( 1, 0.0f, 0.0f, 0.0f, 0.0f, 1, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f/(desc.farDist - desc.nearDist), 0.0f, @@ -204,7 +204,7 @@ void ShadowMapRender::BeginShadowCaster(Engine& engine) engine.GetDriver().GetDevice()->SetDepthStencilSurface(_depthSurface->GetSurface()); } - D3DXMATRIX viewProj = _myCamera.GetView() * _splitLightProjMat[_curNumSplit]; + D3DMATRIX viewProj = _myCamera.GetView() * _splitLightProjMat[_curNumSplit]; depthRender.SetViewProjMat(viewProj); engine.GetContext().ApplyCamera(&_myCamera); @@ -248,7 +248,7 @@ void ShadowMapRender::BeginShadowMapp(Engine& engine) { float mapSz = static_cast(cShadowMapSize); float fTexOffset = 0.5f + 0.5f / mapSz; - shader.mTexScale = D3DXMATRIX(0.5f, 0.0f, 0.0f, 0.0f, + shader.mTexScale = D3DMATRIX(0.5f, 0.0f, 0.0f, 0.0f, 0.0f, -0.5f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, fTexOffset, fTexOffset, 0.0f, 1.0f); diff --git a/src/Rock3dEngine/source/graph/SkyBox.cpp b/src/Rock3dEngine/source/graph/SkyBox.cpp index 29e398ba..70a05f3e 100644 --- a/src/Rock3dEngine/source/graph/SkyBox.cpp +++ b/src/Rock3dEngine/source/graph/SkyBox.cpp @@ -10,7 +10,7 @@ namespace graph //Схема //+y; -y; +z; -z; +x; -x -const D3DXMATRIX skyFromLeftToRightCS(1.0f, 0.0f, 0.0f, 0.0f, +const D3DMATRIX skyFromLeftToRightCS(1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, -1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f); @@ -48,7 +48,7 @@ void SkyBox::Render(Engine& engine) engine.GetContext().SetWorldMat(IdentityMatrix); //Нужно обнулять 4-ую строку чтобы небо не растягивалось - D3DXMATRIX skyWVP = engine.GetContext().GetCamera().GetWVP(); + D3DMATRIX skyWVP = engine.GetContext().GetCamera().GetWVP(); skyWVP._41 = 0.0f; skyWVP._42 = 0.0f; skyWVP._43 = 0.0f; diff --git a/src/Rock3dEngine/source/graph/StdNode.cpp b/src/Rock3dEngine/source/graph/StdNode.cpp index 3e4b8d68..5bd6238b 100644 --- a/src/Rock3dEngine/source/graph/StdNode.cpp +++ b/src/Rock3dEngine/source/graph/StdNode.cpp @@ -36,7 +36,7 @@ void MaterialNode::TransformationChanged() const _defMat = _offset == NullVector && _scale == IdentityVector && _rotate == NullQuaternion; } -const D3DXMATRIX& MaterialNode::GetMatrix() const +const D3DMATRIX& MaterialNode::GetMatrix() const { if (_matChanged) { diff --git a/src/Rock3dEngine/source/gui/GUI.cpp b/src/Rock3dEngine/source/gui/GUI.cpp index 521e4965..1577b078 100644 --- a/src/Rock3dEngine/source/gui/GUI.cpp +++ b/src/Rock3dEngine/source/gui/GUI.cpp @@ -407,15 +407,15 @@ void Graphic3d::SetScale(const glm::vec3& value) TransformChanged(); } -D3DXMATRIX Graphic3d::GetMat() +D3DMATRIX Graphic3d::GetMat() { - D3DXMATRIX mat; + D3DMATRIX mat; BuildWorldMatrix(_pos, _scale, _rot, mat); return mat; } -D3DXMATRIX Graphic3d::GetWorldMat() +D3DMATRIX Graphic3d::GetWorldMat() { return _parent ? GetMat() * _parent->GetWorldMat() : GetMat(); } @@ -793,7 +793,7 @@ void Context::EndDrawGraphic(Graphic& graphic) UnApplyMaterial(*graphic.GetMaterial()); } -void Context::DrawGraphic3d(Graphic3d* graphic, const D3DXMATRIX& worldMat) +void Context::DrawGraphic3d(Graphic3d* graphic, const D3DMATRIX& worldMat) { if (graphic->GetMaterial()) ApplyMaterial(*graphic->GetMaterial(), 1.0f); @@ -924,7 +924,7 @@ void Context::EndDraw() GetCI().UnApplyCamera(&_camera); } -void Context::SetTransform(const D3DXMATRIX& value) +void Context::SetTransform(const D3DMATRIX& value) { GetCI().SetWorldMat(value); } @@ -1039,10 +1039,10 @@ void Context::DrawView3d(View3d& view3d) } //мировая матрица меша - D3DXMATRIX worldMat = GetCI().GetWorldMat(); + D3DMATRIX worldMat = GetCI().GetWorldMat(); if (!_invertY) worldMat._22 = -worldMat._22; - D3DXMATRIX localMat; + D3DMATRIX localMat; BuildWorldMatrix(-pos, scale, NullQuaternion, localMat); // @@ -2057,7 +2057,7 @@ void Widget::SetPos3d(const glm::vec3& value) glm::vec2 Widget::GetWorldPos() const { //return glm::vec2(GetWorldMat().m[3]); // TTEST: m[3] - matrix replacement - return glm::vec2(GetWorldMat()._41, GetWorldMat()._42); // remove after D3DXMATRIX replacement + return glm::vec2(GetWorldMat()._41, GetWorldMat()._42); // remove after D3DMATRIX replacement } void Widget::SetWorldPos(const glm::vec2& value) @@ -2065,7 +2065,7 @@ void Widget::SetWorldPos(const glm::vec2& value) SetPos(_parent ? _parent->WorldToLocalCoord(value) : value); } -const D3DXMATRIX& Widget::GetMat() const +const D3DMATRIX& Widget::GetMat() const { ApplyAlign(); @@ -2074,21 +2074,21 @@ const D3DXMATRIX& Widget::GetMat() const return _matrix[mcLocal]; } -const D3DXMATRIX& Widget::GetWorldMat() const +const D3DMATRIX& Widget::GetWorldMat() const { BuildMatrix(mcWorld); return _matrix[mcWorld]; } -const D3DXMATRIX& Widget::GetInvMat() const +const D3DMATRIX& Widget::GetInvMat() const { BuildMatrix(mcInvLocal); return _matrix[mcInvLocal]; } -const D3DXMATRIX& Widget::GetInvWorldMat() const +const D3DMATRIX& Widget::GetInvWorldMat() const { BuildMatrix(mcInvWorld); diff --git a/src/Rock3dGame/header/edit/SceneControl.h b/src/Rock3dGame/header/edit/SceneControl.h index 37443ba9..db101233 100644 --- a/src/Rock3dGame/header/edit/SceneControl.h +++ b/src/Rock3dGame/header/edit/SceneControl.h @@ -51,7 +51,7 @@ class SceneControl: public ISceneControl graph::MovCoordSys* _movCoordSys; graph::ScaleCoordSys* _scaleCoordSys; - bool ComputeAxeLink(const AABB& aabb, const D3DXMATRIX& aabbToWorld, const D3DXMATRIX& worldToAABB, const glm::vec3& normOff, INode* ignore, float& outDistOff, const float distLink = 1.0f); + bool ComputeAxeLink(const AABB& aabb, const D3DMATRIX& aabbToWorld, const D3DMATRIX& worldToAABB, const glm::vec3& normOff, INode* ignore, float& outDistOff, const float distLink = 1.0f); void ComputeLink(INode* node, const glm::vec3& pos, glm::vec3& resPos); void CreateGraphActor(); diff --git a/src/Rock3dGame/header/edit/Trace.h b/src/Rock3dGame/header/edit/Trace.h index 1fded078..31f51e67 100644 --- a/src/Rock3dGame/header/edit/Trace.h +++ b/src/Rock3dGame/header/edit/Trace.h @@ -102,7 +102,7 @@ class Trace: public ITrace, public ExternImpl glm::vec3 GetRight() const; glm::vec3 GetUp() const; - D3DXMATRIX GetMat() const; + D3DMATRIX GetMat() const; AABB GetAABB() const; }; private: diff --git a/src/Rock3dGame/header/edit/Utils.h b/src/Rock3dGame/header/edit/Utils.h index 642cfd5e..1ba0dc7e 100644 --- a/src/Rock3dGame/header/edit/Utils.h +++ b/src/Rock3dGame/header/edit/Utils.h @@ -34,7 +34,7 @@ class ScNodeCont: public IScNodeCont virtual glm::vec3 GetRight() const; virtual glm::vec3 GetUp() const; - virtual D3DXMATRIX GetMat() const; + virtual D3DMATRIX GetMat() const; //В локальных координатах, включая дочерние узлы virtual AABB GetAABB() const; diff --git a/src/Rock3dGame/header/game/Player.h b/src/Rock3dGame/header/game/Player.h index d67f8110..d63f66eb 100644 --- a/src/Rock3dGame/header/game/Player.h +++ b/src/Rock3dGame/header/game/Player.h @@ -416,7 +416,7 @@ class Player: public GameObjListener glm::vec3 pos3; glm::vec3 dir3; glm::quat rot3; - D3DXMATRIX worldMat; + D3DMATRIX worldMat; glm::vec2 pos; glm::vec2 dir; diff --git a/src/Rock3dGame/include/ISceneControl.h b/src/Rock3dGame/include/ISceneControl.h index 0d3c3d69..d81bf035 100644 --- a/src/Rock3dGame/include/ISceneControl.h +++ b/src/Rock3dGame/include/ISceneControl.h @@ -39,7 +39,7 @@ class IScNodeCont: public Object virtual glm::vec3 GetRight() const = 0; virtual glm::vec3 GetUp() const = 0; - virtual D3DXMATRIX GetMat() const = 0; + virtual D3DMATRIX GetMat() const = 0; //Включая дочерние узлы virtual AABB GetAABB() const = 0; }; diff --git a/src/Rock3dGame/source/edit/EditTrace.cpp b/src/Rock3dGame/source/edit/EditTrace.cpp index d7cc0cd5..ae2a6ceb 100644 --- a/src/Rock3dGame/source/edit/EditTrace.cpp +++ b/src/Rock3dGame/source/edit/EditTrace.cpp @@ -298,7 +298,7 @@ glm::vec3 Trace::NodeControl::GetUp() const return ZVector; } -D3DXMATRIX Trace::NodeControl::GetMat() const +D3DMATRIX Trace::NodeControl::GetMat() const { return BuildWorldMatrix(GetPos(), GetScale(), GetRot()); } diff --git a/src/Rock3dGame/source/edit/EditUtils.cpp b/src/Rock3dGame/source/edit/EditUtils.cpp index e12275db..259b71fb 100644 --- a/src/Rock3dGame/source/edit/EditUtils.cpp +++ b/src/Rock3dGame/source/edit/EditUtils.cpp @@ -85,7 +85,7 @@ glm::vec3 ScNodeCont::GetUp() const return _node->GetWorldUp(); } -D3DXMATRIX ScNodeCont::GetMat() const +D3DMATRIX ScNodeCont::GetMat() const { return _node->GetWorldMat(); } diff --git a/src/Rock3dGame/source/edit/SceneControl.cpp b/src/Rock3dGame/source/edit/SceneControl.cpp index e8fcb973..75ae242d 100644 --- a/src/Rock3dGame/source/edit/SceneControl.cpp +++ b/src/Rock3dGame/source/edit/SceneControl.cpp @@ -249,7 +249,7 @@ bool SceneControl::Control::OnMouseMoveEvent(const game::MouseMove& mMove) return false; } -bool SceneControl::ComputeAxeLink(const AABB& aabb, const D3DXMATRIX& aabbToWorld, const D3DXMATRIX& worldToAABB, const glm::vec3& normOff, INode* ignore, float& outDistOff, const float distLink) +bool SceneControl::ComputeAxeLink(const AABB& aabb, const D3DMATRIX& aabbToWorld, const D3DMATRIX& worldToAABB, const glm::vec3& normOff, INode* ignore, float& outDistOff, const float distLink) { bool res = false; outDistOff = distLink; @@ -293,9 +293,9 @@ void SceneControl::ComputeLink(INode* node, const glm::vec3& pos, glm::vec3& res float zDist; repeat = false; - D3DXMATRIX worldMat = MatrixTranslation(newOff.x, newOff.y, newOff.z); + D3DMATRIX worldMat = MatrixTranslation(newOff.x, newOff.y, newOff.z); worldMat = node->GetMat() * worldMat; - D3DXMATRIX invWorldMat; + D3DMATRIX invWorldMat; D3DXMatrixInverse(&invWorldMat, 0, &worldMat); AABB aabb = node->GetAABB(); diff --git a/src/Rock3dGame/source/game/CameraManager.cpp b/src/Rock3dGame/source/game/CameraManager.cpp index 9da4cebb..ef5786c6 100644 --- a/src/Rock3dGame/source/game/CameraManager.cpp +++ b/src/Rock3dGame/source/game/CameraManager.cpp @@ -338,7 +338,7 @@ void CameraManager::Control::OnInputFrame(float deltaTime) zVec = glm::cross(xVec, yVec); zVec = glm::normalize(zVec); - D3DXMATRIX velMat; + D3DMATRIX velMat; MatrixRotationFromAxis(xVec, yVec, zVec, velMat); glm::quat velRot = glm::quat_cast(Matrix4DxToGlm(velMat)); velRot = glm::quat(-velRot.w, velRot.x, velRot.y, velRot.z); @@ -877,7 +877,7 @@ void CameraManager::GetObserverCoord(const glm::vec3& targetPos, float targetDis xAxis = glm::cross(yAxis, zAxis); xAxis = glm::normalize(xAxis); - D3DXMATRIX rotMat; + D3DMATRIX rotMat; MatrixRotationFromAxis(xAxis, yAxis, zAxis, rotMat); rot = glm::quat_cast(Matrix4DxToGlm(rotMat)); rot = glm::quat(-rot.w, rot.x, rot.y, rot.z); @@ -946,7 +946,7 @@ void CameraManager::GetObserverCoord(const glm::vec3& targetPos, float targetDis glm::vec3 zAxis; zAxis = glm::cross(xAxis, yAxis); zAxis = glm::normalize(zAxis); - D3DXMATRIX rotMat; + D3DMATRIX rotMat; MatrixRotationFromAxis(xAxis, yAxis, zAxis, rotMat); rot = glm::quat_cast(Matrix4DxToGlm(rotMat)); rot = glm::quat(-rot.w, rot.x, rot.y, rot.z); diff --git a/src/Rock3dGame/source/game/GameBase.cpp b/src/Rock3dGame/source/game/GameBase.cpp index e736425f..ce436f56 100644 --- a/src/Rock3dGame/source/game/GameBase.cpp +++ b/src/Rock3dGame/source/game/GameBase.cpp @@ -1215,15 +1215,15 @@ void PodushkaAnim::OnProgress(float deltaTime) float linSpeed = car->GetLeadWheelSpeed(); if (abs(linSpeed) > 1.0f) { - D3DXMATRIX localMat = _target->GetMat(); + D3DMATRIX localMat = _target->GetMat(); glm::quat rotQuat = glm::angleAxis(glm::pi() * deltaTime * linSpeed * 0.1f, XVector); - D3DXMATRIX rotMat = Matrix4GlmToDx(glm::transpose(glm::mat4_cast(rotQuat))); + D3DMATRIX rotMat = Matrix4GlmToDx(glm::transpose(glm::mat4_cast(rotQuat))); const res::FaceGroup& fg = _target->GetMesh()->GetData()->faceGroups[_target->GetMeshId()]; glm::vec3 offset = (fg.minPos + fg.maxPos) / 2.0f; - D3DXMATRIX matOffs1 = MatrixTranslation(-offset.x, -offset.y, -offset.z); - D3DXMATRIX matOffs2 = MatrixTranslation(offset.x, offset.y, offset.z); + D3DMATRIX matOffs1 = MatrixTranslation(-offset.x, -offset.y, -offset.z); + D3DMATRIX matOffs2 = MatrixTranslation(offset.x, offset.y, offset.z); localMat = localMat * matOffs1 * rotMat * matOffs2; _target->SetLocalMat(localMat); diff --git a/src/Rock3dGame/source/game/HudMenu.cpp b/src/Rock3dGame/source/game/HudMenu.cpp index 14749163..d7221a27 100644 --- a/src/Rock3dGame/source/game/HudMenu.cpp +++ b/src/Rock3dGame/source/game/HudMenu.cpp @@ -1032,8 +1032,8 @@ void MiniMapFrame::BuildPath(WayPath& path, res::VertexData& data) { float dAlpha = i/smSlice * alpha2; glm::quat rot = glm::angleAxis(ccw ? dAlpha : -dAlpha, ZVector); - D3DXMATRIX rotMat = Matrix4GlmToDx(glm::transpose(glm::mat4_cast(rot))); - auto rotMatGLM = Matrix4DxToGlm(rotMat); // remove after D3DXMATRIX replacement + D3DMATRIX rotMat = Matrix4GlmToDx(glm::transpose(glm::mat4_cast(rot))); + auto rotMatGLM = Matrix4DxToGlm(rotMat); // remove after D3DMATRIX replacement glm::vec2 vec = Vec2TransformNormal(smVec, rotMatGLM); Node newNode; diff --git a/src/Rock3dGame/source/game/Player.cpp b/src/Rock3dGame/source/game/Player.cpp index 7eaa2d4a..4d83df9f 100644 --- a/src/Rock3dGame/source/game/Player.cpp +++ b/src/Rock3dGame/source/game/Player.cpp @@ -913,7 +913,7 @@ void Player::CarState::Update(float deltaTime) NxMat34 mat34 = nxActor->getGlobalPose(); - worldMat = D3DXMATRIX(mat34.M(0, 0), mat34.M(0, 1), mat34.M(0, 2), 0, + worldMat = D3DMATRIX(mat34.M(0, 0), mat34.M(0, 1), mat34.M(0, 2), 0, mat34.M(1, 0), mat34.M(1, 1), mat34.M(1, 2), 0, mat34.M(2, 0), mat34.M(2, 1), mat34.M(2, 2), 0, mat34.t[0], mat34.t[1], mat34.t[2], 1); diff --git a/src/Rock3dGame/source/game/Weapon.cpp b/src/Rock3dGame/source/game/Weapon.cpp index 8da8c7c1..a0a97a58 100644 --- a/src/Rock3dGame/source/game/Weapon.cpp +++ b/src/Rock3dGame/source/game/Weapon.cpp @@ -1187,7 +1187,7 @@ void Proj::ThunderContact(const px::Scene::OnContactEvent& contact) if (abs(angle) > 0.1f) { glm::vec4 plane = PlaneFromPointNormal(NullVector, glm::make_vec3(norm.get())); - D3DXMATRIX mat = MatrixReflect(plane); + D3DMATRIX mat = MatrixReflect(plane); glm::vec3 vel = glm::make_vec3(velocity.get()); vel = Vec3TransformNormal(vel, mat); diff --git a/src/Rock3dGame/source/snd/Audio.cpp b/src/Rock3dGame/source/snd/Audio.cpp index 59bc488b..0095fe2f 100644 --- a/src/Rock3dGame/source/snd/Audio.cpp +++ b/src/Rock3dGame/source/snd/Audio.cpp @@ -1665,7 +1665,7 @@ void Source3d::ApplyX3dEffect() X3DAUDIO_LISTENER xList; ZeroMemory(&xList, sizeof(xList)); xList.Position = Vec3GlmToDx(listener->pos); - D3DXMATRIX rotMat = Matrix4GlmToDx(glm::transpose(glm::mat4_cast(listener->rot))); + D3DMATRIX rotMat = Matrix4GlmToDx(glm::transpose(glm::mat4_cast(listener->rot))); xList.OrientFront = D3DXVECTOR3(rotMat.m[0]); xList.OrientTop = D3DXVECTOR3(rotMat.m[2]); From fa966f2fc77834abc90bb88b29527d318f8cf1f0 Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Tue, 1 Nov 2022 17:49:59 +0300 Subject: [PATCH 49/55] math: replace D3DX* functs part 2, fix build after replace D3DXMATRIX --- src/MathLib/header/lslMath.h | 7 +- src/MathLib/header/lslMath.inl | 78 ++++++++++++++++--- .../source/graph/ActorManager.cpp | 2 +- src/Rock3dEngine/source/graph/ContextInfo.cpp | 8 +- src/Rock3dEngine/source/graph/Engine.cpp | 4 +- src/Rock3dEngine/source/graph/FxManager.cpp | 4 +- .../source/graph/SceneManager.cpp | 18 ++--- .../source/graph/ShadowMapRender.cpp | 19 ++--- src/Rock3dEngine/source/graph/SkyBox.cpp | 5 +- src/Rock3dEngine/source/gui/GUI.cpp | 12 +-- src/Rock3dGame/source/edit/SceneControl.cpp | 8 +- src/Rock3dGame/source/game/GameBase.cpp | 2 +- src/Rock3dGame/source/game/Player.cpp | 2 +- 13 files changed, 119 insertions(+), 50 deletions(-) diff --git a/src/MathLib/header/lslMath.h b/src/MathLib/header/lslMath.h index b2f5116e..7733d04e 100644 --- a/src/MathLib/header/lslMath.h +++ b/src/MathLib/header/lslMath.h @@ -20,6 +20,10 @@ int RandomRange(int from, int to); float NumAbsAdd(float absVal, float addVal); float ScalarTransform(float scalar, const glm::vec3& vec, const D3DMATRIX& mat); +D3DMATRIX MakeMatrix(float _11, float _12, float _13, float _14, + float _21, float _22, float _23, float _24, + float _31, float _32, float _33, float _34, + float _41, float _42, float _43, float _44); void BuildWorldMatrix(const glm::vec3& pos, const glm::vec3& scale, const glm::quat& rot, D3DMATRIX& outMat); D3DMATRIX BuildWorldMatrix(const glm::vec3& pos, const glm::vec3& scale, const glm::quat& rot); void MatrixRotationFromAxis(const glm::vec3& xVec, const glm::vec3& yVec, const glm::vec3& zVec, D3DMATRIX& matOut); @@ -79,7 +83,8 @@ bool RayCastIntersectSphere(const glm::vec3& rayPos, const glm::vec3& rayVec, co float PlaneDotCoord(const glm::vec4& plane, const glm::vec3& point); const float floatErrComp = 0.00001f; -const D3DMATRIX IdentityMatrix(1.0f, 0.0f, 0.0f, 0.0f, +const D3DMATRIX IdentityMatrix = MakeMatrix + (1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f); diff --git a/src/MathLib/header/lslMath.inl b/src/MathLib/header/lslMath.inl index e814c62d..e73135c8 100644 --- a/src/MathLib/header/lslMath.inl +++ b/src/MathLib/header/lslMath.inl @@ -57,10 +57,23 @@ inline glm::mat4 Matrix4DxToGlm(const D3DMATRIX &mat) inline D3DMATRIX Matrix4GlmToDx(const glm::mat4 &mat) { // mat - GLM, mat[0] 1-st column, mat[0][1] = mat[0].y - 1-st column 2-nd row - D3DMATRIX outMat(mat[0].x, mat[1].x, mat[2].x, mat[3].x, - mat[0].y, mat[1].y, mat[2].y, mat[3].y, - mat[0].z, mat[1].z, mat[2].z, mat[3].z, - mat[0].w, mat[1].w, mat[2].w, mat[3].w); + D3DMATRIX outMat; + outMat.m[0][0] = mat[0].x; + outMat.m[0][1] = mat[1].x; + outMat.m[0][2] = mat[2].x; + outMat.m[0][3] = mat[3].x; + outMat.m[1][0] = mat[0].y; + outMat.m[1][1] = mat[1].y; + outMat.m[1][2] = mat[2].y; + outMat.m[1][3] = mat[3].y; + outMat.m[2][0] = mat[0].z; + outMat.m[2][1] = mat[1].z; + outMat.m[2][2] = mat[2].z; + outMat.m[2][3] = mat[3].z; + outMat.m[3][0] = mat[0].w; + outMat.m[3][1] = mat[1].w; + outMat.m[3][2] = mat[2].w; + outMat.m[3][3] = mat[3].w; return outMat; } @@ -141,6 +154,31 @@ inline float ScalarTransform(float scalar, const glm::vec3& vec, const D3DMATRIX return scalar < 0 ? -len : len; } +inline D3DMATRIX MakeMatrix(float _11, float _12, float _13, float _14, + float _21, float _22, float _23, float _24, + float _31, float _32, float _33, float _34, + float _41, float _42, float _43, float _44) +{ + D3DMATRIX outMat; + outMat.m[0][0] = _11; + outMat.m[0][1] = _12; + outMat.m[0][2] = _13; + outMat.m[0][3] = _14; + outMat.m[1][0] = _21; + outMat.m[1][1] = _22; + outMat.m[1][2] = _23; + outMat.m[1][3] = _24; + outMat.m[2][0] = _31; + outMat.m[2][1] = _32; + outMat.m[2][2] = _33; + outMat.m[2][3] = _34; + outMat.m[3][0] = _41; + outMat.m[3][1] = _42; + outMat.m[3][2] = _43; + outMat.m[3][3] = _44; + return outMat; +} + inline D3DMATRIX MatrixMultiply(const D3DMATRIX &mat1, const D3DMATRIX &mat2) { D3DMATRIX outMat; @@ -174,12 +212,23 @@ inline D3DMATRIX MatrixTranslation(float x, float y, float z) return outMat; } +inline D3DMATRIX MatrixTranspose(const D3DMATRIX &mat) +{ + D3DMATRIX outMat; + int i, j; + for (i = 0; i < 4; ++i) + for (j = 0; j < 4; ++j) + outMat.m[i][j] = mat.m[j][i]; + + return outMat; +} + inline void BuildWorldMatrix(const glm::vec3& pos, const glm::vec3& scale, const glm::quat& rot, D3DMATRIX& outMat) { D3DMATRIX scaleMat = MatrixScaling(scale.x, scale.y, scale.z); D3DMATRIX rotMat = Matrix4GlmToDx(glm::transpose(glm::mat4_cast(rot))); D3DMATRIX transMat = MatrixTranslation(pos.x, pos.y, pos.z); - outMat = scaleMat * rotMat * transMat; + outMat = MatrixMultiply(MatrixMultiply(scaleMat, rotMat), transMat); } inline D3DMATRIX BuildWorldMatrix(const glm::vec3& pos, const glm::vec3& scale, const glm::quat& rot) @@ -189,9 +238,8 @@ inline D3DMATRIX BuildWorldMatrix(const glm::vec3& pos, const glm::vec3& scale, return outMat; } -inline D3DMATRIX MatrixInverse(float *pdeterminant, const D3DMATRIX &mat) +inline D3DMATRIX *MatrixInverse(D3DMATRIX *outMat, float *pdeterminant, const D3DMATRIX &mat) { - D3DMATRIX outMat; float det, t[3], v[16]; int i, j; @@ -209,7 +257,7 @@ inline D3DMATRIX MatrixInverse(float *pdeterminant, const D3DMATRIX &mat) det = mat.m[0][0] * v[0] + mat.m[0][1] * v[4] + mat.m[0][2] * v[8] + mat.m[0][3] * v[12]; if (det == 0.0f) - return outMat; + return nullptr; if (pdeterminant) *pdeterminant = det; @@ -255,7 +303,7 @@ inline D3DMATRIX MatrixInverse(float *pdeterminant, const D3DMATRIX &mat) for (i = 0; i < 4; i++) for (j = 0; j < 4; j++) - outMat.m[i][j] = v[4 * i + j] * det; + outMat->m[i][j] = v[4 * i + j] * det; return outMat; } @@ -301,6 +349,18 @@ inline D3DMATRIX MatrixOrthoRH(float w, float h, float zn, float zf) return outMat; } +inline D3DMATRIX MatrixPerspectiveFovRH(float fovy, float aspect, float zn, float zf) +{ + D3DMATRIX outMat = IdentityMatrix; + outMat.m[0][0] = 1.0f / (aspect * tanf(fovy / 2.0f)); + outMat.m[1][1] = 1.0f / tanf(fovy / 2.0f); + outMat.m[2][2] = zf / (zn - zf); + outMat.m[2][3] = -1.0f; + outMat.m[3][2] = (zf * zn) / (zn - zf); + outMat.m[3][3] = 0.0f; + return outMat; +} + inline D3DMATRIX MatrixRotationAxis(const glm::vec3 &vec, float angle) { D3DMATRIX outMat; diff --git a/src/Rock3dEngine/source/graph/ActorManager.cpp b/src/Rock3dEngine/source/graph/ActorManager.cpp index 37e682c1..3623653e 100644 --- a/src/Rock3dEngine/source/graph/ActorManager.cpp +++ b/src/Rock3dEngine/source/graph/ActorManager.cpp @@ -302,7 +302,7 @@ void ActorManager::BuildPlanar(unsigned scene) const ActorManager::Planar& ActorManager::GetPlanar(Actor* actor) { D3DMATRIX mat = actor->GetInvWorldMat(); - D3DXMatrixTranspose(&mat, &mat); + mat = MatrixTranspose(mat); glm::vec4 plane = PlaneTransform(actor->vec1(), mat); plane = PlaneNormalize(plane); diff --git a/src/Rock3dEngine/source/graph/ContextInfo.cpp b/src/Rock3dEngine/source/graph/ContextInfo.cpp index 89142a54..b99c1750 100644 --- a/src/Rock3dEngine/source/graph/ContextInfo.cpp +++ b/src/Rock3dEngine/source/graph/ContextInfo.cpp @@ -124,7 +124,7 @@ void CameraCI::WorldMatChanged(const D3DMATRIX& worldMat) void CameraCI::CalcProjPerspective(D3DMATRIX& mat) const { - D3DXMatrixPerspectiveFovRH(&mat, _desc.fov, _desc.aspect, _desc.nearDist, _desc.farDist); + mat = MatrixPerspectiveFovRH(_desc.fov, _desc.aspect, _desc.nearDist, _desc.farDist); } void CameraCI::ProjMatChanged() @@ -493,7 +493,7 @@ const D3DMATRIX& CameraCI::GetTransform(Transform transform) const D3DMATRIX matScale = MatrixScaling(2.0f/viewSize.x, _desc.style == csViewPortInv ? 2.0f/viewSize.y : -2.0f/viewSize.y, 1.0f); matScale._33 = 1.0f/(-500.0f - 500.0f); matScale._43 = -500.0f/(-500.0f - 500.0f); - _matrices[transform] = matScale * viewMat; + _matrices[transform] = MatrixMultiply(matScale, viewMat); break; } @@ -527,7 +527,7 @@ const D3DMATRIX& CameraCI::GetInvTransform(Transform transform) const { if (_invMatChanged.test(transform)) { - _invMatrices[transform] = MatrixInverse(0, GetTransform(transform)); + MatrixInverse(&_invMatrices[transform], 0, GetTransform(transform)); _invMatChanged.reset(transform); } @@ -775,7 +775,7 @@ void ContextInfo::BeginDraw() { D3DMATRIX mat = _textureMatStack[i].front(); for (unsigned j = 1; j < _textureMatStack[i].size(); ++j) - mat = mat * _textureMatStack[i][j]; + mat = MatrixMultiply(mat, _textureMatStack[i][j]); mat._31 = mat._41; mat._32 = mat._42; diff --git a/src/Rock3dEngine/source/graph/Engine.cpp b/src/Rock3dEngine/source/graph/Engine.cpp index 94cfd9f9..f0aed020 100644 --- a/src/Rock3dEngine/source/graph/Engine.cpp +++ b/src/Rock3dEngine/source/graph/Engine.cpp @@ -543,13 +543,13 @@ void Engine::RenderSpritePT(const glm::vec3& pos, const glm::vec3& scale, float //Локальный поворот спрайта (только для не направленных) D3DMATRIX rotZ = MatrixRotationAxis(camera.GetDesc().dir, turnAngle); - rotMat *= rotZ; + rotMat = MatrixMultiply(rotMat, rotZ); } //Результирующая матрица D3DMATRIX worldMat = localMat; MatrixScale(scale, worldMat); - worldMat *= rotMat; + worldMat = MatrixMultiply(worldMat, rotMat); MatrixSetTranslation(pos, worldMat); GetContext().SetWorldMat(worldMat); diff --git a/src/Rock3dEngine/source/graph/FxManager.cpp b/src/Rock3dEngine/source/graph/FxManager.cpp index d5d79950..90ff26f8 100644 --- a/src/Rock3dEngine/source/graph/FxManager.cpp +++ b/src/Rock3dEngine/source/graph/FxManager.cpp @@ -35,7 +35,7 @@ void FxParticle::BuildWorldMat() const D3DMATRIX rotMat = Matrix4GlmToDx(glm::transpose(glm::mat4_cast(_rot))); D3DMATRIX transMat = MatrixTranslation(_pos.x, _pos.y, _pos.z); - _worldMat = scaleMat * rotMat * transMat; + _worldMat = MatrixMultiply(MatrixMultiply(scaleMat, rotMat), transMat); } } @@ -1062,7 +1062,7 @@ void FxPlaneManager::RenderGroup(graph::Engine& engine, FxEmitter* emitter, FxPa glm::vec3 axe = glm::axis(particle->GetRot()); float angle = glm::angle(particle->GetRot()); - D3DMATRIX worldMat = particle->GetMatrix() * emitter->GetMatrix(); + D3DMATRIX worldMat = MatrixMultiply(particle->GetMatrix(), emitter->GetMatrix()); engine.GetContext().SetWorldMat(worldMat); engine.RenderPlanePT(); diff --git a/src/Rock3dEngine/source/graph/SceneManager.cpp b/src/Rock3dEngine/source/graph/SceneManager.cpp index 5b8542d5..fd5e3f3a 100644 --- a/src/Rock3dEngine/source/graph/SceneManager.cpp +++ b/src/Rock3dEngine/source/graph/SceneManager.cpp @@ -238,8 +238,8 @@ void BaseSceneNode::BuildMatrix() const { //Поворот не влияет на локальное направление перемещения //Растяжение не влияет на локальное перемещение, т.е. единица длины одна и таже - _localMat = GetScaleMat() * GetRotMat() * GetTransMat(); - _invLocalMat = MatrixInverse(0, _localMat); + _localMat = MatrixMultiply(MatrixMultiply(GetScaleMat(), GetRotMat()), GetTransMat()); + MatrixInverse(&_invLocalMat, 0, _localMat); } void BaseSceneNode::BuildWorldMatrix() const @@ -248,7 +248,7 @@ void BaseSceneNode::BuildWorldMatrix() const { const D3DMATRIX& mat = _parent->GetWorldMat(); _worldMat = MatrixMultiply(_localMat, mat); - _invWorldMat = MatrixInverse(0, _worldMat); + MatrixInverse(&_invWorldMat, 0, _worldMat); } else { @@ -981,13 +981,13 @@ D3DMATRIX BaseSceneNode::GetCombMat(CombMatType type) const switch (type) { case cmtScaleTrans: - return GetScaleMat() * GetTransMat(); + return MatrixMultiply(GetScaleMat(), GetTransMat()); case cmtScaleRot: - return GetScaleMat() * GetTransMat(); + return MatrixMultiply(GetScaleMat(), GetTransMat()); case cmtRotTrans: - return GetRotMat() * GetTransMat(); + return MatrixMultiply(GetRotMat(), GetTransMat()); default: LSL_ASSERT(false); @@ -1005,7 +1005,7 @@ D3DMATRIX BaseSceneNode::GetWorldCombMat(CombMatType type) const glm::vec3 vec = GetWorldPos(); D3DMATRIX transMat = MatrixTranslation(vec.x, vec.y, vec.z); - return scaleMat * transMat; + return MatrixMultiply(scaleMat, transMat); } case cmtScaleRot: @@ -1014,7 +1014,7 @@ D3DMATRIX BaseSceneNode::GetWorldCombMat(CombMatType type) const D3DMATRIX rotMat = Matrix4GlmToDx(glm::transpose(glm::mat4_cast(GetWorldRot()))); - return scaleMat * rotMat; + return MatrixMultiply(scaleMat, rotMat); } case cmtRotTrans: @@ -1023,7 +1023,7 @@ D3DMATRIX BaseSceneNode::GetWorldCombMat(CombMatType type) const glm::vec3 pos = GetWorldPos(); D3DMATRIX transMat = MatrixTranslation(pos.x, pos.y, pos.z); - return rotMat * transMat; + return MatrixMultiply(rotMat, transMat); } default: diff --git a/src/Rock3dEngine/source/graph/ShadowMapRender.cpp b/src/Rock3dEngine/source/graph/ShadowMapRender.cpp index bc530209..fa3de440 100644 --- a/src/Rock3dEngine/source/graph/ShadowMapRender.cpp +++ b/src/Rock3dEngine/source/graph/ShadowMapRender.cpp @@ -137,7 +137,8 @@ void ShadowMapRender::ComputeCropMatrix(unsigned numSplit, const LightCI& light, float fOffsetY = -0.5f * (fMaxY + fMinY) * fScaleY; float fOffsetZ = -fMinZ * fScaleZ; - D3DMATRIX mCropView(fScaleX, 0.0f, 0.0f, 0.0f, + D3DMATRIX mCropView = MakeMatrix + (fScaleX, 0.0f, 0.0f, 0.0f, 0.0f, fScaleY, 0.0f, 0.0f, 0.0f, 0.0f, fScaleZ, 0.0f, fOffsetX, fOffsetY, fOffsetZ, 1.0f); @@ -146,7 +147,7 @@ void ShadowMapRender::ComputeCropMatrix(unsigned numSplit, const LightCI& light, //Итоговое значение глубины в z буффере будет линейным, в диапазоне от 0 до 1 (near; far), которое можно вычислить как: //depth = Zf/maxZ * (Z - Zn)/(Zf - Zn); //Приблизительно depth = Z / maxZ. - _splitLightProjMat[numSplit] = light.GetCamera().GetProj() * mCropView; + _splitLightProjMat[numSplit] = MatrixMultiply(light.GetCamera().GetProj(), mCropView); } void ShadowMapRender::CalcSplitScheme(const CameraCI& camera, const LightCI& light) @@ -163,13 +164,13 @@ void ShadowMapRender::CalcSplitScheme(const CameraCI& camera, const LightCI& lig if (_disableCropLight) { - D3DMATRIX mCropView( + D3DMATRIX mCropView = MakeMatrix( 1, 0.0f, 0.0f, 0.0f, 0.0f, 1, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f/(desc.farDist - desc.nearDist), 0.0f, 0.0f, 0.0f, 0.0f, 1.0f ); - _splitLightProjMat[i] = light.GetCamera().GetProj() * mCropView; + _splitLightProjMat[i] = MatrixMultiply(light.GetCamera().GetProj(), mCropView); } else { @@ -204,7 +205,7 @@ void ShadowMapRender::BeginShadowCaster(Engine& engine) engine.GetDriver().GetDevice()->SetDepthStencilSurface(_depthSurface->GetSurface()); } - D3DMATRIX viewProj = _myCamera.GetView() * _splitLightProjMat[_curNumSplit]; + D3DMATRIX viewProj = MatrixMultiply(_myCamera.GetView(), _splitLightProjMat[_curNumSplit]); depthRender.SetViewProjMat(viewProj); engine.GetContext().ApplyCamera(&_myCamera); @@ -248,10 +249,10 @@ void ShadowMapRender::BeginShadowMapp(Engine& engine) { float mapSz = static_cast(cShadowMapSize); float fTexOffset = 0.5f + 0.5f / mapSz; - shader.mTexScale = D3DMATRIX(0.5f, 0.0f, 0.0f, 0.0f, - 0.0f, -0.5f, 0.0f, 0.0f, - 0.0f, 0.0f, 1.0f, 0.0f, - fTexOffset, fTexOffset, 0.0f, 1.0f); + shader.mTexScale = MakeMatrix(0.5f, 0.0f, 0.0f, 0.0f, + 0.0f, -0.5f, 0.0f, 0.0f, + 0.0f, 0.0f, 1.0f, 0.0f, + fTexOffset, fTexOffset, 0.0f, 1.0f); shader.SetValue("sizeShadow", glm::vec2(mapSz, 1.0f / mapSz)); diff --git a/src/Rock3dEngine/source/graph/SkyBox.cpp b/src/Rock3dEngine/source/graph/SkyBox.cpp index 70a05f3e..47c3fd37 100644 --- a/src/Rock3dEngine/source/graph/SkyBox.cpp +++ b/src/Rock3dEngine/source/graph/SkyBox.cpp @@ -10,7 +10,8 @@ namespace graph //Схема //+y; -y; +z; -z; +x; -x -const D3DMATRIX skyFromLeftToRightCS(1.0f, 0.0f, 0.0f, 0.0f, +const D3DMATRIX skyFromLeftToRightCS = MakeMatrix + (1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, -1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f); @@ -52,7 +53,7 @@ void SkyBox::Render(Engine& engine) skyWVP._41 = 0.0f; skyWVP._42 = 0.0f; skyWVP._43 = 0.0f; - skyWVP = MatrixInverse(0, skyWVP); + MatrixInverse(&skyWVP, 0, skyWVP); shader.SetValueDir("matInvWVP", skyWVP); shader.Apply(engine); diff --git a/src/Rock3dEngine/source/gui/GUI.cpp b/src/Rock3dEngine/source/gui/GUI.cpp index 1577b078..d8ad9559 100644 --- a/src/Rock3dEngine/source/gui/GUI.cpp +++ b/src/Rock3dEngine/source/gui/GUI.cpp @@ -417,7 +417,7 @@ D3DMATRIX Graphic3d::GetMat() D3DMATRIX Graphic3d::GetWorldMat() { - return _parent ? GetMat() * _parent->GetWorldMat() : GetMat(); + return _parent ? MatrixMultiply(GetMat(), _parent->GetWorldMat()) : GetMat(); } AABB Graphic3d::GetChildAABB() @@ -798,7 +798,7 @@ void Context::DrawGraphic3d(Graphic3d* graphic, const D3DMATRIX& worldMat) if (graphic->GetMaterial()) ApplyMaterial(*graphic->GetMaterial(), 1.0f); - GetCI().SetWorldMat(graphic->GetWorldMat() * worldMat); + GetCI().SetWorldMat(MatrixMultiply(graphic->GetWorldMat(), worldMat)); if (graphic->invertCullFace) GetCI().SetRenderState(graph::rsCullMode, D3DCULL_CCW); @@ -1050,7 +1050,7 @@ void Context::DrawView3d(View3d& view3d) GetCI().SetRenderState(graph::rsZEnable, true); GetDriver().GetDevice()->Clear(0, 0, D3DCLEAR_ZBUFFER, 0, 1.0f, 0); - DrawGraphic3d(view3d.GetBox(), localMat * worldMat); + DrawGraphic3d(view3d.GetBox(), MatrixMultiply(localMat, worldMat)); GetCI().SetRenderState(graph::rsZWriteEnable, false); GetCI().SetRenderState(graph::rsZEnable, false); @@ -1264,15 +1264,15 @@ void Widget::BuildMatrix(MatrixChange change) const } case mcWorld: - _matrix[mcWorld] = _parent ? GetMat() * _parent->GetWorldMat() : GetMat(); + _matrix[mcWorld] = _parent ? MatrixMultiply(GetMat(), _parent->GetWorldMat()) : GetMat(); break; case mcInvLocal: - _matrix[mcInvLocal] = MatrixInverse(0, GetMat()); + MatrixInverse(&_matrix[mcInvLocal], 0, GetMat()); break; case mcInvWorld: - _matrix[mcInvWorld] = MatrixInverse(0, GetWorldMat()); + MatrixInverse(&_matrix[mcInvWorld], 0, GetWorldMat()); break; } } diff --git a/src/Rock3dGame/source/edit/SceneControl.cpp b/src/Rock3dGame/source/edit/SceneControl.cpp index 75ae242d..e98d1992 100644 --- a/src/Rock3dGame/source/edit/SceneControl.cpp +++ b/src/Rock3dGame/source/edit/SceneControl.cpp @@ -265,7 +265,9 @@ bool SceneControl::ComputeAxeLink(const AABB& aabb, const D3DMATRIX& aabbToWorld float dist; //Вычисляем двухсторонее пересечение test-а боксом aabb. Выбираем наименьшее значение длины проникновения, начиная с distLink. - if (test.AABBLineCastIntersect(aabb, normOff, aabbToWorld * testSc->GetInvWorldMat(), testSc->GetWorldMat() * worldToAABB, dist) && abs(dist) < abs(outDistOff)) + if (test.AABBLineCastIntersect(aabb, normOff, MatrixMultiply(aabbToWorld, testSc->GetInvWorldMat()), + MatrixMultiply(testSc->GetWorldMat(), worldToAABB), dist) && + abs(dist) < abs(outDistOff)) { res = true; outDistOff = dist; @@ -294,9 +296,9 @@ void SceneControl::ComputeLink(INode* node, const glm::vec3& pos, glm::vec3& res repeat = false; D3DMATRIX worldMat = MatrixTranslation(newOff.x, newOff.y, newOff.z); - worldMat = node->GetMat() * worldMat; + worldMat = MatrixMultiply(node->GetMat(), worldMat); D3DMATRIX invWorldMat; - D3DXMatrixInverse(&invWorldMat, 0, &worldMat); + MatrixInverse(&invWorldMat, 0, worldMat); AABB aabb = node->GetAABB(); if (!repeat && ComputeAxeLink(aabb, worldMat, invWorldMat, ZVector, node, zDist)) diff --git a/src/Rock3dGame/source/game/GameBase.cpp b/src/Rock3dGame/source/game/GameBase.cpp index ce436f56..0d41bfc9 100644 --- a/src/Rock3dGame/source/game/GameBase.cpp +++ b/src/Rock3dGame/source/game/GameBase.cpp @@ -1224,7 +1224,7 @@ void PodushkaAnim::OnProgress(float deltaTime) D3DMATRIX matOffs1 = MatrixTranslation(-offset.x, -offset.y, -offset.z); D3DMATRIX matOffs2 = MatrixTranslation(offset.x, offset.y, offset.z); - localMat = localMat * matOffs1 * rotMat * matOffs2; + localMat = MatrixMultiply(MatrixMultiply(MatrixMultiply(localMat, matOffs1), rotMat), matOffs2); _target->SetLocalMat(localMat); } diff --git a/src/Rock3dGame/source/game/Player.cpp b/src/Rock3dGame/source/game/Player.cpp index 4d83df9f..5806b419 100644 --- a/src/Rock3dGame/source/game/Player.cpp +++ b/src/Rock3dGame/source/game/Player.cpp @@ -913,7 +913,7 @@ void Player::CarState::Update(float deltaTime) NxMat34 mat34 = nxActor->getGlobalPose(); - worldMat = D3DMATRIX(mat34.M(0, 0), mat34.M(0, 1), mat34.M(0, 2), 0, + worldMat = MakeMatrix(mat34.M(0, 0), mat34.M(0, 1), mat34.M(0, 2), 0, mat34.M(1, 0), mat34.M(1, 1), mat34.M(1, 2), 0, mat34.M(2, 0), mat34.M(2, 1), mat34.M(2, 2), 0, mat34.t[0], mat34.t[1], mat34.t[2], 1); From 24766069cb1b792052f8117280e6819da1a06314 Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Tue, 1 Nov 2022 18:01:01 +0300 Subject: [PATCH 50/55] math: replace abs with std::abs (fixes warnings in Linux) --- src/MathLib/header/lslMath.inl | 12 ++++---- src/MathLib/source/r3dMath.cpp | 8 ++--- src/NetLib/source/net/BitStream.cpp | 6 ++-- src/Rock3dEngine/header/px/Physx.h | 2 +- src/Rock3dEngine/source/GraphManager.cpp | 4 +-- .../source/graph/ActorManager.cpp | 4 +-- src/Rock3dEngine/source/graph/ContextInfo.cpp | 6 ++-- .../source/graph/Driver/RenderDriver.cpp | 6 ++-- src/Rock3dEngine/source/gui/GUI.cpp | 16 +++++----- src/Rock3dGame/source/edit/SceneControl.cpp | 14 ++++----- src/Rock3dGame/source/game/AICar.cpp | 18 +++++------ src/Rock3dGame/source/game/AIPlayer.cpp | 2 +- src/Rock3dGame/source/game/CameraManager.cpp | 6 ++-- src/Rock3dGame/source/game/FinalMenu.cpp | 2 +- src/Rock3dGame/source/game/GameBase.cpp | 6 ++-- src/Rock3dGame/source/game/GameCar.cpp | 30 +++++++++---------- src/Rock3dGame/source/game/GameObject.cpp | 4 +-- src/Rock3dGame/source/game/HudMenu.cpp | 20 ++++++------- src/Rock3dGame/source/game/MainMenu2.cpp | 2 +- src/Rock3dGame/source/game/Player.cpp | 12 ++++---- src/Rock3dGame/source/game/Race.cpp | 2 +- src/Rock3dGame/source/game/RaceMenu2.cpp | 4 +-- src/Rock3dGame/source/game/Trace.cpp | 6 ++-- src/Rock3dGame/source/game/Weapon.cpp | 6 ++-- src/Rock3dGame/source/net/NetPlayer.cpp | 4 +-- 25 files changed, 101 insertions(+), 101 deletions(-) diff --git a/src/MathLib/header/lslMath.inl b/src/MathLib/header/lslMath.inl index e73135c8..b60c82ad 100644 --- a/src/MathLib/header/lslMath.inl +++ b/src/MathLib/header/lslMath.inl @@ -580,9 +580,9 @@ inline glm::vec3 Vec3Invert(const glm::vec3& vec) inline void Vec3Abs(const glm::vec3& vec, glm::vec3& outVec) { - outVec.x = abs(vec.x); - outVec.y = abs(vec.y); - outVec.z = abs(vec.z); + outVec.x = std::abs(vec.x); + outVec.y = std::abs(vec.y); + outVec.z = std::abs(vec.z); } inline glm::vec3 Vec3Abs(const glm::vec3& vec) @@ -693,7 +693,7 @@ inline glm::vec4 operator*(const glm::vec4& vec1, const glm::vec4& vec2) inline void QuatShortestArc(const glm::vec3& from, const glm::vec3& to, glm::quat& outQuat) { float angle = glm::dot(from, to); - if (abs(angle) > 1.0f) + if (std::abs(angle) > 1.0f) { outQuat = NullQuaternion; return; @@ -701,7 +701,7 @@ inline void QuatShortestArc(const glm::vec3& from, const glm::vec3& to, glm::qua angle = acos(angle); - if (abs(angle) > 0.1f) + if (std::abs(angle) > 0.1f) { glm::vec3 axe = glm::cross(from, to); outQuat = glm::angleAxis(angle, axe); @@ -720,7 +720,7 @@ inline glm::quat QuatShortestArc(const glm::vec3& from, const glm::vec3& to) inline float QuatAngle(const glm::quat& quat1, const glm::quat& quat2) { - return acos(abs(glm::dot(quat1, quat2) / (glm::length(quat1) * glm::length(quat2)))) * 2; + return acos(std::abs(glm::dot(quat1, quat2) / (glm::length(quat1) * glm::length(quat2)))) * 2; } inline glm::quat QuatRotation(const glm::quat& quat1, const glm::quat& quat2) diff --git a/src/MathLib/source/r3dMath.cpp b/src/MathLib/source/r3dMath.cpp index 3b5d00fa..16b8b49f 100644 --- a/src/MathLib/source/r3dMath.cpp +++ b/src/MathLib/source/r3dMath.cpp @@ -16,12 +16,12 @@ DirPlan cDirPlan = {0, 0, 1, 1, 2, 2}; template _Value AbsMin(const _Value& val1, const _Value& val2) { - return abs(val1) > abs(val2) ? val2 : val1; + return std::abs(val1) > std::abs(val2) ? val2 : val1; } template _Value AbsMax(const _Value& val1, const _Value& val2) { - return abs(val1) < abs(val2) ? val2 : val1; + return std::abs(val1) < std::abs(val2) ? val2 : val1; } AABB2::AABB2() @@ -585,7 +585,7 @@ glm::vec3 AABB::GetPlaneVert(unsigned index, unsigned vertex) const { /*glm::vec4 plane = GetPlane(index); glm::vec3 norm(plane); - glm::vec3 invNorm = IdentityVector - glm::vec3(abs(norm.x), abs(norm.y), abs(norm.z)); + glm::vec3 invNorm = IdentityVector - glm::vec3(std::abs(norm.x), std::abs(norm.y), std::abs(norm.z)); glm::vec3 fixCoord; Vec3Scale(norm, GetSizes()/2, fixCoord); @@ -795,7 +795,7 @@ bool RayCastIntersectPlane(const glm::vec3& rayStart, const glm::vec3& rayVec, c const float EPSILON = 1.0e-10f; float d = PlaneDotNormal(plane, rayVec); - if (abs(d) > EPSILON) + if (std::abs(d) > EPSILON) { outT = -PlaneDotCoord(plane, rayStart) / d; return outT > 0; diff --git a/src/NetLib/source/net/BitStream.cpp b/src/NetLib/source/net/BitStream.cpp index cafbfe63..3786c30c 100644 --- a/src/NetLib/source/net/BitStream.cpp +++ b/src/NetLib/source/net/BitStream.cpp @@ -263,12 +263,12 @@ void BitStream::Serialize(long long& value) void BitStream::Serialize(float& value, float err) { - Serialize(value, btFloat, abs(Get().bit.fltVal - value) < err); + Serialize(value, btFloat, std::abs(Get().bit.fltVal - value) < err); } void BitStream::Serialize(double& value, float err) { - Serialize(value, btDouble, abs(Get().bit.dblVal - value) < err); + Serialize(value, btDouble, std::abs(Get().bit.dblVal - value) < err); } void BitStream::Serialize(float value[], int count, float err) @@ -276,7 +276,7 @@ void BitStream::Serialize(float value[], int count, float err) bool eq = true; BitValue& bitVal = Get().bit; for (int i = 0; i < count; ++i) - if (abs(value[i] - bitVal.vecVal[i]) >= err) + if (std::abs(value[i] - bitVal.vecVal[i]) >= err) { eq = false; break; diff --git a/src/Rock3dEngine/header/px/Physx.h b/src/Rock3dEngine/header/px/Physx.h index b7042b76..9108f517 100644 --- a/src/Rock3dEngine/header/px/Physx.h +++ b/src/Rock3dEngine/header/px/Physx.h @@ -191,7 +191,7 @@ class TriangleMesh: public lsl::CollectionItem bool operator==(const MeshVal& value) const { glm::vec3 err = scale - value.scale; - float maxErr = std::max(abs(err.x), std::max(abs(err.y), abs(err.z))); + float maxErr = std::max(std::abs(err.x), std::max(std::abs(err.y), std::abs(err.z))); //ошибка считается исходя что 1 - один метр, следовательно 1мм допустимая ошибка return id == value.id && maxErr < 0.001f; } diff --git a/src/Rock3dEngine/source/GraphManager.cpp b/src/Rock3dEngine/source/GraphManager.cpp index c55831cb..5b400e41 100644 --- a/src/Rock3dEngine/source/GraphManager.cpp +++ b/src/Rock3dEngine/source/GraphManager.cpp @@ -1488,7 +1488,7 @@ bool LineCastIntersPlane(const glm::vec3& rayStart, const glm::vec3& rayVec, con const float EPSILON = 1.0e-10f; float d = PlaneDotCoord(plane, rayVec); - if (abs(d) > EPSILON) + if (std::abs(d) > EPSILON) { outT = -PlaneDotCoord(plane, rayStart) / d; return true; @@ -2442,7 +2442,7 @@ void GraphManager::BuildOctree() glm::vec2 texDiffK = glm::vec2((*iter)->GetActor()->vec3().y, (*iter)->GetActor()->vec3().z); - if ((abs(texDiffK.x) + abs(texDiffK.y)) > 0.0f && _lightList.size() > 0 && _lightList.front()->GetSource()->GetType() == D3DLIGHT_DIRECTIONAL) + if ((std::abs(texDiffK.x) + std::abs(texDiffK.y)) > 0.0f && _lightList.size() > 0 && _lightList.front()->GetSource()->GetType() == D3DLIGHT_DIRECTIONAL) { glm::vec3 norm = (*iter)->GetActor()->vec1(); glm::vec3 lightDir = _lightList.front()->GetSource()->GetDir(); diff --git a/src/Rock3dEngine/source/graph/ActorManager.cpp b/src/Rock3dEngine/source/graph/ActorManager.cpp index 3623653e..28d051b2 100644 --- a/src/Rock3dEngine/source/graph/ActorManager.cpp +++ b/src/Rock3dEngine/source/graph/ActorManager.cpp @@ -314,8 +314,8 @@ const ActorManager::Planar& ActorManager::GetPlanar(Actor* actor) for (Planars::iterator iter = _planars.begin(); iter != _planars.end(); ++iter) { const glm::vec4& testPlane = iter->plane; - float dist = abs(testPlane.w - plane.w); - float angle = abs(PlaneDotNormal(testPlane, glm::vec3(plane))); + float dist = std::abs(testPlane.w - plane.w); + float angle = std::abs(PlaneDotNormal(testPlane, glm::vec3(plane))); if (dist < 0.5f && angle > 0.99f //&& (planarIter == _planars.end() || diff --git a/src/Rock3dEngine/source/graph/ContextInfo.cpp b/src/Rock3dEngine/source/graph/ContextInfo.cpp index b99c1750..aebdbfa2 100644 --- a/src/Rock3dEngine/source/graph/ContextInfo.cpp +++ b/src/Rock3dEngine/source/graph/ContextInfo.cpp @@ -212,7 +212,7 @@ bool LineCastIntersPlane(const glm::vec3& rayStart, const glm::vec3& rayVec, con const float EPSILON = 1.0e-10f; float d = PlaneDotNormal(plane, rayVec); - if (abs(d) > EPSILON) + if (std::abs(d) > EPSILON) { outT = -PlaneDotCoord(plane, rayStart) / d; return true; @@ -269,7 +269,7 @@ bool CameraCI::ComputeZBounds(const AABB& aabb, float& minZ, float& maxZ) const //поиск по вершинам aabb for (int i = 0; i < 8; ++i) //лежит ли точка в боксе - if (abs(projBox.v[i].x) < 1.0f && abs(projBox.v[i].y) < 1.0f) + if (std::abs(projBox.v[i].x) < 1.0f && std::abs(projBox.v[i].y) < 1.0f) { float z = -viewBox.v[i].z; @@ -312,7 +312,7 @@ bool CameraCI::ComputeZBounds(const AABB& aabb, float& minZ, float& maxZ) const unsigned numPoints = PlaneBBIntersect(projBox, nearPlane, points); for (unsigned i = 0; i < numPoints; ++i) { - if (abs(points[i].x) < 1.1f && abs(points[i].y) < 1.1f) + if (std::abs(points[i].x) < 1.1f && std::abs(points[i].y) < 1.1f) { glm::vec3 vec = Vec3TransformCoord(points[i], GetInvProj()); diff --git a/src/Rock3dEngine/source/graph/Driver/RenderDriver.cpp b/src/Rock3dEngine/source/graph/Driver/RenderDriver.cpp index 4a12c712..c498b453 100644 --- a/src/Rock3dEngine/source/graph/Driver/RenderDriver.cpp +++ b/src/Rock3dEngine/source/graph/Driver/RenderDriver.cpp @@ -44,7 +44,7 @@ bool RenderDriver::FindNearMode(const lsl::Point& resolution, DisplayMode& mode, DisplayMode dispMode = GetDisplayModes()[i]; float newAspect = dispMode.height != 0 ? dispMode.width /(float)dispMode.height : 0.0f; - if (newAspect != 0 && (abs(minAspect - aspect) > abs(aspect - newAspect) || minAspect == 0.0f)) + if (newAspect != 0 && (std::abs(minAspect - aspect) > std::abs(aspect - newAspect) || minAspect == 0.0f)) minAspect = newAspect; } @@ -59,9 +59,9 @@ bool RenderDriver::FindNearMode(const lsl::Point& resolution, DisplayMode& mode, for (unsigned i = 0; i < GetDisplayModes().size(); ++i) { DisplayMode dispMode = GetDisplayModes()[i]; - int dist = abs(static_cast(dispMode.width * dispMode.height - resolution.x * resolution.y)); + int dist = std::abs(static_cast(dispMode.width * dispMode.height - resolution.x * resolution.y)); - if (aspect != 0.0f && dispMode.height != 0 && abs(aspect - dispMode.width/(float)dispMode.height) < 0.001f) + if (aspect != 0.0f && dispMode.height != 0 && std::abs(aspect - dispMode.width/(float)dispMode.height) < 0.001f) { if (minDAsp > dist || minDAsp == -1) { diff --git a/src/Rock3dEngine/source/gui/GUI.cpp b/src/Rock3dEngine/source/gui/GUI.cpp index d8ad9559..e0341475 100644 --- a/src/Rock3dEngine/source/gui/GUI.cpp +++ b/src/Rock3dEngine/source/gui/GUI.cpp @@ -3816,9 +3816,9 @@ void ScrollBox::SetScroll(const glm::vec2& value) _box->SetPos(pos); if (_scrollBut[sdUp]) - _scrollBut[sdUp]->SetVisible(abs(scroll.y) > 0.001f); + _scrollBut[sdUp]->SetVisible(std::abs(scroll.y) > 0.001f); if (_scrollBut[sdDown]) - _scrollBut[sdDown]->SetVisible(abs(scroll.y) < clampSize.y); + _scrollBut[sdDown]->SetVisible(std::abs(scroll.y) < clampSize.y); } Material& ScrollBox::GetArrowMaterial() @@ -4006,9 +4006,9 @@ void ListBox::AlignItems() glm::vec2 fracSize = size - clientSize + _itemSpace; glm::vec2 index(0, 0); - if (abs(clientSize.x > 0.001f) && abs(itemStep.x > 0.001f)) + if (std::abs(clientSize.x > 0.001f) && std::abs(itemStep.x > 0.001f)) index.x = floor(fmod(stripLen, clientSize.x) / itemStep.x); - if (abs(clientSize.x > 0.001f)) + if (std::abs(clientSize.x > 0.001f)) index.y = floor(stripLen / clientSize.x); Widget* data = (*iter)->GetData(); @@ -5143,10 +5143,10 @@ ColorList::Colors::const_iterator ColorList::FindColor(const glm::vec4& value) c for (Colors::const_iterator iter = _colors.begin(); iter != _colors.end(); ++iter) { glm::vec4 vec = iter->GetVal() - value; - vec.r = abs(vec.r); - vec.g = abs(vec.g); - vec.b = abs(vec.b); - vec.a = abs(vec.a); + vec.r = std::abs(vec.r); + vec.g = std::abs(vec.g); + vec.b = std::abs(vec.b); + vec.a = std::abs(vec.a); if (vec < 0.001f) return iter; diff --git a/src/Rock3dGame/source/edit/SceneControl.cpp b/src/Rock3dGame/source/edit/SceneControl.cpp index e98d1992..554c4d6e 100644 --- a/src/Rock3dGame/source/edit/SceneControl.cpp +++ b/src/Rock3dGame/source/edit/SceneControl.cpp @@ -183,7 +183,7 @@ bool SceneControl::Control::OnMouseMoveEvent(const game::MouseMove& mMove) glm::quat rotZ = glm::angleAxis(angleZ, ZVector); glm::quat rotY = glm::angleAxis(angleY, _owner->_edit->GetWorld()->GetCamera()->GetRight()); - glm::quat rot = abs(angleZ) > abs(angleY) ? rotZ : rotY; + glm::quat rot = std::abs(angleZ) > std::abs(angleY) ? rotZ : rotY; selNode->SetRot(rot * _clStartRot); @@ -267,7 +267,7 @@ bool SceneControl::ComputeAxeLink(const AABB& aabb, const D3DMATRIX& aabbToWorld //Вычисляем двухсторонее пересечение test-а боксом aabb. Выбираем наименьшее значение длины проникновения, начиная с distLink. if (test.AABBLineCastIntersect(aabb, normOff, MatrixMultiply(aabbToWorld, testSc->GetInvWorldMat()), MatrixMultiply(testSc->GetWorldMat(), worldToAABB), dist) && - abs(dist) < abs(outDistOff)) + std::abs(dist) < std::abs(outDistOff)) { res = true; outDistOff = dist; @@ -304,17 +304,17 @@ void SceneControl::ComputeLink(INode* node, const glm::vec3& pos, glm::vec3& res if (!repeat && ComputeAxeLink(aabb, worldMat, invWorldMat, ZVector, node, zDist)) { newOff += zDist * node->GetUp(); - repeat |= abs(zDist) > 0.001f; + repeat |= std::abs(zDist) > 0.001f; } if (!repeat && ComputeAxeLink(aabb, worldMat, invWorldMat, YVector, node, yDist)) { newOff += yDist * node->GetRight(); - repeat |= abs(yDist) > 0.001f; + repeat |= std::abs(yDist) > 0.001f; } if (!repeat && ComputeAxeLink(aabb, worldMat, invWorldMat, XVector, node, xDist)) { newOff += xDist * node->GetDir(); - repeat |= abs(xDist) > 0.001f; + repeat |= std::abs(xDist) > 0.001f; } ++repCnt; @@ -447,12 +447,12 @@ glm::vec3 SceneControl::ComputePoint(const glm::vec3& curPos, const glm::vec3& r glm::vec3 pos = curPos; glm::vec4 plane = PlaneFromPointNormal(pos, planeNorm); glm::vec3 newPos; - if (abs(glm::dot(planeNorm, rayVec)) < 0.05f || !RayCastIntersectPlane(rayStart, rayVec, plane, newPos)) + if (std::abs(glm::dot(planeNorm, rayVec)) < 0.05f || !RayCastIntersectPlane(rayStart, rayVec, plane, newPos)) { newPos = NullVector; plane = PlaneFromPointNormal(pos, XVector); - if (dirMove == dmZ && abs(glm::dot(XVector, rayVec)) < 0.05f || !RayCastIntersectPlane(rayStart, rayVec, plane, newPos)) + if (dirMove == dmZ && std::abs(glm::dot(XVector, rayVec)) < 0.05f || !RayCastIntersectPlane(rayStart, rayVec, plane, newPos)) newPos = NullVector; } diff --git a/src/Rock3dGame/source/game/AICar.cpp b/src/Rock3dGame/source/game/AICar.cpp index ee073c59..f582089f 100644 --- a/src/Rock3dGame/source/game/AICar.cpp +++ b/src/Rock3dGame/source/game/AICar.cpp @@ -41,7 +41,7 @@ bool AICar::PathState::FindFirstUnlockTrack(unsigned track, unsigned target, uns { int inc = target > track ? +1 : -1; - for (int i = 1; i < abs((int)(track - target)) + 1; ++i) + for (int i = 1; i < std::abs((int)(track - target)) + 1; ++i) { unsigned testTrack = track + i * inc; if (!lockTracks[testTrack]) @@ -58,7 +58,7 @@ bool AICar::PathState::FindLastUnlockTrack(unsigned track, unsigned target, unsi { int inc = target > track ? +1 : -1; - for (int i = 1; i < abs((int)(track - target)) + 1; ++i) + for (int i = 1; i < std::abs((int)(track - target)) + 1; ++i) { unsigned testTrack = track + i * inc; if (lockTracks[testTrack]) @@ -127,7 +127,7 @@ void AICar::PathState::ComputeMovDir(AICar* owner, float deltaTime, const Player // WayNode* movNode = curTile; // - dirArea = 5.0f + abs(car.speed) * car.kSteerControl * 10; + dirArea = 5.0f + std::abs(car.speed) * car.kSteerControl * 10; //Корректировка траектории движения относительно поворота if (nextTile->GetTile().GetTurnAngle() > glm::pi()/12) @@ -299,9 +299,9 @@ Player* AICar::AttackState::FindEnemy(AICar* owner, const Player::CarState& car, void AICar::AttackState::ShotByEnemy(AICar* owner, const CarState& car, Player* enemy) { //отклонение от напрваляющией в пределах enemy->GetCar().radius - bool bShoot = enemy && abs(Line2DistToPoint(car.dirLine, enemy->GetCar().pos)) < enemy->GetCar().radius; + bool bShoot = enemy && std::abs(Line2DistToPoint(car.dirLine, enemy->GetCar().pos)) < enemy->GetCar().radius; //машина в передлах z достижимости - bShoot = bShoot && abs(car.pos3.z - enemy->GetCar().pos3.z) < std::min(car.radius, enemy->GetCar().radius); + bShoot = bShoot && std::abs(car.pos3.z - enemy->GetCar().pos3.z) < std::min(car.radius, enemy->GetCar().radius); // if (bShoot) { @@ -490,7 +490,7 @@ AICar::ControlState::ControlState(): blocking(false), timeBlocking(0.0f), backMo void AICar::ControlState::UpdateResetCar(AICar* owner, float deltaTime, const Player::CarState& car) { //Reset заблокированной машины - if (car.mapObj && (blocking || car.curTile == NULL || abs(car.speed) < cMaxSpeedBlocking)) + if (car.mapObj && (blocking || car.curTile == NULL || std::abs(car.speed) < cMaxSpeedBlocking)) { timeResetBlockCar += deltaTime; if (timeResetBlockCar > 3.0f * cMaxTimeBlocking) @@ -506,7 +506,7 @@ void AICar::ControlState::UpdateResetCar(AICar* owner, float deltaTime, const Pl void AICar::ControlState::Update(AICar* owner, float deltaTime, const Player::CarState& car, const PathState& path) { //Вычисляем угол между направлением машины и направляющей движения - steerAngle = abs(acos(Vec2Dot(car.dir, path.moveDir))); + steerAngle = std::abs(acos(Vec2Dot(car.dir, path.moveDir))); //учет инерционности рулевого управления //steerAngle = std::max(0.0f, steerAngle - glm::pi() * deltaTime * 2.0f); //float errorSteer = @@ -518,7 +518,7 @@ void AICar::ControlState::Update(AICar* owner, float deltaTime, const Player::Ca steerAngle = 0; //состояние заблокированности - if (abs(car.speed) < cMaxSpeedBlocking) + if (std::abs(car.speed) < cMaxSpeedBlocking) { timeBlocking += deltaTime; if (timeBlocking > cMaxTimeBlocking) @@ -542,7 +542,7 @@ void AICar::ControlState::Update(AICar* owner, float deltaTime, const Player::Ca if (backMovingMode) { timeBackMoving += deltaTime; - if (timeBackMoving > cMaxTimeBlocking || (backMoving && abs(steerAngle) < cSteerAngleBias && timeBackMoving > 0.5f* cMaxTimeBlocking)) + if (timeBackMoving > cMaxTimeBlocking || (backMoving && std::abs(steerAngle) < cSteerAngleBias && timeBackMoving > 0.5f* cMaxTimeBlocking)) { backMoving = !backMoving; timeBackMoving = 0.0f; diff --git a/src/Rock3dGame/source/game/AIPlayer.cpp b/src/Rock3dGame/source/game/AIPlayer.cpp index 2318edd6..c173f158 100644 --- a/src/Rock3dGame/source/game/AIPlayer.cpp +++ b/src/Rock3dGame/source/game/AIPlayer.cpp @@ -494,7 +494,7 @@ void AIDebug::GrActor::DoRender(graph::Engine& engine) triLines[0].pos = glm::vec3(triData.verts[0].get()); triLines[1].pos = glm::vec3(triData.verts[1].get()); triLines[2].pos = glm::vec3(triData.verts[2].get()); - triLines[0].diffuse = triLines[1].diffuse = triLines[2].diffuse = abs(myNorm.x) > 0.5f ? clrRed : clrBlue; + triLines[0].diffuse = triLines[1].diffuse = triLines[2].diffuse = std::abs(myNorm.x) > 0.5f ? clrRed : clrBlue; triLines[3] = triLines[0]; engine.GetDriver().GetDevice()->SetFVF(res::VertexPD::fvf); engine.GetDriver().GetDevice()->DrawPrimitiveUP(D3DPT_LINESTRIP, 3, triLines, sizeof(res::VertexPD)); diff --git a/src/Rock3dGame/source/game/CameraManager.cpp b/src/Rock3dGame/source/game/CameraManager.cpp index ef5786c6..1e41828f 100644 --- a/src/Rock3dGame/source/game/CameraManager.cpp +++ b/src/Rock3dGame/source/game/CameraManager.cpp @@ -414,10 +414,10 @@ void CameraManager::Control::OnInputFrame(float deltaTime) //Ограничиваем смещение в пределах квадрата на плоскости смещения чтобы камера не уезжала за объект //targOff.x = lsl::ClampValue(targOff.x, -camBorder.x, camBorder.y); //targOff.y = lsl::ClampValue(targOff.y, -camBorder.w, camBorder.z); - if (abs(targOff.y) > 0.1f && abs(targOff.x/targOff.y) < camera->GetAspect()) + if (std::abs(targOff.y) > 0.1f && std::abs(targOff.x/targOff.y) < camera->GetAspect()) { float yCoord = lsl::ClampValue(targOff.y, -camBorder.w, camBorder.z); - float xCoord = abs(yCoord) / yTargetDot; + float xCoord = std::abs(yCoord) / yTargetDot; xCoord = sqrt(xCoord * xCoord - yCoord * yCoord); if (targOff.x < 0) xCoord = -xCoord; @@ -427,7 +427,7 @@ void CameraManager::Control::OnInputFrame(float deltaTime) else { float xCoord = lsl::ClampValue(targOff.x, -camBorder.x, camBorder.y); - float yCoord = abs(xCoord) / sqrt(1.0f - (yTargetDot * yTargetDot)); + float yCoord = std::abs(xCoord) / sqrt(1.0f - (yTargetDot * yTargetDot)); yCoord = sqrt(yCoord * yCoord - xCoord * xCoord); if (targOff.y < 0) yCoord = -yCoord; diff --git a/src/Rock3dGame/source/game/FinalMenu.cpp b/src/Rock3dGame/source/game/FinalMenu.cpp index 45af1b54..83b6af57 100644 --- a/src/Rock3dGame/source/game/FinalMenu.cpp +++ b/src/Rock3dGame/source/game/FinalMenu.cpp @@ -277,7 +277,7 @@ void FinalMenu::OnProgress(float deltaTime) { _labels[mlCredits]->SetVScroll(_labels[mlCredits]->GetVScroll() - 20.0f * deltaTime); - if (abs(_labels[mlCredits]->GetVScroll()) > _labels[mlCredits]->GetTextAABB().GetSize().y) + if (std::abs(_labels[mlCredits]->GetVScroll()) > _labels[mlCredits]->GetTextAABB().GetSize().y) _labels[mlCredits]->SetVScroll(_labels[mlCredits]->GetSize().y); } }*/ diff --git a/src/Rock3dGame/source/game/GameBase.cpp b/src/Rock3dGame/source/game/GameBase.cpp index 0d41bfc9..a247af5e 100644 --- a/src/Rock3dGame/source/game/GameBase.cpp +++ b/src/Rock3dGame/source/game/GameBase.cpp @@ -792,7 +792,7 @@ void PxWheelSlipEffect::OnProgress(float deltaTime) NxShape* contact = wheel.GetShape()->GetNxShape()->getContact(contactDesc); float slip = 0.0f; if (contact) - slip = std::max(abs(contactDesc.lateralSlip) - slipLat, 0.0f) + std::max(abs(contactDesc.longitudalSlip) - slipLong, 0.0f); + slip = std::max(std::abs(contactDesc.lateralSlip) - slipLat, 0.0f) + std::max(std::abs(contactDesc.longitudalSlip) - slipLong, 0.0f); if (slip > 0) { @@ -1043,7 +1043,7 @@ void SoundMotor::OnMotor(float deltaTime, float rpm, float minRPM, float maxRPM) { float distRPM = rpm - _curRPM; float rpmDT = motorLag * deltaTime * (distRPM > 0 ? 1.0f : -1.0f); - _curRPM = _curRPM + lsl::ClampValue(rpmDT, -abs(distRPM), abs(distRPM)); + _curRPM = _curRPM + lsl::ClampValue(rpmDT, -std::abs(distRPM), std::abs(distRPM)); float idleAlpha = lsl::ClampValue(0.5f * (_curRPM - minRPM)/minRPM, 0.0f, 1.0f); float alpha = ClampValue((_curRPM - minRPM)/(maxRPM - minRPM), 0.0f, 1.0f); @@ -1213,7 +1213,7 @@ void PodushkaAnim::OnProgress(float deltaTime) GameCar* car = lsl::StaticCast(GetGameObj()->GetParent()); float linSpeed = car->GetLeadWheelSpeed(); - if (abs(linSpeed) > 1.0f) + if (std::abs(linSpeed) > 1.0f) { D3DMATRIX localMat = _target->GetMat(); glm::quat rotQuat = glm::angleAxis(glm::pi() * deltaTime * linSpeed * 0.1f, XVector); diff --git a/src/Rock3dGame/source/game/GameCar.cpp b/src/Rock3dGame/source/game/GameCar.cpp index 1c830c5d..76b253e1 100644 --- a/src/Rock3dGame/source/game/GameCar.cpp +++ b/src/Rock3dGame/source/game/GameCar.cpp @@ -30,7 +30,7 @@ float CarMotorDesc::CalcRPM(float wheelAxleSpeed, unsigned curGear) const return static_cast(idlingRPM); else { - float rpm = abs(wheelAxleSpeed) * gears[curGear] * gearDiff * 60.0f / (2.0f * glm::pi()); + float rpm = std::abs(wheelAxleSpeed) * gears[curGear] * gearDiff * 60.0f / (2.0f * glm::pi()); return std::min(rpm, static_cast(maxRPM)); } @@ -68,7 +68,7 @@ CarWheel::MyContactModify::MyContactModify(CarWheel* wheel): _wheel(wheel) bool CarWheel::MyContactModify::onWheelContact(NxWheelShape* wheelShape, NxVec3& contactPoint, NxVec3& contactNormal, NxReal& contactPosition, NxReal& normalForce, NxShape* otherShape, NxMaterialIndex& otherShapeMaterialIndex, NxU32 otherShapeFeatureIndex) { - float normReaction = abs(wheelShape->getActor().getMass() * contactNormal.dot(px::Scene::cDefGravity) / _wheel->_owner->Size()); + float normReaction = std::abs(wheelShape->getActor().getMass() * contactNormal.dot(px::Scene::cDefGravity) / _wheel->_owner->Size()); if (_wheel->_owner->GetOwner()->IsClutchLocked()) { @@ -237,7 +237,7 @@ void CarWheel::OnProgress(float deltaTime) if (contact) { - slip = abs(contactDesc.lateralSlip) > slipLat || abs(contactDesc.longitudalSlip) > slipLong; + slip = std::abs(contactDesc.lateralSlip) > slipLat || std::abs(contactDesc.longitudalSlip) > slipLong; } if (slip) @@ -527,7 +527,7 @@ void GameCar::MotorProgress(float deltaTime, float& curMotorTorque, float& curBr inline float NxQuatAngle(const NxQuat& quat1, const NxQuat& quat2) { - return acos(abs(quat1.dot(quat2)/sqrt(quat1.magnitudeSquared() * quat2.magnitudeSquared()))) * 2; + return acos(std::abs(quat1.dot(quat2)/sqrt(quat1.magnitudeSquared() * quat2.magnitudeSquared()))) * 2; } inline const void NxQuatRotation(NxQuat& quat, const NxQuat& quat1, const NxQuat& quat2) @@ -718,12 +718,12 @@ void GameCar::StabilizeForce(float deltaTime) angMomentum = invMat * angMomentum; if (!_anyWheelContact && _clampYTorque > 0) { - float angY = std::min(abs(angMomentum.y), GetPxActor().GetNxActor()->getMassSpaceInertiaTensor().y * _clampYTorque * 2.0f); + float angY = std::min(std::abs(angMomentum.y), GetPxActor().GetNxActor()->getMassSpaceInertiaTensor().y * _clampYTorque * 2.0f); angMomentum.y = angMomentum.y >= 0 ? angY : -angY; } if (!_anyWheelContact && _clampXTorque > 0) { - float angX = std::min(abs(angMomentum.x), GetPxActor().GetNxActor()->getMassSpaceInertiaTensor().x * _clampXTorque * 2.0f); + float angX = std::min(std::abs(angMomentum.x), GetPxActor().GetNxActor()->getMassSpaceInertiaTensor().x * _clampXTorque * 2.0f); angMomentum.x = angMomentum.x >= 0 ? angX : -angX; } @@ -963,7 +963,7 @@ bool GameCar::OnContactModify(const px::Scene::OnContactModifyEvent& contact) if (velocity.magnitude() > 0.1f) { velocity.normalize(); - float k = abs(velocity.dot(-triNorm)); + float k = std::abs(velocity.dot(-triNorm)); float friction = contact.data->dynamicFriction0; friction = friction + (-0.3f - friction) * lsl::ClampValue(k, 0.0f, 1.0f); @@ -1029,7 +1029,7 @@ void GameCar::OnContact(const px::Scene::OnContactEvent& contact) NxVec3 vel = GetPxActor().GetNxActor()->getLinearVelocity(); NxContactStreamIterator contIter(contact.stream); - bool borderContact = abs(norm.z) < 0.5f && ContainsContactGroup(contIter, contact.actorIndex, px::Scene::cdgShotTransparency); + bool borderContact = std::abs(norm.z) < 0.5f && ContainsContactGroup(contIter, contact.actorIndex, px::Scene::cdgShotTransparency); if (borderContact) _clutchTime = 0.0f; @@ -1044,7 +1044,7 @@ void GameCar::OnContact(const px::Scene::OnContactEvent& contact) NxVec3 tang = vel; tang.normalize(); - float tangDot = abs(tang.dot(norm)); + float tangDot = std::abs(tang.dot(norm)); NxVec3 dir = NxVec3(1.0f, 0.0f, 0.0f); GetPxActor().GetNxActor()->getGlobalOrientationQuat().rotate(dir); @@ -1061,12 +1061,12 @@ void GameCar::OnContact(const px::Scene::OnContactEvent& contact) if (tang.z > 0) { tang = contact.pair->sumFrictionForce; - tang.z = abs(tang.z); + tang.z = std::abs(tang.z); } else { tang = contact.pair->sumFrictionForce; - tang.z = -abs(tang.z); + tang.z = -std::abs(tang.z); } tang.normalize(); @@ -1079,7 +1079,7 @@ void GameCar::OnContact(const px::Scene::OnContactEvent& contact) float velN = norm.dot(vel); //if (dirDot < 0.707f && dirDot2) - velN = lsl::ClampValue(abs(velN), 4.0f, 14.0f); //2, 12 + velN = lsl::ClampValue(std::abs(velN), 4.0f, 14.0f); //2, 12 float velT = tang.dot(vel) * 0.5f; vel = norm * velN + tang * velT; @@ -1301,7 +1301,7 @@ float GameCar::GetLeadWheelSpeed() float speed = wheel->getAxleSpeed() * wheel->getRadius(); //погрешность 0.1 м/с - return abs(speed) > 0.1f ? speed : 0.0f; + return std::abs(speed) > 0.1f ? speed : 0.0f; } else return 0; @@ -1322,7 +1322,7 @@ float GameCar::GetDrivenWheelSpeed() { float speed = wheel->GetShape()->GetNxShape()->getAxleSpeed() * wheel->GetShape()->GetRadius(); //погрешность 0.1 м/с - return abs(speed) > 0.1f ? speed : 0.0f; + return std::abs(speed) > 0.1f ? speed : 0.0f; } else return 0; @@ -1503,7 +1503,7 @@ float GameCar::GetSpeed(NxActor* nxActor, const glm::vec3& dir) { float speed = glm::dot(dir, glm::make_vec3(nxActor->getLinearVelocity().get())); //погрешность 1 м/с - if (abs(speed) < 1.0f) + if (std::abs(speed) < 1.0f) speed = 0.0f; return speed; diff --git a/src/Rock3dGame/source/game/GameObject.cpp b/src/Rock3dGame/source/game/GameObject.cpp index c0832825..8e89ec4f 100644 --- a/src/Rock3dGame/source/game/GameObject.cpp +++ b/src/Rock3dGame/source/game/GameObject.cpp @@ -854,7 +854,7 @@ void GameObject::SetRotSync(const glm::quat& value) _rotSync = value; _rotSyncAxis = glm::axis(_rotSync); _rotSyncAngle = glm::angle(_rotSync); - float angle = abs(_rotSyncAngle); + float angle = std::abs(_rotSyncAngle); if (angle > glm::pi()) { @@ -892,7 +892,7 @@ void GameObject::SetRotSync2(const glm::quat& curSync, const glm::quat& newSync) _rotSyncAxis2 = glm::axis(dRot); _rotSyncAngle2 = glm::angle(dRot); - float angle = abs(_rotSyncAngle2); + float angle = std::abs(_rotSyncAngle2); if (angle > glm::pi()) { _rotSyncAngle2 = (2 * glm::pi() - angle) * (_rotSyncAngle2 > 0 ? -1.0f : 1.0f); diff --git a/src/Rock3dGame/source/game/HudMenu.cpp b/src/Rock3dGame/source/game/HudMenu.cpp index d7221a27..917b2f6c 100644 --- a/src/Rock3dGame/source/game/HudMenu.cpp +++ b/src/Rock3dGame/source/game/HudMenu.cpp @@ -219,7 +219,7 @@ void PlayerStateFrame::ProccessPickItems(float deltaTime) glm::vec2 pos = item.pos + glm::vec2(30, index * 85.0f + dPosY); glm::vec2 curPos = item.image->GetPos(); - if (abs(pos.x - curPos.x) > 0.001f || abs(pos.y - curPos.y) > 0.001f) + if (std::abs(pos.x - curPos.x) > 0.001f || std::abs(pos.y - curPos.y) > 0.001f) { curPos.x = std::min(curPos.x + 90.0f * deltaTime, pos.x); curPos.y = std::min(curPos.y + 120.0f * deltaTime, pos.y); @@ -447,7 +447,7 @@ void PlayerStateFrame::ProccessCarLifeBar(float deltaTime) vec.x = lsl::ClampValue(vec.x, -1.0f, 1.0f); vec.y = lsl::ClampValue(vec.y, -1.0f, 1.0f); - if ((abs(vec.x) == 1.0f || abs(vec.y) == 1.0f)) + if ((std::abs(vec.x) == 1.0f || std::abs(vec.y) == 1.0f)) targetAlpha = 0; glm::vec2 vpSize = menu()->GetGUI()->GetVPSize(); @@ -696,7 +696,7 @@ void PlayerStateFrame::UpdateState(float deltaTime) vec.y = lsl::ClampValue(vec.y, -1.0f, 1.0f); float targetAlpha = 1.0f; - if ((abs(vec.x) == 1.0f || abs(vec.y) == 1.0f) || carLife != NULL) + if ((std::abs(vec.x) == 1.0f || std::abs(vec.y) == 1.0f) || carLife != NULL) targetAlpha = std::max(opponent.point->GetMaterial().GetColor().a - 4.0f * deltaTime, 0.0f); glm::vec2 vpSize = menu()->GetGUI()->GetVPSize(); @@ -925,7 +925,7 @@ void MiniMapFrame::ComputeNode(Nodes::iterator sIter, Nodes::iterator eIter, Nod Vec2NormCCW(iter->midDir, iter->midNorm); //Вычисляем _nodeRadius - iter->cosDelta = abs(Vec2Dot(iter->dir, iter->prevDir)); + iter->cosDelta = std::abs(Vec2Dot(iter->dir, iter->prevDir)); //sinA/2 = sin(180 - D/2) = cos(D/2) = №(1 + cosD)/2 iter->sinAlpha2 = sqrt((1.0f + iter->cosDelta) / 2.0f); iter->nodeRadius = 0.5f*iter->size / iter->sinAlpha2; @@ -941,15 +941,15 @@ void MiniMapFrame::AlignNode(const Node& src, Node& dest, float cosErr, float si { glm::vec2 dir = glm::normalize(dest.pos - src.pos); - if (abs(dir.x) > cosErr) + if (std::abs(dir.x) > cosErr) { dest.pos.y = src.pos.y; } - if (abs(dir.y) > cosErr) + if (std::abs(dir.y) > cosErr) { dest.pos.x = src.pos.x; } - if (abs(dest.size - src.size) < sizeErr) + if (std::abs(dest.size - src.size) < sizeErr) { dest.size = src.size; } @@ -959,17 +959,17 @@ void MiniMapFrame::AlignMidNodes(Node& node1, Node& node2, float cosErr, float s { glm::vec2 dir = glm::normalize(node2.pos - node1.pos); - if (abs(dir.x) > cosErr) + if (std::abs(dir.x) > cosErr) { node1.pos.y = (node1.pos.y + node2.pos.y)/2.0f; node2.pos.y = node1.pos.y; } - if (abs(dir.y) > cosErr) + if (std::abs(dir.y) > cosErr) { node1.pos.x = (node1.pos.x + node2.pos.x)/2.0f; node2.pos.x = node1.pos.x; } - if (abs(node2.size - node1.size) < sizeErr) + if (std::abs(node2.size - node1.size) < sizeErr) { node1.size = (node1.size + node2.size)/2.0f; node2.size = node1.size; diff --git a/src/Rock3dGame/source/game/MainMenu2.cpp b/src/Rock3dGame/source/game/MainMenu2.cpp index ca02809d..8bc61483 100644 --- a/src/Rock3dGame/source/game/MainMenu2.cpp +++ b/src/Rock3dGame/source/game/MainMenu2.cpp @@ -1667,7 +1667,7 @@ void CreditsFrame::OnProgress(float deltaTime) { _label->SetVScroll(_label->GetVScroll() - 20.0f * deltaTime); - if (abs(_label->GetVScroll()) > _label->GetTextAABB().GetSize().y) + if (std::abs(_label->GetVScroll()) > _label->GetTextAABB().GetSize().y) _label->SetVScroll(_label->GetSize().y); } } diff --git a/src/Rock3dGame/source/game/Player.cpp b/src/Rock3dGame/source/game/Player.cpp index 5806b419..db86d879 100644 --- a/src/Rock3dGame/source/game/Player.cpp +++ b/src/Rock3dGame/source/game/Player.cpp @@ -998,7 +998,7 @@ void Player::CarState::Update(float deltaTime) maxSpeed = speed; maxSpeedTime = 0; } - else if (abs(maxSpeed - speed) < 5.0f) + else if (std::abs(maxSpeed - speed) < 5.0f) { maxSpeedTime = 0; } @@ -1010,7 +1010,7 @@ void Player::CarState::Update(float deltaTime) } /*//контроль за направляющим углом - float dirAngle = acos(abs(glm::dot(lastDir, dir3))); + float dirAngle = acos(std::abs(glm::dot(lastDir, dir3))); lastDir = dir3; summAngle += dirAngle; summAngleTime += deltaTime; @@ -1399,7 +1399,7 @@ void Player::CheatUpdate(float deltaTime) if (_cheatEnable && opponent) { - float dist = abs(_car.GetLap() - opponent->GetCar().GetLap()); + float dist = std::abs(_car.GetLap() - opponent->GetCar().GetLap()); dist = dist - floor(dist); dist = std::min(dist, 1.0f - dist); dist = dist * _car.GetPathLength(); @@ -1441,10 +1441,10 @@ void Player::SetCheatK(const Player::CarState& car, float torqueK, float steerK) if (car.gameObj == NULL) return; - if (abs(car.gameObj->GetMotorTorqueK() - torqueK) > 0.01f) + if (std::abs(car.gameObj->GetMotorTorqueK() - torqueK) > 0.01f) car.gameObj->SetMotorTorqueK(torqueK); - if (abs(car.gameObj->GetWheelSteerK() - steerK) > 0.01f) + if (std::abs(car.gameObj->GetWheelSteerK() - steerK) > 0.01f) car.gameObj->SetWheelSteerK(steerK); } @@ -1576,7 +1576,7 @@ Player* Player::FindClosestEnemy(float viewAngle, bool zTest) glm::vec4 dirPlane = PlaneFromPointNormal(carPos, carDir); float dist = PlaneDotCoord(dirPlane, enemyPos); - float absDist = abs(dist); + float absDist = std::abs(dist); //Объект ближе bool b1 = enemy == NULL || absDist < minDist; diff --git a/src/Rock3dGame/source/game/Race.cpp b/src/Rock3dGame/source/game/Race.cpp index 23209c34..9fda29e1 100644 --- a/src/Rock3dGame/source/game/Race.cpp +++ b/src/Rock3dGame/source/game/Race.cpp @@ -4096,7 +4096,7 @@ Planet::TrackMap::const_iterator Planet::GetTracks(int pass) const if (maxPass <= iter->first) maxPass = iter->first; - pass = abs(pass - 1) % maxPass + 1; + pass = std::abs(pass - 1) % maxPass + 1; Planet::TrackMap::const_iterator iter = _trackMap.find(pass); if (iter != _trackMap.end()) diff --git a/src/Rock3dGame/source/game/RaceMenu2.cpp b/src/Rock3dGame/source/game/RaceMenu2.cpp index add6fd9f..e3de5a00 100644 --- a/src/Rock3dGame/source/game/RaceMenu2.cpp +++ b/src/Rock3dGame/source/game/RaceMenu2.cpp @@ -106,7 +106,7 @@ void CarFrame::SetCar(Garage::Car* value, const glm::vec4& color, bool secret) (*iter)->SetRot(rot); } - wheelOffs = abs((*iter)->GetPos().z) + (*iter)->GetShape()->GetRadius() + (*iter)->GetOffset().z; + wheelOffs = std::abs((*iter)->GetPos().z) + (*iter)->GetShape()->GetRadius() + (*iter)->GetOffset().z; } _carMapObj->GetGameObj().SetWorldPos(glm::vec3(0, 0, wheelOffs - 0.71f)); @@ -261,7 +261,7 @@ void CarFrame::SetCamStyle(CamStyle value, bool instant) for (int i = 0; i < 8; ++i) { - float angle = abs(QuatAngle(camRot, rotList[i])); + float angle = std::abs(QuatAngle(camRot, rotList[i])); if (i == 0 || minAngle > angle) { minAngle = angle; diff --git a/src/Rock3dGame/source/game/Trace.cpp b/src/Rock3dGame/source/game/Trace.cpp index 692d216a..bdb8c264 100644 --- a/src/Rock3dGame/source/game/Trace.cpp +++ b/src/Rock3dGame/source/game/Trace.cpp @@ -291,7 +291,7 @@ unsigned WayNode::Tile::ComputeTrackInd(const glm::vec2& point) const float trackDiv = tileWidth / cTrackCnt; float trackPos = Line2DistToPoint(_dirLine, point); - unsigned trackInd = static_cast(abs(floor(trackPos/trackDiv + cTrackCnt/2.0f))); + unsigned trackInd = static_cast(std::abs(floor(trackPos/trackDiv + cTrackCnt/2.0f))); trackInd = std::max(trackInd , 0); trackInd = std::min(trackInd , cTrackCnt - 1); @@ -379,7 +379,7 @@ bool WayNode::Tile::IsContains(const glm::vec3& point, bool lengthClamp, float* //Первое условие, ограничение по длине //Второе условие, ограничение по ширине //Третье условие, ограничение по высоте - return (!lengthClamp || dist1 * dist2 < 0) && abs(dirDist) < (halfWidth + widthErr) && abs(coordZ - point.z) < height; + return (!lengthClamp || dist1 * dist2 < 0) && std::abs(dirDist) < (halfWidth + widthErr) && std::abs(coordZ - point.z) < height; } bool WayNode::Tile::IsZLevelContains(const glm::vec3& point, float* dist) const @@ -615,7 +615,7 @@ bool WayNode::IsContains(const glm::vec3& point, float* dist) const return midDist < _tile->GetNodeRadius(); - //return IsContains2(glm::vec2(point), dist) && abs(point.z - GetPos().z) < _point->GetSize()/2.0f; + //return IsContains2(glm::vec2(point), dist) && std::abs(point.z - GetPos().z) < _point->GetSize()/2.0f; } WayPath* WayNode::GetPath() diff --git a/src/Rock3dGame/source/game/Weapon.cpp b/src/Rock3dGame/source/game/Weapon.cpp index a0a97a58..603a7015 100644 --- a/src/Rock3dGame/source/game/Weapon.cpp +++ b/src/Rock3dGame/source/game/Weapon.cpp @@ -332,7 +332,7 @@ glm::vec3 Proj::CalcSpeed(GameObject* weapon) speed = std::max(speed, _desc.speedRelativeMin + std::max(glm::dot(dir, weapon->GetPxVelocityLerp()), 0.0f)); } - float cosa = abs(glm::dot(dir, glm::vec3(0, 0, 1))); + float cosa = std::abs(glm::dot(dir, glm::vec3(0, 0, 1))); if (cosa < 0.707f) { dir.z = 0; @@ -661,7 +661,7 @@ void Proj::MasloContact(const px::Scene::OnContactEvent& contact) float dist = PlaneDotCoord(plane, GetWorldPos()); if (car->GetPxActor().GetNxActor()->getLinearVelocity().magnitude() > 3.0f) - car->LockClutch(abs(dist) > 0.1f && dist > 0 ? -_desc.damage : _desc.damage); + car->LockClutch(std::abs(dist) > 0.1f && dist > 0 ? -_desc.damage : _desc.damage); } } @@ -1184,7 +1184,7 @@ void Proj::ThunderContact(const px::Scene::OnContactEvent& contact) NxVec3 velNorm = velocity; velNorm.normalize(); float angle = velNorm.dot(norm); - if (abs(angle) > 0.1f) + if (std::abs(angle) > 0.1f) { glm::vec4 plane = PlaneFromPointNormal(NullVector, glm::make_vec3(norm.get())); D3DMATRIX mat = MatrixReflect(plane); diff --git a/src/Rock3dGame/source/net/NetPlayer.cpp b/src/Rock3dGame/source/net/NetPlayer.cpp index 7789941e..ce2e4221 100644 --- a/src/Rock3dGame/source/net/NetPlayer.cpp +++ b/src/Rock3dGame/source/net/NetPlayer.cpp @@ -581,7 +581,7 @@ void NetPlayer::ResponseStream(const net::NetMessage& msg, net::BitStream& strea glm::quat dRot = QuatRotation(car->GetGrActor().GetRot(), rot); glm::vec3 dRotAxis = glm::axis(dRot); float dRotAngle = glm::angle(dRot); - if (abs(dRotAngle) > glm::pi()/24) + if (std::abs(dRotAngle) > glm::pi()/24) { car->GetPxActor().SetRot(rot); car->SetRotSync(dRot); @@ -823,7 +823,7 @@ bool NetPlayer::CheckColor(const glm::vec4& value) const continue; glm::vec4 diff = (*iter)->GetColor() - value; - if (abs(diff.r) < 0.001f && abs(diff.g) < 0.001f && abs(diff.b) < 0.001f && abs(diff.a) < 0.001f) + if (std::abs(diff.r) < 0.001f && std::abs(diff.g) < 0.001f && std::abs(diff.b) < 0.001f && std::abs(diff.a) < 0.001f) return false; } From 54859d6fa2ac8f23c24861dd4dee7fe39ef3faf0 Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Tue, 1 Nov 2022 19:58:38 +0300 Subject: [PATCH 51/55] linux: fix include INetPlayer.h and MAXUINT define --- src/NetLib/include/net/INetService.h | 2 -- src/NetLib/include/net/NetCommon.h | 7 ++++--- src/NetLib/include/net/NetLib.h | 1 + src/XPlatform/header/xplatform.h | 3 +++ 4 files changed, 8 insertions(+), 5 deletions(-) diff --git a/src/NetLib/include/net/INetService.h b/src/NetLib/include/net/INetService.h index bad9a16b..ad353509 100644 --- a/src/NetLib/include/net/INetService.h +++ b/src/NetLib/include/net/INetService.h @@ -2,8 +2,6 @@ #include "INetConnection.h" #include "INetChannel.h" -#include "INetPlayer.h" - #include "NetModel.h" namespace net diff --git a/src/NetLib/include/net/NetCommon.h b/src/NetLib/include/net/NetCommon.h index ec194aa0..16f2b947 100644 --- a/src/NetLib/include/net/NetCommon.h +++ b/src/NetLib/include/net/NetCommon.h @@ -1,7 +1,10 @@ #pragma once #include +#ifdef _WIN32 +#define NETLIB_DYNAMIC_LINK #include +#endif #include "MathCommon.h" #include "lslCommon.h" @@ -11,8 +14,6 @@ #include "lslClassList.h" #include "lslSDK.h" -#define NETLIB_DYNAMIC_LINK - #ifdef NETLIB_DYNAMIC_LINK #ifdef NETLIB_EXPORTS #define NETLIB_API __declspec(dllexport) @@ -340,7 +341,7 @@ template inline unsigned Write(std::ostream& stream, const std::basic_ template inline unsigned Read(std::istream& stream, std::basic_string<_T>& value, unsigned size) { value.resize(size); - Read(stream, const_cast::pointer>(value.data()), sizeof(std::basic_string<_T>::value_type) * size); + Read(stream, const_cast::pointer>(value.data()), sizeof(std::basic_string<_T>::value_type) * size); return size; } diff --git a/src/NetLib/include/net/NetLib.h b/src/NetLib/include/net/NetLib.h index 01edb0a1..901653bc 100644 --- a/src/NetLib/include/net/NetLib.h +++ b/src/NetLib/include/net/NetLib.h @@ -2,6 +2,7 @@ #include "NetCommon.h" #include "INetService.h" +#include "INetPlayer.h" namespace net { diff --git a/src/XPlatform/header/xplatform.h b/src/XPlatform/header/xplatform.h index 6c88a3b2..872b8f1f 100644 --- a/src/XPlatform/header/xplatform.h +++ b/src/XPlatform/header/xplatform.h @@ -5,8 +5,11 @@ #else // NOT _WIN32 +#include + #define PATH_SEP '/' +#define MAXUINT UINT_MAX #define FLT_MAX __FLT_MAX__ #define CP_ACP 0 // Windows ANSI code page From 8085564166e16fc5953803da64f114f8375f65c5 Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Tue, 1 Nov 2022 20:01:58 +0300 Subject: [PATCH 52/55] linux: fix path separators in include files --- src/NetLib/source/net/BitStream.cpp | 2 +- src/NetLib/source/net/NetChannel.cpp | 6 +-- src/NetLib/source/net/NetChat.cpp | 2 +- src/NetLib/source/net/NetClient.cpp | 4 +- src/NetLib/source/net/NetCommon.cpp | 2 +- src/NetLib/source/net/NetConnection.cpp | 4 +- src/NetLib/source/net/NetConnectionTCP.cpp | 2 +- src/NetLib/source/net/NetLib.cpp | 4 +- src/NetLib/source/net/NetMasterServer.cpp | 4 +- src/NetLib/source/net/NetModel.cpp | 2 +- src/NetLib/source/net/NetPlayer.cpp | 4 +- src/NetLib/source/net/NetServer.cpp | 4 +- src/NetLib/source/net/NetService.cpp | 4 +- src/Rock3dEngine/header/GraphManager.h | 40 +++++++++---------- src/Rock3dEngine/header/graph/Actor.h | 2 +- src/Rock3dEngine/header/graph/ContextInfo.h | 2 +- src/Rock3dEngine/header/graph/FxManager.h | 2 +- src/Rock3dEngine/header/graph/GrassField.h | 2 +- src/Rock3dEngine/header/graph/SceneManager.h | 2 +- src/Rock3dEngine/header/graph/VideoResource.h | 2 +- src/Rock3dEngine/header/graph/WaterPlane.h | 2 +- src/Rock3dEngine/header/gui/GUI.h | 4 +- src/Rock3dEngine/header/px/Physx.h | 2 +- src/Rock3dEngine/header/res/D3DXImageFile.h | 2 +- src/Rock3dEngine/source/GraphManager.cpp | 4 +- src/Rock3dEngine/source/graph/Actor.cpp | 2 +- .../source/graph/ActorManager.cpp | 2 +- src/Rock3dEngine/source/graph/BloomEffect.cpp | 2 +- src/Rock3dEngine/source/graph/ClearSurf.cpp | 2 +- src/Rock3dEngine/source/graph/ContextInfo.cpp | 2 +- src/Rock3dEngine/source/graph/DepthMap.cpp | 2 +- .../source/graph/Driver/D3D9RenderDriver.cpp | 2 +- .../source/graph/Driver/RenderDriver.cpp | 2 +- src/Rock3dEngine/source/graph/Engine.cpp | 4 +- src/Rock3dEngine/source/graph/FogPlane.cpp | 2 +- src/Rock3dEngine/source/graph/FxManager.cpp | 4 +- .../source/graph/GaussianBlur.cpp | 2 +- src/Rock3dEngine/source/graph/GrassField.cpp | 2 +- src/Rock3dEngine/source/graph/HDREffect.cpp | 2 +- .../source/graph/MappingShaders.cpp | 2 +- .../source/graph/MaterialLibrary.cpp | 2 +- .../source/graph/OctreeRender.cpp | 2 +- src/Rock3dEngine/source/graph/OctreeSort.cpp | 2 +- .../source/graph/RenderToTexture.cpp | 2 +- .../source/graph/SceneManager.cpp | 4 +- src/Rock3dEngine/source/graph/SceneNode.cpp | 2 +- src/Rock3dEngine/source/graph/SceneRender.cpp | 2 +- src/Rock3dEngine/source/graph/Shader.cpp | 2 +- .../source/graph/ShadowMapRender.cpp | 4 +- src/Rock3dEngine/source/graph/SkyBox.cpp | 2 +- src/Rock3dEngine/source/graph/StdNode.cpp | 2 +- src/Rock3dEngine/source/graph/SunShaft.cpp | 2 +- src/Rock3dEngine/source/graph/ToneMapping.cpp | 2 +- .../source/graph/VideoResource.cpp | 4 +- src/Rock3dEngine/source/graph/WaterPlane.cpp | 2 +- src/Rock3dEngine/source/gui/GUI.cpp | 4 +- src/Rock3dEngine/source/px/Physx.cpp | 4 +- src/Rock3dEngine/source/px/Stream.cpp | 4 +- src/Rock3dEngine/source/res/D3DXImageFile.cpp | 4 +- src/Rock3dEngine/source/res/GraphResource.cpp | 2 +- src/Rock3dEngine/source/res/R3DFile.cpp | 2 +- src/Rock3dGame/header/edit/Edit.h | 6 +-- src/Rock3dGame/header/edit/Trace.h | 2 +- src/Rock3dGame/header/game/DataBase.h | 4 +- src/Rock3dGame/header/game/GameBase.h | 6 +-- src/Rock3dGame/header/game/GameMode.h | 4 +- src/Rock3dGame/header/game/Logic.h | 2 +- src/Rock3dGame/header/game/Menu.h | 4 +- src/Rock3dGame/header/game/ResourceManager.h | 2 +- src/Rock3dGame/header/game/World.h | 4 +- src/Rock3dGame/header/net/NetPlayer.h | 2 +- src/Rock3dGame/header/net/NetRace.h | 2 +- src/Rock3dGame/header/net/SteamCommon.h | 2 +- src/Rock3dGame/header/snd/Audio.h | 6 +-- src/Rock3dGame/header/stdafx.h | 4 +- src/Rock3dGame/source/Rock3dGame.cpp | 2 +- src/Rock3dGame/source/edit/Edit.cpp | 4 +- src/Rock3dGame/source/edit/EditDataBase.cpp | 6 +-- src/Rock3dGame/source/edit/EditMap.cpp | 8 ++-- src/Rock3dGame/source/edit/EditTrace.cpp | 6 +-- src/Rock3dGame/source/edit/EditUtils.cpp | 6 +-- src/Rock3dGame/source/edit/SceneControl.cpp | 6 +-- src/Rock3dGame/source/game/AICar.cpp | 4 +- src/Rock3dGame/source/game/AIPlayer.cpp | 4 +- .../source/game/AchievmentModel.cpp | 4 +- src/Rock3dGame/source/game/CameraManager.cpp | 4 +- src/Rock3dGame/source/game/ControlManager.cpp | 4 +- src/Rock3dGame/source/game/DataBase.cpp | 4 +- src/Rock3dGame/source/game/DialogMenu2.cpp | 4 +- src/Rock3dGame/source/game/Environment.cpp | 4 +- src/Rock3dGame/source/game/FinalMenu.cpp | 6 +-- src/Rock3dGame/source/game/FinishMenu.cpp | 4 +- src/Rock3dGame/source/game/GameBase.cpp | 10 ++--- src/Rock3dGame/source/game/GameCar.cpp | 6 +-- src/Rock3dGame/source/game/GameMode.cpp | 4 +- src/Rock3dGame/source/game/GameObject.cpp | 6 +-- src/Rock3dGame/source/game/HudMenu.cpp | 4 +- src/Rock3dGame/source/game/HumanPlayer.cpp | 4 +- src/Rock3dGame/source/game/Logic.cpp | 4 +- src/Rock3dGame/source/game/MainMenu2.cpp | 4 +- src/Rock3dGame/source/game/Map.cpp | 4 +- src/Rock3dGame/source/game/MapObj.cpp | 10 ++--- src/Rock3dGame/source/game/Menu.cpp | 4 +- src/Rock3dGame/source/game/MenuSystem.cpp | 2 +- src/Rock3dGame/source/game/OptionsMenu.cpp | 6 +-- src/Rock3dGame/source/game/Player.cpp | 4 +- src/Rock3dGame/source/game/Race.cpp | 4 +- src/Rock3dGame/source/game/RaceMenu2.cpp | 6 +-- src/Rock3dGame/source/game/RecordLib.cpp | 2 +- .../source/game/ResourceManager.cpp | 4 +- src/Rock3dGame/source/game/RockCar.cpp | 6 +-- src/Rock3dGame/source/game/Trace.cpp | 2 +- src/Rock3dGame/source/game/TraceGfx.cpp | 2 +- src/Rock3dGame/source/game/View.cpp | 4 +- src/Rock3dGame/source/game/Weapon.cpp | 6 +-- src/Rock3dGame/source/game/World.cpp | 4 +- src/Rock3dGame/source/net/NetGame.cpp | 4 +- src/Rock3dGame/source/net/NetPlayer.cpp | 4 +- src/Rock3dGame/source/net/NetRace.cpp | 4 +- src/Rock3dGame/source/net/SteamService.cpp | 4 +- src/Rock3dGame/source/net/p2pauth.cpp | 4 +- src/Rock3dGame/source/snd/Audio.cpp | 2 +- src/Rock3dGame/source/video/VideoPlayer.cpp | 2 +- src/Rock3dGame/source/video/playback.cpp | 4 +- src/Rock3dGame/source/video/video.cpp | 2 +- 125 files changed, 236 insertions(+), 236 deletions(-) diff --git a/src/NetLib/source/net/BitStream.cpp b/src/NetLib/source/net/BitStream.cpp index 3786c30c..35a195e7 100644 --- a/src/NetLib/source/net/BitStream.cpp +++ b/src/NetLib/source/net/BitStream.cpp @@ -1,6 +1,6 @@ #include "stdafx.h" -#include "net\BitStream.h" +#include "net/BitStream.h" namespace net { diff --git a/src/NetLib/source/net/NetChannel.cpp b/src/NetLib/source/net/NetChannel.cpp index d6acebf1..61c23fdf 100644 --- a/src/NetLib/source/net/NetChannel.cpp +++ b/src/NetLib/source/net/NetChannel.cpp @@ -1,9 +1,9 @@ #include "stdafx.h" -#include "net\NetChannel.h" -#include "net\NetService.h" +#include "net/NetChannel.h" +#include "net/NetService.h" -#include "net\NetConnectionTCP.h" +#include "net/NetConnectionTCP.h" namespace net { diff --git a/src/NetLib/source/net/NetChat.cpp b/src/NetLib/source/net/NetChat.cpp index 26f9699d..757d378a 100644 --- a/src/NetLib/source/net/NetChat.cpp +++ b/src/NetLib/source/net/NetChat.cpp @@ -1,6 +1,6 @@ #include "stdafx.h" -#include "net\NetChat.h" +#include "net/NetChat.h" namespace net { diff --git a/src/NetLib/source/net/NetClient.cpp b/src/NetLib/source/net/NetClient.cpp index aab41f10..899336fc 100644 --- a/src/NetLib/source/net/NetClient.cpp +++ b/src/NetLib/source/net/NetClient.cpp @@ -1,7 +1,7 @@ #include "stdafx.h" -#include "net\NetClient.h" -#include "net\NetService.h" +#include "net/NetClient.h" +#include "net/NetService.h" namespace net { diff --git a/src/NetLib/source/net/NetCommon.cpp b/src/NetLib/source/net/NetCommon.cpp index 9f401498..2ad9be6a 100644 --- a/src/NetLib/source/net/NetCommon.cpp +++ b/src/NetLib/source/net/NetCommon.cpp @@ -1,6 +1,6 @@ #include "stdafx.h" -#include "net\NetCommon.h" +#include "net/NetCommon.h" namespace net { diff --git a/src/NetLib/source/net/NetConnection.cpp b/src/NetLib/source/net/NetConnection.cpp index ed28aa26..e5b39f55 100644 --- a/src/NetLib/source/net/NetConnection.cpp +++ b/src/NetLib/source/net/NetConnection.cpp @@ -1,7 +1,7 @@ #include "stdafx.h" -#include "net\NetConnection.h" -#include "net\NetService.h" +#include "net/NetConnection.h" +#include "net/NetService.h" namespace net { diff --git a/src/NetLib/source/net/NetConnectionTCP.cpp b/src/NetLib/source/net/NetConnectionTCP.cpp index 8fda1596..78a5dd68 100644 --- a/src/NetLib/source/net/NetConnectionTCP.cpp +++ b/src/NetLib/source/net/NetConnectionTCP.cpp @@ -1,6 +1,6 @@ #include "stdafx.h" -#include "net\NetConnectionTCP.h" +#include "net/NetConnectionTCP.h" namespace net { diff --git a/src/NetLib/source/net/NetLib.cpp b/src/NetLib/source/net/NetLib.cpp index 4002023f..d2be6bfd 100644 --- a/src/NetLib/source/net/NetLib.cpp +++ b/src/NetLib/source/net/NetLib.cpp @@ -1,7 +1,7 @@ #include "stdafx.h" -#include "net\NetLib.h" -#include "net\NetService.h" +#include "net/NetLib.h" +#include "net/NetService.h" namespace net { diff --git a/src/NetLib/source/net/NetMasterServer.cpp b/src/NetLib/source/net/NetMasterServer.cpp index 8db593ba..4f1657e5 100644 --- a/src/NetLib/source/net/NetMasterServer.cpp +++ b/src/NetLib/source/net/NetMasterServer.cpp @@ -1,7 +1,7 @@ #include "stdafx.h" -#include "net\NetMasterServer.h" -#include "net\NetService.h" +#include "net/NetMasterServer.h" +#include "net/NetService.h" namespace net { diff --git a/src/NetLib/source/net/NetModel.cpp b/src/NetLib/source/net/NetModel.cpp index d16a3e0f..dab428c6 100644 --- a/src/NetLib/source/net/NetModel.cpp +++ b/src/NetLib/source/net/NetModel.cpp @@ -1,6 +1,6 @@ #include "stdafx.h" -#include "net\NetModel.h" +#include "net/NetModel.h" namespace net { diff --git a/src/NetLib/source/net/NetPlayer.cpp b/src/NetLib/source/net/NetPlayer.cpp index ef151e7f..ba6a15b6 100644 --- a/src/NetLib/source/net/NetPlayer.cpp +++ b/src/NetLib/source/net/NetPlayer.cpp @@ -1,7 +1,7 @@ #include "stdafx.h" -#include "net\NetPlayer.h" -#include "net\NetService.h" +#include "net/NetPlayer.h" +#include "net/NetService.h" namespace net { diff --git a/src/NetLib/source/net/NetServer.cpp b/src/NetLib/source/net/NetServer.cpp index 234079e9..19de7214 100644 --- a/src/NetLib/source/net/NetServer.cpp +++ b/src/NetLib/source/net/NetServer.cpp @@ -1,7 +1,7 @@ #include "stdafx.h" -#include "net\NetServer.h" -#include "net\NetService.h" +#include "net/NetServer.h" +#include "net/NetService.h" namespace net { diff --git a/src/NetLib/source/net/NetService.cpp b/src/NetLib/source/net/NetService.cpp index b0405f82..4f4c1b6f 100644 --- a/src/NetLib/source/net/NetService.cpp +++ b/src/NetLib/source/net/NetService.cpp @@ -1,7 +1,7 @@ #include "stdafx.h" -#include "net\NetService.h" -#include "net\NetConnectionTCP.h" +#include "net/NetService.h" +#include "net/NetConnectionTCP.h" #include #include diff --git a/src/Rock3dEngine/header/GraphManager.h b/src/Rock3dEngine/header/GraphManager.h index fc06b293..579bccb9 100644 --- a/src/Rock3dEngine/header/GraphManager.h +++ b/src/Rock3dEngine/header/GraphManager.h @@ -1,26 +1,26 @@ #ifndef R3D_GRAPH_MANAGER #define R3D_GRAPH_MANAGER -#include "graph\\FogPlane.h" -#include "graph\\ClearSurf.h" -#include "graph\\GrassField.h" -#include "graph\\WaterPlane.h" -#include "graph\\MappingShaders.h" -#include "graph\\ShadowMapRender.h" -#include "graph\\HDREffect.h" -#include "graph\\BloomEffect.h" -#include "graph\\ToneMapping.h" -#include "graph\\DepthMap.h" -#include "graph\\SunShaft.h" -#include "graph\\SkyBox.h" -#include "graph\\RenderToTexture.h" - -#include "graph\\StdNode.h" -#include "graph\\OctreeRender.h" -#include "graph\\Actor.h" -#include "graph\\ActorManager.h" - -#include "gui\\GUI.h" +#include "graph/FogPlane.h" +#include "graph/ClearSurf.h" +#include "graph/GrassField.h" +#include "graph/WaterPlane.h" +#include "graph/MappingShaders.h" +#include "graph/ShadowMapRender.h" +#include "graph/HDREffect.h" +#include "graph/BloomEffect.h" +#include "graph/ToneMapping.h" +#include "graph/DepthMap.h" +#include "graph/SunShaft.h" +#include "graph/SkyBox.h" +#include "graph/RenderToTexture.h" + +#include "graph/StdNode.h" +#include "graph/OctreeRender.h" +#include "graph/Actor.h" +#include "graph/ActorManager.h" + +#include "gui/GUI.h" namespace r3d { diff --git a/src/Rock3dEngine/header/graph/Actor.h b/src/Rock3dEngine/header/graph/Actor.h index 8a4b5dc8..c809e3ab 100644 --- a/src/Rock3dEngine/header/graph/Actor.h +++ b/src/Rock3dEngine/header/graph/Actor.h @@ -1,7 +1,7 @@ #ifndef R3D_GRAPH_ACTOR #define R3D_GRAPH_ACTOR -#include "include\\graph\\IActor.h" +#include "include/graph/IActor.h" #include "SceneNode.h" diff --git a/src/Rock3dEngine/header/graph/ContextInfo.h b/src/Rock3dEngine/header/graph/ContextInfo.h index 238ddbb2..39d3ce38 100644 --- a/src/Rock3dEngine/header/graph/ContextInfo.h +++ b/src/Rock3dEngine/header/graph/ContextInfo.h @@ -2,7 +2,7 @@ #define R3D_GRAPH_CONTEXTINFO #include "VideoResource.h" -#include "driver\\RenderDriver.h" +#include "driver/RenderDriver.h" #include "r3dMath.h" #include diff --git a/src/Rock3dEngine/header/graph/FxManager.h b/src/Rock3dEngine/header/graph/FxManager.h index 3aef3ec4..b423ac7a 100644 --- a/src/Rock3dEngine/header/graph/FxManager.h +++ b/src/Rock3dEngine/header/graph/FxManager.h @@ -2,7 +2,7 @@ #define R3D_SCENE_FXMANAGER #include "StdNode.h" -#include "px\\Physx.h" +#include "px/Physx.h" #include "lslSerialValue.h" #include "lslMath.h" diff --git a/src/Rock3dEngine/header/graph/GrassField.h b/src/Rock3dEngine/header/graph/GrassField.h index 40e668a4..37a44e89 100644 --- a/src/Rock3dEngine/header/graph/GrassField.h +++ b/src/Rock3dEngine/header/graph/GrassField.h @@ -2,7 +2,7 @@ #define GRASS_FIELD #include "SceneManager.h" -#include "graph\\MaterialLibrary.h" +#include "graph/MaterialLibrary.h" namespace r3d { diff --git a/src/Rock3dEngine/header/graph/SceneManager.h b/src/Rock3dEngine/header/graph/SceneManager.h index 21386a0e..f762347d 100644 --- a/src/Rock3dEngine/header/graph/SceneManager.h +++ b/src/Rock3dEngine/header/graph/SceneManager.h @@ -3,7 +3,7 @@ #include "lslCollection.h" #include "lslComponent.h" -#include "graph\\Engine.h" +#include "graph/Engine.h" #include "ProgressTimer.h" #include diff --git a/src/Rock3dEngine/header/graph/VideoResource.h b/src/Rock3dEngine/header/graph/VideoResource.h index 6c13767e..9678c79e 100644 --- a/src/Rock3dEngine/header/graph/VideoResource.h +++ b/src/Rock3dEngine/header/graph/VideoResource.h @@ -1,7 +1,7 @@ #ifndef R3D_GRAPH_VIDEORESOURCE #define R3D_GRAPH_VIDEORESOURCE -#include "res\\GraphResource.h" +#include "res/GraphResource.h" namespace r3d { diff --git a/src/Rock3dEngine/header/graph/WaterPlane.h b/src/Rock3dEngine/header/graph/WaterPlane.h index fc18a989..58ed3015 100644 --- a/src/Rock3dEngine/header/graph/WaterPlane.h +++ b/src/Rock3dEngine/header/graph/WaterPlane.h @@ -2,7 +2,7 @@ #define R3D_SCENE_WATER_PLANE #include "StdNode.h" -#include "graph\\RenderToTexture.h" +#include "graph/RenderToTexture.h" namespace r3d { diff --git a/src/Rock3dEngine/header/gui/GUI.h b/src/Rock3dEngine/header/gui/GUI.h index 15a2c926..4c5f11cd 100644 --- a/src/Rock3dEngine/header/gui/GUI.h +++ b/src/Rock3dEngine/header/gui/GUI.h @@ -1,7 +1,7 @@ #pragma once -#include "graph\\Engine.h" -#include "graph\\MaterialLibrary.h" +#include "graph/Engine.h" +#include "graph/MaterialLibrary.h" #include "ProgressTimer.h" namespace r3d diff --git a/src/Rock3dEngine/header/px/Physx.h b/src/Rock3dEngine/header/px/Physx.h index 9108f517..f03b0f3b 100644 --- a/src/Rock3dEngine/header/px/Physx.h +++ b/src/Rock3dEngine/header/px/Physx.h @@ -20,7 +20,7 @@ #pragma pop_macro("free") #endif -#include "res\\GraphResource.h" +#include "res/GraphResource.h" #include "r3dMath.h" #include "lslCollection.h" #include "lslException.h" diff --git a/src/Rock3dEngine/header/res/D3DXImageFile.h b/src/Rock3dEngine/header/res/D3DXImageFile.h index 46b6ffca..67644a87 100644 --- a/src/Rock3dEngine/header/res/D3DXImageFile.h +++ b/src/Rock3dEngine/header/res/D3DXImageFile.h @@ -1,5 +1,5 @@ #include "GraphResource.h" -#include "graph\\driver\\RenderDriver.h" +#include "graph/driver/RenderDriver.h" namespace r3d { diff --git a/src/Rock3dEngine/source/GraphManager.cpp b/src/Rock3dEngine/source/GraphManager.cpp index 5b400e41..0aef0da2 100644 --- a/src/Rock3dEngine/source/GraphManager.cpp +++ b/src/Rock3dEngine/source/GraphManager.cpp @@ -2,8 +2,8 @@ #include "GraphManager.h" -#include "res\\R3DFile.h" -#include "res\\D3DXImageFile.h" +#include "res/R3DFile.h" +#include "res/D3DXImageFile.h" #include diff --git a/src/Rock3dEngine/source/graph/Actor.cpp b/src/Rock3dEngine/source/graph/Actor.cpp index 6df220d2..052d09fe 100644 --- a/src/Rock3dEngine/source/graph/Actor.cpp +++ b/src/Rock3dEngine/source/graph/Actor.cpp @@ -1,6 +1,6 @@ #include "stdafx.h" -#include "graph\\Actor.h" +#include "graph/Actor.h" #include "GraphManager.h" namespace r3d diff --git a/src/Rock3dEngine/source/graph/ActorManager.cpp b/src/Rock3dEngine/source/graph/ActorManager.cpp index 28d051b2..3e63ad8c 100644 --- a/src/Rock3dEngine/source/graph/ActorManager.cpp +++ b/src/Rock3dEngine/source/graph/ActorManager.cpp @@ -1,6 +1,6 @@ #include "stdafx.h" -#include "graph\\ActorManager.h" +#include "graph/ActorManager.h" namespace r3d { diff --git a/src/Rock3dEngine/source/graph/BloomEffect.cpp b/src/Rock3dEngine/source/graph/BloomEffect.cpp index f90de098..ca0ebdbe 100644 --- a/src/Rock3dEngine/source/graph/BloomEffect.cpp +++ b/src/Rock3dEngine/source/graph/BloomEffect.cpp @@ -1,6 +1,6 @@ #include "stdafx.h" -#include "graph\\BloomEffect.h" +#include "graph/BloomEffect.h" namespace r3d { diff --git a/src/Rock3dEngine/source/graph/ClearSurf.cpp b/src/Rock3dEngine/source/graph/ClearSurf.cpp index 4fae7571..82ec7fff 100644 --- a/src/Rock3dEngine/source/graph/ClearSurf.cpp +++ b/src/Rock3dEngine/source/graph/ClearSurf.cpp @@ -1,6 +1,6 @@ #include "stdafx.h" -#include "graph\\ClearSurf.h" +#include "graph/ClearSurf.h" namespace r3d { diff --git a/src/Rock3dEngine/source/graph/ContextInfo.cpp b/src/Rock3dEngine/source/graph/ContextInfo.cpp index aebdbfa2..9fe442b2 100644 --- a/src/Rock3dEngine/source/graph/ContextInfo.cpp +++ b/src/Rock3dEngine/source/graph/ContextInfo.cpp @@ -1,6 +1,6 @@ #include "stdafx.h" -#include "graph\\ContextInfo.h" +#include "graph/ContextInfo.h" namespace r3d { diff --git a/src/Rock3dEngine/source/graph/DepthMap.cpp b/src/Rock3dEngine/source/graph/DepthMap.cpp index 7f790418..bbec29ef 100644 --- a/src/Rock3dEngine/source/graph/DepthMap.cpp +++ b/src/Rock3dEngine/source/graph/DepthMap.cpp @@ -1,6 +1,6 @@ #include "stdafx.h" -#include "graph\\DepthMap.h" +#include "graph/DepthMap.h" namespace r3d { diff --git a/src/Rock3dEngine/source/graph/Driver/D3D9RenderDriver.cpp b/src/Rock3dEngine/source/graph/Driver/D3D9RenderDriver.cpp index a102a0b4..d2c9d8ea 100644 --- a/src/Rock3dEngine/source/graph/Driver/D3D9RenderDriver.cpp +++ b/src/Rock3dEngine/source/graph/Driver/D3D9RenderDriver.cpp @@ -1,6 +1,6 @@ #include "stdafx.h" -#include "graph\\driver\D3D9RenderDriver.h" +#include "graph/driver/D3D9RenderDriver.h" #include "d3d9.h" #include "r3dExceptions.h" diff --git a/src/Rock3dEngine/source/graph/Driver/RenderDriver.cpp b/src/Rock3dEngine/source/graph/Driver/RenderDriver.cpp index c498b453..0e1e1a13 100644 --- a/src/Rock3dEngine/source/graph/Driver/RenderDriver.cpp +++ b/src/Rock3dEngine/source/graph/Driver/RenderDriver.cpp @@ -3,7 +3,7 @@ #ifndef RENDER_DRIVER_INL #define RENDER_DRIVER_INL -#include "graph\driver\RenderDriver.h" +#include "graph/driver/RenderDriver.h" namespace r3d { diff --git a/src/Rock3dEngine/source/graph/Engine.cpp b/src/Rock3dEngine/source/graph/Engine.cpp index f0aed020..e5afc019 100644 --- a/src/Rock3dEngine/source/graph/Engine.cpp +++ b/src/Rock3dEngine/source/graph/Engine.cpp @@ -1,8 +1,8 @@ #include "stdafx.h" -#include "graph\\Engine.h" +#include "graph/Engine.h" -#include "graph\\driver\D3D9RenderDriver.h" +#include "graph/driver/D3D9RenderDriver.h" #include "lslUtility.h" //#define OCCLUSION_QUERIES diff --git a/src/Rock3dEngine/source/graph/FogPlane.cpp b/src/Rock3dEngine/source/graph/FogPlane.cpp index bcc1df1d..dfc73638 100644 --- a/src/Rock3dEngine/source/graph/FogPlane.cpp +++ b/src/Rock3dEngine/source/graph/FogPlane.cpp @@ -1,6 +1,6 @@ #include "stdafx.h" -#include "graph\\FogPlane.h" +#include "graph/FogPlane.h" namespace r3d { diff --git a/src/Rock3dEngine/source/graph/FxManager.cpp b/src/Rock3dEngine/source/graph/FxManager.cpp index 90ff26f8..308798b5 100644 --- a/src/Rock3dEngine/source/graph/FxManager.cpp +++ b/src/Rock3dEngine/source/graph/FxManager.cpp @@ -1,7 +1,7 @@ #include "stdafx.h" -#include "graph\\FxManager.h" -#include "graph\\SceneNode.h" +#include "graph/FxManager.h" +#include "graph/SceneNode.h" #include "r3dMath.h" namespace r3d diff --git a/src/Rock3dEngine/source/graph/GaussianBlur.cpp b/src/Rock3dEngine/source/graph/GaussianBlur.cpp index 5ae79b4a..a0c1b9b2 100644 --- a/src/Rock3dEngine/source/graph/GaussianBlur.cpp +++ b/src/Rock3dEngine/source/graph/GaussianBlur.cpp @@ -1,4 +1,4 @@ -#include "graph\\GaussianBlur.h" +#include "graph/GaussianBlur.h" namespace r3d { diff --git a/src/Rock3dEngine/source/graph/GrassField.cpp b/src/Rock3dEngine/source/graph/GrassField.cpp index 9b30db89..be040a60 100644 --- a/src/Rock3dEngine/source/graph/GrassField.cpp +++ b/src/Rock3dEngine/source/graph/GrassField.cpp @@ -1,6 +1,6 @@ #include "stdafx.h" -#include "graph\\GrassField.h" +#include "graph/GrassField.h" namespace r3d { diff --git a/src/Rock3dEngine/source/graph/HDREffect.cpp b/src/Rock3dEngine/source/graph/HDREffect.cpp index 1e0984d8..f58421f4 100644 --- a/src/Rock3dEngine/source/graph/HDREffect.cpp +++ b/src/Rock3dEngine/source/graph/HDREffect.cpp @@ -1,6 +1,6 @@ #include "stdafx.h" -#include "graph\\HDREffect.h" +#include "graph/HDREffect.h" namespace r3d { diff --git a/src/Rock3dEngine/source/graph/MappingShaders.cpp b/src/Rock3dEngine/source/graph/MappingShaders.cpp index b0460e2b..feb72a03 100644 --- a/src/Rock3dEngine/source/graph/MappingShaders.cpp +++ b/src/Rock3dEngine/source/graph/MappingShaders.cpp @@ -1,6 +1,6 @@ #include "stdafx.h" -#include "graph\\MappingShaders.h" +#include "graph/MappingShaders.h" namespace r3d { diff --git a/src/Rock3dEngine/source/graph/MaterialLibrary.cpp b/src/Rock3dEngine/source/graph/MaterialLibrary.cpp index 3223076a..e7259856 100644 --- a/src/Rock3dEngine/source/graph/MaterialLibrary.cpp +++ b/src/Rock3dEngine/source/graph/MaterialLibrary.cpp @@ -1,6 +1,6 @@ #include "stdafx.h" -#include "graph\\MaterialLibrary.h" +#include "graph/MaterialLibrary.h" namespace r3d { diff --git a/src/Rock3dEngine/source/graph/OctreeRender.cpp b/src/Rock3dEngine/source/graph/OctreeRender.cpp index de88b819..215e5305 100644 --- a/src/Rock3dEngine/source/graph/OctreeRender.cpp +++ b/src/Rock3dEngine/source/graph/OctreeRender.cpp @@ -1,6 +1,6 @@ #include "stdafx.h" -#include "graph\\OctreeRender.h" +#include "graph/OctreeRender.h" namespace r3d { diff --git a/src/Rock3dEngine/source/graph/OctreeSort.cpp b/src/Rock3dEngine/source/graph/OctreeSort.cpp index 753b4f10..12ab371b 100644 --- a/src/Rock3dEngine/source/graph/OctreeSort.cpp +++ b/src/Rock3dEngine/source/graph/OctreeSort.cpp @@ -1,6 +1,6 @@ #include "stdafx.h" -#include "graph\\OctreeSort.h" +#include "graph/OctreeSort.h" namespace r3d { diff --git a/src/Rock3dEngine/source/graph/RenderToTexture.cpp b/src/Rock3dEngine/source/graph/RenderToTexture.cpp index ec846f2c..2a9fdcef 100644 --- a/src/Rock3dEngine/source/graph/RenderToTexture.cpp +++ b/src/Rock3dEngine/source/graph/RenderToTexture.cpp @@ -1,6 +1,6 @@ #include "stdafx.h" -#include "graph\\RenderToTexture.h" +#include "graph/RenderToTexture.h" namespace r3d { diff --git a/src/Rock3dEngine/source/graph/SceneManager.cpp b/src/Rock3dEngine/source/graph/SceneManager.cpp index fd5e3f3a..732c92ef 100644 --- a/src/Rock3dEngine/source/graph/SceneManager.cpp +++ b/src/Rock3dEngine/source/graph/SceneManager.cpp @@ -1,12 +1,12 @@ #include "stdafx.h" -#include "graph\\SceneManager.h" +#include "graph/SceneManager.h" #include "EulerAngles.h" #include "lslUtility.h" #include "r3dExceptions.h" #include -#include "res\\GraphResource.h" +#include "res/GraphResource.h" namespace r3d { diff --git a/src/Rock3dEngine/source/graph/SceneNode.cpp b/src/Rock3dEngine/source/graph/SceneNode.cpp index 0f3b68c2..67c6f5e1 100644 --- a/src/Rock3dEngine/source/graph/SceneNode.cpp +++ b/src/Rock3dEngine/source/graph/SceneNode.cpp @@ -1,6 +1,6 @@ #include "stdafx.h" -#include "graph\\SceneNode.h" +#include "graph/SceneNode.h" namespace r3d { diff --git a/src/Rock3dEngine/source/graph/SceneRender.cpp b/src/Rock3dEngine/source/graph/SceneRender.cpp index 3401143b..1d424896 100644 --- a/src/Rock3dEngine/source/graph/SceneRender.cpp +++ b/src/Rock3dEngine/source/graph/SceneRender.cpp @@ -1,6 +1,6 @@ #include "stdafx.h" -#include "graph\\SceneRender.h" +#include "graph/SceneRender.h" #include namespace r3d diff --git a/src/Rock3dEngine/source/graph/Shader.cpp b/src/Rock3dEngine/source/graph/Shader.cpp index fa8eeff0..efb7f4cf 100644 --- a/src/Rock3dEngine/source/graph/Shader.cpp +++ b/src/Rock3dEngine/source/graph/Shader.cpp @@ -1,6 +1,6 @@ #include "stdafx.h" -#include "graph\\Shader.h" +#include "graph/Shader.h" namespace r3d { diff --git a/src/Rock3dEngine/source/graph/ShadowMapRender.cpp b/src/Rock3dEngine/source/graph/ShadowMapRender.cpp index fa3de440..49ede5f4 100644 --- a/src/Rock3dEngine/source/graph/ShadowMapRender.cpp +++ b/src/Rock3dEngine/source/graph/ShadowMapRender.cpp @@ -1,7 +1,7 @@ #include "stdafx.h" -#include "graph\\ShadowMapRender.h" -#include "graph\\SceneManager.h" +#include "graph/ShadowMapRender.h" +#include "graph/SceneManager.h" namespace r3d { diff --git a/src/Rock3dEngine/source/graph/SkyBox.cpp b/src/Rock3dEngine/source/graph/SkyBox.cpp index 47c3fd37..f28f1a1d 100644 --- a/src/Rock3dEngine/source/graph/SkyBox.cpp +++ b/src/Rock3dEngine/source/graph/SkyBox.cpp @@ -1,6 +1,6 @@ #include "stdafx.h" -#include "graph\\SkyBox.h" +#include "graph/SkyBox.h" namespace r3d { diff --git a/src/Rock3dEngine/source/graph/StdNode.cpp b/src/Rock3dEngine/source/graph/StdNode.cpp index 5bd6238b..5f7a0a53 100644 --- a/src/Rock3dEngine/source/graph/StdNode.cpp +++ b/src/Rock3dEngine/source/graph/StdNode.cpp @@ -1,6 +1,6 @@ #include "stdafx.h" -#include "graph\\StdNode.h" +#include "graph/StdNode.h" #include "lslSerialValue.h" namespace r3d diff --git a/src/Rock3dEngine/source/graph/SunShaft.cpp b/src/Rock3dEngine/source/graph/SunShaft.cpp index 303eb589..b7eb0438 100644 --- a/src/Rock3dEngine/source/graph/SunShaft.cpp +++ b/src/Rock3dEngine/source/graph/SunShaft.cpp @@ -1,6 +1,6 @@ #include "stdafx.h" -#include "graph\\SunShaft.h" +#include "graph/SunShaft.h" namespace r3d { diff --git a/src/Rock3dEngine/source/graph/ToneMapping.cpp b/src/Rock3dEngine/source/graph/ToneMapping.cpp index db998cd1..d9c7e90f 100644 --- a/src/Rock3dEngine/source/graph/ToneMapping.cpp +++ b/src/Rock3dEngine/source/graph/ToneMapping.cpp @@ -1,6 +1,6 @@ #include "stdafx.h" -#include "graph\\ToneMapping.h" +#include "graph/ToneMapping.h" namespace r3d { diff --git a/src/Rock3dEngine/source/graph/VideoResource.cpp b/src/Rock3dEngine/source/graph/VideoResource.cpp index 783e126e..ce0d9737 100644 --- a/src/Rock3dEngine/source/graph/VideoResource.cpp +++ b/src/Rock3dEngine/source/graph/VideoResource.cpp @@ -1,8 +1,8 @@ #include "stdafx.h" -#include "graph\\VideoResource.h" +#include "graph/VideoResource.h" -#include "graph\\Engine.h" +#include "graph/Engine.h" namespace r3d { diff --git a/src/Rock3dEngine/source/graph/WaterPlane.cpp b/src/Rock3dEngine/source/graph/WaterPlane.cpp index 39a22665..a36c1ca2 100644 --- a/src/Rock3dEngine/source/graph/WaterPlane.cpp +++ b/src/Rock3dEngine/source/graph/WaterPlane.cpp @@ -1,6 +1,6 @@ #include "stdafx.h" -#include "graph\\WaterPlane.h" +#include "graph/WaterPlane.h" namespace r3d { diff --git a/src/Rock3dEngine/source/gui/GUI.cpp b/src/Rock3dEngine/source/gui/GUI.cpp index e0341475..f49cdfed 100644 --- a/src/Rock3dEngine/source/gui/GUI.cpp +++ b/src/Rock3dEngine/source/gui/GUI.cpp @@ -1,7 +1,7 @@ #include "stdafx.h" -#include "gui\\GUI.h" -#include "graph\\SceneManager.h" +#include "gui/GUI.h" +#include "graph/SceneManager.h" namespace r3d { diff --git a/src/Rock3dEngine/source/px/Physx.cpp b/src/Rock3dEngine/source/px/Physx.cpp index be263d95..35c55771 100644 --- a/src/Rock3dEngine/source/px/Physx.cpp +++ b/src/Rock3dEngine/source/px/Physx.cpp @@ -1,7 +1,7 @@ #include "stdafx.h" -#include "px\\Physx.h" -#include "px\\Stream.h" +#include "px/Physx.h" +#include "px/Stream.h" #include "lslSerialValue.h" diff --git a/src/Rock3dEngine/source/px/Stream.cpp b/src/Rock3dEngine/source/px/Stream.cpp index 35ca31d1..60a19a14 100644 --- a/src/Rock3dEngine/source/px/Stream.cpp +++ b/src/Rock3dEngine/source/px/Stream.cpp @@ -2,8 +2,8 @@ #include -#include "px\\Physx.h" -#include "px\\Stream.h" +#include "px/Physx.h" +#include "px/Stream.h" UserStream::UserStream(const char* filename, bool load) : fp(NULL) { diff --git a/src/Rock3dEngine/source/res/D3DXImageFile.cpp b/src/Rock3dEngine/source/res/D3DXImageFile.cpp index 775e3d14..83671d64 100644 --- a/src/Rock3dEngine/source/res/D3DXImageFile.cpp +++ b/src/Rock3dEngine/source/res/D3DXImageFile.cpp @@ -1,7 +1,7 @@ #include "stdafx.h" -#include "res\\D3DXImageFile.h" -#include "graph\\Engine.h" +#include "res/D3DXImageFile.h" +#include "graph/Engine.h" namespace r3d { diff --git a/src/Rock3dEngine/source/res/GraphResource.cpp b/src/Rock3dEngine/source/res/GraphResource.cpp index 9df55b7d..2a76a758 100644 --- a/src/Rock3dEngine/source/res/GraphResource.cpp +++ b/src/Rock3dEngine/source/res/GraphResource.cpp @@ -1,6 +1,6 @@ #include "stdafx.h" -#include "res\\GraphResource.h" +#include "res/GraphResource.h" namespace r3d { diff --git a/src/Rock3dEngine/source/res/R3DFile.cpp b/src/Rock3dEngine/source/res/R3DFile.cpp index 12dd10fa..241b3197 100644 --- a/src/Rock3dEngine/source/res/R3DFile.cpp +++ b/src/Rock3dEngine/source/res/R3DFile.cpp @@ -1,6 +1,6 @@ #include "stdafx.h" -#include "res\\R3DFile.h" +#include "res/R3DFile.h" namespace r3d { diff --git a/src/Rock3dGame/header/edit/Edit.h b/src/Rock3dGame/header/edit/Edit.h index 6032063c..19acdd8c 100644 --- a/src/Rock3dGame/header/edit/Edit.h +++ b/src/Rock3dGame/header/edit/Edit.h @@ -2,9 +2,9 @@ #include "IEdit.h" -#include "edit\DataBase.h" -#include "edit\Map.h" -#include "edit\SceneControl.h" +#include "edit/DataBase.h" +#include "edit/Map.h" +#include "edit/SceneControl.h" namespace r3d { diff --git a/src/Rock3dGame/header/edit/Trace.h b/src/Rock3dGame/header/edit/Trace.h index 31f51e67..a21c9203 100644 --- a/src/Rock3dGame/header/edit/Trace.h +++ b/src/Rock3dGame/header/edit/Trace.h @@ -3,7 +3,7 @@ #include "ITrace.h" #include "Utils.h" -#include "game\TraceGfx.h" +#include "game/TraceGfx.h" namespace r3d { diff --git a/src/Rock3dGame/header/game/DataBase.h b/src/Rock3dGame/header/game/DataBase.h index 46fff327..2e5acadf 100644 --- a/src/Rock3dGame/header/game/DataBase.h +++ b/src/Rock3dGame/header/game/DataBase.h @@ -1,7 +1,7 @@ #pragma once -#include "game\MapObj.h" -#include "game\RockCar.h" +#include "game/MapObj.h" +#include "game/RockCar.h" namespace r3d { diff --git a/src/Rock3dGame/header/game/GameBase.h b/src/Rock3dGame/header/game/GameBase.h index b7abe56b..b52598c7 100644 --- a/src/Rock3dGame/header/game/GameBase.h +++ b/src/Rock3dGame/header/game/GameBase.h @@ -3,9 +3,9 @@ #include "MapObj.h" #include "GameEvent.h" -#include "graph\\Actor.h" -#include "px\\PhysX.h" -#include "snd\Audio.h" +#include "graph/Actor.h" +#include "px/PhysX.h" +#include "snd/Audio.h" namespace r3d { diff --git a/src/Rock3dGame/header/game/GameMode.h b/src/Rock3dGame/header/game/GameMode.h index 813ead0a..b8aa18d6 100644 --- a/src/Rock3dGame/header/game/GameMode.h +++ b/src/Rock3dGame/header/game/GameMode.h @@ -2,8 +2,8 @@ #include "Race.h" #include "Menu.h" -#include "net\NetGame.h" -#include "net\SteamService.h" +#include "net/NetGame.h" +#include "net/SteamService.h" namespace r3d { diff --git a/src/Rock3dGame/header/game/Logic.h b/src/Rock3dGame/header/game/Logic.h index c32b0c8f..4b81e1f6 100644 --- a/src/Rock3dGame/header/game/Logic.h +++ b/src/Rock3dGame/header/game/Logic.h @@ -4,7 +4,7 @@ #include "GameObject.h" #include "Map.h" #include "Player.h" -#include "snd\Audio.h" +#include "snd/Audio.h" namespace r3d { diff --git a/src/Rock3dGame/header/game/Menu.h b/src/Rock3dGame/header/game/Menu.h index a28b5cfd..8ebaa3db 100644 --- a/src/Rock3dGame/header/game/Menu.h +++ b/src/Rock3dGame/header/game/Menu.h @@ -3,8 +3,8 @@ #include "ResourceManager.h" #include "DataBase.h" #include "Race.h" -#include "net\NetGame.h" -#include "net\SteamService.h" +#include "net/NetGame.h" +#include "net/SteamService.h" #include "DialogMenu2.h" #include "MainMenu2.h" diff --git a/src/Rock3dGame/header/game/ResourceManager.h b/src/Rock3dGame/header/game/ResourceManager.h index f799b8f6..700a8b2c 100644 --- a/src/Rock3dGame/header/game/ResourceManager.h +++ b/src/Rock3dGame/header/game/ResourceManager.h @@ -1,6 +1,6 @@ #pragma once -#include "snd\\Audio.h" +#include "snd/Audio.h" namespace r3d { diff --git a/src/Rock3dGame/header/game/World.h b/src/Rock3dGame/header/game/World.h index c2fb55b6..d5ac2ba4 100644 --- a/src/Rock3dGame/header/game/World.h +++ b/src/Rock3dGame/header/game/World.h @@ -11,8 +11,8 @@ #include "Map.h" #include "Environment.h" #include "GameMode.h" -#include "snd\Audio.h" -#include "video\VideoPlayer.h" +#include "snd/Audio.h" +#include "video/VideoPlayer.h" namespace r3d { diff --git a/src/Rock3dGame/header/net/NetPlayer.h b/src/Rock3dGame/header/net/NetPlayer.h index 532ac9f7..618d1e46 100644 --- a/src/Rock3dGame/header/net/NetPlayer.h +++ b/src/Rock3dGame/header/net/NetPlayer.h @@ -1,6 +1,6 @@ #pragma once -#include "game\Race.h" +#include "game/Race.h" #include "NetBase.h" namespace r3d diff --git a/src/Rock3dGame/header/net/NetRace.h b/src/Rock3dGame/header/net/NetRace.h index 558761c9..39664c3a 100644 --- a/src/Rock3dGame/header/net/NetRace.h +++ b/src/Rock3dGame/header/net/NetRace.h @@ -1,6 +1,6 @@ #pragma once -#include "game\Race.h" +#include "game/Race.h" #include "NetBase.h" namespace r3d diff --git a/src/Rock3dGame/header/net/SteamCommon.h b/src/Rock3dGame/header/net/SteamCommon.h index 78a062ca..ae0f67ac 100644 --- a/src/Rock3dGame/header/net/SteamCommon.h +++ b/src/Rock3dGame/header/net/SteamCommon.h @@ -1,6 +1,6 @@ #pragma once -#include "game\GameEvent.h" +#include "game/GameEvent.h" #ifdef STEAM_SERVICE diff --git a/src/Rock3dGame/header/snd/Audio.h b/src/Rock3dGame/header/snd/Audio.h index 07f86dc9..b481775f 100644 --- a/src/Rock3dGame/header/snd/Audio.h +++ b/src/Rock3dGame/header/snd/Audio.h @@ -4,9 +4,9 @@ #include #include -#include -#include -#include +#include +#include +#include namespace r3d { diff --git a/src/Rock3dGame/header/stdafx.h b/src/Rock3dGame/header/stdafx.h index e78def41..5ce1d213 100644 --- a/src/Rock3dGame/header/stdafx.h +++ b/src/Rock3dGame/header/stdafx.h @@ -15,8 +15,8 @@ #include "EulerAngles.h" #include "GraphManager.h" -#include "px\Physx.h" -#include "net\NetLib.h" +#include "px/Physx.h" +#include "net/NetLib.h" #include "IWorld.h" //#define STEAM_SERVICE diff --git a/src/Rock3dGame/source/Rock3dGame.cpp b/src/Rock3dGame/source/Rock3dGame.cpp index 2f5da7d3..2c0b583e 100644 --- a/src/Rock3dGame/source/Rock3dGame.cpp +++ b/src/Rock3dGame/source/Rock3dGame.cpp @@ -1,7 +1,7 @@ #include "stdafx.h" #include "Rock3dGame.h" -#include "game\World.h" +#include "game/World.h" #include namespace r3d diff --git a/src/Rock3dGame/source/edit/Edit.cpp b/src/Rock3dGame/source/edit/Edit.cpp index d6804704..298bf04d 100644 --- a/src/Rock3dGame/source/edit/Edit.cpp +++ b/src/Rock3dGame/source/edit/Edit.cpp @@ -1,6 +1,6 @@ #include "stdafx.h" -#include "game\World.h" -#include "edit\Edit.h" +#include "game/World.h" +#include "edit/Edit.h" namespace r3d { diff --git a/src/Rock3dGame/source/edit/EditDataBase.cpp b/src/Rock3dGame/source/edit/EditDataBase.cpp index 215f59eb..d57ec30c 100644 --- a/src/Rock3dGame/source/edit/EditDataBase.cpp +++ b/src/Rock3dGame/source/edit/EditDataBase.cpp @@ -1,8 +1,8 @@ #include "stdafx.h" -#include "game\World.h" +#include "game/World.h" -#include "edit\DataBase.h" -#include "edit\Edit.h" +#include "edit/DataBase.h" +#include "edit/Edit.h" namespace r3d { diff --git a/src/Rock3dGame/source/edit/EditMap.cpp b/src/Rock3dGame/source/edit/EditMap.cpp index 7d2aaa2a..567396a0 100644 --- a/src/Rock3dGame/source/edit/EditMap.cpp +++ b/src/Rock3dGame/source/edit/EditMap.cpp @@ -1,10 +1,10 @@ #include "stdafx.h" -#include "game\World.h" +#include "game/World.h" -#include "edit\Map.h" -#include "edit\Edit.h" +#include "edit/Map.h" +#include "edit/Edit.h" -#include "edit\Trace.h" +#include "edit/Trace.h" namespace r3d { diff --git a/src/Rock3dGame/source/edit/EditTrace.cpp b/src/Rock3dGame/source/edit/EditTrace.cpp index ae2a6ceb..145a13dd 100644 --- a/src/Rock3dGame/source/edit/EditTrace.cpp +++ b/src/Rock3dGame/source/edit/EditTrace.cpp @@ -1,8 +1,8 @@ #include "stdafx.h" -#include "game\World.h" +#include "game/World.h" -#include "edit\Trace.h" -#include "edit\Edit.h" +#include "edit/Trace.h" +#include "edit/Edit.h" namespace r3d { diff --git a/src/Rock3dGame/source/edit/EditUtils.cpp b/src/Rock3dGame/source/edit/EditUtils.cpp index 259b71fb..4d4920ad 100644 --- a/src/Rock3dGame/source/edit/EditUtils.cpp +++ b/src/Rock3dGame/source/edit/EditUtils.cpp @@ -1,8 +1,8 @@ #include "stdafx.h" -#include "game\World.h" -#include "edit\Utils.h" +#include "game/World.h" +#include "edit/Utils.h" -#include "edit\Map.h" +#include "edit/Map.h" namespace r3d { diff --git a/src/Rock3dGame/source/edit/SceneControl.cpp b/src/Rock3dGame/source/edit/SceneControl.cpp index 554c4d6e..c69783f2 100644 --- a/src/Rock3dGame/source/edit/SceneControl.cpp +++ b/src/Rock3dGame/source/edit/SceneControl.cpp @@ -1,8 +1,8 @@ #include "stdafx.h" -#include "game\World.h" +#include "game/World.h" -#include "edit\SceneControl.h" -#include "edit\Edit.h" +#include "edit/SceneControl.h" +#include "edit/Edit.h" namespace r3d { diff --git a/src/Rock3dGame/source/game/AICar.cpp b/src/Rock3dGame/source/game/AICar.cpp index f582089f..7ef75526 100644 --- a/src/Rock3dGame/source/game/AICar.cpp +++ b/src/Rock3dGame/source/game/AICar.cpp @@ -1,7 +1,7 @@ #include "stdafx.h" -#include "game\AICar.h" +#include "game/AICar.h" -#include "game\World.h" +#include "game/World.h" namespace r3d { diff --git a/src/Rock3dGame/source/game/AIPlayer.cpp b/src/Rock3dGame/source/game/AIPlayer.cpp index c173f158..688adf0d 100644 --- a/src/Rock3dGame/source/game/AIPlayer.cpp +++ b/src/Rock3dGame/source/game/AIPlayer.cpp @@ -1,7 +1,7 @@ #include "stdafx.h" -#include "game\AIPLayer.h" +#include "game/AIPLayer.h" -#include "game\World.h" +#include "game/World.h" namespace r3d { diff --git a/src/Rock3dGame/source/game/AchievmentModel.cpp b/src/Rock3dGame/source/game/AchievmentModel.cpp index c039a89e..7adfb7a9 100644 --- a/src/Rock3dGame/source/game/AchievmentModel.cpp +++ b/src/Rock3dGame/source/game/AchievmentModel.cpp @@ -1,7 +1,7 @@ #include "stdafx.h" -#include "game\AchievmentModel.h" +#include "game/AchievmentModel.h" -#include "game\World.h" +#include "game/World.h" #include "lslSerialFileXML.h" namespace r3d diff --git a/src/Rock3dGame/source/game/CameraManager.cpp b/src/Rock3dGame/source/game/CameraManager.cpp index 1e41828f..8afb7788 100644 --- a/src/Rock3dGame/source/game/CameraManager.cpp +++ b/src/Rock3dGame/source/game/CameraManager.cpp @@ -1,7 +1,7 @@ #include "stdafx.h" -#include "game\World.h" +#include "game/World.h" -#include "game\CameraManager.h" +#include "game/CameraManager.h" namespace r3d { diff --git a/src/Rock3dGame/source/game/ControlManager.cpp b/src/Rock3dGame/source/game/ControlManager.cpp index 37f91b91..a80aed89 100644 --- a/src/Rock3dGame/source/game/ControlManager.cpp +++ b/src/Rock3dGame/source/game/ControlManager.cpp @@ -1,6 +1,6 @@ #include "stdafx.h" -#include "game\\ControlManager.h" -#include "game\\World.h" +#include "game/ControlManager.h" +#include "game/World.h" #include diff --git a/src/Rock3dGame/source/game/DataBase.cpp b/src/Rock3dGame/source/game/DataBase.cpp index 3224d1c8..1d1e454c 100644 --- a/src/Rock3dGame/source/game/DataBase.cpp +++ b/src/Rock3dGame/source/game/DataBase.cpp @@ -1,8 +1,8 @@ #include "stdafx.h" -#include "game\DataBase.h" +#include "game/DataBase.h" #include "lslSerialFileXML.h" -#include "game\World.h" +#include "game/World.h" namespace r3d { diff --git a/src/Rock3dGame/source/game/DialogMenu2.cpp b/src/Rock3dGame/source/game/DialogMenu2.cpp index 6e85818e..1d00de2a 100644 --- a/src/Rock3dGame/source/game/DialogMenu2.cpp +++ b/src/Rock3dGame/source/game/DialogMenu2.cpp @@ -1,7 +1,7 @@ #include "stdafx.h" -#include "game\Menu.h" +#include "game/Menu.h" -#include "game\DialogMenu2.h" +#include "game/DialogMenu2.h" namespace r3d { diff --git a/src/Rock3dGame/source/game/Environment.cpp b/src/Rock3dGame/source/game/Environment.cpp index 380ccc44..7422357b 100644 --- a/src/Rock3dGame/source/game/Environment.cpp +++ b/src/Rock3dGame/source/game/Environment.cpp @@ -1,7 +1,7 @@ #include "stdafx.h" -#include "game\World.h" +#include "game/World.h" -#include "game\Environment.h" +#include "game/Environment.h" namespace r3d { diff --git a/src/Rock3dGame/source/game/FinalMenu.cpp b/src/Rock3dGame/source/game/FinalMenu.cpp index 83b6af57..2c753634 100644 --- a/src/Rock3dGame/source/game/FinalMenu.cpp +++ b/src/Rock3dGame/source/game/FinalMenu.cpp @@ -1,8 +1,8 @@ #include "stdafx.h" -#include "game\Menu.h" +#include "game/Menu.h" -#include "game\FinalMenu.h" -#include "game\GameMode.h" +#include "game/FinalMenu.h" +#include "game/GameMode.h" namespace r3d { diff --git a/src/Rock3dGame/source/game/FinishMenu.cpp b/src/Rock3dGame/source/game/FinishMenu.cpp index 64aa818a..6212d4b1 100644 --- a/src/Rock3dGame/source/game/FinishMenu.cpp +++ b/src/Rock3dGame/source/game/FinishMenu.cpp @@ -1,7 +1,7 @@ #include "stdafx.h" -#include "game\Menu.h" +#include "game/Menu.h" -#include "game\FinishMenu.h" +#include "game/FinishMenu.h" namespace r3d { diff --git a/src/Rock3dGame/source/game/GameBase.cpp b/src/Rock3dGame/source/game/GameBase.cpp index a247af5e..9a419dd3 100644 --- a/src/Rock3dGame/source/game/GameBase.cpp +++ b/src/Rock3dGame/source/game/GameBase.cpp @@ -1,10 +1,10 @@ #include "stdafx.h" -#include "game\\GameBase.h" +#include "game/GameBase.h" -#include "game\\GameObject.h" -#include "game\\GameCar.h" -#include "game\\Weapon.h" -#include "game\\Logic.h" +#include "game/GameObject.h" +#include "game/GameCar.h" +#include "game/Weapon.h" +#include "game/Logic.h" namespace r3d { diff --git a/src/Rock3dGame/source/game/GameCar.cpp b/src/Rock3dGame/source/game/GameCar.cpp index 76b253e1..2a0e1536 100644 --- a/src/Rock3dGame/source/game/GameCar.cpp +++ b/src/Rock3dGame/source/game/GameCar.cpp @@ -1,8 +1,8 @@ #include "stdafx.h" -#include "game\\GameCar.h" +#include "game/GameCar.h" -#include "game\\Logic.h" -#include "game\\Race.h" +#include "game/Logic.h" +#include "game/Race.h" namespace r3d { diff --git a/src/Rock3dGame/source/game/GameMode.cpp b/src/Rock3dGame/source/game/GameMode.cpp index 1c468f7e..0751436b 100644 --- a/src/Rock3dGame/source/game/GameMode.cpp +++ b/src/Rock3dGame/source/game/GameMode.cpp @@ -1,7 +1,7 @@ #include "stdafx.h" -#include "game\World.h" +#include "game/World.h" -#include "game\GameMode.h" +#include "game/GameMode.h" #include #include "lslSerialFileXml.h" diff --git a/src/Rock3dGame/source/game/GameObject.cpp b/src/Rock3dGame/source/game/GameObject.cpp index 8e89ec4f..1db9027a 100644 --- a/src/Rock3dGame/source/game/GameObject.cpp +++ b/src/Rock3dGame/source/game/GameObject.cpp @@ -1,8 +1,8 @@ #include "stdafx.h" -#include "game\\Logic.h" +#include "game/Logic.h" -#include "game\\GameObject.h" -#include "game\\World.h" +#include "game/GameObject.h" +#include "game/World.h" #include "GraphManager.h" namespace r3d diff --git a/src/Rock3dGame/source/game/HudMenu.cpp b/src/Rock3dGame/source/game/HudMenu.cpp index 917b2f6c..0d9b900e 100644 --- a/src/Rock3dGame/source/game/HudMenu.cpp +++ b/src/Rock3dGame/source/game/HudMenu.cpp @@ -1,7 +1,7 @@ #include "stdafx.h" -#include "game\Menu.h" -#include "game\HudMenu.h" +#include "game/Menu.h" +#include "game/HudMenu.h" namespace r3d { diff --git a/src/Rock3dGame/source/game/HumanPlayer.cpp b/src/Rock3dGame/source/game/HumanPlayer.cpp index 4bdee217..44d905bb 100644 --- a/src/Rock3dGame/source/game/HumanPlayer.cpp +++ b/src/Rock3dGame/source/game/HumanPlayer.cpp @@ -1,7 +1,7 @@ #include "stdafx.h" -#include "game\World.h" +#include "game/World.h" -#include "game\HumanPlayer.h" +#include "game/HumanPlayer.h" namespace r3d { diff --git a/src/Rock3dGame/source/game/Logic.cpp b/src/Rock3dGame/source/game/Logic.cpp index 26dbdfc9..90d0b099 100644 --- a/src/Rock3dGame/source/game/Logic.cpp +++ b/src/Rock3dGame/source/game/Logic.cpp @@ -1,7 +1,7 @@ #include "stdafx.h" -#include "game\\World.h" +#include "game/World.h" -#include "game\\Logic.h" +#include "game/Logic.h" namespace r3d { diff --git a/src/Rock3dGame/source/game/MainMenu2.cpp b/src/Rock3dGame/source/game/MainMenu2.cpp index 8bc61483..70927b13 100644 --- a/src/Rock3dGame/source/game/MainMenu2.cpp +++ b/src/Rock3dGame/source/game/MainMenu2.cpp @@ -1,7 +1,7 @@ #include "stdafx.h" -#include "game\Menu.h" +#include "game/Menu.h" -#include "game\MainMenu2.h" +#include "game/MainMenu2.h" namespace r3d { diff --git a/src/Rock3dGame/source/game/Map.cpp b/src/Rock3dGame/source/game/Map.cpp index 629d9efa..582e27d7 100644 --- a/src/Rock3dGame/source/game/Map.cpp +++ b/src/Rock3dGame/source/game/Map.cpp @@ -1,7 +1,7 @@ #include "stdafx.h" -#include "game\\World.h" +#include "game/World.h" -#include "game\\Map.h" +#include "game/Map.h" namespace r3d { diff --git a/src/Rock3dGame/source/game/MapObj.cpp b/src/Rock3dGame/source/game/MapObj.cpp index 64a232e7..a17fd975 100644 --- a/src/Rock3dGame/source/game/MapObj.cpp +++ b/src/Rock3dGame/source/game/MapObj.cpp @@ -1,10 +1,10 @@ #include "stdafx.h" -#include "game\\MapObj.h" -#include "game\\Player.h" +#include "game/MapObj.h" +#include "game/Player.h" -#include "game\\GameCar.h" -#include "game\\RockCar.h" -#include "game\\Weapon.h" +#include "game/GameCar.h" +#include "game/RockCar.h" +#include "game/Weapon.h" #include "lslSerialFileXML.h" #include diff --git a/src/Rock3dGame/source/game/Menu.cpp b/src/Rock3dGame/source/game/Menu.cpp index 601ec248..4d2f9057 100644 --- a/src/Rock3dGame/source/game/Menu.cpp +++ b/src/Rock3dGame/source/game/Menu.cpp @@ -1,7 +1,7 @@ #include "stdafx.h" -#include "game\World.h" +#include "game/World.h" -#include "game\Menu.h" +#include "game/Menu.h" namespace r3d { diff --git a/src/Rock3dGame/source/game/MenuSystem.cpp b/src/Rock3dGame/source/game/MenuSystem.cpp index 90e95046..c0d0917c 100644 --- a/src/Rock3dGame/source/game/MenuSystem.cpp +++ b/src/Rock3dGame/source/game/MenuSystem.cpp @@ -1,5 +1,5 @@ #include "stdafx.h" -#include "game\Menu.h" +#include "game/Menu.h" namespace r3d { diff --git a/src/Rock3dGame/source/game/OptionsMenu.cpp b/src/Rock3dGame/source/game/OptionsMenu.cpp index 070a66d7..e2797461 100644 --- a/src/Rock3dGame/source/game/OptionsMenu.cpp +++ b/src/Rock3dGame/source/game/OptionsMenu.cpp @@ -1,8 +1,8 @@ #include "stdafx.h" -#include "game\Menu.h" +#include "game/Menu.h" -#include "game\OptionsMenu.h" -#include "game\World.h" +#include "game/OptionsMenu.h" +#include "game/World.h" namespace r3d { diff --git a/src/Rock3dGame/source/game/Player.cpp b/src/Rock3dGame/source/game/Player.cpp index db86d879..baa37df9 100644 --- a/src/Rock3dGame/source/game/Player.cpp +++ b/src/Rock3dGame/source/game/Player.cpp @@ -1,7 +1,7 @@ #include "stdafx.h" -#include "game\World.h" +#include "game/World.h" -#include "game\Player.h" +#include "game/Player.h" namespace r3d { diff --git a/src/Rock3dGame/source/game/Race.cpp b/src/Rock3dGame/source/game/Race.cpp index 9fda29e1..0bf1a54d 100644 --- a/src/Rock3dGame/source/game/Race.cpp +++ b/src/Rock3dGame/source/game/Race.cpp @@ -1,7 +1,7 @@ #include "stdafx.h" -#include "game\World.h" +#include "game/World.h" -#include "game\Race.h" +#include "game/Race.h" #include "lslSerialFileXml.h" #ifdef _DEBUG diff --git a/src/Rock3dGame/source/game/RaceMenu2.cpp b/src/Rock3dGame/source/game/RaceMenu2.cpp index e3de5a00..a49e2bec 100644 --- a/src/Rock3dGame/source/game/RaceMenu2.cpp +++ b/src/Rock3dGame/source/game/RaceMenu2.cpp @@ -1,8 +1,8 @@ #include "stdafx.h" -#include "game\Menu.h" +#include "game/Menu.h" -#include "game\RaceMenu2.h" -#include "game\World.h" +#include "game/RaceMenu2.h" +#include "game/World.h" namespace r3d { diff --git a/src/Rock3dGame/source/game/RecordLib.cpp b/src/Rock3dGame/source/game/RecordLib.cpp index 155c3554..cace1a3e 100644 --- a/src/Rock3dGame/source/game/RecordLib.cpp +++ b/src/Rock3dGame/source/game/RecordLib.cpp @@ -1,5 +1,5 @@ #include "stdafx.h" -#include "game\RecordLib.h" +#include "game/RecordLib.h" namespace r3d { diff --git a/src/Rock3dGame/source/game/ResourceManager.cpp b/src/Rock3dGame/source/game/ResourceManager.cpp index c39d2dd3..14d9bcd4 100644 --- a/src/Rock3dGame/source/game/ResourceManager.cpp +++ b/src/Rock3dGame/source/game/ResourceManager.cpp @@ -1,7 +1,7 @@ #include "stdafx.h" -#include "game\ResourceManager.h" +#include "game/ResourceManager.h" -#include "game\World.h" +#include "game/World.h" namespace r3d { diff --git a/src/Rock3dGame/source/game/RockCar.cpp b/src/Rock3dGame/source/game/RockCar.cpp index 0d03cbaa..9abbf6ef 100644 --- a/src/Rock3dGame/source/game/RockCar.cpp +++ b/src/Rock3dGame/source/game/RockCar.cpp @@ -1,8 +1,8 @@ #include "stdafx.h" -#include "game\\Logic.h" -#include "game\\RockCar.h" -#include "game\\Player.h" +#include "game/Logic.h" +#include "game/RockCar.h" +#include "game/Player.h" namespace r3d { diff --git a/src/Rock3dGame/source/game/Trace.cpp b/src/Rock3dGame/source/game/Trace.cpp index bdb8c264..77132895 100644 --- a/src/Rock3dGame/source/game/Trace.cpp +++ b/src/Rock3dGame/source/game/Trace.cpp @@ -1,6 +1,6 @@ #include "stdafx.h" -#include "game\Trace.h" +#include "game/Trace.h" namespace r3d { diff --git a/src/Rock3dGame/source/game/TraceGfx.cpp b/src/Rock3dGame/source/game/TraceGfx.cpp index 5887cb1d..823519e9 100644 --- a/src/Rock3dGame/source/game/TraceGfx.cpp +++ b/src/Rock3dGame/source/game/TraceGfx.cpp @@ -1,6 +1,6 @@ #include "stdafx.h" -#include "game\TraceGfx.h" +#include "game/TraceGfx.h" namespace r3d { diff --git a/src/Rock3dGame/source/game/View.cpp b/src/Rock3dGame/source/game/View.cpp index 9531f444..0e0b4810 100644 --- a/src/Rock3dGame/source/game/View.cpp +++ b/src/Rock3dGame/source/game/View.cpp @@ -1,7 +1,7 @@ #include "stdafx.h" -#include "game\View.h" +#include "game/View.h" -#include "game\World.h" +#include "game/World.h" namespace r3d { diff --git a/src/Rock3dGame/source/game/Weapon.cpp b/src/Rock3dGame/source/game/Weapon.cpp index 603a7015..74897902 100644 --- a/src/Rock3dGame/source/game/Weapon.cpp +++ b/src/Rock3dGame/source/game/Weapon.cpp @@ -1,8 +1,8 @@ #include "stdafx.h" -#include "game\\Weapon.h" +#include "game/Weapon.h" -#include "game\\Logic.h" -#include "game\\Race.h" +#include "game/Logic.h" +#include "game/Race.h" namespace r3d { diff --git a/src/Rock3dGame/source/game/World.cpp b/src/Rock3dGame/source/game/World.cpp index 7f8ec5f0..a8297a29 100644 --- a/src/Rock3dGame/source/game/World.cpp +++ b/src/Rock3dGame/source/game/World.cpp @@ -1,7 +1,7 @@ #include "stdafx.h" -#include "game\World.h" -#include "edit\Edit.h" +#include "game/World.h" +#include "edit/Edit.h" #include "lslSerialFileXml.h" diff --git a/src/Rock3dGame/source/net/NetGame.cpp b/src/Rock3dGame/source/net/NetGame.cpp index 0971f373..e2481953 100644 --- a/src/Rock3dGame/source/net/NetGame.cpp +++ b/src/Rock3dGame/source/net/NetGame.cpp @@ -1,7 +1,7 @@ #include "stdafx.h" -#include "net\NetGame.h" -#include "game\GameMode.h" +#include "net/NetGame.h" +#include "game/GameMode.h" namespace r3d { diff --git a/src/Rock3dGame/source/net/NetPlayer.cpp b/src/Rock3dGame/source/net/NetPlayer.cpp index ce2e4221..64a56f6d 100644 --- a/src/Rock3dGame/source/net/NetPlayer.cpp +++ b/src/Rock3dGame/source/net/NetPlayer.cpp @@ -1,7 +1,7 @@ #include "stdafx.h" -#include "net\NetPlayer.h" -#include "game\World.h" +#include "net/NetPlayer.h" +#include "game/World.h" namespace r3d { diff --git a/src/Rock3dGame/source/net/NetRace.cpp b/src/Rock3dGame/source/net/NetRace.cpp index 910575fd..91e4e5b3 100644 --- a/src/Rock3dGame/source/net/NetRace.cpp +++ b/src/Rock3dGame/source/net/NetRace.cpp @@ -1,7 +1,7 @@ #include "stdafx.h" -#include "net\NetRace.h" -#include "game\World.h" +#include "net/NetRace.h" +#include "game/World.h" namespace r3d { diff --git a/src/Rock3dGame/source/net/SteamService.cpp b/src/Rock3dGame/source/net/SteamService.cpp index fd55d890..0fe9a610 100644 --- a/src/Rock3dGame/source/net/SteamService.cpp +++ b/src/Rock3dGame/source/net/SteamService.cpp @@ -1,9 +1,9 @@ #include "stdafx.h" -#include "net\SteamService.h" +#include "net/SteamService.h" #ifdef STEAM_SERVICE -#include "game\GameMode.h" +#include "game/GameMode.h" namespace r3d { diff --git a/src/Rock3dGame/source/net/p2pauth.cpp b/src/Rock3dGame/source/net/p2pauth.cpp index 9db72a14..5934b73d 100644 --- a/src/Rock3dGame/source/net/p2pauth.cpp +++ b/src/Rock3dGame/source/net/p2pauth.cpp @@ -6,11 +6,11 @@ //============================================================================= #include "stdafx.h" -#include "net\p2pauth.h" +#include "net/p2pauth.h" #ifdef STEAM_SERVICE -#include "net\SteamService.h" +#include "net/SteamService.h" namespace r3d { diff --git a/src/Rock3dGame/source/snd/Audio.cpp b/src/Rock3dGame/source/snd/Audio.cpp index 0095fe2f..aea03067 100644 --- a/src/Rock3dGame/source/snd/Audio.cpp +++ b/src/Rock3dGame/source/snd/Audio.cpp @@ -1,6 +1,6 @@ #include "stdafx.h" -#include "snd\Audio.h" +#include "snd/Audio.h" namespace r3d { diff --git a/src/Rock3dGame/source/video/VideoPlayer.cpp b/src/Rock3dGame/source/video/VideoPlayer.cpp index 09505f21..ba2f3ff6 100644 --- a/src/Rock3dGame/source/video/VideoPlayer.cpp +++ b/src/Rock3dGame/source/video/VideoPlayer.cpp @@ -1,6 +1,6 @@ #include "stdafx.h" -#include "video\VideoPlayer.h" +#include "video/VideoPlayer.h" namespace r3d { diff --git a/src/Rock3dGame/source/video/playback.cpp b/src/Rock3dGame/source/video/playback.cpp index 88080ca3..96055507 100644 --- a/src/Rock3dGame/source/video/playback.cpp +++ b/src/Rock3dGame/source/video/playback.cpp @@ -10,8 +10,8 @@ #include #include #include -#include "video\playback.h" -#include "video\video.h" +#include "video/playback.h" +#include "video/video.h" DShowPlayer::DShowPlayer(HWND hwnd, UINT windowMsg): m_state(STATE_NO_GRAPH), diff --git a/src/Rock3dGame/source/video/video.cpp b/src/Rock3dGame/source/video/video.cpp index 84a88c87..8b047a75 100644 --- a/src/Rock3dGame/source/video/video.cpp +++ b/src/Rock3dGame/source/video/video.cpp @@ -7,7 +7,7 @@ // Copyright (c) Microsoft Corporation. All rights reserved. #include "stdafx.h" -#include "video\video.h" +#include "video/video.h" #include HRESULT InitializeEVR(IBaseFilter *pEVR, HWND hwnd, IMFVideoDisplayControl ** ppWc); From 3b42abcfbb2cd4d4cbd7999e9669ca7ea6f368ab Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Wed, 2 Nov 2022 20:46:23 +0300 Subject: [PATCH 53/55] linux: add FIX_LINUX Sleep, IP_ADAPTER_ADDRESSES, ID3DXMesh, ID3DXFont --- src/CMakeLists.txt | 2 +- src/LexStd/header/lslClassList.h | 2 +- src/NetLib/CMakeLists.txt | 6 +++- src/NetLib/include/net/NetCommon.h | 4 +-- src/NetLib/source/net/NetService.cpp | 6 ++++ src/Rock3dEngine/header/graph/ContextInfo.h | 18 ++++++------ src/Rock3dEngine/header/graph/SceneManager.h | 3 ++ src/Rock3dEngine/header/graph/VideoResource.h | 6 ++++ .../source/graph/VideoResource.cpp | 28 +++++++++++++++++++ 9 files changed, 61 insertions(+), 14 deletions(-) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 70864202..2812a591 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -7,7 +7,7 @@ if (MSVC) add_compile_options("$<$:/Gy>") # Enable Function-Level Linking else() - add_compile_options(-fpermissive) + add_compile_options(-fPIC) endif() add_subdirectory(LexStd) diff --git a/src/LexStd/header/lslClassList.h b/src/LexStd/header/lslClassList.h index 060091c4..5992ca2a 100644 --- a/src/LexStd/header/lslClassList.h +++ b/src/LexStd/header/lslClassList.h @@ -119,7 +119,7 @@ template class ArgClassList: public Ba public: _BaseClass* CreateInst(const _Key& key, const _Arg& arg) { - return Get(key).CreateInst(arg); + return this->Get(key).CreateInst(arg); } }; diff --git a/src/NetLib/CMakeLists.txt b/src/NetLib/CMakeLists.txt index 03c251fc..513bf0a0 100644 --- a/src/NetLib/CMakeLists.txt +++ b/src/NetLib/CMakeLists.txt @@ -28,9 +28,13 @@ target_include_directories(${PROJECT_NAME} PRIVATE ${CMAKE_SOURCE_DIR}/extern/directx/include ) +if (WIN32) +set(SYSTEM_DEPS "Iphlpapi.lib") +endif() + target_link_libraries(${PROJECT_NAME} PRIVATE LexStd - Iphlpapi.lib + ${SYSTEM_DEPS} ) target_link_directories(${PROJECT_NAME} PRIVATE diff --git a/src/NetLib/include/net/NetCommon.h b/src/NetLib/include/net/NetCommon.h index 16f2b947..54ff8d86 100644 --- a/src/NetLib/include/net/NetCommon.h +++ b/src/NetLib/include/net/NetCommon.h @@ -334,14 +334,14 @@ inline unsigned Read(std::istream& stream, D3DMATRIX& value) template inline unsigned Write(std::ostream& stream, const std::basic_string<_T>& value, unsigned size) { - Write(stream, value.data(), sizeof(std::basic_string<_T>::value_type) * size); + Write(stream, value.data(), sizeof(typename std::basic_string<_T>::value_type) * size); return size; } template inline unsigned Read(std::istream& stream, std::basic_string<_T>& value, unsigned size) { value.resize(size); - Read(stream, const_cast::pointer>(value.data()), sizeof(std::basic_string<_T>::value_type) * size); + Read(stream, const_cast::pointer>(value.data()), sizeof(typename std::basic_string<_T>::value_type) * size); return size; } diff --git a/src/NetLib/source/net/NetService.cpp b/src/NetLib/source/net/NetService.cpp index 4f4c1b6f..909144bb 100644 --- a/src/NetLib/source/net/NetService.cpp +++ b/src/NetLib/source/net/NetService.cpp @@ -3,8 +3,10 @@ #include "net/NetService.h" #include "net/NetConnectionTCP.h" +#ifdef _WIN32 #include #include +#endif namespace net { @@ -52,7 +54,9 @@ void NetService::AllocProtocols() void NetService::ReleaseProtocols() { _ioService.poll(); +#ifdef _WIN32 // FIX_LINUX Sleep Sleep(0); +#endif _ioService.poll(); DeleteConnections(); @@ -517,6 +521,7 @@ INetAcceptorImpl* NetService::acceptorImpl() const bool NetService::GetAdapterAddresses(lsl::StringVec& addrVec) const { +#ifdef _WIN32 // FIX_LINUX IP_ADAPTER_ADDRESSES const unsigned WORKING_BUFFER_SIZE = 15000; const unsigned MAX_TRIES = 3; @@ -577,6 +582,7 @@ bool NetService::GetAdapterAddresses(lsl::StringVec& addrVec) const } free(addresses); +#endif return true; } diff --git a/src/Rock3dEngine/header/graph/ContextInfo.h b/src/Rock3dEngine/header/graph/ContextInfo.h index 39d3ce38..675a7838 100644 --- a/src/Rock3dEngine/header/graph/ContextInfo.h +++ b/src/Rock3dEngine/header/graph/ContextInfo.h @@ -71,7 +71,7 @@ template class StateStack bool Push(const _State& state, const _Value& value) { - States::iterator iter = _states.find(state); + typename States::iterator iter = _states.find(state); if (iter == _states.end()) iter = _states.insert(_states.end(), States::value_type(state, ValueStatck())); @@ -88,7 +88,7 @@ template class StateStack } bool Pop(const _State& state) { - States::iterator iter = _states.find(state); + typename States::iterator iter = _states.find(state); LSL_ASSERT(iter != _states.end()); @@ -105,7 +105,7 @@ template class StateStack const _Value& Back(const _State& state) const { - States::const_iterator iter = _states.find(state); + typename States::const_iterator iter = _states.find(state); LSL_ASSERT(iter != _states.end()); @@ -114,7 +114,7 @@ template class StateStack const _Value* End(const _State& state) const { - States::const_iterator iter = _states.find(state); + typename States::const_iterator iter = _states.find(state); if (iter == _states.end()) return 0; @@ -231,8 +231,8 @@ class CameraCI: public virtual lsl::Object public: enum Transform {ctView = 0, ctProj, ctWorldView, ctViewProj, ctWVP, cTransformEnd}; - static public glm::vec2 ViewToProj(const glm::vec2& coord, const glm::vec2& viewSize); - static public glm::vec2 ProjToView(const glm::vec2& coord, const glm::vec2& viewSize); + static glm::vec2 ViewToProj(const glm::vec2& coord, const glm::vec2& viewSize); + static glm::vec2 ProjToView(const glm::vec2& coord, const glm::vec2& viewSize); private: CameraDesc _desc; @@ -324,7 +324,7 @@ class ContextInfo public: static const unsigned cMaxTexSamplers = 8; - static const TransformStateType ContextInfo::cTexTransform[8]; + static const TransformStateType cTexTransform[8]; static DWORD defaultRenderStates[RENDER_STATE_END]; static DWORD defaultSamplerStates[SAMPLER_STATE_END]; static DWORD defaultTextureStageStates[TEXTURE_STAGE_STATE_END]; @@ -465,7 +465,7 @@ class ContextInfo template _Value StateManager<_State, _Value, _defValue>::Get(_State state) const { - _States::const_iterator iter = _states.find(state); + typename _States::const_iterator iter = _states.find(state); if (iter != _states.end()) return iter->second; else @@ -478,7 +478,7 @@ template void StateManager<_Stat _states[state] = value; else { - _States::iterator iter = _states.find(state); + typename _States::iterator iter = _states.find(state); if (iter != _states.end()) _states.erase(iter); } diff --git a/src/Rock3dEngine/header/graph/SceneManager.h b/src/Rock3dEngine/header/graph/SceneManager.h index f762347d..39cdfaf1 100644 --- a/src/Rock3dEngine/header/graph/SceneManager.h +++ b/src/Rock3dEngine/header/graph/SceneManager.h @@ -14,6 +14,7 @@ namespace graph { class MaterialNode; +class SceneManager; class BaseSceneNode: public lsl::Component, protected IProgressUser { @@ -444,6 +445,8 @@ class LightSource: public BaseSceneNode void SetShadowMap(graph::Tex2DResource* value); }; +class SceneRender; + class SceneManager: public lsl::Component, public graph::Renderable { friend class SceneRender; diff --git a/src/Rock3dEngine/header/graph/VideoResource.h b/src/Rock3dEngine/header/graph/VideoResource.h index 9678c79e..bcb0e7fa 100644 --- a/src/Rock3dEngine/header/graph/VideoResource.h +++ b/src/Rock3dEngine/header/graph/VideoResource.h @@ -153,7 +153,9 @@ class MeshX: public MemPoolResource Prefab _prefab; Params _params; +#ifdef _WIN32 // FIX_LINUX ID3DXMesh ID3DXMesh* _d3dxMesh; +#endif unsigned _beginStreamCnt; protected: void LoadData() const; @@ -358,8 +360,10 @@ class DepthStencilSurfaceResource: public VideoResource class TextFont: public VideoResource { +#ifdef _WIN32 // FIX_LINUX ID3DXFont private: ID3DXFont* _font; +#endif public: struct Desc { @@ -367,6 +371,7 @@ class TextFont: public VideoResource { height = 14; width = 0; +#ifdef _WIN32 // FIX_LINUX ID3DXFont weight = FW_BOLD; mipLevels = 0; italic = false; @@ -374,6 +379,7 @@ class TextFont: public VideoResource outputPrecision = OUT_DEFAULT_PRECIS; quality = DEFAULT_QUALITY; pitchAndFamily = DEFAULT_PITCH | FF_DONTCARE; +#endif pFacename = "Arial"; } diff --git a/src/Rock3dEngine/source/graph/VideoResource.cpp b/src/Rock3dEngine/source/graph/VideoResource.cpp index ce0d9737..13603d09 100644 --- a/src/Rock3dEngine/source/graph/VideoResource.cpp +++ b/src/Rock3dEngine/source/graph/VideoResource.cpp @@ -409,7 +409,11 @@ IDirect3DIndexBuffer9* IndexedVBMesh::GetIB() return _ib; } +#ifdef _WIN32 // FIX_LINUX ID3DXMesh MeshX::MeshX(): MemPoolResource(D3DUSAGE_WRITEONLY), _data(0), _createData(false), _d3dxMesh(0), _beginStreamCnt(0) +#else +MeshX::MeshX() +#endif { } @@ -431,18 +435,22 @@ void MeshX::DoInit() { LoadData(); +#ifdef _WIN32 // FIX_LINUX ID3DXMesh switch (_prefab) { case mpSphere: D3DXCreateSphere(GetEngine()->GetDriver().GetDevice(), _params.radius1, _params.slices, _params.stacks, &_d3dxMesh, NULL); break; } +#endif } void MeshX::DoFree() { +#ifdef _WIN32 // FIX_LINUX ID3DXMesh _d3dxMesh->Release(); _d3dxMesh = 0; +#endif } void MeshX::DoUpdate() @@ -496,7 +504,9 @@ void MeshX::Draw() BeginStream(); //GetEngine()->GetDriver().GetDevice()->DrawIndexedPrimitive(D3DPT_TRIANGLELIST, 0, 0, _data->vb.GetVertexCount(), 0, _data->fb.GetFaceCount()); +#ifdef _WIN32 // FIX_LINUX ID3DXMesh _d3dxMesh->DrawSubset(0); +#endif EndStream(); } @@ -508,7 +518,9 @@ void MeshX::DrawSubset(int attribId) BeginStream(attribId); //GetEngine()->GetDriver().GetDevice()->DrawIndexedPrimitive(D3DPT_TRIANGLELIST, 0, fg.sVertex, fg.vertexCnt, fg.sFace * 3, fg.faceCnt); +#ifdef _WIN32 // FIX_LINUX ID3DXMesh _d3dxMesh->DrawSubset(attribId); +#endif EndStream(); } @@ -1252,7 +1264,11 @@ void DepthStencilSurfaceResource::SetScreenScale(glm::vec2 value) } } +#ifdef _WIN32 // FIX_LINUX ID3DXFont TextFont::TextFont(): _font(0) +#else +TextFont::TextFont() +#endif { } @@ -1263,15 +1279,19 @@ TextFont::~TextFont() void TextFont::DoInit() { +#ifdef _WIN32 // FIX_LINUX ID3DXFont HRESULT hr = D3DXCreateFont(GetEngine()->GetDriver().GetDevice(), _desc.height, _desc.width, _desc.weight, _desc. mipLevels, _desc.italic, _desc.charSet, _desc.outputPrecision, _desc.quality, _desc.pitchAndFamily, _desc.pFacename.c_str(), &_font); if (hr != D3D_OK) throw lsl::Error("void TextFont::DoInit(). hr != D3D_OK"); +#endif } void TextFont::DoFree() { +#ifdef _WIN32 // FIX_LINUX ID3DXFont lsl::SafeRelease(_font); +#endif } void TextFont::DoUpdate() @@ -1280,32 +1300,40 @@ void TextFont::DoUpdate() void TextFont::DrawText(const std::string& text, lsl::Rect& rect, DWORD format, const D3DCOLOR& color) { +#ifdef _WIN32 // FIX_LINUX ID3DXFont RECT mtRect; SetRect(&mtRect, rect.left, rect.top, rect.right, rect.bottom); _font->DrawTextA(0, text.c_str(), text.size(), &mtRect, format, color); rect = lsl::Rect(mtRect.left, mtRect.top, mtRect.right, mtRect.bottom); +#endif } void TextFont::DrawText(const std::wstring& text, lsl::Rect& rect, DWORD format, const D3DCOLOR& color) { +#ifdef _WIN32 // FIX_LINUX ID3DXFont RECT mtRect; SetRect(&mtRect, rect.left, rect.top, rect.right, rect.bottom); _font->DrawTextW(0, text.c_str(), text.size(), &mtRect, format, color); rect = lsl::Rect(mtRect.left, mtRect.top, mtRect.right, mtRect.bottom); +#endif } void TextFont::OnLostDevice() { +#ifdef _WIN32 // FIX_LINUX ID3DXFont _font->OnLostDevice(); +#endif } void TextFont::OnResetDevice() { +#ifdef _WIN32 // FIX_LINUX ID3DXFont _font->OnResetDevice(); +#endif } const TextFont::Desc& TextFont::GetDesc() const From c15e42bdff2e395e07dc3e5874e936ea3543bed5 Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Wed, 2 Nov 2022 22:58:47 +0300 Subject: [PATCH 54/55] linux: add FIX_LINUX D3DXHANDLE, ID3DXInclude, ID3DXEffect --- .../header/graph/MappingShaders.h | 2 ++ src/Rock3dEngine/header/graph/Shader.h | 28 +++++++++++++++++++ 2 files changed, 30 insertions(+) diff --git a/src/Rock3dEngine/header/graph/MappingShaders.h b/src/Rock3dEngine/header/graph/MappingShaders.h index 6a923880..669ac69f 100644 --- a/src/Rock3dEngine/header/graph/MappingShaders.h +++ b/src/Rock3dEngine/header/graph/MappingShaders.h @@ -32,7 +32,9 @@ class LightShader: public Shader void InvalidateParams(D3DLIGHTTYPE value, bool shadow); protected: +#ifdef _WIN32 // FIX_LINUX D3DXHANDLE D3DXHANDLE _params[cMyParamEnd]; +#endif virtual void DoFree(); virtual void DoBeginDraw(Engine& engine); diff --git a/src/Rock3dEngine/header/graph/Shader.h b/src/Rock3dEngine/header/graph/Shader.h index 393115e6..53422835 100644 --- a/src/Rock3dEngine/header/graph/Shader.h +++ b/src/Rock3dEngine/header/graph/Shader.h @@ -12,6 +12,7 @@ namespace graph class Shader: public VideoResource, public BaseShader { +#ifdef _WIN32 // FIX_LINUX ID3DXInclude private: class D3DXInclude: public ID3DXInclude { @@ -24,6 +25,7 @@ class Shader: public VideoResource, public BaseShader public: D3DXInclude(Shader* owner); }; +#endif public: typedef VariantVec Value; typedef std::map Values; @@ -48,10 +50,13 @@ class Shader: public VideoResource, public BaseShader { friend Shader; friend lsl::Collection; +#ifdef _WIN32 // FIX_LINUX ID3DXEffect private: typedef std::map Handles; +#endif private: Macros _macros; +#ifdef _WIN32 // FIX_LINUX ID3DXEffect ID3DXEffect* _effect; Handles _handles; @@ -107,9 +112,14 @@ class Shader: public VideoResource, public BaseShader return iter->second; } +#endif protected: MacroBlock() {} +#ifdef _WIN32 // FIX_LINUX ID3DXEffect MacroBlock(const Macros& macros): _macros(macros), _effect(0) {} +#else + MacroBlock(const Macros& macros): _macros(macros) {} +#endif const Macros& GetMacros() const { @@ -118,7 +128,11 @@ class Shader: public VideoResource, public BaseShader bool operator==(const MacroBlock& value) const { +#ifdef _WIN32 // FIX_LINUX ID3DXEffect return _effect == value._effect; +#else + return false; +#endif } bool operator==(const Macros& value) const { @@ -127,24 +141,32 @@ class Shader: public VideoResource, public BaseShader void SetValue(const std::string& name, const void* data, unsigned size) { +#ifdef _WIN32 // FIX_LINUX ID3DXEffect SetParam(GetParam(name), data, size); +#endif } void SetValue(const std::string& name, const Value& value) { +#ifdef _WIN32 // FIX_LINUX ID3DXEffect SetParam(GetParam(name), value); +#endif } void SetTexture(const std::string& name, IDirect3DBaseTexture9* texture) { +#ifdef _WIN32 // FIX_LINUX ID3DXEffect SetTexParam(GetParam(name), texture); +#endif } void SetTechnique(const std::string& name) { +#ifdef _WIN32 // FIX_LINUX ID3DXEffect D3DXHANDLE tech = GetTech(name); if (tech) _effect->SetTechnique(tech); +#endif } }; @@ -235,7 +257,9 @@ class Shader: public VideoResource, public BaseShader MacroBlock* _macro; //Реализация включения +#ifdef _WIN32 // FIX_LINUX D3DXInclude D3DXInclude* _include; +#endif //Обновление внешних текстур TexUser* _texUser; //Текущая техника прохода, задается только при применении прохода и может быть временной, заданной через параметр @@ -253,7 +277,9 @@ class Shader: public VideoResource, public BaseShader //Применение внутреннего прохода unsigned _applyPass; //Пул эффектов +#ifdef _WIN32 // FIX_LINUX ID3DXEffect ID3DXEffectPool* _effPool; +#endif void InitMacro(MacroBlock* value); void FreeMacro(MacroBlock* value); @@ -302,10 +328,12 @@ class Shader: public VideoResource, public BaseShader lsl::BinaryResource* GetOrCreateData(); void SetData(lsl::BinaryResource* value); +#ifdef _WIN32 // FIX_LINUX ID3DXEffect D3DXHANDLE GetParam(const std::string& name); void SetParam(D3DXHANDLE param, const Value& value); void SetParam(D3DXHANDLE param, const void* data, unsigned size); void SetTexParam(D3DXHANDLE param, IDirect3DBaseTexture9* value); +#endif void SetValueDir(const std::string& name, const void* data, unsigned size); void SetValueDir(const std::string& name, const Value& value); From bfbde0d245dcdb201640be9219f7bad58b2b0ed2 Mon Sep 17 00:00:00 2001 From: Aleksey Komarov Date: Wed, 16 Nov 2022 11:03:56 +0300 Subject: [PATCH 55/55] physics: comment out class FxPhysicsEmitter --- src/Rock3dEngine/header/graph/FxManager.h | 2 ++ src/Rock3dEngine/source/graph/FxManager.cpp | 2 ++ 2 files changed, 4 insertions(+) diff --git a/src/Rock3dEngine/header/graph/FxManager.h b/src/Rock3dEngine/header/graph/FxManager.h index b423ac7a..6f08b239 100644 --- a/src/Rock3dEngine/header/graph/FxManager.h +++ b/src/Rock3dEngine/header/graph/FxManager.h @@ -488,6 +488,7 @@ class FxPhysicsParticle: public FxParticle FxPhysicsParticle(): pxActor(0) {} }; +/* class FxPhysicsEmitter: public FxEmitter { public: @@ -504,6 +505,7 @@ class FxPhysicsEmitter: public FxEmitter px::Scene* GetPxScene(); void SetPxScene(px::Scene* value); }; +*/ } diff --git a/src/Rock3dEngine/source/graph/FxManager.cpp b/src/Rock3dEngine/source/graph/FxManager.cpp index 308798b5..5ca1265f 100644 --- a/src/Rock3dEngine/source/graph/FxManager.cpp +++ b/src/Rock3dEngine/source/graph/FxManager.cpp @@ -1376,6 +1376,7 @@ void FxFlowEmitter::SetFlowDesc(const FlowDesc& value) _flowDesc = value; } +/* FxPhysicsEmitter::FxPhysicsEmitter(FxParticleSystem* owner): _MyBase(owner), _pxScene(0) { } @@ -1434,6 +1435,7 @@ void FxPhysicsEmitter::SetPxScene(px::Scene* value) if (ReplaceRef(_pxScene, value)) _pxScene = value; } +*/ }