Commit Graph

473 Commits

Author SHA1 Message Date
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 f434266a88 Fixed IndexMapper with constant sequential buffer
Former-commit-id: 195d03c1db72edfdfa4d407f7c1adb983bd266c6
2013-05-13 12:53:56 +02:00
Lynix 2b00ee9c04 Cleaned SubMesh code
Former-commit-id: 26be5a2fd205428f10316f899ee36b8fc3c3d46e
2013-05-13 12:52:56 +02:00
Lynix a6cbc5c872 Fixed missing debug tools include
Former-commit-id: b9a53f96e603c057f08e11e17a38d5a8322820c9
2013-05-11 20:15:08 +02:00
Lynix 4d9ba84d03 Added safety range-check to VertexMapper methods
Former-commit-id: 63424008656619b44237f640b2f2bc7a67d70040
2013-05-11 19:08:38 +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 ad2c66bbb3 Improved Windows ClockGetMicroseconds precision
Former-commit-id: 601157e2116bc4f3ecd22ec89a285f62e4b36c11
2013-05-11 14:04:08 +02:00
Lynix 28f46a5c90 Added ShaderUniform (Faster GetUniformLocation)
Former-commit-id: c8a01eccde07fc3b2aac46c5b974f8406ad949f0
2013-05-11 14:03:22 +02:00
Lynix 991d841d57 Made String(char) explicit
Former-commit-id: 02f5ead8fe60b825464f956d9fc6ea4689bda44b
2013-05-11 13:51:56 +02:00
Lynix 459c7a4d07 Made use of atomic variables
In order to replace mutex-protected integer values (Performance
improvement)


Former-commit-id: d40ed2444111f00dab372f2371fe91cfd9cd2472
2013-05-03 23:12:58 +02:00
Lynix aa1399b750 Updated Renderer.cpp
Former-commit-id: 6d87af3cf87cba6ce0192f5e08e978c48cc1de2c
2013-05-03 21:46:23 +02:00
Lynix 44f1309836 Fixed warning on 64 bits (Yep, again)
Former-commit-id: 303f3592124dfbd9b15fbaf04ba371cdfe20209a
2013-05-03 11:48:59 +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 76c19624d8 Made PCX Loader exception-safe
Former-commit-id: aca42c27d8daa6b0c5412bd61c5fad3016bcd6d0
2013-05-03 02:56:04 +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 5aeb9d63b8 Fixed SHA(384|512) not resetting SHA context
Former-commit-id: 0bfc4e206b7203a179bf18f6fa16c64fbbfbf169
2013-05-03 02:52:07 +02:00
Lynix f694c3be40 Fixed warning on 64bits
Former-commit-id: eb4c1fb88cc0aec38507c3100650d45deeb4e64a
2013-05-03 02:50:06 +02:00
Lynix 2097d3476d Minor changes
Former-commit-id: 03920c74e2dc63a700d8167318d1bb14b4b68c8d
2013-05-01 01:37:18 +02:00
Lynix 7908839785 Added Window::GetStyle()
Useful with external windows


Former-commit-id: 62974c8cdfb6919bc1e85507cc8adc8101daba1a
2013-05-01 01:36:13 +02:00
Lynix 961c658ae1 Changed Matrix4::(Make)Transform argument pos
To reflect "TRS" transformation
Also removed an useless line


Former-commit-id: b60a70d04797f40f3490b26706740b375fe38421
2013-05-01 01:35:17 +02:00
Lynix 6699ce328f ResourceLoader SteamChecker now return a ternary
Former-commit-id: 2ee274ebb2b61f39e93f6ff2306b5a326b158594
2013-04-27 11:51:42 +02:00
Lynix 226d291ea6 Fixed compilation
Former-commit-id: d676846c22d9a6c3efc168e4bb0734e103bdaddc
2013-04-24 12:18:31 +02:00
Lynix 1e256bdf35 Added Lua module
Former-commit-id: 3f96b9aef8afffb5e8daf460480df2f3b8c37da7
2013-04-24 11:51:06 +02:00
Lynix 3ac0338285 Fixed node not copying initial values and name
Former-commit-id: c6d9af9a9a3c4b0959be907634fa7db69be72709
2013-04-24 11:49:01 +02:00
Lynix fdf0c8a71f Added Node::To[Global|Local]*
Fixed Node::Interpolate when used in global coord sys


Former-commit-id: 1963a6c6d3df8b2bc8a3f7a2a7a7102611ca6493
2013-04-19 13:59:57 +02:00
Lynix 3616a126b8 Fixed HybridMultiFractalXD
Former-commit-id: eb44374145b7c43012ae70de7a9224154d1a2985
2013-04-17 21:31:30 +02:00
Lynix 3e916c91f0 Fixed compilation error
Former-commit-id: 1f0f0fd117c8a1ab2fc17c98d5065ab8bf4f4c00
2013-04-17 21:30:32 +02:00
Lynix 6660b8fd30 Removed useless white lines
Former-commit-id: b76756987112244247ef1b99275871dbfe03630f
2013-04-12 16:45:04 +02:00
Lynix dd01e0bfdd Fixed warnings
Former-commit-id: d4bdb639c3f2e5ebb8d1d3caa020b75ca0821736
2013-04-12 15:12:27 +02:00
Lynix 143707bc2e Added extern libraries (Made STB one of them)
Former-commit-id: 0ca555e9f035600924c7c23fff06bc3810051fdf
2013-04-12 15:12:11 +02:00
Lynix 369c735596 Fixed audio module not building
Former-commit-id: 87276c55c56142b8d10b13f2de19ee93b8148432
2013-04-11 15:38:07 +02:00
Lynix 0b8394c6dc Fixed skybox being affected by previous materials
Former-commit-id: 0e8a170c2b4088fcb5ab6c402fd3ba7323ad41fc
2013-04-11 15:37:33 +02:00
Lynix 36f8631028 Added user-friendly method for accessing materials
Former-commit-id: 6f254ea6e324b3467a811ba5282f67b6ea078d51
2013-04-09 14:26:14 +02:00
Lynix 38a28c26d2 Added user-friendly method for loading maps
Former-commit-id: 4990988256a37c55c6d07b273fd48430221235ae
2013-04-09 11:33:03 +02:00
Lynix 8ff32e2376 Improved error message
Former-commit-id: 8f21e6420859cac4153941cf35e34f0d4ba13c87
2013-04-09 11:32:40 +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 8d8a47da4c Infallible Image methods no longer return a bool
Former-commit-id: 10af51caf639d010b36829bdb82afbcfc908582c
2013-04-06 17:32:55 +02:00
Lynix c3c3d07be0 Added Skyboxes
Former-commit-id: f4153c047d658afb3e42302a34b0263fbac78d88
2013-04-06 17:04:56 +02:00
Lynix f2942e2b3f Fixed Image notified destroy when invalid
Former-commit-id: 5c14f5356809454d15fc3abdcea1111635f2a2cf
2013-04-06 16:31:29 +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 dd7025eae2 Fixed operator+(char, NzString)
Former-commit-id: ccd06c224bc95e292d0d276af69354f9e5e8d803
2013-04-04 14:06:27 +02:00
Lynix 8694f71c2a X::Initialize no longer takes arguments
Former-commit-id: a8233235e89112630f2d31c637723443bd0829a4
2013-04-03 16:41:57 +02:00
Lynix d28cee3187 Fixed Noise freeing dependency before noticing
Former-commit-id: 8356bad9084622491cf09fd1517fdf19663aa5da
2013-04-03 14:54:38 +02:00
Lynix 98e70f21a1 Made Background::Draw receive const scene pointer
Former-commit-id: 2b84f8ea924714d81046f3dd29990939586e7622
2013-04-03 01:47:43 +02:00
Lynix 2c7744af41 Fixed last commit
Yep, forgot to test it :D

It should be okay now


Former-commit-id: 3392523240affb4151f5121decb0e458500878a3
2013-04-03 01:25:57 +02:00
Lynix 34dbd19385 Merged 2D and 3D modules into Graphics module
Former-commit-id: 33bf0fbe727e50e864bc52680c95a106ada508e9
2013-04-03 01:14:55 +02:00
Lynix 2f72939ad0 Added [Sub]Mesh::GetTriangleCount()
Former-commit-id: e365bd3aa57d487186a0be5cde1d5b0ba78d740c
2013-04-01 14:33:10 +02:00
Lynix a951736338 Added default values to MTL materials
Former-commit-id: 102be4d1946047b47e05c356227a78d02e6c992b
2013-04-01 14:20:23 +02:00
Lynix f0445b85b5 Improved Warnings
Former-commit-id: 2457d99efb86403c6080b08fd7ed718d40cf9ab3
2013-04-01 03:10:46 +02:00
Lynix 650e317c04 Fixed OBJ loader
Former-commit-id: 492b5fa542b8744021ff11de4d0e4492a28203ac
2013-04-01 03:03:02 +02:00
Lynix 8c942ef19b Improved OBJ loader
Former-commit-id: 201392edba571e66d0fab14e63c5c4284494808b
2013-04-01 02:52:41 +02:00
Lynix 425f964553 Added OBJ loader
Former-commit-id: 1813ffeece4dbbe73e3d8ddf304c71205c670ffb
2013-03-29 23:10:04 +01:00
Lynix ce6902d37c Fixed String::GetWordPosition
Former-commit-id: df701345b94a899f91d4f67d270b2da20c23e904
2013-03-29 23:02:58 +01:00
Lynix 4ebd391e05 Disabled default material face culling
Former-commit-id: 015ada0b4b9bd66400a0cb4fa380f3a183d63fb6
2013-03-29 16:30:58 +01:00
Lynix ad978dc85a Moved normal/tangents generation to submeshes
Former-commit-id: d043284a1a5810b429cc76d8bc071010985a523b
2013-03-29 14:48:23 +01:00
Lynix 83b6e429f8 Fixed typo
Former-commit-id: c9bce4378a7540595d376a4249a45883e0111f2f
2013-03-29 14:44:53 +01:00
Lynix 3255162d3a Fixed IndexMapper bug (with null index buffer)
Former-commit-id: bbec2fddc8f95cca9c62b0f07dd3d115949224c6
2013-03-29 14:44:46 +01:00
Lynix b86332a51b Refactored TriangleIterator/VertexMapper
Former-commit-id: b8d4fc79142b36519ebe1879276415fe30970d3e
2013-03-29 14:42:55 +01:00
Lynix 36cb681adc Greatly optimized file-based streams
Former-commit-id: 3adef66ec27b9e423667d2d17b914a3a6c71a4ca
2013-03-26 01:01:17 +01:00
Lynix ddc900185d Added String::Append(str, length);
Former-commit-id: a1c16d5966221cffe1f28b20f099922078360818
2013-03-26 01:00:29 +01:00
Lynix ee03ec8c6b Fixed last commit
Former-commit-id: e3340822fa8772adef371e9d0395aa97ed66f081
2013-03-25 14:29:39 +01:00
Lynix 56feddb100 Added Scene::GetActiveCamera()
Also fixed a warning when instancing is used without lighting


Former-commit-id: 5326e95f99a58ffcc91d7942ec2991482d7e58bd
2013-03-25 13:27:18 +01:00
Lynix 5dd2d0d6a7 Changed Resource::SetPersistent default argument
Former-commit-id: 803534a0216d85f96e6f6f7810e5e76ebcc8bb44
2013-03-24 01:07:01 +01:00
Lynix b5d73ce389 Added ModelLoader
Changed Model::SetMesh behavior


Former-commit-id: b1c937b22bcebeef8b8fc42ff061dbf8ece8d2f1
2013-03-24 01:03:21 +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 5464b3e184 Optimized some format conversions
Thanks to kristofjé


Former-commit-id: f7c0e5da41b7b7b4c967d7ae812b6da517761823
2013-03-23 22:50:13 +01:00
Lynix 7ddff94a30 Added (move) assignement operator to Model
Former-commit-id: eee1b92633656e47454218583f8e8bdabcddc157
2013-03-23 22:49:24 +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 aecc5919d3 Slightly changed scene background behavior
Former-commit-id: c005ff83e6251d62e3471e6a7a07d3d1a8acdd88
2013-03-22 11:14:55 +01:00
Lynix 5390bd49f0 Fixed pixel flipping (ex:horizontal was vertical)
Former-commit-id: 8fb8e6949ae1d2c3d53e42b979f1716e25d3bba9
2013-03-22 11:14:11 +01:00
Lynix ccea00b12e Added backgrounds
Former-commit-id: e3959b04a124978c473bd6330047b5fd6ac27b19
2013-03-21 23:02:11 +01:00
Lynix ce63985b0e Fixed Drawable destructor
Former-commit-id: 01ff3c3c86dc0bd3f25b51384b0751d3767aa9ba
2013-03-21 22:55:16 +01:00
Lynix a65a6f14b5 Fixed and improved String::IsNumber
Former-commit-id: 5b3dbfb349b64d227670cb891e2c7ef43606a56a
2013-03-21 17:32:13 +01:00
Lynix 5ac36d99ef Fixed scene visible updatables
Former-commit-id: 9633d7049bbe9d5f6b304ab8e9702fae93540018
2013-03-20 17:07:07 +01:00
Lynix 29d66892b7 Fixed RenderQueue not clearing generic drawables
Former-commit-id: d510f8c0e817a42e2ca4db755ca68b3a6d99ab9a
2013-03-20 17:05:29 +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 6a7eb137d7 [Index|Vertex]Buffer::Fill now takes discard arg
Former-commit-id: 384ffdb12d82c1e960249abcaf407ccbfe0939cf
2013-03-20 15:40:37 +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 d969e2ea3e Fixed resource reference bug
Former-commit-id: ee523acdc69ee00580644290b05e72b75ab6513d
2013-03-15 03:12:28 +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 677536c4b2 Updated some error messages
Thanks to Shade "Hawk eye" Master


Former-commit-id: fb18a5aaa9d368ebec271c9016d4058089cefcf5
2013-03-14 00:19:05 +01:00
Lynix 6b2690ef30 Fixed files encoding not being UTF-8
Also updated copyright texts for some files forgotten in the last commit


Former-commit-id: 79f158a7943c32f76a9a1e80fba109f15a3b7346
2013-03-14 00:14:16 +01:00
Lynix 32b1d02cec Updated copyright texts
Former-commit-id: 81483f7a94935c925e53b7f450e42635b1357833
2013-03-13 23:23:41 +01:00