Commit Graph

314 Commits

Author SHA1 Message Date
Lynix
2828ced694 Fixed tangents/binormal not being normalized
Former-commit-id: 1d2d90bc76ddc590cde07607ac4cf3189d4e365e
2013-02-21 02:43:10 +01:00
Lynix
add363a290 Moved AxisAlignedBox to mathematic module
Former-commit-id: 2cb5b151941a431b5c12457f0decf7b39195052d
2013-02-19 12:32:11 +01:00
Lynix
d56900fe01 Added DebugDrawer::Draw(Frustum)
Former-commit-id: 595204759c54ccc1e7cec38fe3e26b6b3400e723
2013-02-19 01:24:46 +01:00
Lynix
857d2dd9ed Replaced std::map with std::unordered_map
Not possible yet with NzString-key map


Former-commit-id: faa628a1c9c10e7bc009bf5a67e112ad5f873bd8
2013-02-17 14:08:12 +01:00
Lynix
f14a68fc04 Fixed ShaderBuilder bug
Fixed: When GLSL 140 is supported and MRT is not (As reported by
Renderer), then the ShaderBuilder will write incorrect code

Former-commit-id: 38080a5685634b2da21eadbb1939a21e00cc48de
2013-02-17 00:36:00 +01:00
Lynix
f5cc6ba8fc Added FIXME comments
Former-commit-id: a26466fef726879d1e73f09aa1448711ffdcc0b0
2013-02-15 13:40:58 +01:00
Lynix
43b5e493f6 Added face culling boolean to materials
Former-commit-id: ed651beb3545b85d5496bb5739c4caa9c81df8a3
2013-02-13 01:35:01 +01:00
Lynix
7970752a5b Disabled lighting on default material
Former-commit-id: 2e4f87bda64d2dbb8b76d3ca9fb165255484bd64
2013-02-04 01:42:23 +01:00
Lynix
81f9f54688 Fixed Material not applying changes
Former-commit-id: 6e2f9a428213195360516ffcd8efd11b325e08a4
2013-01-30 01:38:02 +01:00
Lynix
ff9c61735c Fixed ShaderBuilder inserting unused varying
Former-commit-id: bb61f7332c41440901560838f6cda8b071f7422b
2013-01-30 01:36:54 +01:00
Lynix
56e66673d9 Material::Apply now apply shader
Former-commit-id: f0b221a29eb7a678b5544f20468d1956c7233f25
2013-01-29 01:59:40 +01:00
Lynix
00d636fb1c Changed module initialisation behavior
Former-commit-id: f3901c7785ab89b113afd961d7a51b609db2e314
2013-01-29 01:57:51 +01:00
Lynix
cf47081224 Optimized spot light shader
Former-commit-id: e8e345dc7d02f605b0df80146e9ffe47b10a304d
2013-01-24 01:01:49 +01:00
Lynix
09e0ab898d Relaxed constant access
Former-commit-id: 885a7f065ccf9ff1fdbef23c88b852bb2e48fac7
2013-01-15 16:53:59 +01:00
Lynix
4a28e42d4d Improved Node interface
Former-commit-id: cbc204748d8cf30771743f26270324dee6ada242
2013-01-12 01:38:58 +01:00
Lynix
a00d2d4c12 Increased source code reserved size
Made ShaderBuilder slightly faster


Former-commit-id: 412b2cd6e6081d4ccf5d6497244f3fa1f9800d32
2013-01-11 23:16:17 +01:00
Lynix
c108deb999 Fixed specular mapping
Also made code clearer


Former-commit-id: f27a9214f356218fdf7e75003317a1678079fe2a
2013-01-11 14:37:50 +01:00
Lynix
f8aedb2df1 Fixed reference bug
Former-commit-id: 9340098ca4eb052dabba384e9b7cee9130667104
2013-01-11 14:33:56 +01:00
Lynix
5a40e0d373 Fixed DebugDrawer color
Former-commit-id: 08b654b1d3002c76634f8ca3b2aa57e66f33e7ae
2013-01-11 14:33:43 +01:00
Lynix
e5731bee91 Added shader support to materials
Also fixed a lot of bugs related to materials


Former-commit-id: 54086eb3aa36c1a7b31b55056967275e6c24a4c6
2013-01-09 20:15:42 +01:00
Lynix
e3293c6fe1 Added normal mapping
Former-commit-id: 7e54b1f01de7d5cf99c42d08d13ba606f73c453d
2013-01-09 01:36:18 +01:00
Lynix
946754d7be Added specular mapping
Former-commit-id: 329bcfc6b3d92809538c9416578329f11c6ef56f
2013-01-09 00:34:39 +01:00
Lynix
81472079c4 Optimized lighting shader
Former-commit-id: d8fb14c7ffe7dd4ec436661dc6b698f76ab900cb
2013-01-09 00:17:16 +01:00
Lynix
a6c109ca1d Reverted back default GLSL version to 140
If supported, 110 if not


Former-commit-id: 65ae51fa9fa9c437d17de2e8b3158b8c2897dc80
2013-01-09 00:08:36 +01:00
Lynix
abb806f27b Updated ShaderBuilder to support lighting
Compile into 150 core GLSL (or 110 if not supported)
When the ShaderBuild fails to build a shader, it returns the default
shader


Former-commit-id: ca04a6968bb104b9a63d40025d7eeba813a588b0
2013-01-08 18:38:00 +01:00
Lynix
093d0ab0b5 Changed default material ambient color
Former-commit-id: ad2260abbe06940413ee2cdabd58176364b54365
2013-01-08 17:31:59 +01:00
Lynix
e6cef2ddbf Added move constructor/operator to Shader
Former-commit-id: b947e0ac0dcddcfe64c83b63cf89df0e0850cbd2
2013-01-08 17:31:42 +01:00
Lynix
e194d11374 Fixed color alpha not being sent
Former-commit-id: 0f7d355b22790aa5487ff69b325c41613a94961e
2013-01-06 02:47:46 +01:00
Lynix
da341001ab Made shader uniforms less verbose
Former-commit-id: aa77b9be3f84cad30b13ebe5d47bb9febd17631e
2013-01-06 01:06:55 +01:00
Lynix
c93e8eb585 Updated shader convention
Vertex input are now prefixed by "Vertex" (VertexPosition, VertexNormal,
..)
Same for Material input (MaterialAmbientColor, MaterialShininess, ...)


Former-commit-id: 1fbf8b8b32546a21ee23ff83714c860a9a8fce4f
2013-01-05 23:52:41 +01:00
Lynix
e6198f6b3d Fixed default value of shininess
Former-commit-id: c640ed5b74cc56bf9b4acf8af4fad40be1c55e76
2013-01-05 19:51:28 +01:00
Lynix
07aa5d095c Fixed matrices not being updated in the shader
Former-commit-id: 8eb208b656bec0d63163d2a00768a4216979a8b0
2013-01-05 19:51:01 +01:00
Lynix
29755989fd Fixed specular color not being applied
Former-commit-id: ab41e431e2f9ec0f9b3cd81d032f6218c7114c5b
2013-01-05 01:54:14 +01:00
Lynix
80d4159faa Added DebugDrawer::DrawTangents
Former-commit-id: 9116b5a878752ff193073ac6c156ddca54f8c501
2013-01-04 22:02:47 +01:00
Lynix
182c667603 Added DebugDrawer::DrawNormals(submesh)
Former-commit-id: 9a2100f8df288b63d3b64c05871ae42c1fad97f6
2013-01-03 19:41:23 +01:00
Lynix
844ab809d3 Fixed warning
Former-commit-id: 93cbeb5f38e5663a0d8960b139c6cd5fc530e695
2013-01-03 03:50:30 +01:00
Lynix
27dcd15d26 Fixed ShaderBuilder requirement
Former-commit-id: 39ddf1db5bec377afd478dcf557925d70925401c
2013-01-02 21:51:37 +01:00
Lynix
520643140c Fixed last commit
Former-commit-id: 5034392dbdab232be71f8537638ed75c1c81eab8
2013-01-02 13:41:26 +01:00
Lynix
15888b0f42 Fixed debug line width not applied
Former-commit-id: 374173039602080e82e0e4ce0967caea90599155
2012-12-28 23:08:37 +01:00
Lynix
e5650698d2 Added copy/move constructor/operator to Material
Former-commit-id: a96676391754ee027bdd6c7b04118db3ea044eb3
2012-12-27 22:22:11 +01:00
Lynix
91b85589d9 Simplified code
Former-commit-id: f80280c30dad6c0a2dd1b5ff36ace6825963fc4c
2012-12-27 02:36:39 +01:00
Lynix
0a11e82432 DebugDrawer now use ShaderBuilder
Fixed demo not initializing debug drawer


Former-commit-id: a14612a374507501496f895ef6ba94886db98ec9
2012-12-25 12:29:19 +01:00
Lynix
c65e3d5def It is now possible to use const shaders
A non-constant shader is no longer required to bind or to send uniform


Former-commit-id: 8fd7c03b65a2d9fcea69516c023fee034299148c
2012-12-25 12:26:40 +01:00
Lynix
df7b11d1d2 Added ShaderBuilder
Former-commit-id: 0eee75821b7bb4b2b69a020c8e79f3cbe18b522f
2012-12-25 12:14:57 +01:00
Lynix
a9e82f6014 Changed Shader conventions
Uniform variable are now CamelCase


Former-commit-id: 7b08fb6b7d32f0f9a92b5086719f3e9981483e16
2012-12-25 12:14:32 +01:00
Lynix
ea1275e4f5 Fixed camelcase
Former-commit-id: 1f94fefc2f0ce07720ff19538903b9795605795a
2012-12-25 12:02:16 +01:00
Lynix
1a4400facf Fixed module initialisation failure bug
If a module initialisation failed, then it resources may or may not be
freed.
This is fixed.


Former-commit-id: 029e0844e392685a31b3afc02c5bf772e015a372
2012-12-25 01:56:49 +01:00
Lynix
dc3cfa40ec Made Texture constructor consistent
Former-commit-id: 92be798524a48cb979c09fa04558602bf3717391
2012-12-24 20:38:20 +01:00
Lynix
1a5cf8cc0f Fixed static variable in Renderer
Could not be used because of GPU-switching technologies like NVidia
Optimus


Former-commit-id: 7602e81747a40b1aceacc6b7d728ba269a30e333
2012-12-24 19:06:55 +01:00
Lynix
84496ee8b6 Fixed typo
Former-commit-id: f9c38ea20c5afe8b4656c04c2ac3543ee94fc1d4
2012-12-24 18:08:10 +01:00