Wildvine Engine
Referencia Doxygen del codigo propio de Wildvine Engine.
Cargando...
Buscando...
Nada coincide
Prerequisites.h
Ir a la documentación de este archivo.
1
6#pragma once
7// Librerias STD
8#include <string>
9#include <sstream>
10#include <vector>
11#include <windows.h>
12#include <xnamath.h>
13#include <thread>
14#include <memory>
15#include <unordered_map>
16#include <type_traits>
17#include <array>
18
19// Librerias DirectX
20#include <d3d11.h>
21#include <d3dx11.h>
22#include <d3dcompiler.h>
23#include "Resource.h"
24#include "resource.h"
25
26// Third Party Libraries
33
34// MACROS
35#define SAFE_RELEASE(x) if(x != nullptr) x->Release(); x = nullptr;
36
37#define MESSAGE( classObj, method, state ) \
38{ \
39 std::wostringstream os_; \
40 os_ << classObj << "::" << method << " : " << "[CREATION OF RESOURCE " << ": " << state << "] \n"; \
41 OutputDebugStringW( os_.str().c_str() ); \
42}
43
44#define ERROR(classObj, method, errorMSG) \
45{ \
46 try { \
47 std::wostringstream os_; \
48 os_ << L"ERROR : " << classObj << L"::" << method \
49 << L" : " << errorMSG << L"\n"; \
50 OutputDebugStringW(os_.str().c_str()); \
51 } catch (...) { \
52 OutputDebugStringW(L"Failed to log error message.\n");\
53 } \
54}
55
56//--------------------------------------------------------------------------------------
57// Structures
58//--------------------------------------------------------------------------------------
67
68struct
70 float x,y,z;
71};
72
73
75{
76 XMMATRIX mView;
77};
78
80{
81 XMMATRIX mviewProj;
82};
83
85{
86 XMMATRIX mProjection;
87};
88
89// Constant buffer used in the vertex and pixel shaders. Align to
90// 16?bytes as required by Direct3D constant buffers.
91struct CBMain
92{
93 //XMFLOAT4X4 World;
94 XMFLOAT4X4 View;
95 XMFLOAT4X4 Projection;
97 float pad0;
99 float pad1;
101 float pad2;
102};
103
105{
106 XMMATRIX mWorld;
107 XMFLOAT4 vMeshColor;
108};
109
111 DDS = 0,
112 PNG = 1,
113 JPG = 2
115
120
133
134
135
ShaderType
@ PIXEL_SHADER
@ VERTEX_SHADER
ComponentType
Tipos de componentes disponibles en el juego.
@ MESH
Componente de malla.
@ MATERIAL
Componente de material.
@ TRANSFORM
Componente de transformación.
@ HIERARCHY
Componente de jerarquía.
@ NONE
Tipo de componente no especificado.
ExtensionType
@ JPG
@ DDS
@ PNG
Declara la API de Resource dentro del subsistema Core.
Declara la API de TSharedPointer dentro del subsistema Memory.
Declara la API de TStaticPtr dentro del subsistema Memory.
Declara la API de TUniquePtr dentro del subsistema Memory.
Declara la API de TWeakPointer dentro del subsistema Memory.
Declara la API de Vector2 dentro del subsistema Math.
Declara la API de Vector3 dentro del subsistema Math.
A 2D vector class.
Definition Vector2.h:45
A 3D vector class.
Definition Vector3.h:45
float pad1
EU::Vector3 LightDir
float pad0
XMFLOAT4X4 View
EU::Vector3 LightColor
EU::Vector3 CameraPos
float pad2
XMFLOAT4X4 Projection
XMMATRIX mviewProj
EU::Vector2 TextureCoordinate
EU::Vector3 Normal
EU::Vector3 Bitangent
EU::Vector3 Tangent
EU::Vector3 Position