Merge remote-tracking branch 'origin/master' into LevelSystemAndSuch
@@ -0,0 +1,22 @@
|
||||
# Blender MTL File: 'octopus.blend'
|
||||
# Material Count: 2
|
||||
|
||||
newmtl Material.001
|
||||
Ns 96.078431
|
||||
Ka 0.000000 0.000000 0.000000
|
||||
Kd 0.640000 0.640000 0.640000
|
||||
Ks 0.500000 0.500000 0.500000
|
||||
Ni 1.000000
|
||||
d 1.000000
|
||||
illum 2
|
||||
map_Kd octotex.png
|
||||
|
||||
newmtl Material.001_NONE
|
||||
Ns 96.078431
|
||||
Ka 0.000000 0.000000 0.000000
|
||||
Kd 0.640000 0.640000 0.640000
|
||||
Ks 0.500000 0.500000 0.500000
|
||||
Ni 1.000000
|
||||
d 1.000000
|
||||
illum 2
|
||||
map_Kd octotex.png
|
||||
|
After Width: | Height: | Size: 26 KiB |
@@ -0,0 +1,14 @@
|
||||
# Blender MTL File: 'None'
|
||||
# Material Count: 1
|
||||
|
||||
newmtl Material
|
||||
Ns 96.078431
|
||||
Ka 0.000000 0.000000 0.000000
|
||||
Kd 0.640000 0.640000 0.640000
|
||||
Ks 0.500000 0.500000 0.500000
|
||||
Ni 1.000000
|
||||
d 1.000000
|
||||
illum 2
|
||||
map_Kd Brick_d.png
|
||||
map_Bump Brick_n.png
|
||||
map_Ks Brick_s.png
|
||||
@@ -0,0 +1,46 @@
|
||||
# Blender v2.75 (sub 0) OBJ File: ''
|
||||
# www.blender.org
|
||||
mtllib Brick.mtl
|
||||
o Cube
|
||||
v 0.500000 -0.500000 -0.500000
|
||||
v 0.500000 -0.500000 0.500000
|
||||
v -0.500000 -0.500000 0.500000
|
||||
v -0.500000 -0.500000 -0.500000
|
||||
v 0.500000 0.500000 -0.499999
|
||||
v 0.499999 0.500000 0.500000
|
||||
v -0.500000 0.500000 0.500000
|
||||
v -0.500000 0.500000 -0.500000
|
||||
vt 0.566439 0.503009
|
||||
vt 0.567048 0.728848
|
||||
vt 0.341210 0.729457
|
||||
vt 0.339992 0.277781
|
||||
vt 0.339383 0.051943
|
||||
vt 0.565221 0.051334
|
||||
vt 0.793495 0.954077
|
||||
vt 0.567657 0.954686
|
||||
vt 0.341819 0.955295
|
||||
vt 0.115981 0.955904
|
||||
vt 0.115372 0.730066
|
||||
vt 0.340601 0.503618
|
||||
vt 0.565830 0.277172
|
||||
vt 0.792886 0.728239
|
||||
vn 0.000000 -1.000000 0.000000
|
||||
vn 0.000000 1.000000 0.000000
|
||||
vn 1.000000 0.000000 0.000000
|
||||
vn -0.000000 0.000000 1.000000
|
||||
vn -1.000000 -0.000000 -0.000000
|
||||
vn 0.000000 0.000000 -1.000000
|
||||
usemtl Material
|
||||
s off
|
||||
f 1/1/1 2/2/1 3/3/1
|
||||
f 8/4/2 7/5/2 6/6/2
|
||||
f 5/7/3 6/8/3 2/2/3
|
||||
f 6/8/4 7/9/4 3/3/4
|
||||
f 7/9/5 8/10/5 4/11/5
|
||||
f 1/1/6 4/12/6 8/4/6
|
||||
f 4/12/1 1/1/1 3/3/1
|
||||
f 5/13/2 8/4/2 6/6/2
|
||||
f 1/14/3 5/7/3 2/2/3
|
||||
f 2/2/4 6/8/4 3/3/4
|
||||
f 3/3/5 7/9/5 4/11/5
|
||||
f 5/13/6 1/1/6 8/4/6
|
||||
|
After Width: | Height: | Size: 2.5 MiB |
|
After Width: | Height: | Size: 2.5 MiB |
|
After Width: | Height: | Size: 2.1 MiB |
@@ -0,0 +1,14 @@
|
||||
# Blender MTL File: 'Brick.blend'
|
||||
# Material Count: 1
|
||||
|
||||
newmtl Brick
|
||||
Ns 17.647059
|
||||
Ka 0.000000 0.000000 0.000000
|
||||
Kd 0.640000 0.154050 0.039202
|
||||
Ks 0.000000 0.000000 0.000000
|
||||
Ni 1.000000
|
||||
d 1.000000
|
||||
illum 1
|
||||
map_Kd Brick_d.png
|
||||
map_Bump Brick_n.png
|
||||
map_Ks Brick_s.png
|
||||
|
After Width: | Height: | Size: 774 KiB |
|
After Width: | Height: | Size: 773 KiB |
|
After Width: | Height: | Size: 433 KiB |
@@ -0,0 +1,14 @@
|
||||
# Blender MTL File: 'None'
|
||||
# Material Count: 1
|
||||
|
||||
newmtl Material.001
|
||||
Ns 96.078431
|
||||
Ka 0.000000 0.000000 0.000000
|
||||
Kd 0.640000 0.640000 0.640000
|
||||
Ks 0.500000 0.500000 0.500000
|
||||
Ni 1.000000
|
||||
d 1.000000
|
||||
illum 2
|
||||
map_Kd Brick_Diffuse.png
|
||||
map_Bump Brick_Normal.png
|
||||
map_Ks Brick_Specular.png
|
||||
@@ -0,0 +1,124 @@
|
||||
# Blender v2.75 (sub 0) OBJ File: ''
|
||||
# www.blender.org
|
||||
mtllib Halfpipe.mtl
|
||||
o Cylinder
|
||||
v 0.000000 -2.908792 -1.000000
|
||||
v 0.000000 2.908792 -1.000000
|
||||
v 0.195090 -2.908792 -0.980785
|
||||
v 0.195090 2.908792 -0.980785
|
||||
v 0.382683 -2.908792 -0.923880
|
||||
v 0.382683 2.908792 -0.923880
|
||||
v 0.555570 -2.908792 -0.831470
|
||||
v 0.555570 2.908792 -0.831470
|
||||
v 0.707107 -2.908792 -0.707107
|
||||
v 0.707107 2.908792 -0.707107
|
||||
v 0.831470 -2.908792 -0.555570
|
||||
v 0.831470 2.908792 -0.555570
|
||||
v 0.923880 -2.908792 -0.382683
|
||||
v 0.923880 2.908792 -0.382683
|
||||
v 0.980785 -2.908792 -0.195090
|
||||
v 0.980785 2.908792 -0.195090
|
||||
v 1.000000 -2.908792 -0.000000
|
||||
v 1.000000 2.908792 -0.000000
|
||||
v -1.000000 -2.908792 -0.000001
|
||||
v -1.000000 2.908792 -0.000001
|
||||
v -0.980785 -2.908792 -0.195091
|
||||
v -0.980785 2.908792 -0.195091
|
||||
v -0.923879 -2.908792 -0.382684
|
||||
v -0.923879 2.908792 -0.382684
|
||||
v -0.831469 -2.908792 -0.555571
|
||||
v -0.831469 2.908792 -0.555571
|
||||
v -0.707106 -2.908792 -0.707108
|
||||
v -0.707106 2.908792 -0.707108
|
||||
v -0.555569 -2.908792 -0.831470
|
||||
v -0.555569 2.908792 -0.831470
|
||||
v -0.382682 -2.908792 -0.923880
|
||||
v -0.382682 2.908792 -0.923880
|
||||
v -0.195089 -2.908792 -0.980786
|
||||
v -0.195089 2.908792 -0.980786
|
||||
vt -1.156714 -1.419990
|
||||
vt -1.158346 2.336063
|
||||
vt -1.031779 2.336118
|
||||
vt -1.283288 -1.420045
|
||||
vt -1.284913 2.336008
|
||||
vt -1.409862 -1.420100
|
||||
vt -1.411480 2.335954
|
||||
vt -1.536436 -1.420155
|
||||
vt -1.538048 2.335899
|
||||
vt 2.387354 -1.418355
|
||||
vt 2.385534 2.337692
|
||||
vt 2.512101 2.337753
|
||||
vt 2.260782 -1.418416
|
||||
vt 2.258967 2.337631
|
||||
vt 2.134208 -1.418478
|
||||
vt 2.132400 2.337570
|
||||
vt 2.007634 -1.418538
|
||||
vt 2.005832 2.337510
|
||||
vt -0.144122 -1.419541
|
||||
vt -0.145809 2.336510
|
||||
vt -0.019241 2.336567
|
||||
vt -0.270696 -1.419598
|
||||
vt -0.272376 2.336454
|
||||
vt -0.397270 -1.419654
|
||||
vt -0.398943 2.336397
|
||||
vt -0.523844 -1.419711
|
||||
vt -0.525511 2.336341
|
||||
vt -0.650418 -1.419767
|
||||
vt -0.652078 2.336285
|
||||
vt -0.776992 -1.419823
|
||||
vt -0.778645 2.336229
|
||||
vt -1.030140 -1.419935
|
||||
vt -0.905212 2.336174
|
||||
vt -0.903566 -1.419879
|
||||
vt 2.513929 -1.418293
|
||||
vt -0.017548 -1.419484
|
||||
vn -0.098000 0.000000 0.995200
|
||||
vn -0.290300 0.000000 0.956900
|
||||
vn -0.471400 0.000000 0.881900
|
||||
vn -0.634400 0.000000 0.773000
|
||||
vn -0.773000 0.000000 0.634400
|
||||
vn -0.881900 0.000000 0.471400
|
||||
vn -0.956900 0.000000 0.290300
|
||||
vn -0.995200 0.000000 0.098000
|
||||
vn 0.995200 0.000000 0.098000
|
||||
vn 0.956900 0.000000 0.290300
|
||||
vn 0.881900 0.000000 0.471400
|
||||
vn 0.773000 0.000000 0.634400
|
||||
vn 0.634400 0.000000 0.773000
|
||||
vn 0.471400 0.000000 0.881900
|
||||
vn 0.098000 0.000000 0.995200
|
||||
vn 0.290300 0.000000 0.956900
|
||||
usemtl Material.001
|
||||
s off
|
||||
f 3/1/1 4/2/1 2/3/1
|
||||
f 5/4/2 6/5/2 4/2/2
|
||||
f 7/6/3 8/7/3 6/5/3
|
||||
f 9/8/4 10/9/4 8/7/4
|
||||
f 11/10/5 12/11/5 10/12/5
|
||||
f 13/13/6 14/14/6 12/11/6
|
||||
f 15/15/7 16/16/7 14/14/7
|
||||
f 17/17/8 18/18/8 16/16/8
|
||||
f 21/19/9 22/20/9 20/21/9
|
||||
f 23/22/10 24/23/10 22/20/10
|
||||
f 25/24/11 26/25/11 24/23/11
|
||||
f 27/26/12 28/27/12 26/25/12
|
||||
f 29/28/13 30/29/13 28/27/13
|
||||
f 31/30/14 32/31/14 30/29/14
|
||||
f 1/32/15 2/3/15 34/33/15
|
||||
f 33/34/16 34/33/16 32/31/16
|
||||
f 1/32/1 3/1/1 2/3/1
|
||||
f 3/1/2 5/4/2 4/2/2
|
||||
f 5/4/3 7/6/3 6/5/3
|
||||
f 7/6/4 9/8/4 8/7/4
|
||||
f 9/35/5 11/10/5 10/12/5
|
||||
f 11/10/6 13/13/6 12/11/6
|
||||
f 13/13/7 15/15/7 14/14/7
|
||||
f 15/15/8 17/17/8 16/16/8
|
||||
f 19/36/9 21/19/9 20/21/9
|
||||
f 21/19/10 23/22/10 22/20/10
|
||||
f 23/22/11 25/24/11 24/23/11
|
||||
f 25/24/12 27/26/12 26/25/12
|
||||
f 27/26/13 29/28/13 28/27/13
|
||||
f 29/28/14 31/30/14 30/29/14
|
||||
f 33/34/15 1/32/15 34/33/15
|
||||
f 31/30/16 33/34/16 32/31/16
|
||||
|
Before Width: | Height: | Size: 2.7 KiB After Width: | Height: | Size: 2.7 KiB |
@@ -70,9 +70,6 @@ public:
|
||||
m_World->SystemFactory.Register<Systems::TransformSystem>(
|
||||
[this]() { return new Systems::TransformSystem(m_World.get(), m_EventBroker); });
|
||||
m_World->AddSystem<Systems::TransformSystem>();
|
||||
// m_World->ComponentFactory.Register<Components::Model>();
|
||||
// m_World->ComponentFactory.Register<Components::Template>();
|
||||
|
||||
|
||||
m_World->ComponentFactory.Register<Components::Sprite>();
|
||||
|
||||
@@ -101,14 +98,15 @@ public:
|
||||
/*{
|
||||
}*/
|
||||
|
||||
//OctoBall
|
||||
{
|
||||
auto ent = m_World->CreateEntity();
|
||||
std::shared_ptr<Components::Transform> transform = m_World->AddComponent<Components::Transform>(ent);
|
||||
transform->Position = glm::vec3(0.5f, 0.f, -9.9f);
|
||||
transform->Scale = glm::vec3(1.f, 1.f, 1.f);
|
||||
|
||||
std::shared_ptr<Components::Sprite> sprite = m_World->AddComponent<Components::Sprite>(ent);
|
||||
sprite->SpriteFile = "Textures/Ball.png";
|
||||
auto model = m_World->AddComponent<Components::Model>(ent);
|
||||
model->ModelFile = "Models/Test/Ball/Ballopus.obj";
|
||||
|
||||
std::shared_ptr<Components::CircleShape> circleShape = m_World->AddComponent<Components::CircleShape>(ent);
|
||||
std::shared_ptr<Components::Ball> ball = m_World->AddComponent<Components::Ball>(ent);
|
||||
@@ -128,26 +126,34 @@ public:
|
||||
m_EventBroker->Publish(e);
|
||||
}
|
||||
|
||||
//PointLightTest
|
||||
{
|
||||
auto t_BrickWall = m_World->CreateEntity();
|
||||
auto transform = m_World->AddComponent<Components::Transform>(t_BrickWall);
|
||||
transform->Position = glm::vec3(0.f, 0.f, -10.f);
|
||||
auto sprite = m_World->AddComponent<Components::Sprite>(t_BrickWall);
|
||||
//TODO: Rename SpriteFile to DiffuseTexture or similar.
|
||||
sprite->SpriteFile = "Textures/Ball.png";
|
||||
sprite->NormalTexture = "Textures/Test/Brick_Normal.png";
|
||||
sprite->SpecularTexture = "Textures/Test/Brick_Specular.png";
|
||||
auto t_Light = m_World->CreateEntity();
|
||||
auto transform = m_World->AddComponent<Components::Transform>(t_Light);
|
||||
transform->Position = glm::vec3(2.f, 1.5f, -9.f);
|
||||
auto pl = m_World->AddComponent<Components::PointLight>(t_Light);
|
||||
pl->Radius = 8.f;
|
||||
}
|
||||
|
||||
//Halfpipe background test model.
|
||||
{
|
||||
auto t_BrickWall = m_World->CreateEntity();
|
||||
auto transform = m_World->AddComponent<Components::Transform>(t_BrickWall);
|
||||
transform->Position = glm::vec3(0.4f, 0.f, -9.5f);
|
||||
auto sprite = m_World->AddComponent<Components::Sprite>(t_BrickWall);
|
||||
//TODO: Rename SpriteFile to DiffuseTexture or similar.
|
||||
sprite->SpriteFile = "Textures/Ball.png";
|
||||
sprite->NormalTexture = "Textures/Test/Brick_Normal.png";
|
||||
sprite->SpecularTexture = "Textures/Test/Brick_Specular.png";
|
||||
auto t_halfPipe = m_World->CreateEntity();
|
||||
auto transform = m_World->AddComponent<Components::Transform>(t_halfPipe);
|
||||
transform->Position = glm::vec3(0.f, 0.f, -15.f);
|
||||
transform->Scale = glm::vec3(15.f);
|
||||
auto model = m_World->AddComponent<Components::Model>(t_halfPipe);
|
||||
model->ModelFile = "Models/Test/halfpipe/Halfpipe.obj";
|
||||
}
|
||||
|
||||
//Brick test model
|
||||
{
|
||||
auto t_Brick = m_World->CreateEntity();
|
||||
auto transform = m_World->AddComponent<Components::Transform>(t_Brick);
|
||||
transform->Position = glm::vec3(0.f, 0.f, -12.f);
|
||||
transform->Orientation = glm::rotate(glm::quat(), 0.5f, glm::vec3(0,-1,-1));
|
||||
auto model = m_World->AddComponent<Components::Model>(t_Brick);
|
||||
model->ModelFile = "Models/Test/Brick/Brick.obj";
|
||||
|
||||
}
|
||||
|
||||
{
|
||||
@@ -199,25 +205,6 @@ public:
|
||||
m_World->CommitEntity(rightWall);
|
||||
}
|
||||
|
||||
|
||||
/*{
|
||||
auto ent = m_World->CreateEntity();
|
||||
std::shared_ptr<Components::Transform> transform = m_World->AddComponent<Components::Transform>(ent);
|
||||
transform->Position = glm::vec3(0.f, -3.f, -10.f);
|
||||
transform->Scale = glm::vec3(8.f, 0.5f, 1.f);
|
||||
transform->Orientation = glm::rotate(transform->Orientation, glm::radians(25.f), glm::vec3(0, 0, -1));
|
||||
|
||||
std::shared_ptr<Components::Sprite> sprite = m_World->AddComponent<Components::Sprite>(ent);
|
||||
sprite->SpriteFile = "Textures/Core/ErrorTexture.png";
|
||||
|
||||
std::shared_ptr<Components::RectangleShape> boxShape = m_World->AddComponent<Components::RectangleShape>(ent);
|
||||
|
||||
std::shared_ptr<Components::Physics> physics = m_World->AddComponent<Components::Physics>(ent);
|
||||
physics->Static = true;
|
||||
|
||||
m_World->CommitEntity(ent);
|
||||
}*/
|
||||
|
||||
{
|
||||
auto ent = m_World->CreateEntity();
|
||||
m_World->SetProperty(ent, "Name", "Pad");
|
||||
@@ -316,7 +303,7 @@ public:
|
||||
glm::mat4 modelMatrix = glm::translate(glm::mat4(), absoluteTransform.Position)
|
||||
* glm::toMat4(absoluteTransform.Orientation)
|
||||
* glm::scale(absoluteTransform.Scale);
|
||||
EnqueueModel(modelAsset, modelMatrix, modelComponent->Transparent, modelComponent->Color);
|
||||
EnqueueModel(modelAsset, modelMatrix, modelComponent->Transparent, modelComponent->Color, modelComponent->ModelFile);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -364,7 +351,7 @@ public:
|
||||
}
|
||||
|
||||
//TODO: Get this out of engine.h
|
||||
void EnqueueModel(Model* model, glm::mat4 modelMatrix, float transparent, glm::vec4 color)
|
||||
void EnqueueModel(Model* model, glm::mat4 modelMatrix, float transparent, glm::vec4 color, std::string fileName)
|
||||
{
|
||||
for (auto texGroup : model->TextureGroups)
|
||||
{
|
||||
@@ -379,8 +366,7 @@ public:
|
||||
job.EndIndex = texGroup.EndIndex;
|
||||
job.ModelMatrix = modelMatrix;
|
||||
job.Color = color;
|
||||
//TODO: This Depth is probably wrong.
|
||||
job.Depth = (glm::vec4(1,1,1,0) * modelMatrix).z;
|
||||
job.fileName = fileName;
|
||||
|
||||
m_RendererQueue.Deferred.Add(job);
|
||||
}
|
||||
|
||||
@@ -52,6 +52,8 @@ struct ModelJob : RenderJob
|
||||
unsigned int ShaderID;
|
||||
unsigned int TextureID;
|
||||
|
||||
std::string fileName;
|
||||
|
||||
glm::mat4 ModelMatrix;
|
||||
GLuint DiffuseTexture;
|
||||
GLuint NormalTexture;
|
||||
|
||||
@@ -76,6 +76,8 @@ private:
|
||||
GLuint m_ScreenQuad = 0;
|
||||
Model* m_UnitSphere = nullptr;
|
||||
Model* m_UnitQuad = nullptr;
|
||||
Texture* m_StandardNormal;
|
||||
Texture* m_StandardSpecular;
|
||||
|
||||
GLuint m_rbDepthBuffer = 0;
|
||||
GLuint m_fbDeferred1 = 0;
|
||||
|
||||
@@ -8,6 +8,7 @@
|
||||
#include "Core/System.h"
|
||||
#include "Core/CTransform.h"
|
||||
#include "Rendering/CSprite.h"
|
||||
#include "Rendering/CModel.h"
|
||||
#include "Game/CBrick.h"
|
||||
#include "Core/EventBroker.h"
|
||||
#include "Core/World.h"
|
||||
|
||||
@@ -19,6 +19,7 @@
|
||||
#include "Physics/CCircleShape.h"
|
||||
#include "Physics/ESetImpulse.h"
|
||||
#include "Rendering/CSprite.h"
|
||||
#include "Rendering/CModel.h"
|
||||
#include "Game/CBall.h"
|
||||
#include "Game/EResetBall.h"
|
||||
#include "CPad.h"
|
||||
|
||||
@@ -77,20 +77,20 @@ void dd::Camera::SetOrientation(glm::quat val)
|
||||
|
||||
void dd::Camera::UpdateProjectionMatrix()
|
||||
{
|
||||
m_ProjectionMatrix = glm::ortho(
|
||||
-16.f,
|
||||
16.f,
|
||||
-9.f,
|
||||
9.f,
|
||||
m_NearClip,
|
||||
m_FarClip
|
||||
);
|
||||
// m_ProjectionMatrix = glm::perspective(
|
||||
// m_FOV,
|
||||
// m_AspectRatio,
|
||||
// m_ProjectionMatrix = glm::ortho(
|
||||
// -16.f,
|
||||
// 16.f,
|
||||
// -9.f,
|
||||
// 9.f,
|
||||
// m_NearClip,
|
||||
// m_FarClip
|
||||
// );
|
||||
m_ProjectionMatrix = glm::perspective(
|
||||
m_FOV,
|
||||
m_AspectRatio,
|
||||
m_NearClip,
|
||||
m_FarClip
|
||||
);
|
||||
}
|
||||
|
||||
void dd::Camera::UpdateViewMatrix()
|
||||
|
||||
@@ -113,6 +113,8 @@ void dd::Renderer::CreateBuffers()
|
||||
m_ScreenQuad = CreateQuad();
|
||||
m_UnitQuad = ResourceManager::Load<Model>("Models/Core/UnitQuad.obj");
|
||||
m_UnitSphere = ResourceManager::Load<Model>("Models/Core/UnitSphere.obj");
|
||||
m_StandardNormal = ResourceManager::Load<Texture>("Textures/Core/NeutralNormalMap.png");
|
||||
m_StandardSpecular = ResourceManager::Load<Texture>("Textures/Core/NeutralSpecularMap.png");
|
||||
|
||||
glGenRenderbuffers(1, &m_rbDepthBuffer);
|
||||
glBindRenderbuffer(GL_RENDERBUFFER, m_rbDepthBuffer);
|
||||
@@ -208,7 +210,7 @@ void dd::Renderer::CreateBuffers()
|
||||
void dd::Renderer::Draw(RenderQueueCollection& rq)
|
||||
{
|
||||
|
||||
//DrawDeferred(rq.Deferred, rq.Lights);
|
||||
DrawDeferred(rq.Deferred, rq.Lights);
|
||||
rq.Forward.Jobs.sort(dd::Renderer::DepthSort);
|
||||
DrawForward(rq.Forward, rq.Lights);
|
||||
|
||||
@@ -289,8 +291,8 @@ void dd::Renderer::DrawForward(RenderQueue &objects, RenderQueue &lights)
|
||||
glBlendFuncSeparate(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA, GL_ONE, GL_ONE);
|
||||
|
||||
glBindFramebuffer(GL_FRAMEBUFFER, m_fbDeferred3);
|
||||
glClearColor(1, 0.9, 0.8f, 1);
|
||||
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
|
||||
// glClearColor(1, 0.9, 0.8f, 1);
|
||||
// glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
|
||||
|
||||
m_spForward->Bind();
|
||||
DrawScene(objects, *m_spForward);
|
||||
@@ -321,14 +323,23 @@ void dd::Renderer::DrawScene(RenderQueue &objects, ShaderProgram &program)
|
||||
|
||||
glActiveTexture(GL_TEXTURE0);
|
||||
glBindTexture(GL_TEXTURE_2D, modelJob->DiffuseTexture);
|
||||
if (modelJob->NormalTexture != 0) {
|
||||
if (modelJob->NormalTexture != 0 && false) {
|
||||
glActiveTexture(GL_TEXTURE1);
|
||||
glBindTexture(GL_TEXTURE_2D, modelJob->NormalTexture);
|
||||
} else {
|
||||
glActiveTexture(GL_TEXTURE1);
|
||||
glBindTexture(GL_TEXTURE_2D, *m_StandardNormal);
|
||||
}
|
||||
if (modelJob->SpecularTexture != 0) {
|
||||
|
||||
if (modelJob->SpecularTexture != 0 && false) {
|
||||
glActiveTexture(GL_TEXTURE2);
|
||||
glBindTexture(GL_TEXTURE_2D, modelJob->SpecularTexture);
|
||||
}
|
||||
else {
|
||||
glActiveTexture(GL_TEXTURE2);
|
||||
glBindTexture(GL_TEXTURE_2D, *m_StandardSpecular);
|
||||
}
|
||||
|
||||
|
||||
glBindVertexArray(modelJob->VAO);
|
||||
glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, modelJob->ElementBuffer);
|
||||
|
||||
@@ -39,6 +39,7 @@ void main()
|
||||
//frag_Diffuse = DiffuseTexel * (vec4(La, 0.0) * (vec4(LightingTexel.rgb, 0.0) + vec4(LightingTexel.a, LightingTexel.a, LightingTexel.a, 0.0)));
|
||||
//frag_Diffuse = DiffuseTexel * (vec4(La, 0.0) + LightingTexel);
|
||||
//frag_Diffuse = DiffuseTexel * (vec4(1.f, 1.f, 1.f, 0.0) + LightingTexel);
|
||||
frag_Diffuse = DiffuseTexel;
|
||||
frag_Diffuse = DiffuseTexel + LightingTexel;
|
||||
//frag_Diffuse = DiffuseTexel;
|
||||
//frag_Diffuse = vec4(LightingTexel.r, LightingTexel.g, LightingTexel.b, 1.0);
|
||||
}
|
||||
@@ -93,17 +93,19 @@ void dd::Systems::LevelSystem::CreateBrick(int row, int line, glm::vec2 spacesBe
|
||||
{
|
||||
auto brick = m_World->CreateEntity();
|
||||
std::shared_ptr<Components::Transform> transform = m_World->AddComponent<Components::Transform>(brick);
|
||||
std::shared_ptr<Components::Sprite> sprite = m_World->AddComponent<Components::Sprite>(brick);
|
||||
//std::shared_ptr<Components::Sprite> sprite = m_World->AddComponent<Components::Sprite>(brick);
|
||||
auto model = m_World->AddComponent<Components::Model>(brick);
|
||||
std::shared_ptr<Components::Brick> cBrick = m_World->AddComponent<Components::Brick>(brick);
|
||||
std::shared_ptr<Components::RectangleShape> cRec = m_World->AddComponent<Components::RectangleShape>(brick);
|
||||
std::shared_ptr<Components::Physics> cPhys = m_World->AddComponent<Components::Physics>(brick);
|
||||
std::string fileName = "Textures/Bricks/";
|
||||
fileName.append(std::to_string(num));
|
||||
fileName.append(".png");
|
||||
sprite->SpriteFile = fileName;
|
||||
//sprite->SpriteFile = fileName;
|
||||
model->ModelFile = "Models/Test/Brick/Brick.obj";
|
||||
float x = spaceToEdge + line * spacesBetweenBricks.x;
|
||||
float y = spaceToEdge + row * spacesBetweenBricks.y;
|
||||
transform->Scale = glm::vec3(1.6, 0.4, 0.);
|
||||
transform->Scale = glm::vec3(1.6, 0.35, 0.5);
|
||||
transform->Position = glm::vec3(x - 7, y + 1, -10.f);
|
||||
cBrick->Score = 10 * num;
|
||||
m_World->CommitEntity(brick);
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
#include "Core/World.h"
|
||||
#include <iostream>
|
||||
#include <Game/CPad.h>
|
||||
#include <Rendering/CPointLight.h>
|
||||
|
||||
|
||||
void dd::Systems::PadSystem::Initialize()
|
||||
@@ -182,8 +183,9 @@ bool dd::Systems::PadSystem::OnContact(const dd::Events::Contact &event)
|
||||
std::shared_ptr<Components::Transform> transform = m_World->AddComponent<Components::Transform>(ent);
|
||||
transform->Position = glm::vec3(transformBall->Position.x, transformBall->Position.y + 0.01f, -10.f);
|
||||
transform->Scale = glm::vec3(1.f, 1.f, 1.f);
|
||||
std::shared_ptr<Components::Sprite> sprite = m_World->AddComponent<Components::Sprite>(ent);
|
||||
sprite->SpriteFile = "Textures/Ball.png";
|
||||
auto model = m_World->AddComponent<Components::Model>(ent);
|
||||
model->ModelFile = "Models/Test/Ball/Ballopus.obj";
|
||||
//auto pointlight = m_World->AddComponent<Components::PointLight>(ent);
|
||||
std::shared_ptr<Components::CircleShape> circleShape = m_World->AddComponent<Components::CircleShape>(ent);
|
||||
std::shared_ptr<Components::Ball> cball = m_World->AddComponent<Components::Ball>(ent);
|
||||
std::shared_ptr<Components::Physics> physics = m_World->AddComponent<Components::Physics>(ent);
|
||||
|
||||