Commit Graph

225 Commits (bb7a755cba628a24bb339ed0aa974ac0ee5503d1)

Author SHA1 Message Date
Dahlia Trimble 71660003de un-double-flipped some double-flipped normals in circular path prim end caps 2008-10-24 20:04:34 +00:00
Dahlia Trimble a11fa9055a Fixed a floating point error accumulation that was causing missing end faces on some twisted prims 2008-10-24 05:31:43 +00:00
Dahlia Trimble 931b04485d More work in vertex normals and texture UVs. Syncing code with pyov. 2008-10-21 01:35:05 +00:00
Justin Clarke Casey 923f9fb749 * minor: remove mono warnings 2008-10-19 18:45:41 +00:00
Dahlia Trimble b6396bc9a7 More progress towards implementing vertex normals - not complete yet. 2008-10-19 09:04:25 +00:00
Justin Clarke Casey 98245e4bfa * minor: Oh go on, one more warning. Oooh, you are naughty 2008-10-15 20:46:39 +00:00
Justin Clarke Casey b1248004f0 * minor: remove some warnings 2008-10-15 17:19:02 +00:00
Dahlia Trimble 138a3924e0 Committing more work towards implementing vertex normals. Also added some (hopefully) helpful messages for identifying corrupt prims and some fixup code for corrupt profile cut data. 2008-10-13 22:52:39 +00:00
Dahlia Trimble f2700590d7 removed some more extraneous hidden faces 2008-10-12 09:36:01 +00:00
Dahlia Trimble 116a08f42e Fixed a missing face on a profile cut 2008-10-12 08:52:42 +00:00
Dahlia Trimble 216787ee1d Optimization: calculation of profile vertex normals is now disabled as default. 2008-10-12 07:04:52 +00:00
Dahlia Trimble 09c8713801 Eliminate some unnecessary polygons 2008-10-11 00:30:27 +00:00
Justin Clarke Casey dd886a035b * minor: remove warnings 2008-10-10 21:05:44 +00:00
Dahlia Trimble 62f3e11b4e Some more decrufting 2008-10-10 09:16:36 +00:00
Dahlia Trimble 726e0045d9 Some decrufting 2008-10-10 09:00:52 +00:00
Dahlia Trimble 7fbe942792 refactoring PrimMesher to add viewer compatable features and some code cleanup 2008-10-10 08:22:13 +00:00
Dahlia Trimble 979a354ba0 Cap proxy mesh scale minimum to 0.01 meter for X, Y, and Z terms. 2008-10-04 17:39:03 +00:00
Dahlia Trimble cf9835130a Square hollow size in cylinder meshes were a little too small - fixed. 2008-10-02 02:33:45 +00:00
Dahlia Trimble e6afb28355 re-enabled some ODE internal proxies for some simple prim types to try to save some more memory 2008-09-19 09:13:27 +00:00
Justin Clarke Casey 8ff1bc5b03 * Make the ode simulation update loop print out the stack if an exception occurs (at least, this is what will happen on linux) 2008-09-18 18:54:42 +00:00
Jeff Ames b4141f9e56 Formatting cleanup. 2008-09-13 22:07:07 +00:00
Dahlia Trimble 8a8b01d1b8 Circular path prim meshes are now joined where the path ends meet if they match. This may have a minor improvement in memory and speed performance, but it's mainly for viewer applications and it also syncs the c# version of PrimMesher with my python sandbox version. 2008-09-13 10:22:17 +00:00
Justin Clarke Casey 0dc1018ca1 * minor: Remove warnings
* leaving in the ones to do with ScriptBase since these actually indicate coding bugs that I don't have the time/brainpower to fix at the moment
2008-09-12 21:20:24 +00:00
Dahlia Trimble febb781779 remove hidden faces inside prim meshes to improve memory use and startup time 2008-09-12 19:42:26 +00:00
Jeff Ames fae34bb10c Update svn properties, formatting cleanup. 2008-09-09 01:26:48 +00:00
Teravus Ovares 7d89e12293 * This is the fabled LibOMV update with all of the libOMV types from JHurliman
* This is a HUGE OMG update and will definitely have unknown side effects.. so this is really only for the strong hearted at this point.  Regular people should let the dust settle.
* This has been tested to work with most basic functions. However..   make sure you back up 'everything' before using this.  It's that big!  
* Essentially we're back at square 1 in the testing phase..  so lets identify things that broke.
2008-09-06 07:52:41 +00:00
Dahlia Trimble 0fc618e7b2 Replaced a lot of trig calls with lookup tables for common prim types in an attempt to improve meshing speed.
Added a new between points interpolation method to improve accuracy of profile cuts in triangle and square profile prims.
2008-09-05 16:38:51 +00:00
Dr Scofield 109aa00150 fix: PostInitialise() not being called on script engines (nasty one that)
cleanup: warnings, readability
2008-09-02 12:07:23 +00:00
Dahlia Trimble a5e7807612 Y top shear accuracy improvements in circular path prim meshes 2008-09-02 01:54:08 +00:00
Dahlia Trimble f4035840d2 compensates profile placement effects of Y hole size on X top shear for circular path prim meshes 2008-09-01 08:19:47 +00:00
Dahlia Trimble 9cf9c08696 Improvement in mesh accuracy in X Top Shear parameter for circular path prims 2008-09-01 06:00:07 +00:00
Justin Clarke Casey 49ec6dd882 * squash some obvious warnings
* a couple more remain that preferably the original coders should look at in more detail (obsolete warnings in the ogp module and not overriding warnings in the script 
engine)
2008-08-30 18:09:38 +00:00
Dahlia Trimble 35ad484b6b fixed some ugliness in the conversion from the new mesher format to the old that should speed up region startup a little and maybe even use less memory if the GC decides to play friendly with the other kids. 2008-08-29 08:19:47 +00:00
Jeff Ames 3bf8858727 Update svn properties, formatting cleanup. 2008-08-28 14:41:54 +00:00
Dahlia Trimble 49f9bd8b68 Added some exceptions for bad profile cut parameters 2008-08-28 06:41:32 +00:00
Dahlia Trimble 1a83384f90 re-enable new PrimMesher module for mesh creation for standard (non-flexy) prims. 2008-08-27 23:43:53 +00:00
Dahlia Trimble e593a333c7 adds releaseSourceMeshData() method to IMesh and Mesh for freeing mesh data after conversion to pinned lists. 2008-08-27 23:37:14 +00:00
Dahlia Trimble 36d1720fde reverting to prior meshing methods until some physics timing issues can be resolved 2008-08-27 09:49:13 +00:00
Dahlia Trimble 65c82c2494 Added some exception trapping to PrimMesher 2008-08-27 08:03:52 +00:00
Dahlia Trimble cf951d4d04 Added some exception handling to help catch some possibly corrupt prims 2008-08-27 07:30:14 +00:00
Dahlia Trimble 3481a977f0 Meshmerizer now uses new PrimMesher class for meshing all standard (non-sculpty) prims. This should result in more accurate meshes, lower memory consumption, and eliminate several lockup modes. 2008-08-27 06:53:09 +00:00
Dahlia Trimble 8be249bc68 Completion of new PrimMesher class 2008-08-27 06:39:39 +00:00
Dahlia Trimble fce83731ad Modified Mesh object to allow alternative mesher interfacing 2008-08-27 06:29:34 +00:00
Dahlia Trimble 29407a43f5 more progress on new meshing routines 2008-08-24 01:23:04 +00:00
Dahlia Trimble 72f74acdbf more work on new meshing routines... 2008-08-23 10:28:35 +00:00
Dahlia Trimble df14889635 some initial work on new prim meshing routines (incomplete) 2008-08-23 08:33:00 +00:00
Dahlia Trimble 0f6b899ec7 Cleaned up some warnings 2008-08-22 07:25:53 +00:00
Dahlia Trimble 261876fd47 Commented out the float array "normals" in the Mesh object and all references to save memory as it was unused 2008-08-22 07:06:33 +00:00
Jeff Ames 6ef9d4da90 Formatting cleanup. 2008-08-18 00:39:10 +00:00
Dahlia Trimble 1bf60fa1ac updated some prim parameters to project maintained versions 2008-08-14 08:59:13 +00:00
Dahlia Trimble 88fba448a1 reinstates torus profile zflip which was mistakenly removed in patch 1870 2008-08-01 05:48:24 +00:00
Dahlia Trimble 1d3677eb9b Thank you jhurliman for a meshmerizer patch that replaces the quaternion->matrix->vertex*matrix->vertex code with a direct transformation. 2008-08-01 05:45:58 +00:00
Dahlia Trimble 492b25362c Clean up Meshmerizer.cs a bit to make it more readable 2008-07-21 23:08:23 +00:00
Dahlia Trimble 13399ff439 Passes prim physical status to mesher from physics plugins
Small prims now get a full mesh if they are physical
Fixed a logic bug that was preventing many prim meshes from having excess memory cleaned up
Switched to more conservative method of vertex and triangle list trimming to prevent possible crash
2008-07-12 01:58:20 +00:00
Dahlia Trimble f6c7f167b9 Overloads CreateMesh method of interface IMesher to pass prim physical status to mesher 2008-07-12 01:02:41 +00:00
Dahlia Trimble b42770bf7a Trim out nulls from mesh vertex and triangle lists to try and save more memory 2008-07-11 20:32:58 +00:00
Dahlia Trimble 3646cc32c4 Experimental physics optimization: prims with all 3 dimensions less than 0.2 meters will be meshed as a simple box 2008-07-11 17:22:37 +00:00
Dahlia Trimble c5333af7a2 added a hollow size constraint to box, cylinder, and prism prim meshes to prevent a possible sim lockup 2008-07-07 10:09:35 +00:00
Dahlia Trimble 56c6bdcb26 Addresses more problem box cut angles 2008-07-07 05:42:37 +00:00
Dahlia Trimble 063365c0dc fix some Meshmerizer problem angles for sphere dimple and box path cut 2008-07-07 04:32:05 +00:00
Dahlia Trimble 6914fb6f13 disables changes in r5356 until I have more time to do further characterization 2008-07-06 19:44:59 +00:00
Dahlia Trimble ae468bfc9b Corrects errors in sphere mesh with dimple start angle > 0 and hollow == 0 2008-07-06 17:18:59 +00:00
Dahlia Trimble fd69251bcd alters a problem path cut angle for the cylinder prim profile 2008-07-06 02:04:24 +00:00
Dahlia Trimble 13d6615263 Adds experimental Meshmerizer support for "prim torture" effects of sphere dimple on prim types box, cylinder, and prism 2008-07-02 17:08:52 +00:00
Dr Scofield 313f7f60fd properly explaining each #pragma warning disable
massaging OSHttpRequestPump to not abort on exceptions...
2008-06-30 11:57:47 +00:00
Dahlia Trimble b0287a43bd disables spam-like debugging messages inadvertently left on in last commit (oops) 2008-06-30 06:11:43 +00:00
Dahlia Trimble 7077cffe52 Corrects Meshmerizer orientation of profile cut angles for ring type prim 2008-06-30 06:08:43 +00:00
Dahlia Trimble a944ef4947 Corrects meshmerizer profile cut angle orientation for tube type prims 2008-06-30 02:08:27 +00:00
Dahlia Trimble 0260b33517 Altered prim description/debugging message code to be more warning friendly 2008-06-28 18:04:04 +00:00
Charles Krinke c06dbf4fe5 Mantis#1620. Applied Melanie's patch 2008-06-28 16:13:11 +00:00
Dahlia Trimble 8b8b45267e altered prior warning fix to Meshmerizer.cs to allow mesh debugging code to function 2008-06-28 00:16:41 +00:00
Dr Scofield 748f72326d last round of warning squashing. calling it a day now. 2008-06-27 23:03:39 +00:00
Dr Scofield 7d55dfba8a dr scofield's warnings safari:
* commenting out unused variables
2008-06-27 17:25:03 +00:00
Jeff Ames a2b1a1787d Minor formatting cleanup. 2008-06-25 14:30:28 +00:00
Dahlia Trimble bc66a851d6 Modifies box prim profile cut parameters to avoid angles which cause spurious triangles in mesh 2008-06-25 07:17:36 +00:00
Dahlia Trimble 7b4991430b Changes selection criteria to allow meshing of more sphere prim configurations.
Adds comments to some functions in Meshmerizer.cs.
2008-06-21 08:50:56 +00:00
Teravus Ovares 1d91613679 * Patch from Dahlia - 0001576: Exception of type 'System.OutOfMemoryException' was thrown .Void set_Capacity(Int32), with regards to sphere mesh. Thanks Dahlia!
* Also allows a sphere to be hollow with no cuts or dimples. (walking around inside the sphere).
2008-06-19 17:21:17 +00:00
Teravus Ovares e6ce30d4f1 * 0001571: (PATCH) patch to implement editable sphere meshes for meshmerizer/ode (Initial Implementation) from Dahlia! Thanks Dahlia!!!
* The included patch implements the editor parameters twist, dimple, path cut, and profile cut to the sphere mesh for meshmerizer. The mesh will default back to the geodesic sphere if the parameters are adjusted to beyond a reasonable arbitrarily chosen threshold that would expose too many inverted normals on the mesh.
2008-06-19 04:17:04 +00:00
Teravus Ovares 11d68ce0f5 * 0001558: [PATCH] Add support for full collision geometry feature set for linear path prims (patch attached) By Dahlia. Thanks Dahlia!
* This update re-does the cube/cylinder/prism prims to dynamically add faces as twist is used.
2008-06-15 19:34:48 +00:00
Teravus Ovares 99e7a2a380 * From Dahlia
* Committing : 0001449: Patch implements X and Y Top Shear parameters for torus prim physical mesh generation (PATCH attached) 
* The included patch implements the X and Y Top Shear parameter adjustments to the mesh generator for the torus prim physical mesh. These are approximations as I was unable to determine their exact function but they appear to generate meshes which quite closely duplicate their counterparts in the viewer. 
* Thanks Dahlia!!!!
2008-06-04 10:57:05 +00:00
Jeff Ames 4ec4e16c80 Formatting cleanup, minor refactoring, svn properties. 2008-06-04 09:59:27 +00:00
Teravus Ovares 832d609b44 PATCH : 0001431: corrections to torus physical mesh for default hollow shape and taper orientation along path.
--------- From Dahlia!  Thanks Dahlia!!!
the attached patch reinstates the default hollow shape of the physics mesh of the torus prim type and corrects the orientation of the effects of taper on the profile along the path.
2008-06-02 08:31:34 +00:00
Teravus Ovares 52c55c8c23 * Applying Dahlia's patch : 0001429: Patch to fix prism physical mesh and add path start and end to skew z offset of circular path prim meshes (PATCH attached)
* Apparently this fixed a bug in my code that caused PushX to appear to work and pushX didn't appear to work after the patch..   so I fixed that after applying this patch and PushX actually works now.
2008-06-01 04:33:07 +00:00
Jeff Ames 0462510956 Update svn properties. Formatting cleanup. 2008-05-30 08:35:57 +00:00
Teravus Ovares 45c6523904 * Fixes a few taper/top-sheer situations that were previously having issues. 2008-05-29 20:50:38 +00:00
Teravus Ovares 918f887c0c * Applying Dahlia's interim path curve patch. it adds initial support for some tori/ring parameters. Thanks Dahlia!
* Some situations do not match the client's render of the tori, we know and are working on it.   This is an initial support patch, so expect it to not be exact.
* Some tapers are acting slightly odd.  Will fix.
2008-05-29 20:20:50 +00:00
Teravus Ovares c29409dc24 * Yet another way to optimize the sculpt mesh generator 2008-05-25 02:56:00 +00:00
Teravus Ovares f57cb17494 * kill a potentially large float array. 2008-05-25 02:50:17 +00:00
Teravus Ovares d3b013be1c * Releases Pinned vertex/index list in ODE on next mesh request. 2008-05-25 02:39:58 +00:00
Teravus Ovares bdcfc2e322 * Prevent an error from stopping startup when decoding the sculpt mesh j2k fails. 2008-05-22 02:40:19 +00:00
Teravus Ovares 00a1f0bab0 * This finishes the ODE options section of the OpenSim.ini.example. I've added 44 configurable options!
* This includes if you want to mesh sculpties and the Level of detail on the sculptie meshing for non physical and a separate LOD on physical sculpties.
* The options range from gravity..  to avatar movement speed, to friction management..  to object density.. to update throttling.
2008-05-16 20:16:33 +00:00
Jeff Ames 65c5efe43b Formatting cleanup. 2008-05-16 01:22:11 +00:00
Jeff Ames 6a1b787436 More formatting cleanup. 2008-05-14 05:33:32 +00:00
Jeff Ames c995d60d37 Formatting cleanup. 2008-05-14 05:11:23 +00:00
Teravus Ovares fcc23be577 * Fixed directory not found when saving Mesh previews (my bad, I was testing) 2008-05-13 05:06:58 +00:00
Teravus Ovares e70da2e174 * Committing meshmerizer patch from Dahlia. Thanks Dahlia!
* 0001241: physics cylinder proxy distorted and square hollow misaligned (patch attached) 
* The included patch corrects the outer shell of the meshmerizer proxy for the cylinder prim to eliminate spurious vertices and shape distortion, and corrects the orientation of the square hollow.
* The size and orientation of the square hollow for the prism prim has been corrected also.
2008-05-13 04:16:16 +00:00
Teravus Ovares b7baa3cd2a * Valid Sculpted prim now collide properly.
* The first time you set the sculpted texture of a prim you might have to futz with it to get it to generate a sculpted physics proxy
* Note that there are already issues in Trunk, (such as the prim scaling issue and prim jumping issue.  Essentially editing is difficult right now)
* This just adds to the experimental nature of trunk. :D
2008-05-09 07:50:00 +00:00
Teravus Ovares 6bb4ab0563 * Applying Dahlia's Triangular hole in a cube peg patch. Fixes the hollow orientation in a cube in the meshmerizer. Thanks Dahlia!
* See mantis 0001203 for more details!
2008-05-09 02:00:55 +00:00
Teravus Ovares 7e275bfa37 * Wrote a method to get the OpenJpeg data of a sculpt texture asset and save it to the prim shape.
* Added some stuff around sculpted prim meshes..   but it's just there so the project compiles now.
2008-05-09 01:28:54 +00:00
Adam Frisby fef3b36894 * Optimised using statements and namespace references across entire project (this took a while to run). 2008-04-21 07:09:17 +00:00
Teravus Ovares b85624db18 * Adds twist support for Cubes, Cylinders, and Prisms in the Meshmerizer
* A tweak of the SimStatsReporter so it would report the prim capacity to be 45000.
2008-04-10 00:31:44 +00:00
Teravus Ovares 95e31c9f02 * Added stretchable ellipsoid support with configurable LOD. It's actually a split facet icosahedral geodesic sphere that's scaled.
* In other words, you can stretch spheres into oblong shapes now and watch them roll around like a football would.
* Still can't cut, twist or profile cut spheres yet.
2008-04-08 05:03:43 +00:00
Teravus Ovares d0f7784101 * Adds poor support for ellipsis in the Meshmerizer. This will get better.. notice the huge nasty facets! Regular spheres still work as they did. 2008-04-08 01:29:45 +00:00
Teravus Ovares e409892a9c * Updated ODE.NET bindings to the ODE library.
* Fixed some Tapers with Cylinders in the Meshmerizer
2008-04-07 22:11:41 +00:00
Jeff Ames 9d1b42c39a Comment out unused private methods. 2008-03-25 03:49:08 +00:00
Jeff Ames 47180080f0 Formatting cleanup. 2008-03-18 05:16:43 +00:00
Teravus Ovares 0cb4e401ad * Killed 4 more warnings (at 16 now) 2008-03-06 09:41:34 +00:00
Jeff Ames a8cfbbe963 Minor cleanup. 2008-02-20 18:38:20 +00:00
Teravus Ovares cfc9ee4265 * Adds limited support for each hollow type for the supported prim., Cube with a triangle hollow, Cube with a cylinder hollow, cylinder with a triangle hollow, etc.
* More work needs to be done here as several of the profileshape/hollow combinations are rotationally offset from where they render in the client.
2008-02-19 16:01:14 +00:00
Teravus Ovares 62f608b152 *rawfile fix. 2008-02-19 08:57:43 +00:00
Teravus Ovares e789a6bc9b * This patch adds Prism support to the Meshmerizer. Prism is one of the object types in the drop down on the object tab. Positive tapers are slightly incorrect(prim sinks into ground a tiny bit). Everything else that's supported works as expected. Hollow, cut, negative tapers, top shear. 2008-02-19 08:49:38 +00:00
Teravus Ovares e3a711536b * ODE - This fixes a few things and breaks a few more. 2008-02-14 01:57:19 +00:00
Jeff Ames e207284fef Clean up logging calls using String.Format explicitly 2008-02-10 01:57:59 +00:00
Teravus Ovares c9b5516ca8 * Adds Top Shear support to the Meshmerizer for the Cube prim and the Cylinder prim. 2008-02-09 05:18:52 +00:00
Teravus Ovares fadf5b479f * Added Taper support to the Meshmerizer for Cube and Cylinder.
* Removed the hull verbosity
2008-02-08 23:28:38 +00:00
Teravus Ovares b63c267f0b * Finished Cylinder in the Meshmerizer. Hollow and Path cut work for it now. Enjoy the new physics-friendly prim type. 2008-02-08 22:11:28 +00:00
Teravus Ovares 3be2e772ec * Removed a statement that crashes the Meshmerizer if you don't have a specific /dev/ folder 2008-02-08 12:07:39 +00:00
Teravus Ovares 7d77fa6a9d * Okay, fixed the path cut offset, however the inner wall isn't properly 'cut' from the hull, so slightly better support, but still limited. 2008-02-08 11:44:27 +00:00
Teravus Ovares 50acb8e634 * This update adds limited support for Cylinder meshed prim in the Meshmerizer plugin. (Limited because path cut is wrongly offset and while Hollowing works, you can walk through the inside wall.) 2008-02-08 11:32:56 +00:00
Jeff Ames 6ed5283bc0 Converted logging to use log4net.
Changed LogBase to ConsoleBase, which handles console I/O.
This is mostly an in-place conversion, so lots of refactoring can still be done.
2008-02-05 19:44:27 +00:00
Adam Frisby b25f9f322c * Mother of all commits:
* Cleaned up copyright notices in AssemblyInfo.cs's
* Added Copyright headers to a bunch of files missing them
* Replaced several common string instances with a static constant to prevent reallocation of the same strings thousands of times. "" -> String.Empty is the first such candidate.
2008-01-15 02:09:55 +00:00
lbsa71 efd90b56b7 * Optimized usings
* shortened references
* Removed redundant 'this'
* Normalized EOF
2007-12-27 21:41:48 +00:00
Jeff Ames 712efda9b9 added copyright notices 2007-12-11 01:26:06 +00:00
Jeff Ames db174dfa20 set svn:eol-style 2007-11-11 09:19:21 +00:00
Teravus Ovares cb07ba0d68 * Moves the Meshmerizer to a separate plugin
* Experimental.   Linux Prebuild needs testing.
* One more update after this to remove the ODEMeshing directory....
2007-11-10 19:13:52 +00:00