Commit Graph

37 Commits

Author SHA1 Message Date
Lynix 192fccc634 Fix compilation
Former-commit-id: d5ac6bb73615f7c9b068c1de2037dfeddc5c1b45
2016-03-02 16:53:20 +01:00
Lynix 1c4135fc09 Improve documentation
Former-commit-id: 08d70f6a53a7f12d2748d145d1fe139595a1b39e
2016-03-01 15:37:05 +01:00
Gawaboumga 844e31fb38 Documentation for Vector2 + static DotProduct & Normalize
Former-commit-id: 6f0aa15cd725f9dfaa7f6f99b10c6d2dde4e94a1
2015-12-30 15:35:37 +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
Gawaboumga 2d07922478 Add Unit for vector2
Former-commit-id: 4a143363f24e08d0be12a5ef6bfb46c71b11be4a
2015-08-21 11:34:08 +02:00
Lynix ea8d683624 Updated copyright year
(532 files, wow)


Former-commit-id: cbb31f1124a86720bd3a54fe589a0f849a87b434
2015-01-21 20:53:01 +01:00
Gawaboumga 3933b07094 Suppression of warnings
OffsetOf: use of static_cast
Updatable: API and virtual destructor
Drawable: virtual destructor
Vector: std::abs should be "the" abs.
AbstractClass: API
+Updatable: Like for others abstracts
Buffer: nullptr for pointer to function.
Image: wasn't returning a vector.

Former-commit-id: 57e0009286a02b9e3b0b81945e500d7d9e466ae2
2015-01-21 13:51:49 +01:00
Lynix 304b46b17d Merge remote-tracking branch 'origin/Particle-Update'
Former-commit-id: 272203af1d740dc32e9714e00e4f889db6b13350
2015-01-19 02:23:07 +01:00
Lynix 5daf09e41b Added OpenGL-like Vector constructors
Former-commit-id: 302389b6a915d66a0a0fb4cc9a748ed5266ae98c
2015-01-05 02:32:57 +01:00
Lynix 68bd3304c6 Renamed Degrees|Radians functions to From[Degrees|Radians]
Also added To[Degrees|Radians] functions


Former-commit-id: b7445a42e5ee88319009db9d664d8d9f8fe88c18
2014-09-06 11:52:37 +02:00
Lynix 4acd61cf30 Fixed Vector[2|3]::Normalize returning NaN for zero vectors
Former-commit-id: e849a14189ff178134358d4ceed87955bc9f8eae
2014-08-05 17:38:49 +02:00
Lynix 60d5c09c18 Renamed Basic.hpp to Algorithm.hpp
Former-commit-id: ba2858d26fb55069313fafc3e4464dc2e9224b7d
2014-07-28 15:18:39 +02:00
Lynix 2479588811 Removed toDegree arg from VectorI::AngleBetween
Former-commit-id: 6b5e141e7c291dadedbfd237f5f22615ce5dcfee
2014-07-10 10:03:35 +02:00
Gawaboumga 1aebcd83b0 Merge remote-tracking branch 'upstream/master'
Former-commit-id: 124b89e1c31a7b907f88d8c7a234473274d5a0f6
2014-06-28 09:05:16 +02:00
Lynix 032b2ed79b Removed explicit VectorI::operator[]
Since Vector instances can be implicitely converted to T*, native
operator[] will work on them


Former-commit-id: 3f4a1822c514886dee7d9e5dab816c80e5c5ee99
2014-06-27 21:15:11 +02:00
Gawaboumga ca595bca20 Add of some mathematical functions
Plane: Getters and classic planes
Sphere: Getter
Vector2: Angle between two vectors
Vector3: Same in 3D

Former-commit-id: 07e6421def813743e5fd8248fe2e9503cebbb8a8
2014-06-27 19:33:28 +02:00
Gawaboumga 676ed6c9d8 Correction of mathematical functions.
BoundingVolume: Add of constructor and setter OrientedBox. Extend is now
up to date.
Box: Use of <T>. Return this
Frustrum: Use of <T>
Matrix: Use of <T>
OrientedBox: m_corners is up to date
Rect: Add of operators /= and /. Return this
Sphere: Add of Intersect and Contains with box. Little corrections.
Vector2: Return

TaskSchedulerImpl: Add of include header cstdlib to compile because of
std::div
HardwareInfo/main: use of accentAigu

Former-commit-id: a5a7f8e8c45448e5683eb13bff453d6f67478d03
2014-06-14 22:10:37 +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 db2b33eda1 Fixed Vector2::Normalize
Former-commit-id: c781e64262c0fbce2782f635c2db13478f18a9d5
2013-09-20 21:31:07 +02:00
Lynix 35d9a2fef7 Fixed Vector2 division operators
Former-commit-id: cceddfe0bdb1ac94355ad3d04e4c9dab51d2edce
2013-07-01 16:04:50 +02:00
Lynix 32b1d02cec Updated copyright texts
Former-commit-id: 81483f7a94935c925e53b7f450e42635b1357833
2013-03-13 23:23:41 +01:00
Lynix a9b538de20 Renamed Vector[i]::[Squared]Length[f] to Get[*]
Also added length pointer parameter to Vector[i]::GetNormal


Former-commit-id: 345ebd14bda9f5e0a3843e7603eb7a1a39667db1
2013-02-21 11:29:35 +01:00
Lynix 2e4c27188f Fixed math not including some headers
Former-commit-id: a0da804f710d2decf84cd2429d1fedc0df5e49f7
2013-02-17 02:09:10 +01:00
Lynix cdf632ac96 Minor changes to math module
-Fixed missing Set method: "X::Set(const X&)"
-Removed operator String


Former-commit-id: 690f161704ed85fc57a62b812af7933e390572b5
2013-02-16 19:21:14 +01:00
Lynix 6a3087cc26 Optimized Vector <= comparison
Former-commit-id: 8668b8ff78387262f0e21f038b6ca0240c513476
2012-12-02 20:39:49 +01:00
Lynix 437c7047c9 Reintroduce Vector comparison operator
Since it can be used for integer vector, also fixed comparison
technique.


Former-commit-id: 3a193ed21beb4d9b7d311eb29bc2852b0776a41c
2012-12-02 16:48:56 +01:00
Lynix 5c7a9e1011 Removed Quaternion/Vector comparison operator
Made no sense


Former-commit-id: 3c2a822cd3142e2bc931021ef8874602630be8cf
2012-12-02 00:37:21 +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
Lynix cfd54b859d Added linear interpolation (Lerp) to math module
Former-commit-id: 5920e21f25d42701a1895734eca492fdf5351669
2012-10-08 14:45:29 +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 5619ddb0b1 Changed all the files encoding to UTF-8
Named modules in licence informations
2012-08-10 03:21:37 +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 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 0f84f8eda8 Added Quaternion spheric interpolation
Fixed NzVector(2/3)::Length() and NzQuaternion::Magnitude() returning
double instead of template type
Added quaternion dot product
Added gitignore
2012-06-13 17:54:07 +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 71b4262c51 First commit 2012-05-01 16:43:48 +02:00