Lynix
f69d2f13e5
Changed light model
...
Former-commit-id: bdf192bd83dbb5ae3ce8c46d6414e5b4fbc0047a
2013-08-28 02:52:09 +02:00
Lynix
f679f323c2
Made scissor rect/viewport Recti instead of Rectui
...
Also greatly optimized Renderer::Get[ScissorRect|Viewport]
Former-commit-id: 87945543144216715520a4c3ab30629636995afd
2013-08-26 13:37:33 +02:00
Lynix
7f2888a346
Remade shader encoder
...
Former-commit-id: f96b33ed36650931c78b58fae6d7fc7f68efab20
2013-08-26 10:46:58 +02:00
Lynix
cb6563775a
Fixed sprites vertex shaders
...
Former-commit-id: a4e69ceee77e91749853911038d624b74ceaa049
2013-08-26 01:01:02 +02:00
Lynix
72a57fbf4c
Fixed crash when resources in use by the Renderer are released
...
Former-commit-id: 98eedb556f0387f0a5c1cafde2fc74645d1d0457
2013-08-26 00:40:45 +02:00
Lynix
f1dc7b98e5
Separated Shaders from Manager
...
Former-commit-id: 7faddbd38bd729b2778f09be3f98105ef5219740
2013-08-25 19:55:03 +02:00
Lynix
6aa401b0fb
Fixed GLSL error with OpenGL 2
...
Former-commit-id: 4d7b1d56b793742c58129dd900b23202ffa4e41a
2013-08-24 22:24:25 +02:00
Lynix
3e132cb445
Fixed crash with RenderTexture
...
Former-commit-id: d084da6fed345fa8a03023898578be75e10d8ab9
2013-08-24 21:58:58 +02:00
Lynix
fe6816b089
Fixed buffer corruption bugs ! (Yeah !)
...
Former-commit-id: 3e2c82a786810a160d324f8ccf284f8e505613a0
2013-08-23 12:52:52 +02:00
Lynix
6556acfa32
Merge branch 'Graphics-Update'
...
Former-commit-id: 9855f235dd21d47d1cd9da8c3c0b4ede41e74472
2013-08-21 20:05:50 +02:00
Lynix
c8414a39d8
Big Graphics update
...
Separated LightManager
Added Sprite class
Added View class
Camera is no longer a SceneNode
Fixed Material not invalidating programs
Renamed CameraPosition uniform to EyePosition
Renamed VisibilityTest to FrustumCull
Former-commit-id: ff7fbe4d9b31a3c269baab0b48c6faa347a12161
2013-08-21 20:05:33 +02:00
Lynix
2bc30f4638
Improved error message
...
Former-commit-id: 5d40418cbadf107929c1a359a4415bd9aedf978a
2013-08-21 18:47:45 +02:00
Lynix
f73c99d502
Renderer::Clear now takes UInt32 instead of unsigned long
...
Former-commit-id: ea276bb13e4d5334422eb685ec1a9d908d6f9895
2013-08-18 21:00:04 +02:00
Lynix
e31a670041
Minor changes
...
Former-commit-id: 5954ff863d8f51d7ed47a1b84ae9ff0a5348ecce
2013-08-16 00:27:42 +02:00
Lynix
699328aa1f
Fixed rare bug when creating VAO
...
Former-commit-id: 79ee6055feeb683ffc762d581fbe834a68d0bcef
2013-08-16 00:27:00 +02:00
Lynix
42a1b9cbe6
It is now possible to initialize VertexBuffer without VertexDeclaration
...
Former-commit-id: 3f8e82925dea8644384b4ceb962a06101bccc1a3
2013-08-16 00:26:35 +02:00
Lynix
cbc92364f4
Fixed rare crash within OpenGL::[GetRendererName|GetVendorName]
...
Former-commit-id: a5b12a391178eef87129c9c8c9a58e7016a6279b
2013-08-12 22:03:46 +02:00
Lynix
5bc3d3b46e
Fixed OpenGL Renderer and Vendor names
...
Former-commit-id: ce962b69924f6e78e51b6f2e86f1b6cccf7dc13e
2013-08-12 01:09:01 +02:00
Lynix
13b505f91f
SceneNode::VisiblityTest now use Camera instead of Frustum
...
Former-commit-id: 71199e3e80c5fbd6116d5fedb13276480f4e4731
2013-08-09 19:04:29 +02:00
Lynix
d509fddc82
Added RenderTarget listeners
...
Moved Camera matrices assignation to RenderTechnique
Former-commit-id: c8a4ff4b35d40702f047fdfd3fdbc4e4fbbbb1a9
2013-08-09 18:25:30 +02:00
Lynix
d4cff9946e
Improved ResourceListeners
...
Former-commit-id: 8016c23cb75aab94762a1e2838dbbcac2093119b
2013-08-09 16:28:07 +02:00
Lynix
2a0ceb16fa
Fixed missing Renderer initialization message
...
Former-commit-id: 4e1fa706954593fc42454689072fea3a6c89668f
2013-08-08 16:31:40 +02:00
Lynix
cfc8e46a99
Fixed search and replace problem :D
...
Former-commit-id: eb57fa9bb8bee5c7b6bb1331f527049ac765c24a
2013-08-07 11:03:48 +02:00
Lynix
69d150272f
Remade instancing
...
Former-commit-id: b297ed84e86a714c58d42219cc1dd8337e3a732c
2013-08-07 01:17:20 +02:00
Lynix
c75887f600
Updated and fixed DebugDrawer
...
Former-commit-id: b567c3a02174dbdb68f4e2d549d37c2b2b0a942b
2013-08-07 01:16:51 +02:00
Lynix
6507e1ed2d
Updated buffers interface
...
Former-commit-id: 8c8d60b6b22cc844740dbc3320af65575cec4feb
2013-08-07 01:10:26 +02:00
Lynix
6de41bb9cf
Fixed rare bug
...
Former-commit-id: 057e83b27377c1a8b0d8b652b86c3a2b837c4648
2013-08-06 23:46:26 +02:00
Lynix
1ebaf4749c
Added static assertions to secure code
...
Former-commit-id: 207f1135b3b40cee74fbf8ba98e6fb7379ba8c33
2013-08-03 20:58:50 +02:00
Lynix
a8ab9e2c74
Added Material::HasCustomShaderProgram
...
Former-commit-id: bdd119b41d5312a65aec2d781a78283343ef4b4c
2013-08-03 17:14:30 +02:00
Lynix
059ea21b41
Added ShaderProgram::LoadFromBinary
...
Former-commit-id: fdc6b06173954bb9c382ed73e7cd9bb0c5fd01a5
2013-08-03 17:14:10 +02:00
Lynix
4b783f6f6f
Renamed Shader to ShaderProgram
...
Former-commit-id: 492b12d8bb48cff46ea46c83141b6d5a1540ff8f
2013-08-02 18:39:20 +02:00
Lynix
ea6e9d7d33
Fixed white spaces
...
Former-commit-id: de5ea701a3536c37d72ef3b1fb36acabe3608588
2013-08-01 23:22:55 +02:00
Lynix
d751718a16
Added methods to retrieve shader binary
...
Added support for GL_ARB_get_program_binary
Former-commit-id: 3c23cfd237680f7832d15279af9e4248f9fa4678
2013-08-01 23:22:48 +02:00
Lynix
c276a4a623
Moved OpenGL header include
...
Former-commit-id: 655be533b7c01ae8817530fe434807ca5be62968
2013-08-01 23:21:08 +02:00
Lynix
8f9771ab8b
Updated OpenGL headers
...
Former-commit-id: 78e59741ea4e8b2109bddf6f95d0453a7c40cb5a
2013-07-31 14:22:15 +02:00
Lynix
fc56553021
Better handling of module initialization
...
Former-commit-id: 08d4b87a9b7cc10e672c23374306081fc9259de0
2013-07-31 14:17:48 +02:00
Lynix
48e5af6373
Added NazaraDebug macro
...
Former-commit-id: 5a8cec09bd4a7283f86d030ac2d867cda23736cd
2013-07-30 21:31:28 +02:00
Lynix
f681587c63
Fixed crash if OpenGL couldn't init
...
Former-commit-id: 32feaaa180df7f9f4c02ec5f593166df15aae234
2013-07-30 20:36:18 +02:00
Lynix
4352083c4b
Added ShaderManager (Experimental)
...
Former-commit-id: 327e373f2b932e31184e88c5f29bd5bd8fa3ba46
2013-07-15 00:23:04 +02:00
Lynix
405e14d9ae
Added OpenGL::GetGLSLVersion and ImageLoadStore shader extension
...
Former-commit-id: 97afadc93465132e6a698c5bf88e4ec070aff3db
2013-07-13 17:07:16 +02:00
Lynix
afbd002234
Minor changes
...
Former-commit-id: c66ee9a05270965921c48ab7b9faf3033a59ce20
2013-07-10 21:10:53 +02:00
Lynix
380b65814a
Fixed compilation errors and bugs
...
Former-commit-id: f09f4135cafa7601b217b11b0ebda74789629b6e
2013-07-09 23:54:30 +02:00
Lynix
291cdeddfa
Enabled Geometry Shader
...
Former-commit-id: 06e64ab9019bd8f9ad4a4902e7d2bc23070a4383
2013-07-09 00:54:52 +02:00
Lynix
b31771471a
Added automatic uniforms: (Inv)TargetSize
...
Former-commit-id: 382351590abe98dc9ef8f6ab4ecb30c8b42806a4
2013-07-09 00:54:17 +02:00
Lynix
b035852576
Optimisations
...
Former-commit-id: 81d277a49b57f061a6339678bd953054e434c613
2013-07-03 01:17:22 +02:00
Lynix
3c1c04b2aa
Fixed HUGE memory leak (Thanks to Raakz, again)
...
Former-commit-id: 5a0acd6816b95b83484b20dbbdf8c5e9b4e9f237
2013-07-02 14:57:24 +02:00
Lynix
321d4df911
Fixed potential shader bug
...
Former-commit-id: 5309ae4ab70cd7d2f8d29c8e21efacdd9e26cc06
2013-07-02 12:57:56 +02:00
Lynix
eecb0225c0
Instancing should work now
...
Former-commit-id: f1f70d19893030ee87e11e5b4d5a1a7c8a1b9a2a
2013-07-02 00:52:04 +02:00
Lynix
f7681df2eb
Fixed potential bug
...
Former-commit-id: e59fa471b79e9d07b815d69c988aaf2b4ac05768
2013-07-01 20:13:49 +02:00
Lynix
b120e14b21
Fixed compilation error
...
Former-commit-id: 8abcae77e3b62bb9ea1005a92be6bf8c88ae6cbe
2013-07-01 18:31:15 +02:00
Lynix
4abefc3e93
Reworked IndexBuffer, Vertex[Buffer|Declaration|Structs]
...
Former-commit-id: e3f637f2680afda57a444f73b8f7ad681bb1b8a5
2013-07-01 16:14:29 +02:00
Lynix
7172ceaa6b
Reworked (fixed and optimized) matrix handling
...
Former-commit-id: 6148748da07e228a746f51950231126b036b05eb
2013-06-27 19:04:22 +02:00
Lynix
30cb518c74
Added Alpha Test
...
Former-commit-id: 59dc6ef8f1dbff49bb13cf452bf75326ad7a6257
2013-06-27 19:02:31 +02:00
Lynix
984ade783a
Added Renderer::DrawFullscreenQuad
...
Made [Color|Texture]Background use a new shader-based algorithm
Former-commit-id: cfd319b33712c270726eb697e258d61db2ca6835
2013-06-27 12:54:20 +02:00
Lynix
308c2cfd78
Decreased useless OpenGL calls (Optimization)
...
Former-commit-id: b07c32afa9aa98b91eb8bd146a175f693af539ed
2013-06-27 12:50:38 +02:00
Lynix
5b33a992ad
Fixed MaterialDiffuse not used without lighting
...
Former-commit-id: b60d410dcc04b1e9f4d5f55a03390c007539dcec
2013-06-26 20:15:55 +02:00
Lynix
abe56631dd
Changed default material
...
Former-commit-id: 60fe21986d8cdd22e89ea4ccfbb9c5b33ba8eed6
2013-06-26 19:59:34 +02:00
Lynix
f9c9c67076
Fixed depth buffer sometimes not cleared
...
Former-commit-id: a5bda481479a51787601549a306f3a6b809c6afb
2013-06-26 15:19:29 +02:00
Lynix
0bd70f8df1
Readded DebugDrawer::Draw[Binormals|Normals|Tangent]
...
Former-commit-id: 7e5f98670914da0618d40b2e5fcf49b66f0627a1
2013-06-25 00:31:31 +02:00
Lynix
3b88cd936c
Fixed bug with threads and OpenGL contexts
...
Former-commit-id: 044923d57873f4e1a1eb4001395a83dbe97aabed
2013-06-25 00:26:18 +02:00
Lynix
050f9c2eb7
Fixed (?) potential bug with Shader::SendTexture
...
Former-commit-id: bd59f728396589aec5a420d675cf290019c0c042
2013-06-24 00:31:57 +02:00
Lynix
44fdb48384
OpenGL's VAOs are now used the right way
...
Former-commit-id: 04a944b55d7406bc6028a2d90a5550b0d5e888f0
2013-06-24 00:24:22 +02:00
Lynix
3609f31708
Added std::hash for String, made use of unordered_map
...
Former-commit-id: 20f3d12bc3222873706949f0a7d0a131e237a247
2013-06-23 16:53:37 +02:00
Lynix
3e82794b70
Fixed warning with AMD drivers
...
Occured when deleting a shader created by a deleted context, but since
shaders are shareable, this should not be an issue (OpenGL 4.2: D.1.1)
Former-commit-id: 2427ec045bbb9d7415aaa4f8670b724601a07fe3
2013-06-23 13:17:39 +02:00
Lynix
00c2e824d1
The OpenGL wrapper now handles context change
...
Fixed some bugs
Thanks to Raakz
Former-commit-id: f156ba7aa3307cccd83c9c02987dadad02cd8185
2013-06-21 01:28:11 +02:00
Lynix
35dec6160a
Removed useless code
...
Former-commit-id: 620d12e1e2a0d5c53d9190cd096086e210b08e47
2013-06-19 14:59:11 +02:00
Lynix
5886238e2e
Fixed srcBlend not being updated
...
Former-commit-id: 84ae24fdc116c48b91b356810d3637b6510f971e
2013-06-18 18:31:30 +02:00
Lynix
274aa96037
Fixed condition (Thanks to Raakz)
...
Former-commit-id: 57b41719ccfea5d60ca4edb79da5b2f0548a56d5
2013-06-18 18:28:54 +02:00
Lynix
ca758f9682
Fixed DebugDrawer drawing black lines and points
...
Former-commit-id: 800ef6a53263bb18d8ca798e421c80309e8c9315
2013-06-18 02:30:01 +02:00
Lynix
3e8ed9b1e4
Fixed conflict between VAO and OpenGL::BindBuffer
...
Former-commit-id: b1182e3b0327a73431a8e81106df9109e9a80cc2
2013-06-18 02:29:31 +02:00
Lynix
9e906c2568
Fixed gl(LineWidth/Pointsize) useless calls
...
Former-commit-id: 6636228886473d140981ed23db0d5dc9781535d4
2013-06-18 01:07:53 +02:00
Lynix
6c659410cd
Made use of RenderState
...
Former-commit-id: 500aba0d0dd60e7371dea6c219d6a5ccfdcbadf8
2013-06-18 00:38:18 +02:00
Lynix
88d3ec1ad1
Refactored Material interface
...
Former-commit-id: 9a00be1b73b2c879fc77c9fdddc0192baa241fda
2013-06-18 00:37:40 +02:00
Lynix
7a45ff4884
Added RenderStates
...
Former-commit-id: c742cf2fc1cac807b9e2bcbd88c2b3d77327c106
2013-06-17 23:58:45 +02:00
Lynix
b44be269c1
Improved Renderer
...
Faster VAO search
Resistance against texture operation during rendering
Former-commit-id: ad9ec2f0ef81a88cb841add227d6d8fb3ee40d42
2013-06-15 16:21:57 +02:00
Lynix
a9c53a9c2c
Fixed potential crash
...
Former-commit-id: 2fd792cef599915d9f73a176e462aa8c74b91987
2013-06-13 19:37:38 +02:00
Lynix
bb31a1666f
Added [Box|Rect]::Get[Maximum|Minimum]()
...
Former-commit-id: 5226f2dfd2beaec2bc9075543f555cc48a457e3a
2013-06-09 15:41:57 +02:00
Lynix
c940abdb75
Renamed [Box|Rect]::GetSize() to GetLengths()
...
Former-commit-id: 3c122057634a6472034b284bfe7091acbb41d004
2013-06-09 15:34:36 +02:00
Lynix
7080719287
Fixed some Renderer bugs
...
Former-commit-id: 5a9a4be7282c4b43c47056064d344d41c42cbaba
2013-06-09 11:31:00 +02:00
Lynix
8897531618
Shaders no longer warn when location is invalid
...
Former-commit-id: ca6318b765f18f7ffadcc747465fde6cc76155f4
2013-06-09 11:30:19 +02:00
Lynix
fbc0d7404e
Improved code
...
Former-commit-id: 33082b8f9d55c7a3b9550c788eb27fc613c08032
2013-06-05 13:24:33 +02:00
Lynix
fb839de33e
Renamed (Oriented)Cube to (Oriented)Box
...
Also renamed BoundingBox to BoundingVolume
Former-commit-id: 795c70c265ba17f6b96fc30799e89f140c52852b
2013-06-03 14:18:31 +02:00
Lynix
810b45fbb7
New emission-map algorithm
...
Former-commit-id: a45adb79b885d41a2d461a1d672fc8f63dedff65
2013-05-25 10:07:55 +02:00
Lynix
cf6e2be0b0
Renamed PrimitiveType to PrimitiveMode
...
Also renamed RENDERER_INSTANCING_MAX to RENDERER_MAX_INSTANCES
Added RENDERER_SHADER_MAX_LIGHTCOUNT
Former-commit-id: bc26e087dd1b55c424836e6e2fa6e1dc0f17effa
2013-05-24 20:12:40 +02:00
Lynix
0717823b0e
Renamed depth test to depth buffer
...
Because disabling depth test also disable depth write
Former-commit-id: 0e0b3353c309fb1d702d030accc4349f1f0c6d96
2013-05-21 16:16:36 +02:00
Lynix
f232c82d1c
Improved comment
...
Former-commit-id: 1e8b4bb77ccf710bbc4ee688905bf02e42899938
2013-05-21 13:55:00 +02:00
Lynix
d3986d40cd
Improved emission map effect
...
Former-commit-id: 44b8332a05d87175edd5e2e5f831c4b7f6b33f25
2013-05-21 13:54:50 +02:00
Lynix
8f09eea340
Renamed XImpl to AbstractX (More consistent)
...
Where * is Buffer, Hash and Shader
Former-commit-id: a99681ab1d515c9b39e6ba5f447c9000ef1092b8
2013-05-21 13:54:10 +02:00
Lynix
4b68ff0118
Added alpha-mapping support
...
Former-commit-id: ba4598e9e5efc47e04e72dc709d64d214d77e9a1
2013-05-16 22:48:16 +02:00
Lynix
0b66452e33
Fixed textures updated twice per state update
...
Former-commit-id: fb4d79e920899e6761225d72928ea62878f2c485
2013-05-16 22:45:40 +02:00
Lynix
f7fb7e10fb
Improved unsupported texture format error
...
Former-commit-id: 63c12416baadd82f6b6f3fa9442034a9a18d0704
2013-05-16 22:22:23 +02:00
Lynix
b69963e93f
Made uniform caching less error-prone
...
Former-commit-id: 0512daf3c54ed1e546ff7b12a6c9e82675504d5f
2013-05-11 14:30:39 +02:00
Lynix
c484bd38c9
Added OpenGL::BindTexture(unit, type, id)
...
+ Fixed OpenGL::DeleteTexture
Former-commit-id: 124ac3316f604e436378aed8d663f0d2b5889cd3
2013-05-11 14:04:41 +02:00
Lynix
28f46a5c90
Added ShaderUniform (Faster GetUniformLocation)
...
Former-commit-id: c8a01eccde07fc3b2aac46c5b974f8406ad949f0
2013-05-11 14:03:22 +02:00
Lynix
aa1399b750
Updated Renderer.cpp
...
Former-commit-id: 6d87af3cf87cba6ce0192f5e08e978c48cc1de2c
2013-05-03 21:46:23 +02:00
Lynix
4f3060a40d
Greatly improved Renderer
...
Separated Viewport from Scissor rect
Improved performances
Removed Lock/Unlock system from Shader/Texture class
Former-commit-id: f54bca6de58fe9d495d9192dc0d761f92594ee86
2013-05-03 02:58:35 +02:00
Lynix
780bcf122c
Nazara now use thread_local (GCC 4.8 is required)
...
Former-commit-id: 09c0c24ede4a6860acfc71b9532f286bd1381dda
2013-05-03 02:55:26 +02:00
Lynix
6699ce328f
ResourceLoader SteamChecker now return a ternary
...
Former-commit-id: 2ee274ebb2b61f39e93f6ff2306b5a326b158594
2013-04-27 11:51:42 +02:00
Lynix
38a28c26d2
Added user-friendly method for loading maps
...
Former-commit-id: 4990988256a37c55c6d07b273fd48430221235ae
2013-04-09 11:33:03 +02:00
Lynix
4afe078e9d
Added cubemap helpers for Image/Texture
...
Former-commit-id: 3c0dfb9e9b78369b8a552a55f2c70b978e626ce9
2013-04-07 02:08:08 +02:00
Lynix
633b3bb7ba
Improved emissive mapping
...
Used a different way to achieve this effect, thanks to Fissal
Former-commit-id: c08b82ca1609e73f1dfcc171a515c8456dee86eb
2013-04-06 21:27:35 +02:00
Lynix
b448709836
Fixed OpenGL faces
...
Former-commit-id: 90968526c37926c56d7a569a9c2e0265028d0d86
2013-04-06 20:26:33 +02:00
Lynix
578523b4bf
Added emissive mapping support
...
Former-commit-id: f469b1bcada16f0f2350cc10e9dc25fcf3c24abe
2013-04-06 15:07:29 +02:00
Lynix
aa6d4c5b52
Reworked Image/Texture
...
Improved performances
Fixed some bugs
It is now possible to use non-contiguous buffer
Former-commit-id: 0fa7d13a740f62dae511a1549b267e2f2011d5a6
2013-04-06 13:53:45 +02:00
Lynix
1c59676051
Fixed ShaderBuilder code with old hardware
...
Former-commit-id: b837de273f7e685c54c6133faed3a1171222b702
2013-04-06 00:13:25 +02:00
Lynix
8694f71c2a
X::Initialize no longer takes arguments
...
Former-commit-id: a8233235e89112630f2d31c637723443bd0829a4
2013-04-03 16:41:57 +02:00
Lynix
4ebd391e05
Disabled default material face culling
...
Former-commit-id: 015ada0b4b9bd66400a0cb4fa380f3a183d63fb6
2013-03-29 16:30:58 +01:00
Lynix
83b6e429f8
Fixed typo
...
Former-commit-id: c9bce4378a7540595d376a4249a45883e0111f2f
2013-03-29 14:44:53 +01:00
Lynix
5dd2d0d6a7
Changed Resource::SetPersistent default argument
...
Former-commit-id: 803534a0216d85f96e6f6f7810e5e76ebcc8bb44
2013-03-24 01:07:01 +01:00
Lynix
be894c5555
Fixed material texture loader leaks
...
Also made it exception-safe
Former-commit-id: db2b96d11fd6d604861911b2f4ea268b7fd3d5ad
2013-03-24 01:01:53 +01:00
Lynix
8f21a75c43
Reworked ResourceLoader
...
Former-commit-id: 9809e7fcd3657dfe90a0795986d0918f4ae1823c
2013-03-23 22:49:06 +01:00
Lynix
a3a1538d9b
Fixed RenderTexture
...
Former-commit-id: b67e9e5f49eb6339cf01cb4fa147ad9ed989d873
2013-03-22 17:44:26 +01:00
Lynix
ea2cc97169
Added Texture backgrounds
...
Former-commit-id: 8aa98a9b8bee5fbf1b5eefa958a7b9095b784cf5
2013-03-22 11:15:17 +01:00
Lynix
5390bd49f0
Fixed pixel flipping (ex:horizontal was vertical)
...
Former-commit-id: 8fb8e6949ae1d2c3d53e42b979f1716e25d3bba9
2013-03-22 11:14:11 +01:00
Lynix
6999a60c3d
Fixed crash with NzShader::SendTexture
...
Former-commit-id: 6851bb0842f32f5b34a3e8075cfeac6501d18914
2013-03-20 15:42:22 +01:00
Lynix
35ea331357
Fixed Material::Get[Height|Normal]Map
...
Former-commit-id: be0f6df3d5ec5bf0c6a45969b433442e7a8af521
2013-03-20 15:41:24 +01:00
Lynix
929c0db82d
Added glDrawTexture (NVidia extension)
...
Former-commit-id: 51d43d7423adeef0f0f0c0de5c633ee3d3b6ce2a
2013-03-20 15:41:06 +01:00
Lynix
c280457196
Fixed some shader flags not compiling
...
Former-commit-id: 4ae22cf904044b453247b78179083483efebdaf5
2013-03-18 21:09:07 +01:00
Lynix
086408f95f
Renamed FillInstancingData to SetInstancingData
...
Former-commit-id: 081209d333fc8884a453e9052acfaac653d3133b
2013-03-16 01:08:28 +01:00
Lynix
200f46b442
Reworked texture samplers internal
...
Former-commit-id: d26f8f12ccc1730519c6fa7d4bec725a0396d9f1
2013-03-16 01:07:00 +01:00
Lynix
4ec2b7a120
Fixed possible bug with old hardware
...
Former-commit-id: 96cc4312570bd6b16fe6c5b4f9dee41bc2769580
2013-03-15 03:10:38 +01:00
Lynix
6c2fb1eb89
Added ResourceRef (Automatic resource reference)
...
Former-commit-id: 97a0b2732f4dc443b8e1676e68b33b1b53ddf4fb
2013-03-15 03:09:58 +01:00
Lynix
4ee6ca05ed
Minor prevent fix
...
Former-commit-id: b07c861f348d0f232c365b63c46f2d41ee476b0e
2013-03-14 16:01:56 +01:00
Lynix
73c1b9508b
Improved ShaderBuilder
...
Former-commit-id: 345b6389f3da460a6c4d6959a7fe808542f5f609
2013-03-14 16:01:46 +01:00
Lynix
32b1d02cec
Updated copyright texts
...
Former-commit-id: 81483f7a94935c925e53b7f450e42635b1357833
2013-03-13 23:23:41 +01:00
Lynix
efd0f5eaf6
Fixed FBO extension not loading on old hardware
...
Former-commit-id: 5353ce64e5c2508f7cbc624139e4c823c86bf0fc
2013-03-13 00:31:59 +01:00
Lynix
5cc0ce4758
Fixed shader bug with old hardware
...
Former-commit-id: c1d70b72de7a469b6cf29268d4351ee257dbae5b
2013-03-12 23:32:14 +01:00
Lynix
5890f26291
Removed useless header
...
Former-commit-id: 2672f3b9f7df3bb21973868e384d3f2d77b36d3b
2013-03-08 01:20:35 +01:00
Lynix
9f780ef2bd
Optimized Buffer locking/filling
...
Former-commit-id: 41cb66257f3eeef375086bf51f26230a06ca9eb8
2013-03-06 22:40:15 +01:00
Lynix
aa67a52e9c
Added glInvalidateBufferData loading
...
Former-commit-id: faf3a0848548107302ab64f15808212da71d3e64
2013-03-06 22:39:39 +01:00
Lynix
7e60bc2d81
Fixed missing RenderWindow::IsValid code
...
Former-commit-id: bb2b8ae50755198fd0af9db1764eb01935ff1ee7
2013-03-05 13:34:30 +01:00
Lynix
cd48d70844
Made Context/RenderTarget usage constant
...
Former-commit-id: 07a2655ea642664bc49ca335cf5147ebf9fb9f26
2013-03-02 19:09:13 +01:00
Lynix
2f85b258e9
Fixed normal lighting rotation
...
Former-commit-id: 06c71dd9d5ee90fa9d3fbce8e87dcff6b8a455d9
2013-03-02 19:06:24 +01:00
Lynix
b4d7e16749
Updated Renderer
...
Former-commit-id: 74ad349814a5624cdf1c61bfb9e0123b82be06f2
2013-03-02 00:22:49 +01:00
Lynix
c3b2a0a03f
Fixed RenderTexture bug
...
Former-commit-id: daedd6e95b7825389438585cbaff60ae07a07eef
2013-03-02 00:21:10 +01:00
Lynix
347b267d43
Added shader flags
...
Renamed ShaderBuilder enum to ShaderFlags
Former-commit-id: b3440bac5491f0a0a90cbd7f9ed8e396c16c0864
2013-03-01 21:54:41 +01:00
Lynix
3b0751fb88
Added support for Instancing
...
Former-commit-id: 62f5f3186423b01f7a0ac2762969dca12bea1327
2013-02-26 01:40:57 +01:00
Lynix
1b5215d4c2
Removed AxisAlignedBox (Replaced by BoundingBox)
...
Former-commit-id: 931dd6710caf49aeaede51efe209d714f080c44b
2013-02-21 18:28:32 +01:00
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
Lynix
0e6215a47e
(Material) Added non-constant sampler access
...
Former-commit-id: d2799fc353628afda09fdc45b04134aa541ee480
2012-12-19 00:38:06 +01:00
Lynix
10730de74e
Refactored materials
...
(Renderer) Removed Apply function
(Renderer) Renamed SetTextureSampling to SetTextureSampler
Updated demo
Former-commit-id: d40a9ce05df35b078e645927451093da44eec314
2012-12-18 16:17:31 +01:00
Lynix
8b67d17e38
Added texture samplers
...
I hate Git branchs
Former-commit-id: 6978f1489cdc841d36fbcd6f1a8e01a4adbfcb8a
2012-12-17 14:56:29 +01:00
Lynix
025ed1cfd0
Renderer update
...
-Added Renderer::GetRendererName()
-Added Renderer::GetVendorName()
-Renamed VertexArrayObject to VertexArrayObjects
Former-commit-id: 93489d5f93f8258dec0c4d8bcf72185abd7f75a8
2012-12-13 20:16:09 +01:00
Lynix
68c6aa664a
Replaced OpenGL namespace with static class
...
Fixed OpenGL functions not being exported
It is also more consistent
Former-commit-id: 3eddcb6f72412443eb56580180d0b9544ae4a9df
2012-12-13 15:47:29 +01:00
Lynix
73fdb9baaf
Added TextureWrap enum<->OpenGL association
...
Also made array syntax consistent
Former-commit-id: 65794e3eec2ea326da0ee71bcd7b8c31632ab71c
2012-12-13 11:39:15 +01:00
Lynix
feda7eec4d
Changed default debug line width to 1.5f
...
Former-commit-id: 15b1858aa40eb5d7b562f5ea8562b69f7aecf3cf
2012-12-13 11:38:19 +01:00
Lynix
8376fb38cf
Module can now initialize optionnal classes
...
Former-commit-id: 899007b7879451d15d0808a03b8dfea0cd3413a4
2012-12-08 22:21:20 +01:00
Lynix
dc9f202155
Fixed calling Uninitialize when not Initialized
...
Former-commit-id: 1d0bb01f881be76e163a5ac27c91d7fb6a873bb7
2012-12-08 21:51:43 +01:00
Lynix
eb585116b1
Shader::SendTexture can now return texture unit
...
Former-commit-id: 38d5e5dedf94113933bb2090040feec602a4716c
2012-12-08 11:49:07 +01:00
Lynix
119a1420d1
Fixed OpenGL 4 not loading sampler objets
...
Also fixed file encoding
Former-commit-id: 51683c2d9dff8a56c96ad972c8b6d6006004f1f2
2012-12-08 11:48:30 +01:00
Lynix
dc3af6ae69
Fixed typo
...
Former-commit-id: 3cd820fe6778c6731b051ff707ef576c3344451e
2012-12-06 12:05:56 +01:00
Lynix
e699969b64
Added OpenGL support for sampler objects
...
Also prevented an exception launch by the SeparateShaderObjects code to
escape.
Former-commit-id: ae594e16a85c02f0c649ef573189b4b722f713c3
2012-12-04 13:50:08 +01:00
Lynix
700a09b9c9
Fixed typo
...
Former-commit-id: a2a050220608320d0b13c7bb69b0752a36a253ae
2012-12-03 23:50:18 +01:00
Lynix
86c4899100
Fixed debug drawer not setting line width
...
Former-commit-id: 2fd8f6e6c4b3e42183955e047aaaf4c95e12841a
2012-12-03 23:50:11 +01:00
Lynix
780da2cfa5
Resolved conflicts
...
Former-commit-id: 4bd4e4f8435d701d16d3864dd030a6c1cff48c47
2012-12-02 21:49:14 +01:00
Lynix
0a88b6531c
Added Texture::HasMipmaps()
...
Former-commit-id: 4d21c32579e26e95a9376a4352fd50edd4ba0ed3
2012-12-02 17:01:57 +01:00
Lynix
b06acfcffd
Index buffer no longer permit 8 bits index size
...
Modern graphics cards don't like 8 bits index size, so I introduced
"Large indices" option, it means 32 bits indices when used otherwise the
index size is 16 bits
Former-commit-id: 213902de6704ceef16c6ea311ba0c6c5d2f6e665
2012-12-02 17:01:02 +01:00
Lynix
a2eb55e74a
Fixed repo
...
Former-commit-id: 5992da5ec759f05dabf82009e660ec58eed96365
2012-11-29 10:15:10 +01:00
Lynix
0a2e19fa22
Merge remote-tracking branch 'origin/3D-Engine'
...
Former-commit-id: 1781615fc780accbe6c11d55fd896038d97ffec9
2012-11-29 10:11:30 +01:00
Lynix
f48b9ba370
(Material) Added methods to loads and get default
...
Former-commit-id: 9169e84208b0cddbe698daa9286c8b7eb6a8244c
2012-11-27 21:37:14 +01:00
Lynix
38c1cf2ad0
Added Texture-to-Material loader
...
Former-commit-id: 789185ca38b4a995c67dfd054306cb920ca56b74
2012-11-25 19:33:58 +01:00
Lynix
18baa6b8c1
Fixed typo
...
Former-commit-id: 4254892b447457b57cf9657f87ecf32a1ec899fe
2012-11-25 16:12:57 +01:00
Lynix
b662bca33d
Added Material class
...
Former-commit-id: db16249b1ecbfdc59ecdca709cb75f4bf1b6d10b
2012-11-25 14:32:19 +01:00
Lynix
42de28c037
Shader constructor no longer throw an exception
...
Former-commit-id: f66607a019bd8498623e350b9a4399d7b2028d1f
2012-11-24 10:15:24 +01:00
Lynix
70ef422950
Big skeletal animation update
...
Added MeshInfos demo
Added MD5Mesh/MD5Anim loader support
Added Node class
Fixed ResourceParams not being exported
Added support for skeletal animation
(Animation/Mesh/Joint/SkeletalMesh/Skeleton)
Meshes are now only stored with VertexStruct_XYZ_Normal_UV_Tangent type
Moved Sequence declaration to Sequence.hpp
-Animation:
Renamed Create to Create[Keyframe|Skeletal]
-AxisAlignedBox:
Added Contains method
Added GetCorner method
Added GetCube method
Added Transform method
-Cube/Rect:
Added GetPosition method
Added GetSize method
(Almost) Fixed ExtendTo method
Fixed GetCenter method
-File:
Added GetDirectory static function
Added GetPath method
Renamed GetDirectoryPath method to GetDirectory
-Math module:
Fixed constructor/methods taking a non-const array
GetNormal/Normalize methods now takes an optionnal integer pointer
(returning length)
Made all classes default constructor trivial
Inverse, MakeIdentity, MakeZero, Normalize, Set methods now returns
reference to object
-Matrix4:
Modified methods to avoid copies
Removed COW (Too much overhead)
Removed Concatenate[Affine] static function
-Mesh:
Renamed Create to Create[Keyframe|Skeletal|Static]
Renamed Skin to Material
-MeshParams:
No longer takes declaration argument
Renamed loadAnimations to animated
Storage default to BufferStorage_Hardware if supported and
BufferStorage_Software otherwise
-OpenGL:
Added glGetBooleanv function
Added glIsEnabled function
-Quaternion:
Added ComputeW method
Added Conjugate method
-Renderer:
Added IsEnabled static function
Fixed GetLineWidth function not being static
Removed SetVertexDeclaration
-RenderWindow:
Made CopyTo[Image|Texture] method constant
-Resource
Fixed RemoveResourceListener crash
-ResourceLoader:
Loaders are now used in a LIFO context
-Stream:
Renamed GetLine method to ReadLine
-String:
Fixed Simplified
-Utility module
Added configuration define for strict resource parsing
-VertexBuffer
Now takes a VertexDeclaration pointer
-VertexDeclaration
No longer throw an error when getting a non-existing element
Former-commit-id: f7358c1231d6af48b799d2f24f077a001e16785b
2012-11-21 19:20:32 +01:00
Jérôme Leclercq
94bb765a77
Added Shader::SendColor(Color)
...
Former-commit-id: e3af0e2cb75a437304ee274a6123114b41dd7d94
2012-11-08 14:25:48 +01:00
Lynix
6301bd8f38
Fixed matrices not updated when changing shader
...
-Ugly fix
Former-commit-id: 19140fcf8966b1db9c2c324f4654db77f6a4aeef
2012-11-03 00:34:12 +01:00
Lynix
c82b2510f0
Fixed NULL caracter in shader logs
...
Former-commit-id: 998033458dce185715f7539167fb88a402a34ff3
2012-11-03 00:15:16 +01:00
Lynix
6b9c88221a
Added Shader::IsValid()
...
Former-commit-id: 829320e4fd92dafb829019d875135ca9b75a3db2
2012-11-02 23:47:09 +01:00
Lynix
1b3129868f
Added NzRenderer::[Get/Set]LineWidth
...
Former-commit-id: 827f762294bb67debb2a7faed07b595df2b9d20d
2012-11-01 18:28:49 +01:00
Lynix
5c2f94f953
You can now change the point size
...
Former-commit-id: b0018b14973d36f822524e8e5b94ba940a63897f
2012-11-01 18:20:15 +01:00
Lynix
7bab3d9443
Cleaned code
...
Former-commit-id: 65b235b0c8326e060ec7032bb2a153e22518a25a
2012-10-04 09:32:55 +02:00
Lynix
8d057fb3b1
Renamed GetBPP to GetBytesPerPixel
...
Also added GetBitsPerPixel
Former-commit-id: 9cc1df58133c538b1dc74215a9022d13dfd9d7f6
2012-09-30 23:11:00 +02:00
Lynix
a73cd1374a
Normalized line ending
...
Former-commit-id: bd061c48bdc8f0d26159dac3b41017defef5ae1e
2012-09-21 14:24:48 +02:00
Jérôme Leclercq
cd5a1b7a5e
Added RenderTextures (And many others things)
...
-Added Forward, left and up vector (Vector3)
-Added Matrix4::ConcatenateAffine shortcut
-Added Quaternion::GetInverse() and Quaternion::Inverse()
-Added Resource listeners
-Added Depth and stencil pixel formats
-All enums now have an ending "max" entry
-Animation/Mesh::Add[Sequence/Skin/SubMesh] now returns a boolean
-Contexts are now resources
-Enhanced AnimatedMesh demo
-Fixed MD2 facing
-Fixed Vector3::CrossProduct
-Made Resource thread-safe
-Made OpenGL translation table global
-Many bugfixes
-MLT will now write malloc failure to the log
-Most of the strcpy were replaced with faster memcpy
-Occlusion queries availability is now always tested
-OpenGL-related includes now requires NAZARA_RENDERER_OPENGL to be
defined to have any effect
-Pixel formats now have a type
-Renamed RenderTarget::IsValid to IsRenderable
-Renamed Quaternion::GetNormalized() to GetNormal()
-Renamed Texture::Bind() to Prepare()
-Renamed VectorX::Make[Ceil|Floor] to Maximize/Minimize
-Removed MATH_MATRIX_COLUMN_MAJOR option (all matrices are column-major)
-Removed RENDERER_ACTIVATE_RENDERWINDOW_ON_CREATION option (Render
windows are active upon their creation)
Former-commit-id: 0d1da1e32c156a958221edf04a5315c75b354450
2012-09-20 22:07:30 +02:00
Lynix
15afde86c8
Rewritted ResourceLoader and moved it to core
...
Added creation constructor to NzImage
Added member function functor
Added option to build Nazara as one library (instead of many)
Fixed some 2011 copyrights
Made use of "using def = T" C++11 feature instead of some illigible
typedefs
Removed unused premake file
2012-08-18 01:46:01 +02:00
Lynix
5619ddb0b1
Changed all the files encoding to UTF-8
...
Named modules in licence informations
2012-08-10 03:21:37 +02:00
Lynix
f8a0cdad39
Added Windows shortcut to generate CodeLite project
...
Changed two submesh's error message
Fixed OpenGL.hpp/.cpp spaces for some displayers
OpenGL loads GL_kdr_debug if possible instead of GL_ARB_debug_output
Refactored external includes
2012-08-10 02:03:25 +02:00
Lynix
b442ab0bd2
Refactored mathematics module
...
Added AABBs
Added code examples
Added experimental support for texture arrays (1D/2D)
Added initialisers (new way of initialising modules)
Added global headers (Plus a global header generator script)
Added pattern support for directory
Added support for spinlocks critical section on Windows
Added NzRenderWindow::SetFramerateLimit
Core project now includes Mathematics files
Fixed color implementation using double
Fixed declaration needing renderer include
Fixed MLT not clearing nextFree(File/Line) after Free
Fixed move operators not being noexcept
Fixed thread-safety (Now working correctly - If I'm lucky)
Moved Resource to core
New interface for modules
New interface for the renderer
Put some global functions to anonymous namespace
Removed empty modules
Renamed ThreadCondition to ConditionVariable
Replaced redirect to cerr log option by duplicate to cout
Setting mouse position relative to a window will make this window ignore
the event
Shaders sending methods no longer takes the uniform variable name (it's
using ID instead)
Using new OpenGL 4.3 header
2012-08-08 04:44:17 +02:00
Lynix
06eda4eba9
Added Meshes and Animations (And many more)
...
Added NzTexture::IsMipmappingSupported
Color::(FromTo)HSV now takes hue and saturation in degrees
Fixed Context::EnsureContext
Fixed COW thread-safety (String, Image, Matrix4)
Fixed Quatenion<T>::operator*(const Vector3<T>&)
Fixed ResourceLoader
Fixed String::Resize with a size of 0
Fixed Texture mipmapping crash
Fixed per-class thread-safety
IndexBuffer and VertexBuffer are now resources
It is now possible to use more than 8 texcoords per shader
Moved all enumerations into separate files (Core/Enums.hpp,
Utility/Enums.hpp, ..)
Removed NzContextParameters::defaultWindow
VertexDeclaration has been rewritten (New interface/COW)
2012-07-13 15:22:14 +02:00
Lynix
7ed9e16664
NzString::Clear now takes an optional argument
...
Fixed NzString::ToDouble rejecting legal strings
NzString::Clear can now keep the internal buffer to improve performances
NzStringToNumber now takes an optional argument to check if the
conversion went well
Optimized NzString::ToInteger
2012-07-01 00:44:53 +02:00
Lynix
71cf7876c5
Optimized image flipping
...
Added new extensible flipping system
Optimized NzTexture::Update(Face)
2012-06-22 23:18:37 +02:00
Lynix
acc9b99ad2
Fixed typo
2012-06-22 09:57:24 +02:00
Lynix
445d6d236d
Added NzBuffer::SetStorage
...
Fixed (Index/Vertex)Buffer::(Fill/Map) not filling/mapping the entire
buffer when the third argument was zero
Fixed Renderer not accepting sequential index buffer
2012-06-21 16:37:28 +02:00
Lynix
ec9470ceb6
Moved buffers to Utility
...
Fixed NzVector4::operator/
Replaced enumName_Count by enumName_Max
Renamed (Index/Vertex)Buffer::GetBufferPtr by GetPointer
2012-06-21 09:49:47 +02:00
Lynix
be0a5d2819
Fixed many bugs
...
Added NzOpenGL::GetEntry
Activated preprocessor error if not compiling with a C++11 compliant
compiler
Cube can now be constructed with a Rect
Desactived utility option "threaded window" (bugged)
Epured Image interface (No more UpdateFace, use Update with z = the face
you are targetting)
Fixed compilation errors (Thanks to RafBill)
Fixed predefined colors not exported
Fixed uplading pixels not aligned by 4 bytes
Fixed Thumbs.db files not ignored by git
NzImage now supports Filling and Flipping (Horizontally and vertically)
NzImage::Get(Const)Pixels now support pixel location
NzVector(2/3) can now return floatting distance/length with all types
NzVector(2/3/4) can now be constructed by a vector of smaller dimension
Premake now set "-std=c++11" build option for GCC
Renamed NzImage::(Get/Set)Pixel to (Get/Set)PixelColor
Updated new([])/delete([]) in the leaks tracker to the new C++11
signatures
2012-06-15 11:03:43 +02:00
Lynix
e2a38b3790
First part of render texture commit
...
Added NzContext::EnsureContext and NzContext::GetThreadContext
Added NzCube
Added NzRect::GetCenter
Added methods to send vectors to shaders
Added NzRenderer::SetViewport
Fixed NzRect::ExtendTo calculations
Fixed NzImage::Update checks with level > 0
No longer use glTexStorage when creating a texture to prevent a bug
NzBuffer's Lock and Unlock operations renamed to Map and Unmap
NzVector2/3/4 can now cast implicitly to a pointer
Optimized compilation time of String.hpp
Optimized normalisaton of quaternions
Optimized passing uniforms to shaders
Quaternion now automaticaly Normalize h
Removed macro definition of NAZARA_RENDERER_OPENGL from Renderer
Removed implicit cast from NzVector2/3/4 to NzString
Renamed nzBufferLock to nzBufferAccess
Renamed NzRenderTarget::CanActivate to IsValid
2012-06-13 07:40:31 +02:00
Lynix
ddd2a2f310
Added CopyTo(Image/Texture) to NzRenderWindow
...
Added several methods to NzRenderer
Optimized NzRenderer::GetMax*();
Nz(Render)Window::GetSize now returns an unsigned vector
Fixed textures being flipped
2012-06-05 23:06:47 +02:00
Lynix
a176648265
Added NzTexture
...
Added levelCount parameter to NzImageParams
Added NzPixelFormat::HasAlpha
Reformatted OpenGL debug messages
2012-06-05 10:54:06 +02:00
Lynix
49353cb636
Fixed crash with NzContext::Destroy
...
Fixed crash when calling NzContext::Destroy two times without recreating
a new context
2012-05-31 23:42:39 +02:00
Lynix
dd4cb97a37
Added support for OpenGL debug mode
...
When NzContextParameters.debugMode is true, Nazara will receive OpenGL's
debug message and send them to Nazara's log
NzString::Pointer now have the "0x" prefix
Added support for ARB_texture_storage extension
Nazara now try to load core texture 3D before trying to load
EXT_texture3D
Added NazaraNotice macro, writing raw text into Nazara's log
Added NzContext::Destroy (called in Create)
2012-05-31 23:33:47 +02:00
Lynix
f4b194f6fe
Fixed rendering with OpenGL core profile
...
Added (automatic) support of Vertex Arrays Objects (VAO) to fix
rendering with an OpenGL core profile (OpenGL 3.2 require the use of
VAOs)
Added level check to NzImage::GetDepth/Height/Size/Width
Fixed occlussion query support not correctly setted
2012-05-31 18:18:28 +02:00
Lynix
b220e00c88
NzImage now handles mipmaps
...
Added NzRenderer::SetClearColor(const Color&)
Added describe comment for pixel formats
Fixed NzPixelFormat conversion for RGBA4 and RGB5A1 types
Fixed NzRenderer::Clear prototype
Renamed NzLock to NzLockGuard
ResourceLoader's loaders are now tested from newest to oldest
2012-05-30 18:10:17 +02:00
Lynix
b243d15c74
Added formats conversion
...
Functor, NonCopyable, Tuple are now parts of NazaraCore (NazaraCore no
longer needs NazaraUtility)
Added loadFormat image parameter (ask loader to load image in specific
format)
Fixed utility project building
It is now possible to convert, get validity or get name of pixel formats
Changed endianness macros' name
Removed useless NazaraEndianness macro
Removed unused files
2012-05-24 18:55:48 +02:00
Lynix
9b3f4e794a
Added Image
...
Added pixel format support
Added MemoryStream
Added Rect
Added ResourceLoader
Added generic loader (bmp, gif, hdr, jpg, jpeg, pic, png, psd, tga)
Added PCX loader
Added utility module initializer
Fixed Config.hpp include
Prerequesites.hpp now overwrites _WIN32_WINNT when defined
version is less than requiered version
Renderer's initialisation will implicitly initialize utility module
Removed RENDERER_SINGLETON option
Shaders are now resources
2012-05-21 21:54:13 +02:00
Lynix
8c420b48c3
Fixed compilation in debug mode
2012-05-04 16:06:18 +02:00
Lynix
a215920818
It is now possible to send uniforms to shader when they are not mounted; Added shader locking
2012-05-04 08:56:35 +02:00
Lynix
a4cbe46e15
Restablished core context creation, removed debug messages
2012-05-04 07:34:43 +02:00
Lynix
5d816122c8
NzHardwareBuffer::Fill now call glBufferSubData instead of glMapBuffer is the locked size is under 32k
2012-05-03 00:26:06 +02:00
Lynix
63a220a349
Added occlusion queries
2012-05-03 00:07:58 +02:00
Lynix
7d117ce97c
Laid the basis for rendering
2012-05-02 16:45:44 +02:00
Lynix
e8ef4b59da
Fixed collaborator's name
2012-05-01 17:44:14 +02:00
Lynix
71b4262c51
First commit
2012-05-01 16:43:48 +02:00