IvyTechEngineer Posted October 9, 2020 Share Posted October 9, 2020 Hello, I have bought some wonderful models in the Second Life Marketplace but now want to build my own models that can be used for our engineering classes. I am just getting started and have created many CAD models using Solidworks and have used Blender to reduce mech count and convert into DAE files. However, my models still have larger than desired Land Impact count. Any suggestions? Thanks IvyEngineer 1 Link to comment Share on other sites More sharing options...
Chic Aeon Posted October 9, 2020 Share Posted October 9, 2020 (edited) Have you made physics models for the buildings? That is very important in SL -- unless of course you don't want the buildings to be walkthrough and they are just for looks. Here is a video that explains. It is older though so the interface won't match if you are using 2.8. The ideas are all still valid. You also need to clean up your file most likely and optimize it for SL before exporting as a DAE. Most folks skip that part and it is important. The other thing may be that you have your lowest LOD set "too high" (that is a relative term and a matter of judgement). If you want to paste in some screenshots, then folks can help you better. Edited October 9, 2020 by Chic Aeon Link to comment Share on other sites More sharing options...
Aquila Kytori Posted October 13, 2020 Share Posted October 13, 2020 (edited) When importing into SL, amongst other things, the mesh uploader calculates 3 values : from the Second Life Knowledge Base https://community.secondlife.com/knowledgebase/english/calculating-land-impact-r273/ Download weight: Calculated by determining how much bandwidth is required to download and view the object. The You can reduce the download weight of complex objects by generating or uploading less complex meshes for differing levels of detail when you upload a model. Physics weight: Calculated by determining the complexity of the object's physics model. You can reduce the complexity of a mesh's physics model by using the analysis and simplification tools in the Upload Model window, by uploading your own less-detailed physics model, or by choosing a different physics shape type, such as Convex Hull, on the Features tab of the Build Tools window. Vehicles must have a physics weight of 32 or lower, but may have higher download or server weights. Server weight: Measures the impact an object has on Second Life's server resources. Objects that are composed of many prims and have physics enabled and/or contain scripts tend to have high server weights. Which ever of these three values is the highest will become the final Land Impact cost. Server cost is always 0.5 . Physics cost should almost always be lower than the Download cost. If it isn't then your physics model is too complicated. To eliminate this value for the moment, create a triangle object in Blender and export it as a .dae file. Then in Step 1 of the Physics panel of the mesh uploader, load up this triangle for physics. If you do need accurate collision surfaces for your model we can discuss that another time, Now that Server and Physics costs have been taken out of the equation that only leaves the Download value to effect the final LI cost. The more complex the model (number of tris and vertices) and the larger the model is the higher will be the Download weight. First work on optimizing to reduce the tri/vertex count to a minimum. You haven't shown an example of the type of model that you are importing into Blender so its difficult to advise more than say remove vertices that are not contributing to the shape of the model and things like cylinders rarely need 32 vertices in circumference. (often 6 vertices are enough for tubes and pipes, I have even seen 4 used on the drainpipes of buildings where the texturing is doing most of the work). Next is to do a test upload and play around with the Level of Detail sliders. By default the lower Level of Detail models are generated automatically but we have the possibility to 1: Upload our own LoD model for each slot and 2: play around with the sliders to see how reducing the triangle/vertex count for each of the lower LoD slots effects the LI / Download cost. For very large models it will be the High or Medium LoD values that have most effect on the LI cost. For smaller models it will be the Low and or Lowest LoD model(s). In the example below, a little engine for an air plane, the models size is (Bounding Box dimensions) approximately 0.9 x 0.7 x 0.8m. (a small object). The default auto Generated triangle/vertices counts for the lower LoD slots give a Download cost of approx. 10.5 : For this particular model I have already decided that I would like the final LI cost to be around 2 or 3 and after a little experimentation, changing the values of each of the lower LoD slots I find that, as expected, the Medium LoD has no effect on the download cost (in fact it can be raised to be the same as the High LoD model) it is the Lowest LoD that has the most effect on reducing the final LI cost. The Low LoD tri count can be raised a little. Noting down the modified triangle count for each of the lower LoDs I can now go back to Blender and create my own lower LoD models. I don't have to do a lot for the Medium model but need to pay attention to the other two. 23 triangles is not a lot to work with for the Lowest LoD but as the engine will be partially hidden by the rest of the air plane it should be doable. If not I can use a few more still come in with a final LI of 3. Note that if your model is going to have a texture applied to it inworld then is a very good idea to have your High LoD model UV unwrapped and have a some sort of texture applied to it in Blender (for example a UV squares texture) so that you can see how the texture is being effected as you reduce your High LoD model to lower LoD models. Vertices on hard edges (flat shading) and vertices on UV island borders are counted twice by the SL mesh uploader and so increase complexity which in turn can increase the Download cost a little. For example compare the vertex count on two cubes, one with smooth shading and the other with flat shading: As Chic has already suggested its always a good idea to add relevant screenshots to these types of questions. Edited October 13, 2020 by Aquila Kytori 1 2 Link to comment Share on other sites More sharing options...
IvyTechEngineer Posted October 14, 2020 Author Share Posted October 14, 2020 Hello, and thanks for the info. I watch the video and it was very helpful. To begin with I while ago I create a model in my CAD program of a BCC crystal unit cell. This model was then saved as an STL - BBC Crystal.stl (5390 triangles) and a physics simple cube was also create BCC Crystal box.stl (12 triangles). When I attempted to upload this model to Second Life I got this info: upload fee 22 Land Impact 268.325 Physics = 0.360 Server = 0.500 I was able to go decimate the model to reduce the poly count to 1345 and the upload count went to 13 and land impact went to 96 but I am not sure what else to try ... Link to comment Share on other sites More sharing options...
Aquila Kytori Posted October 14, 2020 Share Posted October 14, 2020 (edited) To get a download cost of 90 using a similar object to yours ( proximately 2000 triangles ), the model had to be 40 x 40 x 40m ! If your model is not this size then something else is going on. Can you upload your .blend file to this Blender file sharing site so that we can check it out and do our own test uploads? https://pasteall.org/blend/ For reference: When dimensions set to 1 x 1 x 1m, the mesh set to Smooth Shading, UV's zeroed and using default upload settings the result is : Edited October 14, 2020 by Aquila Kytori 2 Link to comment Share on other sites More sharing options...
IvyTechEngineer Posted October 15, 2020 Author Share Posted October 15, 2020 Thank you, my scaling was way off. When I adjusted the scaling I was able to greatly reduce the Land Impact. Not sure where the dimensions got mixed up since the original CAD drawing was 2.27 inches. I wondered if the size of the physical size of the model would impact the Land Impact and that makes sense now. The actual dimension were 57.74 x 57.74 x 57.74 meters! Thank you, this is a big (little) help, lol Link to comment Share on other sites More sharing options...
Aquila Kytori Posted October 15, 2020 Share Posted October 15, 2020 (edited) 1 hour ago, IvyTechEngineer said: Not sure where the dimensions got mixed up since the original CAD drawing was 2.27 inches. This has happened before : https://www.simscale.com/blog/2017/12/nasa-mars-climate-orbiter-metric/ "In September of 1999, after almost 10 months of travel to Mars, the Mars Climate Orbiter burned and broke into pieces. On a day when NASA engineers were expecting to celebrate, the ground reality turned out to be completely different, all because someone failed to use the right units, i.e., the metric units!" Blender by default uses metric units. Have you tried setting your BCC crystal model to use Smooth shading? This may improve the look when rezzed inworld and will also reduce further the download cost. In Blender Object mode with model selected: Open the Object menu and choose the Shade Smooth option. Edited October 15, 2020 by Aquila Kytori 1 Link to comment Share on other sites More sharing options...
ChinRey Posted October 15, 2020 Share Posted October 15, 2020 (edited) 8 hours ago, Aquila Kytori said: Have you tried setting your BCC crystal model to use Smooth shading? This may improve the look when rezzed inworld and will also reduce further the download cost. That's always a good reminder but I assumed the OP wanted a faceted surface here? If not, the answer is very simple: Forget about mesh and make it from nine prims at 5 LI. Edited October 15, 2020 by ChinRey Link to comment Share on other sites More sharing options...
Aquila Kytori Posted October 15, 2020 Share Posted October 15, 2020 2 hours ago, ChinRey said: I assumed the OP wanted a faceted surface here? Google turned up many BCC crystal models and not one was faceted (accept the one provided by IvyTech.) So now your homework for tonight is this https://www.nde-ed.org/EducationResources/CommunityCollege/Materials/Structure/metallic_structures.htm 😜 1 Link to comment Share on other sites More sharing options...
ChinRey Posted October 15, 2020 Share Posted October 15, 2020 (edited) 1 hour ago, Aquila Kytori said: Google turned up many BCC crystal models and not one was faceted (accept the one provided by IvyTech.) Yes, I checked that too but didn't think of it until after I read your post about smooth normals. Well spotted! So, this is how you do it then: Nine prim spheres, one unmodified, the others with pathcut set to 0.25 and dimple to 0.5. Physics shape set to convex hull, land impact 5. The actual saving in load is probably even higher than the LI reduction implies and of course, with prims there is no need to worry about LoD, the viewer sorts that out for you. Unless you actually want faceted surfaces, there is nothing whatsoever to gain and a lot to loose making this particular model with mesh instead so please, don't do mesh for mesh' sake! That being said, it's still a good exercise for learning how to handle curved mesh surfaces so here are a two basic tips Chic and Aquila haven't covered. The first one is decide the curve resolution (that is the number of vertices around a full circle) right at the start. It's very difficult to retopo a smooth regular curved surface later and there's a lot to gain if you can keep the curve resolution to a minimum. I'm only using a single sphere for this illustration. Curve resolutions are (left to right) 12, 16, 20, 24, 32 and 48. The top row have smooth normals, the bottom row flat ones. Tri counts are 120, 224, 360, 528, 960 and 2208: Note how important smooth normals are. Even the 20 res 360 tri smooth sphere looks considerably better than the 48 res 2208 tri flat one. Also note how much even a very small reduction in curve resolution can reduce the tri count considerably. 20 res: 360 tris, 24 res: 528 tris. That's a 32% reduction! Size is important when deciding the curve resolution. Large (like the one in this case) and small objects generally need lower resolution than mid sized ones. The angles caused by lower curve resolution is much less noticeable on a well textured object in an environment than they are on a sterile grid in Blender so you can always reduce a little bit more than you think. The second tip is that you can usually save quite a few tris by reducing the curve resolution towards the poles. Here's the 20 res sphere with every other vertice removed around the top and bottom edge loops: 320 tris - that's an 11% saving compared to the unmodified one. Here's how they look compared to each other. Can you tell which is which? In this case can take it one step further and reduce the curve resolution around the two top and two bottom edge loops: 280 tris - I got rid of almost a quarter of them. Again, which is the 360 tri and which s the 280 tri spehere here? Edited October 15, 2020 by ChinRey 4 1 Link to comment Share on other sites More sharing options...
IvyTechEngineer Posted October 15, 2020 Author Share Posted October 15, 2020 Thanks for your help with my BCC model, both of you had great ideas. My goal is to use models that have much more complex shapes that I have already created in SolidWorks and 3D printed many of them. I also find drawing in SL to be awkward and I am new to Blender, I typically watch 3 to 6 videos on Blender per week. Again, thank you for taking the time to help me and I will review your suggestions. Also, I worked in the space industry for 30 years and a senior designer and remember the crash of the Mars Climate Orbiter. lol. Thanks 1 Link to comment Share on other sites More sharing options...
IvyTechEngineer Posted October 21, 2020 Author Share Posted October 21, 2020 I wanted to share the results of the crystal models that were built using Solidworks and Blender. It looks great and I think I now have a good workflow. Thank you so much for your help... 3 Link to comment Share on other sites More sharing options...
Kyrah Abattoir Posted October 22, 2020 Share Posted October 22, 2020 word of warning, models from CAD software are intented for machining/printing/visualisation. CAD softwares typically don't care about geometry optimization, so it is something you will have to do to bring those models down to something reasonable for a game-grade environment. Complex cuts can generate a lot of trash geometry. Link to comment Share on other sites More sharing options...
IvyTechEngineer Posted October 26, 2020 Author Share Posted October 26, 2020 I am sure the mesh models are not optimized but the land impact and cost are now much smaller than when I started. I am a noob to building in SL but have worked on CAD drawings for a while so this is something else to learn. I am sure many CAD users would be interested in importing STL files into SL for visualization. I am also new to Blender. I am interested in learning more about mesh optimization for gaming. 1 Link to comment Share on other sites More sharing options...
IvyTechEngineer Posted October 28, 2020 Author Share Posted October 28, 2020 Next, I need to figure out how to import a model that has a texture already attached to the model vs adding textures in SL. I think this can be done in Blender but I have not figured out how to do that yet. Link to comment Share on other sites More sharing options...
Wulfie Reanimator Posted October 28, 2020 Share Posted October 28, 2020 6 minutes ago, IvyTechEngineer said: Next, I need to figure out how to import a model that has a texture already attached to the model vs adding textures in SL. I think this can be done in Blender but I have not figured out how to do that yet. The importer in Second Life doesn't support this. You'll have to upload the mesh and texture separately, then add the texture by hand. Link to comment Share on other sites More sharing options...
arton Rotaru Posted October 29, 2020 Share Posted October 29, 2020 (edited) 1 hour ago, Wulfie Reanimator said: The importer in Second Life doesn't support this. Actually, the importer in Second Life does support this. The question is, if Blenders collada exporter does support this still. At least it used to work in old Blender versions. Edited October 29, 2020 by arton Rotaru 1 Link to comment Share on other sites More sharing options...
Aquila Kytori Posted October 29, 2020 Share Posted October 29, 2020 (edited) 15 hours ago, arton Rotaru said: Actually, the importer in Second Life does support this. The question is, if Blenders collada exporter does support this still. At least it used to work in old Blender versions. Still works @IvyTechEngineer The image texture is on the object when rezzed and the actual texture is saved at My Inventory > Textures. It is not clear to me what you are trying to do. 1: Create a 2D image texture of the top surface of your MEMS sensor so that it can be slapped onto the top face of a flattened prim cube. or 2: Upload a 3D mesh model which uses two materials to illustrate how the electrical circuit is etched onto the top surface of the lower Substrate. see screenshot below: or ................ ? Edited October 29, 2020 by Aquila Kytori Link to comment Share on other sites More sharing options...
IvyTechEngineer Posted October 29, 2020 Author Share Posted October 29, 2020 I was trying to use Blender to create a DAE file from the MESH model that included the painted MEMS circuit, but in this case the either version would work. I start with an STL file that is created using a CAD program (Solidworks). Then I import it into Blender to create a DAE file that I could upload into SL. While in Blender I wanted to paint it since the original STL file did not include any texture. Originally I thought that I needed to do something with the Texture Paint in Blender before exporting it to a DAE file. Maybe bake or something else. Currently, I am using Blender 2.90 and the tutorial I have found online seem to talk about features that I cannot find in Blender, i.e. Link to comment Share on other sites More sharing options...
Aquila Kytori Posted October 30, 2020 Share Posted October 30, 2020 I watched the 2.80 hammer tutorial (very good) and only noticed a couple of differences to 2.901. Look Dev mode is now called Material Preview and the Point light now uses Power in Watts. In the Use Nodes panel leave the Strength at 1 and vary the Power with the Watts value. The painting tutorial was using 2.75 ! so completely different now. look for 2.8 paint tutorials. Then you will need a baking tutorial Playing around with SL Shininess gives results like this: You can find noise textures with google (good for car paints ) Link to comment Share on other sites More sharing options...
IvyTechEngineer Posted March 16, 2021 Author Share Posted March 16, 2021 Hello again, I wanted to build something a little bigger this time. The creation of the physics file seem a bit more challenging. Using Solidworks 2020 and Blender 2.9 I have created a building model. Just experimenting with the Physics tab in SL and I sometimes get a MAV_MAX_HULLS_EXCEEDED and where is the secondlife.log? Oh, I found it and it says: Calculating model data. LLFloaterModelPreview::setModelPhysicsFeeErrorStatus(13107200 : ) Is there a good tutorial on creating physics from the model using the model uploader in SL? PS not sure if I did it correctly but I uploaded the Blender file that to PastALL.org, it is called hanging building 2a2.blend https://pasteall.org/media/c/b/cb261859f02f5bab9ca0cdc40f47c9a0.blend Link to comment Share on other sites More sharing options...
Wulfie Reanimator Posted March 16, 2021 Share Posted March 16, 2021 (edited) 2 hours ago, IvyTechEngineer said: Hello again, I wanted to build something a little bigger this time. The creation of the physics file seem a bit more challenging. Using Solidworks 2020 and Blender 2.9 I have created a building model. Just experimenting with the Physics tab in SL and I sometimes get a MAV_MAX_HULLS_EXCEEDED and where is the secondlife.log? Oh, I found it and it says: Calculating model data. LLFloaterModelPreview::setModelPhysicsFeeErrorStatus(13107200 : ) Is there a good tutorial on creating physics from the model using the model uploader in SL? PS not sure if I did it correctly but I uploaded the Blender file that to PastALL.org, it is called hanging building 2a2.blend https://pasteall.org/media/c/b/cb261859f02f5bab9ca0cdc40f47c9a0.blend When you're making physics shapes for complex objects like this one, it's best you don't try to make the physics shape from that model. The point of a physics shape is to approximate the collisions of an object as simply as possible. What I would do (and recommend) is to create a new, separate model from scratch and use as little detail as you can. Here, I made a quick recreation of your model, with multiple floors: And here's the physics version: Many things about the building can be considered unnecessary if there's little to no chance of an avatar trying to walk on it. Note how the hollow cylinder goes all the way from bottom to top, without the extra ridge near the bottom. The floors are flat cubes (or thick planes?), not rounded. The big pyramid-shape serves two purposes: it's a ceiling for the inside, and it approximates the main roof with the four pillars. There are no windows in the physics model, as you're not meant to walk through them. (Doors are a different hurdle, but not very complicated either.) The two big cubes on the sides are not connected to the main building. With the object scale at about 33x51x64, the physics cost of the building is 2.920, not even 3 LI. Edit: I just realized you linked your Blend file. Oops. I made a physics shape for the first floor based on your model. It consists of 7 separate hulls (joined as a single object before exporting), with a physics cost of 1.720. This includes the stairs for upper-floor access. Here's your blendfile: http://puu.sh/HpNiz/e6c33006cd.blend Edited March 16, 2021 by Wulfie Reanimator 1 Link to comment Share on other sites More sharing options...
Aquila Kytori Posted March 16, 2021 Share Posted March 16, 2021 (edited) There are three rules you should comply with when creating a physics model for something like this. Each visual object has its own physics model. Here you only have one object (at the moment*), so the Physics will also be one object. The Bounding Box (X, Y and Z) dimensions of the physics model must match the Bounding Box dimensions of the visual model. If different then the SL mesh uploader with stretch or squish it to match. This would result in misaligned collision surfaces. KEEP IT SIMPLE ! The mesh uploader (Mav) will smile on you if she finds the physics model is mostly composed of large planes/triangles. She will not be happy to find small thin triangles. In general, the larger the average quad/tri size in the physics model the LOWER will be the Physics cost. When Uploading, in Step1 of the Physics tab of the mesh uploader, load up your Physics model. Do not be tempted to touch any of the other Physics options. When rezzed you will need to open the Edit floater and in the Features tab change the Physics Shape Type from the default Convex Hull to Prim. BTW just a little warning. You have chosen a very ampt name for your building, because with such a large object comprising of so many triangles (even using Wulfie's extremely simplified physics model) the Uploader will hang you ! Expect minimum download costs to be 300 or more. * Ideally you should remodel your mesh. Separate it into smaller objects. Cut down on the bevel segments and generally reduce geometry where ever possible. For example the geometry in the curved railing on the top floor and the amount of tris in the big roof cones. Needs a general clean up. Also when separating think about separating inside parts from outside. Outside needs good LoDs that can be seen from a distance, inside parts will only be seen from a very short distance. Spending time doing this will greatly reduce the final LI cost. Check out Wulfie's reply with Drongle's graphs here : For test, try separating the spiral stairs into a separate object then use this earlier post as guide for creating the collision model for them: Do a test upload and change Physics shape type to prim. If costs and collision surfaces appear correct then move onto another part of the building Just a note. If you decide to separate your building into separate objects and would like to upload these parts as anything other than a single object at a time then you will need to comply with a strict naming convention for the objects names in Blender (names in the Outliner). Quote from above link : Uploading your own LOD files You may upload your own simplified models by choosing Load from file from the Source dropdown menus. You may wish to create your own lower-detail models in order to preserve critical details that may be lost during the automatic simplification process. The mesh uploader uses very strict naming rules for these custom LOD files: File names ending with "_LOD2" must be used for Medium level of detail File names ending with "_LOD1" must be used for Low level of detail File names ending with "_LOD0" must be used for Lowest level of detail File names ending with "_PHYS" must be used for the model's physics shape " Without the suffixes added to the names the uploader will not know which Physics (or lower Lod) model is to be used with which visual model. Edited March 17, 2021 by Aquila Kytori Link to comment Share on other sites More sharing options...
Wulfie Reanimator Posted March 17, 2021 Share Posted March 17, 2021 4 minutes ago, Aquila Kytori said: BTW just a little warning. You have chosen a very ampt name for your building, because with such a large object comprising of so many triangles (even using Wulfie's extremely simplified physics model) the Uploader will hang you ! Expect minimum download costs to be 300 or more. I did not mention this but yes, the download cost of my original model (with auto-generated LODs) was almost 90. I would definitely not accept the model as it was. Link to comment Share on other sites More sharing options...
Aquila Kytori Posted March 17, 2021 Share Posted March 17, 2021 Just had a look and for Ivy's model as it is now; the Li cost is 603 with default auto-generated Lods and 466 with all lower Lods zeroed out. Ivy I think you should be aiming for something less than 100 when separated. Link to comment Share on other sites More sharing options...
Recommended Posts
Please take a moment to consider if this thread is worth bumping.
Please sign in to comment
You will be able to leave a comment after signing in
Sign In Now