Jump to content

Aquila Kytori

Resident
  • Posts

    1,208
  • Joined

  • Last visited

Everything posted by Aquila Kytori

  1. If you find that the Physics cost when Physics Shape type is set to Prim is higher than the Download cost then I would suggest you try the Planes method A quick guide for the cost of the box method is, every box you used to create your physics model will have a physics cost of 0.36. Compare the different Physics costs of the two methods in the "Can't rezz on mesh" thread I linked to in my previous post. (Box : 8 x 036 = 2.88 Planes : = 0.583 ).
  2. If you uploaded any custom lower LoD models then they can be saved as well :
  3. Yay Chic has already done the heavy lifting I'll only add a couple of screenshots. As Chic says lets keep this one simple. We are assuming that all you want to do at this stage is, when rezzed inworld apply seamless textures to the appropriate faces of the house. All that you need to do is, in Blender, select faces of the model and assign them a material and you are ready go. In the example below I have laid out the UV's approximately the same as you have yours. The first material we assign to the model will automatically be applied (assigned) to all the faces of the model. Below I have added a new material and named it Wall_Outside. In the Shader editor I added a new Image texture and loaded up my seamless tileable Wall_Outside image texture. The scaling is probably not correct at the moment but this is easily fixed by either scaling up the UVs in Blender before exporting and or selecting by material face inworld and adjusting the Vertical and Horizontal scaling in the Texture tab of the build floater. Next we add a couple more materials and select faces and Assign them. We can scale up the UV islands in blender : or leave as is and scale up inworld. Thats it ! Don't be afraid to experiment. You don't even need to load up the seamless image textures to the Shader editor in Blender. Just add the number of materials you need and assign them to the appropriate faces. Select your model > export it and bring it into SL as is then apply your seamless textures there. Once you have that done then go back to Blender and try loading up image textures for each material. You can buy seamless textures inworld, from the SL market place, create your own or search the internet for CC0 seamless textures. For example this one : https://cc0-textures.com/c/wood There are different ways to layout the UV's depending on how we intend to use them. As Chic has hinted if we were going to bake out textures in Blender then they would be layed out quite differently. but yours are just fine for the moment. Yes up to 8 materials assigned to a mesh for SL and each of those materials can be assigned its own image texture if needed. In the example above 3 materials for 3 seamless image textures. The UV's could also be stacked by material one above the other. or in the example below 4 materials on 3 different UV layers:
  4. Hi, Sounds like something is not quite right. We will need a little more information to find out what exactly. Can you post a screenshot of the complete Blender window with your model in edit mode ( including Outliner and Modifer panels if any ). After exporting to Collada what size is your .dae file? A screenshot of the SL mesh uploader would probably be useful as well. In the SL mesh uploader does it indicate any errors like "Missing required level of detail"? If so can you open the Log tab of the uploader and post a screenshot of that .
  5. I expect Chic is still in the land of nod ...... zzzzzzzzzzzzz if you don't have the Prim option it means that when uploading your visual model you didn't have anything loaded up in the Physics slot of the uploader. A quick run through of the workflow hoping you will see which part you are perhaps missing : We have our 2 models, (separate objects in Blender), our Visual model and our Physics model. In Blenders Outliner panel we name our visual model Building and our physics model Building_PHYS . When ready to export from Blender we select the visual model > File > Export > Collada .dae and in the Collada export panel we choose the sl + open sim static preset, give it a name and hit the Export Collada button. Repeat for the physics model, give it the same name and add the suffix _PHYS. In our example we now have the two files Build.dae and Build_PHYS.dae This _PHYS suffix will be used by the SL mesh uploader to automatically place the physics model in the physics slot of the uploader. In SL, when uploading select the visual models.dae file (in our case the Build.dae file) : and if we now open the Physics tab of the mesh uploader we will find that the Build_PHYS file has been automatically loaded into the physics slot for us. (If for some reason in Step1: Pick a physics model the slot is empty, then open the Choose one... drop-down and select From file > Browse... and select the physics .dae file manually.) Because we are using "cube " physics model we hit we hit that Analyze button and we should then see the number of Hulls that the uploader created for collision surfaces. If this number seems correct (approx. the same number of hulls as we had boxes in Blender ) we can Calculate Weights and Fees and complete the upload. When rezzed change the the Physics Shape Type to Prim. There are 3 rules that you should comply with when creating a physics model: Each Visual model has its own physics model. The Bounding Box X Y Z dimensions of the physics model must match the BB dimensions of the visual model. Keep it simple. If the physics model is not aligned to the visual model then check that you are complying to rules 1 and 2. If your visual model is single object in blender then the physics model must also be a single object. If your visual model comprises of two separate objects then each of those objects will have their own physics model. If the Bounding Box dimensions of the Physics model are not the same as the BB dimensions of the visual model then the physics model will be stretched or squished to fit the BB of the visual model, causing it to be misaligned. A little more on physics, Planes and Box type , For buildings, Planes type usually has a lower Physics cost............ just saying If later on you are needing to upload linksets of objects then check out this earlier post
  6. As already mentioned, the minimum Bounding Box dimensions of a mesh object is 10 x 10 x 10mm. Some of the usual work-arounds are : Before exporting, simply increase the Bounding Box dimensions by rotating the object, see post in this earlier thread : Use a collapsed triangle to increase BB size, see Wulfie's post in the same thread : https://community.secondlife.com/forums/topic/492125-how-to-make-thin-mesh/#comment-2520237 Use a single vertex to increase BB dimension : https://community.secondlife.com/forums/topic/443860-how-to-level-small-objects/#comment-1985929 Before exporting, increase the size of the BB by joining the very thin object to a second object.
  7. @DulceDiva I think I have the gem deformation sorted In the above example, after applying the Geometry Node modifier the vertex weight groups were transferred from the avatar to the mesh with the gems. This resulted in the gems deforming when bones were rotated because each vertex of a gem had slightly different weights than the underlying vertex of the base mesh. We corrected one gem by copying the vertex weights of the underlying vertex to all the vertices of the gem. We can use this fix to correct all the gems if, instead of transferring the weights from the avatar mesh, we transfer the weights from a rigged copy of the base mesh before adding the geo nodes. The rigged base mesh: In Object mode make a copy of this mesh (Shft D) and use this copy to add the gems with the geometry nodes : Apply the Geometry node modifier. To transfer the weights: Object mode. In the Outliner select first the object with the gems, then shift select the rigged object without gems. (The rigged object should be highlighted in dark orange and the object with gems highlighted in a lighter orange colour). Weight paint mode. From the Weights drop-down menu choose the Transfer Weights option. In the Transfer Weights Data pop-up, Vertex Mapping should be set to Nearest Vertex and Source Layers Selection set to By Name. and we are done
  8. See screen shot below: Then with an added "vertex group" input. This uses a vertex group to limit which vertices have instances on them. See this video for how to control which vertices have the instances using a vertex group :
  9. The Distance Min value is in meters, so when, as in your screenshot it is set to 2.000 it means the minimum distance between instances is 2 meters ! With a minimum distance between instances set to 2 meters your clothing item is just too small to have more than one instance
  10. I was curious about your other post using geometry nodes to scatter instances of objects over the surface of a mesh so had to try it and then see if the distortions could be fixed. I don't have much experience with skinning and weight painting but my guess is the problem with the deforming gems is because the vertices that make up each gem have different vertex weights assigned to them. If each of those vertices were assigned the same vertex weights as the weights assigned to the nearest vertex on the item of clothing (base mesh) then perhaps you would see less distortion. In the example below, I didn't use random scattering but instead aligned an instance of a gem to each vertex of the underlying mesh (just a band to go around the waist of an avatar). Then transferred the weights from an avatar to the band with the gems. In this example I was only concerned with one of the gems, the red gem in the images below: Take look at the vertex weights of the vertex from the base mesh beneath the red gem and compare them to the weights of the vertices that make up the gem. In the gif below the first vertex selected is from the base mesh immediately below the gem then the red gems vertices are selected one by one: Next we copy the vertex weights from this vertex below the red gem and paste them to all the vertices that make up the red gem. To do this, in edit mode we first select all the vertices of the red gem and then Shift select the vertex below the gem (this makes the vertex from the underlying mesh the the active vertex (last selected and highlighted in white). Then go to the N panel > Item > Vertex Weights and hit the Copy button. This will copy from the acitve vertex to the selected vertices (the gem vertices). see gif below: Now all the vertices of the red gem have the same vertex weights (and groups) as its closest base mesh vertex. When the mTorso bone is rotated the red gem does not deform: Note that the red gem does appear to be a little smaller now, no idea why that is For your random scattering of gems I guess you would have to select the closest vertex to the distorted gem each time. With so many gems to "fix" this method may not be of any use but I learnt a little more about geometry nodes and vertex weights and it kept me occupied for a couple of hours
  11. I don't think that is quite correct, so I did a test upload of a very simple one room model: and in the uploader I left the "Pick a Physics model" option blank. The uploader didn't add a physics model so that when rezzed, there was no Prim option in the Physics Shape Type drop-down. If you don't use the Analyze button then anything Step2: will have no effect on the Non Analyzed model. The Surface or Solid options only apply when we are going to Analyze the Physics model. If we create a Triangle/Planes type physics model designed not to be analyzed in the Uploader: and assign it in Step1: of the Physics tab of the uploader, we want the Uploader to do nothing to our physics model so that the collision surfaces will be exactly as we designed them to be in Blender, we there fore do not ask the uploader to analyze it. If on the other hand we want the uploader to analyze our physics model, that's to say convert whatever we assign as a physics mesh into a collection of hulls, then we should create our physics mesh differently. Instead of quads and triangles we build our physics model using non overlapping hulls, usually box shapes: In the Uploader with this new Physics model assigned we hit the Analyze button, the uploader has very little work to do because the physics model is already a collection of hulls so the result should be very similar to the original physics mesh we gave it. In this example 8 hulls in Blender and 8 hulls after the Analyzing process. Now we change the Method in Step 2: to Solid and again ask the uploader to Analyze our physics mesh, in this example something is not quite right. The physics now consists of a collection of 10 hulls which may increase our final LI cost. When Solid method is used each hull will be 0.36 in Physics cost, 8 x 0.36 = 2.88 versus 10 x 0.36 = 3.6 . ( When Surface method is used the uploader sometimes creates a lot more hulls than was expected but in these cases the 0.36 multiplier cost per hull is not used. Perhaps @ChinRey could explain why this is ? ) We can sometimes fix this by setting the Simplify method in Step 3: to Retain% and adjusting the Retain % value followed by hitting the Simplify button : And BTW, I didn't have any problems rezzing on the floor of the room which used the Analyzed physics version and had its Convert to Hulls method set to Surface I guess because it was such a simple object.
  12. If Chic's mantra is "testing, testing, testing," mine would be "reference images, ref. images, ref. images". Check out some dog house images with google. For example simply adding some trim will better define the edges :
  13. From your Blender screenshot you appear to have successfully added 5 material slots and applied them to relevant faces of your model so it is not clear to me what part of this process you are having problems with ? Don't worry about this. Very very few people upload there image textures along with the model. There is almost no advantage in trying to do this. Just do like every body else and upload your textures as separate uploads and then apply them to your model inworld using the SL edit floater.
  14. I'm not happy with my previous post, it makes it appear as if there is only one way to unwrap and edit the UVs etc of your model when really there are others that are perhaps less complicated like for example in orthographic view, selecting individual walls and UV unwrapping using the Project from View ( Bounds) method ............ Since you're already familiar with UV unwrapping, you just need to keep in mind that you'll be applying a seamless tileable texture to each material surface and edit the UVs accordingly. If necessary, additional texture re-scaling and offsetting can be performed in SL using the edit build floater. Put on your engineers white (or is it red for engineers?) safety helmet and do what engineers do best, solving problems
  15. You don't merge all the images into a single image ! 1 Seamless tilable image texture for each material. In Blender you unwrap all 5 materials to a single UV map. Think of each material UV's as a layer in the UV space. So each material will be unwrapped to its own "layer" . If, in Edit mode you now select all of the model, the UV's will look a mess because all the material UV's will be stacked on top of each other. This is not a problem because whether in Blender or in SL, when you select by material to assign an image texture to the faces only the UV's of this material will be selected. No. A model this size will be using seamless tileable image textures on its surfaces. These Image textures do not need to be applied in Blender. In Blender all you need to do is assign a test grid to each material so that you can check the orientation of the Uv's in the UV space. At the same time we are checking that the scaling of the Uv islands of a single material are all approximately at the same scale, And checking that the scale the UV's of all the materials are also at a similar scale to one another, though this is less important because the individual image texture can be rescaled when applied in SL. In Blender we test with a UV grid then in SL we apply a seamless tileable texture to each set of material faces. If you have these image textures on your hard-rive (downloaded from the internet or created yourself in Paint) then of course you can test them out in Blender as well. Any seamless textures you have will be uploaded separately from the mesh. Or you buy some seamless tileable textures from the many texture suppliers stores inworld or from the SL MP. So all you need to do in Blender is mark seams, UV unwrap and edit the UV's so they are orientated correctly. Best is, after marking seams and assigning the 5 materials , in edit mode select all of the model and UV unwrap everything in one go. This will result in all the UV islands having approx. the same scale. Then edit these islands to suit. If some of the UV's are a little deformed (edges that should be aligned to X or Y are off) then try unwrapping again either using the Conformal or Angle Base method : There are different ways you could unwrap this particular model, below is an example of unwrapping using UV seams and aiming to have, where possible, a single UV island for each material. For example the exterior walls: If we mark a single vertical UV seam somewhere on the exterior walls this should unwrap nicely as a single continuos UV island, The seamless texture will wrap around the exterior walls with only a single join where the UV seam was placed. The same for all the other walls and floors. If UV seams are placed correctly each material UV will be a single UV island. Note in the example below the interior walls unwrap as 2 UV islands, main interior walls and interior walls of the elevator space. As you can hopefully see its all about marking seams, and editing the Uv islands. Have a look at my post in the following link of how to edit the UV islands. This is only a single material Upper and lower interior walls but its the same process for your 5 materials. Unwrap everything in one go, orientate the UV islands correctly then scale them all up together. Yes the UV islands have all been scaled up so that they extend well beyond the UV space but this is not a problem because we are not baking textures we are going to apply seamless textures to the model when rezzed in world. The screenshot below shows where the single vertical UV seam is placed for the outer walls. We mark seams for the rest of the model in such a way that each material unwraps as a single UV island: When finished your UV's should look something like in the gif below. Selecting by material to show the UV's of that material and at the end selecting all 3 material together to show how the stacked materials UV's look in the UV editor: and this is how they look when a test grid image texture is applied to each material : If the above all sounds too complicated I would suggest you take a step back and create a very simple rectangular room, no windows, no doorways and experiment with that so that you have exterior walls, interior walls and floor all assigned there own material, all UV unwrapped together, all orientated correctly and all scaled up together in such a way that the top of each walls UV's extend up to Y = 1 in the UV space. Import into SL and apply some seamless tileable textures. If you want to take a closer look to see where I have placed UV seams in my model then you can download the .blend file from here : https://file.io/vEnCtPXUC9QA
  16. The final Land Impact cost will be the equal to the rounded up value of either the Download cost or the Physics cost, whichever is the highest. If you upload with the Firestorm viewer you can check the Physics costs of your model before bringing it into SL. At the bottom of the upload window there is a little Physics cost panel. Base Hull = the physics cost when the Physics Shape Type is left at the default Convex Hull. Mesh = the physics cost when the physics model was not Analyzed in the mesh uploader (for Triangle based Physics) and the Physics shape Type is set to Prim. Analyzed = the physics cost when the physics model was Analyzed in the mesh uploader and the Physics Shape Type set to prim. (Analysing converts the physics model uploaded in Step 1 of the Physics tab into a collection of convex hulls). As a general rule, to reduce the Physics cost increase the average size of the triangles in the Physics mesh. This can be done, as Wolfie has already explained by reducing the complexity of the geometry and removing any small thin triangles (quads). In the example below the physics model was not analysed (has a triangle count of 78). The Download cost = 1.835 and the Physics cost (Mesh) will be 0.5 when rezzed and set to Prim. LI will be 2 when rezzed. Check the download and physics cost when reszzed by clicking on the more info text in the edit floater : Below is an example of an Analyzed physics mesh. Analysing created a collection of 19 hulls which when the model is rezzed in-world and set to Physics Shape Type Prim would give a physics cost of 7, (6.92 round up). Each of these physics hulls usually costs 0.36, (19 x 0.36 = 6.84). :
  17. I couldn't go to bed without trying this I uploaded the mesh using the SL PBR viewer in a PBR (glTF) region and uploaded textures using Blender's glTF 2.0 exporter. ...... and ................... if I am not mistaken .........no "seams" ! !
  18. @OptimoMaximo Thanks for trying to explain this. I need to spend a some more time investigating vertex normal space and why the UV layout effects normal maps ....... But for now I have one simple question : Are you saying that for an SL avatar mesh that is using normal maps to add detail like Pixelberry's example, "seams" are inevitable because the UV mapping (seams and island placements and orientation in the UV space) are fixed. ? And these 2 bug reports are they therefore not fixable because they aren't bugs at all ? https://jira.secondlife.com/browse/BUG-227448 https://jira.secondlife.com/browse/BUG-5975 Not even in the new PBR viewer? I don't find any seams when viewed in Blender : but when rezzed in SL using the standard SL viewer with a skin texture and normal maps the seams are very noticeable: The seams are less noticeable when using the SL pbr viewer : I'm guessing this is because the SL PBR viewer is using Mikkelsen Tangent Space ? : https://wiki.secondlife.com/wiki/PBR_Materials Which is, I read somewhere what Blender also uses. A secondary question follows : Why don't we see the "seams" in Blender? (Smile because I just know that I am not going to understand the answer) .
  19. Tip: while creating objects that require alignment, such as the levels (floors) of your high-rise building, avoid using arbitrary lengths like 7.136m. Instead, opt for precise measurements, like exactly 7.00m or 7.1m. the use of one decimal place is ok but not more. Aligning large objects with irregular bounding box measurements can be a pain . I think you meant 17 and not 71 floors lol . As Chic says; "testing testing testing" I did 2 tests, one uploading a single floor level and a second uploading which combined 4 levels( floors) into one object. I was going to a test with having the exterior walls as one object and all the inside walls and floors as a second object but after seeing the results of the other two tests I didn't think there was much to be gained from doing that. First the single floor object: Spiral stairs in such a tall building would be terrible for an avatar to negotiate, go for an elevator, teleport system, internal ramp or wide internal stairs connecting each floor . For the Medium Lod model we only need to create something to represent the outer walls. For the inside only the high Lod model will ever be seen so no need to create anything for the inside. All Lod models need to contain the same list of materials. The High Lod model has 5 materials assigned to its faces so this Medium Lod model also has to have the same 5 materials assigned. One material is already assigned to the outer walls that leaves the other 4 and for those we create 4 extra triangles somewhere in the medium Lod model that wont be seen, and assigned each one of the 4 unassigned materials. ( but any ways for this example model it has already been assumed that nothing on the inside lower than the High Lod will ever be seen ). This only applies if you are using the SL viewer when uploading. If you are using the Firestorm viewer then you don't need to worry about adding the 4 extra triangles and assigning them the 4 unused materials. No idea why I had forgotten that Beq, a firestorm dev, fixed this issue a couple of years ago. Thankyou Beq see Beq's Blog here : https://beqsother.blogspot.com/2021/06/taming-mesh-uploader-improved-workflow.html and here : https://beqsother.blogspot.com/2021/06/summarising-next-improvements-to.html For Physics..... not a lot to say except that as the inner barrier wall is only 1meter high in the High Lod model if we made the collision surfaces for this wall the same height it may be a little too low to prevent an avatar falling out over it so the physics "walls" for this barrier were made to be 1.4m high. Uploading...... the Low and Lowest Lod slots are set to use the Use LoD above . That's to say they both will be using the Medium Lod. When rezzed the LI for this single floor level object was just a little lower than yours : and when stacked one above the other, 16 high the LI was 30. The missing "17th" floor would be the ground level floor, the floor with the door way opening in the outside wall to allow access to the elevator at ground level. So add and extra 1.5 LI for that. Test 2 was 4 floors combined in one object : Rezzed and with Physics Shape Type set to Prim; the LI per Floor level was better: So the answer to your question is, it depends : With one floor per object the 16 floor building was 30LI. When 4 floors per object the 16 floor building LI was 20LI. with the added bonus of having a lot less objects to align "Testing testing testing"
  20. I tried baking the upper and lower body normal maps: at at first I was also getting seams. Not sure what I did differently but baking a second and third time for some reasons there were no longer any seams visible when the upper and lower body normal maps were applied and viewed in Blender. Can you confirm that for both the high poly and low poly models the upper and lower body parts were joined together properly and not two separate meshes with overlapping vertices at the waist. Are you baking both upper and lower normal maps together at the same time ? That's to say the low poly model has 2 materials assigned to it, in my example named Torso and Lower, : With the image textures selected in each of these materials, when baking high to low both upper and lower normal maps are baked together : When in material preview I am not seeing any seams where upper and lower parts meet : and in-world : Avater mesh used in above examples is the Ruth2 v4 model from https://github.com/RuthAndRoth/Ruth2
  21. Fix in Gimp is not a bad idea. Instead of increasing the Extrusion value there is an other option which can give better results and that's to use a cage. A cage is a copy of the low poly model that has been scaled up (inflated) so that it completely covers the high poly model. and it is this inflated version that is used to cast the rays that search for the High poly mesh. I think it is quite well explained in this video : Its a Blender 2.8 video but the principals stay the same only the bake normals panel is slightly different now in Blender 3.6 If you decide to try this method I would suggest you use the Shift key while scaling the cage mesh (this is mentioned in the video), (Alt + S) (its the Fatten tool in Blender) and keep an eye on the splayed fingers while doing this scaling. You don't want the fingers of the cage mesh to start overlapping because this will cause more issues. Scale the cage up very slowly.
  22. The "yellow" indicates that you need to increase the Extrusion value a little. This increase the ray distance that are sent out from the low poly model to "search" for the high poly. (think I got that right ) You find this in the Bake panel when Selected to Active is enabled > Extrusion. You need to do some tests to find the correct Extrusion distance by increasing the value little by little until those yellow artefacts disappear. Too much and it may cause other yellow bits to appear where the fingers are. see image below:
  23. So, using the sculpt tools, you have added details to the default ebody mesh with the intention of baking out a normal map and then using this normal map on a default ebody avatar mesh ? If that is the case then all you need to do is add a default ebody mesh to the scene, this will be the "low poly mesh" and the ebody mesh that you have sculpted added details to becomes the "high poly mesh". Now you can bake high to low or not ?
  24. Are you not trying to bake the details from a high poly mesh to a low poly mesh ? If so where is your low poly mesh?
  25. You can get that dark blue type normal map bake if you have assigned the high poly mesh the same material as the low poly mesh and in the Image texture you're baking to you has the Color Space set to sRGB. Example: Low poly mesh with Torso material applied and Color Space of the blank image texture that is to be baked to set to sRGB. This image texture is selected ready to be baked to : The high poly mesh has been assigned the same material (Torso) as the low poly mesh : bake result : Next a normal bake with no material assigned to the high poly mesh but Color Space still set to sRGB: Bake result : And the result of this normal map when used on the low poly mesh : Finally the correct normal map bake with no material assigned to the high poly mesh and the Color Space set to Non Color: The correctly baked normal map used applied to the low poly mesh: TLDR : check that the high poly mesh is not using the same material as the low poly mesh and set Color Space to Non Color data.
×
×
  • Create New...