35 Commits

Author SHA1 Message Date
hybrid
1fda9980df Add vertex optimization algorithm submitted by curaga
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@4048 dfc29bdd-3216-0410-991c-e03cc46cb475
2012-01-20 18:08:14 +00:00
hybrid
99cfad9dd1 Normals recalculation fix by Squarefox
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@3990 dfc29bdd-3216-0410-991c-e03cc46cb475
2011-11-06 21:35:34 +00:00
hybrid
84eeb0e6de Added 32bit support to some more of the mesh manipulator methods. Unfortunately, the cloning methods (createXXX) will require huge code duplication, so I left them unchanged so far.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@3765 dfc29bdd-3216-0410-991c-e03cc46cb475
2011-05-28 22:54:07 +00:00
hybrid
3d14880c0d Fix createMeshCopy to apply the original materials to new copy as well, as pointed out by tonic.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@3631 dfc29bdd-3216-0410-991c-e03cc46cb475
2011-04-12 11:49:32 +00:00
hybrid
5e4d495dcc Bump copyright dates to 2011.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@3556 dfc29bdd-3216-0410-991c-e03cc46cb475
2011-01-14 13:24:40 +00:00
hybrid
96310b964d Merged revisions 3172:3197 from 1.7 branch. Some more bug fixes and doc updates from the 1.7 beta phase.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@3198 dfc29bdd-3216-0410-991c-e03cc46cb475
2010-02-02 20:53:57 +00:00
hybrid
f3bf8b1f2b Fix createMeshWith1TCoords to avoid vertex duplication.
Add a new VertexManipulator interface, which allows to easily add manipulators. Several existing methods have been replaced by this interface. 
Further manipulation schemes will be added later.

git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@2856 dfc29bdd-3216-0410-991c-e03cc46cb475
2009-11-13 13:46:12 +00:00
hybrid
7713cddaf8 Merged revisions 2748:2778 from branch 1.6. A few bug fixes (wrong drop/grab, normals handling, rotation animator) and many doc fixes.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@2780 dfc29bdd-3216-0410-991c-e03cc46cb475
2009-11-02 10:27:15 +00:00
hybrid
ffc37ec8d7 Make mesh cloning a little more explicit, in order to cope with SSkinnedMesh and others.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@2360 dfc29bdd-3216-0410-991c-e03cc46cb475
2009-04-28 23:03:33 +00:00
engineer_apple
c130d56b76 Changes in 1.6 TA
- fixed createMeshWith2TCoords
		normals were missing during copy. 
	- addded
		//! Creates a copy of the mesh, which will only consist of S3DVertex vertices.
		IMesh* CMeshManipulator::createMeshWith1TCoords(IMesh* mesh) const

	- added io::IFileSystem* CSceneManager::getFileSystem()
		for preparing to remove the (mostly) unnecessary double member variables
		in many loaders

	-	added virtual const c8* ISceneManager::getAnimatorTypeName(ESCENE_NODE_ANIMATOR_TYPE type);
		to the SceneManger Interface. just like getTypeName is public
	
	- added CSceneNodeAnimatorFlyCircle::radiusEllipsoid.
		if radiusEllipsoid == 0 the default circle animation is done
		else radiusEllipsoid forms the b-axe of the ellipsoid.
		
		-> gummiball bouncing
		
	- added ISceneManager::createFlyStraightAnimator variable bool ping-pong
		used in loop mode to device if start from beginning ( default ) or make ping-pong
		
		-> straight bouncing

	- changed IFileSystem::registerFileArchive
		remove the index of the hiarchy and added a new interface method
	
		//! move the hirarchy of the filesystem. moves sourceIndex relative up or down
		virtual bool moveFileArchive( u32 sourceIndex, s32 relative ) = 0;
	
	 	
	- bugfix and changes in
		SViewFrustum::SViewFrustum
		wrong size of Matrices copy. This bug must be ages old... (typo)
		detected during resizing the Matrices. removed obsolute Matrices
		renamed E_TRANSFORMATION_STATE_2 to E_TRANSFORMATION_STATE_FRUSTUM
		
		therefore also changed SViewFrustum::setTransformState to not tap
		in the pitfall again of wrong memory...
		and renamed it to getTransform, like in the driver
		and Matrices private
		
	- OpenGL:
		Specular 
	- moved
		//! EMT_ONETEXTURE_BLEND: has BlendFactor Alphablending
		inline bool textureBlendFunc_hasAlpha ( E_BLEND_FACTOR factor ) const
		from the material renderes ( 3x declared ) to SMaterial.h

	- updated managed light example to use standard driver selection
	- BurningsVideo
		- LightModel reworked.
			Point Light & Direction Light works for Diffuse Color as aspected
			Specular and Fog still have problems ( needs new pixel shader )
			pushed burningsvideo to 0.42 for this major step

		-	removed obsolete matrix transformations
			renamed E_TRANSFORMATION_STATE_2 to E_TRANSFORMATION_STATE_BURNING

			
	- cleaned line3d.h vector3d.h template behavior.
		many mixed f32/f64 implementations are here. i'm not sure if this should be
		the default behavior to use f64 for example for 1.0/x value, because they
		benefit from more precisions, but in my point of view the user is responsible
		of choosing a vector3d<f32> or vector3d<f64>.
	- added core::squareroot to irrmath.h
		-> for having candidates for faster math in the same file
	- added AllowZWriteOnTransparent from SceneManager to burningsvideo	
		Following SceneManger guideline
	-added hasAlpha() to ITexture
		This info can be used for e.q to downgrade a transparent alpha channel blit
		to add if the texture has no alpha channel.
	


git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@2199 dfc29bdd-3216-0410-991c-e03cc46cb475
2009-02-05 15:33:55 +00:00
hybrid
543407812f Added another parameter for the new planar mapping operator
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@2189 dfc29bdd-3216-0410-991c-e03cc46cb475
2009-02-02 22:08:31 +00:00
hybrid
57c16f70d8 Added new makePlanarMapping method with one major axis for the whole mesh buffer, and different resolutions in S and T.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@2181 dfc29bdd-3216-0410-991c-e03cc46cb475
2009-02-01 23:43:44 +00:00
hybrid
0e00187fdd Aded a meshbuffer version of makePlanarTextureMapping.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@2171 dfc29bdd-3216-0410-991c-e03cc46cb475
2009-01-30 17:40:09 +00:00
hybrid
7472bcd83c Merged from 1.5 branch to trunk, all changes from 2042 to 2071. cursor setVisible fix, OSX FPS cam fix, ALPHA_CHANNEL_REF fix, new method draw2dRectOutline, setOverrideFont fixes, getCollisisonPoint distance bug fix.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@2072 dfc29bdd-3216-0410-991c-e03cc46cb475
2009-01-14 12:37:51 +00:00
hybrid
b5d6000f8d Added new mMeshManipulator method scaleTCoords to scale texture coords of a mesh. Added two new access methods to texture coords of vertices of a meshbuffer. This allowed to replace the template for planar mapping as well.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@1479 dfc29bdd-3216-0410-991c-e03cc46cb475
2008-08-09 12:04:56 +00:00
hybrid
69389d0c9e Renamed scaleMesh to scale, added support for meshbuffer scaling.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@1478 dfc29bdd-3216-0410-991c-e03cc46cb475
2008-08-09 10:34:58 +00:00
hybrid
0f278fa5ed Added a meshbuffer transform method and renamed the transformMesh method to transform.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@1419 dfc29bdd-3216-0410-991c-e03cc46cb475
2008-07-17 09:09:30 +00:00
hybrid
2843b8b583 Added generation of tangent space which can keep the original normals, by ryanclark. Note that inaccuracies of the tangent space may arise if you keep the original tangents. Angle weighted smoothing seems to be bogus, maybe indices are wrong.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@1392 dfc29bdd-3216-0410-991c-e03cc46cb475
2008-06-20 12:45:05 +00:00
hybrid
23949554cd Added angleweighted and smoothed generation of tangent space, by ryanclark.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@1391 dfc29bdd-3216-0410-991c-e03cc46cb475
2008-06-20 12:20:15 +00:00
hybrid
05cdfb61ab Added angleweighted smoothing of normals, by ryanclark.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@1389 dfc29bdd-3216-0410-991c-e03cc46cb475
2008-06-20 08:34:39 +00:00
hybrid
cdffc4a5d6 Merge from branch 1.4, revisions 1344:1352, which are the doc updates from the 1.4.1 release.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@1353 dfc29bdd-3216-0410-991c-e03cc46cb475
2008-05-22 11:51:37 +00:00
hybrid
c65379e770 Minor changes.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@1331 dfc29bdd-3216-0410-991c-e03cc46cb475
2008-04-29 12:02:59 +00:00
hybrid
e300dc2c3b Added some bounding box updates.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@1293 dfc29bdd-3216-0410-991c-e03cc46cb475
2008-03-19 10:21:27 +00:00
hybrid
e7add51880 Merged from 1.4 branch revisions 1272:1279
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@1280 dfc29bdd-3216-0410-991c-e03cc46cb475
2008-03-05 00:02:00 +00:00
hybrid
fbb1d585b4 Make even more use of meshbuffer vertex access methods.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@1091 dfc29bdd-3216-0410-991c-e03cc46cb475
2007-12-03 22:56:57 +00:00
hybrid
e7393eddc7 Added a Mesh to 2TCoords converter.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@1010 dfc29bdd-3216-0410-991c-e03cc46cb475
2007-09-28 21:11:30 +00:00
hybrid
8772a2cd8d Changed .x loader to use u32.
Added profiling option to Makefile.
Removed some debug code.
Fixed ogre mesh loader using relative paths.

git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@945 dfc29bdd-3216-0410-991c-e03cc46cb475
2007-09-12 17:45:29 +00:00
bitplane
e87832050e added IMeshManipulator::createMeshWelded to copy a mesh with welded vertices. removed IAnimatedMeshX from the vc8 project.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@944 dfc29bdd-3216-0410-991c-e03cc46cb475
2007-09-11 21:47:32 +00:00
irrlicht
7b734957d8 removed getVertexPitch() method
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@923 dfc29bdd-3216-0410-991c-e03cc46cb475
2007-09-08 05:06:47 +00:00
hybrid
01c4324747 Added a new constructor for SAnimatedMesh and some cleanup.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@835 dfc29bdd-3216-0410-991c-e03cc46cb475
2007-08-14 00:54:40 +00:00
hybrid
74f1e2e9e3 Enhanced the meshbuffer interface. moved the recalculateBoundingBox from MeshManipulator to IMeshBuffer by exposing the already existing methods. Some initial append methods added.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@833 dfc29bdd-3216-0410-991c-e03cc46cb475
2007-08-13 23:53:12 +00:00
hybrid
981d1d61f2 Derive specialized vertices from the base one to avoid duplicated code.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@828 dfc29bdd-3216-0410-991c-e03cc46cb475
2007-08-09 22:57:48 +00:00
hybrid
9c9beede40 Added texture support for collada meshes. Fixed const parameters in MeshManipulator.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@827 dfc29bdd-3216-0410-991c-e03cc46cb475
2007-08-08 16:30:10 +00:00
hybrid
c4ec0b5289 Fixed Ogre file format check to support new version. Fixed some missing inits. Changed some tests to switch statements.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@679 dfc29bdd-3216-0410-991c-e03cc46cb475
2007-06-02 12:10:39 +00:00
bitplane
c00ce1d372 Moved everything to /trunk
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@643 dfc29bdd-3216-0410-991c-e03cc46cb475
2007-05-20 18:03:49 +00:00