Commit Graph

64 Commits

Author SHA1 Message Date
Jérôme Leclercq 03e2801dbe Split engine to packages NazaraUtils and NZSL (#375)
* Move code to NazaraUtils and NZSL packages

* Reorder includes

* Tests: Remove glslang and spirv-tools deps

* Tests: Remove glslang init

* Remove NazaraUtils tests and fix Vector4Test

* Fix Linux compilation

* Update msys2-build.yml

* Fix assimp package

* Update xmake.lua

* Update xmake.lua

* Fix shader compilation on MinGW

* Final fixes

* The final fix 2: the fix strikes back!

* Disable cache on CI

* The return of the fix™️
2022-05-25 19:36:10 +02:00
SirLynix 89c7bbf197 Update copyright date 2022-01-01 15:30:09 +01:00
Jérôme Leclercq a02b1952c0 Apply header order fix 2021-10-28 09:53:56 +02:00
Jérôme Leclercq 93ec196dc4 Apply header guard check 2021-10-26 15:52:46 +02:00
Jérôme Leclercq ed7ab31933 Apply copyright fix to all files 2021-10-26 14:31:35 +02:00
Jérôme Leclercq ece18bf472 Implement back text rendering (WIP) 2021-09-07 18:45:10 +02:00
Jérôme Leclercq 7140e322c1 Commit missing files 2021-05-25 10:40:07 +02:00
Jérôme Leclercq cce32a64d4 Upgrade Utility 2021-05-25 10:40:07 +02:00
Lynix 9507c56fc9 PixelFormat rename
PixelFormatInfo => PixelFormatDescription
PixelFormat => PixelFormatInfo
PixelFormatType => PixelFormat
2020-04-10 14:19:36 +02:00
Lynix c23b6dfa01 Copyright year update
I can't wait to see the conflicts this will cause
2020-03-05 17:27:26 +01:00
Lynix 3d22321109 Big f***ing cleanup part 1 2020-02-23 00:42:22 +01:00
Jérôme Leclercq ed46c87781 Refactor the way resources are loaded (#191)
* WIP

* WIP

* Font works

* WIP: Only Music remains

* Looks like it's working

* Fix oopsie

* Core/ObjectRef: Add cast functions

* Update ChangeLog.md

* Audio/SoundStream: Make sound stream thread-safe
2018-10-28 01:53:11 +02:00
germinolegrand 1e55c4d9e9 Prerequisites instead of Prerequesites (typo) #152 (#153) 2018-01-16 12:23:01 +01:00
Gawaboumga bbac0838dd Include-What-You-Use (#137)
* IWYU Core

* IWYU Noise

* IWYU Utility

* IWYU Audio

* IWYU Platform

* IWYU Lua

* IWYU Network

* IWYU Physics2D

* IWYU Physics3D

* IWYU Renderer

* IWYU Graphics

* IWYU NDKServer

* IWYU Fix

* Try to fix compilation

* Other fixes
2017-10-01 11:17:09 +02:00
Gawaboumga c2e4ccaf72 Various little fixes (#118)
* Add missing override qualifier

* Mostly shadowing, virtual destructor and other little things
2017-02-19 23:15:13 +01:00
DrLynix f383eca19a Update copyright year 2017-01-20 12:58:35 +01:00
Lynix ff7e64494f Utility/Image: Add HasAlpha() method 2016-11-18 01:15:58 +01:00
Lynix a7d2d8cddd Utility/AbstractImage: Inherit RefCounted 2016-10-20 23:53:22 +02:00
Lynix 819b46f5fc Fix a shitload of warnings in 64 bits mode
Former-commit-id: c7792a7d5b1f85ab934da25324831b9daa3f47ff [formerly 3469974c48432be1f65808bff0ea39d9e22f5b50]
Former-commit-id: 5080815e9e1a3aebe237ff9a291b908ce0292eca
2016-06-13 21:09:55 +02:00
Lynix e5f5d7ed11 Utility/PixelFormat: Add ComputeSize method
Former-commit-id: 8d9017541a812c98ba96c694cbd10da895338d1d
2016-04-21 13:21:39 +02:00
Lynix dce587bd63 Add support for custom resource parameters
And allow users to skip a precise loader using them


Former-commit-id: 297af2e4a24ad67c343aae5d89352abf4ea05f63
2016-03-08 13:37:17 +01:00
Lynix d6ff7d065e Utility/Image: Add saver (allowing to save images)
Former-commit-id: df78d657256f8a6b7dad5ab11877aae7402608b3
2016-03-08 13:11:09 +01:00
Lynix ed961f5ba8 Core: Merge InputStream and OutputStream to Stream
Remove serialization support from Stream


Former-commit-id: 7a761e4fcd07cab561f13e4709c4492ed18da88a
2015-11-20 13:52:49 +01:00
Lynix df8da275c4 Switch from Nz prefix to namespace Nz
What a huge commit


Former-commit-id: 38ac5eebf70adc1180f571f6006192d28fb99897
2015-09-25 19:20:05 +02:00
Lynix 03ee0a12ed Make signals arguments clearer
Former-commit-id: c329f1fc5b8d8ffcf8e38ec4e4804454b31f685f
2015-09-14 22:40:38 +02:00
Lynix 1fc17c8b53 Separate NAZARA_API into multiple defines (one per module)
To fix inter-module dependency


Former-commit-id: 64704f020e0af22e529d38527323ba977187d4d0
2015-06-13 22:31:29 +02:00
Lynix 310dcf40b1 Utility/Image: Clean memory managing
Former-commit-id: 15312493a66ea26266029a45cc3aa22cc83386eb
2015-06-13 00:45:21 +02:00
Lynix a069b105e6 Fully replace listener system by signals
Former-commit-id: 032dfddd12cc3a792c71426148c758ffac3621f9
2015-06-07 20:42:41 +02:00
Lynix 7a73314ef5 Added resource managers
Former-commit-id: 9c071230c1e325ec672c9dfe30ee7e498baa1d08
2015-01-28 20:53:40 +01:00
Lynix 53162c1722 Added a Library to most reference-counted classes
Former-commit-id: 3ed409a71dcd5ce4eec7672ac26f8fff00e3b136
2015-01-28 18:06:05 +01:00
Lynix 0db92e671d Added a static New method to RefCounted-derived classes
Former-commit-id: efd9e68e050fb6cc7e0df7a7c222ca759c502dc5
2015-01-25 23:41:09 +01:00
Lynix 5f5be93992 Merge remote-tracking branch 'origin/master' into Resource-Update
Conflicts:
	include/Nazara/Audio/Music.hpp
	include/Nazara/Audio/SoundBuffer.hpp
	include/Nazara/Core/Resource.hpp
	include/Nazara/Core/ResourceListener.hpp
	include/Nazara/Graphics/Material.hpp
	include/Nazara/Renderer/Context.hpp
	include/Nazara/Renderer/RenderBuffer.hpp
	include/Nazara/Renderer/Shader.hpp
	include/Nazara/Renderer/Texture.hpp
	include/Nazara/Renderer/UberShader.hpp
	include/Nazara/Utility/Animation.hpp
	include/Nazara/Utility/Buffer.hpp
	include/Nazara/Utility/Image.hpp
	include/Nazara/Utility/IndexBuffer.hpp
	include/Nazara/Utility/Mesh.hpp
	include/Nazara/Utility/SkeletalMesh.hpp
	include/Nazara/Utility/Skeleton.hpp
	include/Nazara/Utility/StaticMesh.hpp
	include/Nazara/Utility/SubMesh.hpp
	include/Nazara/Utility/VertexBuffer.hpp
	include/Nazara/Utility/VertexDeclaration.hpp
	src/Nazara/Core/Resource.cpp
	src/Nazara/Core/ResourceListener.cpp
	src/Nazara/Graphics/DeferredRenderQueue.cpp
	src/Nazara/Graphics/ForwardRenderQueue.cpp
	src/Nazara/Graphics/SkinningManager.cpp
	src/Nazara/Renderer/RenderTexture.cpp
	src/Nazara/Renderer/Renderer.cpp
	src/Nazara/Utility/Mesh.cpp

Former-commit-id: 99b5ad26a19fe9c9f8118da7b5920bffe89f60f8
2015-01-25 19:29:55 +01:00
Lynix ea8d683624 Updated copyright year
(532 files, wow)


Former-commit-id: cbb31f1124a86720bd3a54fe589a0f849a87b434
2015-01-21 20:53:01 +01:00
Lynix 8f9ea9db17 Added ResourceListenerWrapper
This class wraps the call to
Resource::AddResourceListener/RemoveResourceListener using RAII and help
a lot with some of the dependencies.
Thanks to this, the render queues now handle their resources listening
properly.

Former-commit-id: 7f215ffa4ccadcc4f44f777656970e92ce01087a
2015-01-18 23:59:01 +01:00
Lynix cd5399459d Made Resource copying/moving impossible
It is still possible to copy some Resource-based classes though


Former-commit-id: bbb6066f736c210015ff9fdfded7d95eb9695359
2015-01-16 16:28:38 +01:00
Lynix e3f7644831 Added class AbstractImage, inherited by Image and Texture
Former-commit-id: 16e5db4937a145ac244d6c70e4c74662622f86d9
2015-01-05 15:08:29 +01:00
Lynix b2b18a9f51 Added Image::GetSize (returning the image's dimensions)
Renamed original Image::GetSize to GetMemoryImage


Former-commit-id: a2b54f171353b8197639b5f2b3911e4b3f2a8db2
2015-01-05 13:41:56 +01:00
Lynix 0d69267992 Added Image::LoadArrayFrom* (convert an atlas to an array)
Also added Texture::LoadArrayFrom* shortcuts


Former-commit-id: f3cde12d5b634c75de8745fa800c30749e0fe662
2014-08-18 18:13:30 +02:00
Lynix e76b57e120 Fixed Image level computation
Array depth will no longer be taked in consideration when computing
level count


Former-commit-id: 93bf114127b5e252c3f8a8cbf938fcd09534a9ca
2014-08-18 17:19:09 +02:00
Lynix 9e04e8a0e4 Separated reference counting from Resources
Former-commit-id: 7380818cfee9e249c11fd15da9ff7883a6e76565
2014-07-15 00:59:02 +02:00
Lynix c096756dab Happy thousandth commit Nazara
Updated copyright year (Yay, 515 file updated)
Regenerated global headers
Fixed some typo
Improved some shaders
-Blah blah blah-

Thank you all for supporting my project !
-Lynix


Former-commit-id: e4e741b318ba4f203da5ffd265bd5e516e7ffd7d
2014-01-12 20:16:21 +01: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 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 4afe078e9d Added cubemap helpers for Image/Texture
Former-commit-id: 3c0dfb9e9b78369b8a552a55f2c70b978e626ce9
2013-04-07 02:08:08 +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 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 6c2fb1eb89 Added ResourceRef (Automatic resource reference)
Former-commit-id: 97a0b2732f4dc443b8e1676e68b33b1b53ddf4fb
2013-03-15 03:09:58 +01:00
Lynix 32b1d02cec Updated copyright texts
Former-commit-id: 81483f7a94935c925e53b7f450e42635b1357833
2013-03-13 23:23:41 +01:00
Lynix b1da998d24 Updated Utility
Former-commit-id: 6da80ae53e6965e1fb8a74e656434f514aac8c62
2013-03-02 00:24:34 +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