Jump to content

OptimoMaximo

Resident
  • Posts

    1,809
  • Joined

  • Last visited

  • Days Won

    3

Posts posted by OptimoMaximo

  1. On 11/19/2020 at 10:01 AM, iPro said:

    The question is, "Why can't "reset skeleton" be done server-side?"

    Because the server isn't even aware of the existence of such a thing as the skeleton. Skeletons are viewed and managed viewer side only. However, the system might be changed with the viewer sending a reset message to the region and the server broadcasting it to the other agents in the same region. I can see, though, a new griefing tool given birth by such functionality. Although reset skeletons requests aren't likely to be used often, a griefer could exploit it to choke the simulator with hundred of requests per second, and probably that's why such a feature was not implemented. 

    • Like 1
  2. 3 minutes ago, Sabrina Tamerlane said:

    This is an anim file, in red you can see the global priority, in orange the priority of a bone. I set them to be the same but definitely both exist, it's not only a BVH thing.

     

    image.png.27af346ebd9e910a4cec7e1c8f80b02c.png

    Yes, that is one of the things that were added in the header for the 1.0 version, when bvh uploads were introduced and euler angles were abandoned in favor of quaternions. To simplify the process, that was a value that got written at the beginning and copy pasted directly to all joints, since there was no way to supply such control in a easy and quick to operate manner (on the user end). Try to output an anim file omitting the per joint priority, and it won't work,as opposed to what a global variable is meant to provide by being global in the first place. You can override it locally but if not, the global should be the referenced value in the whole scope , that's what a global variable is for... But here it's not like that, it's a convenience feature to patch up the new version. If you're interested in the topic, read the docs about the 0.1 version, that is one of the introduced changes... I guess you know where to find it already as you developed your own exporter 😁

    • Thanks 1
  3. 28 minutes ago, Sabrina Tamerlane said:

    Also, the anim format has a global priority and a priority per bone which I have not experimented

    I assure you that per bone priority works for a single fact: there is no global priority in an animation. All joints in the list need to carry their own priority in order for the system to accept the animation, what the bvh uploader in the viewer and other external tools do is to set a priority that is being applied to all joints, regardless. That is how a global value is being set in the software to simplify the process of creating general purpose animations. 

    Back to the OP question, what they're seeing is the result of the animation priority war i mentioned a few days ago in another thread. People produce animations with the intent of stopping other makers animation with the idea of their work being the protagonist, forgetting the principle behind content creation for a platform that allows and encourages customization. 

    • Like 1
  4. This is not how any of this works, animation wise. What happens here is a set of animations that use a different set of joints positions is taking control of a head that uses its own positions, pulling and pushing those joints to the animation positions. Reset skeleton and animations works only on the client that calls this function, but anyone else will still see your avatar head distorted as you saw it before. Revoking permissions doesn't do any good, because the moment you stand up from an object that triggers animations automatically revokes permissions (as well as sitting on one automatically grants those permissions), unless the scripter wrote it badly or did it on purpose. The only way to reset the skeleton from a deforming animation for both user and others who may be seeing the deformed user is to log out and back in, as those animations don't survive relogging. 

    Scripted methods like turning off third party animations won't work, as the item is a general purpose animated sittable and would not ask the animation hud to plug to it, unless specifically scripted to do so, in which case it would certainly be advertised as such. 

    The only way to prevent any of this to happen is to have at least one animation made for the specific head at highest priority possible (6), and hope that the creator of this piece of furniture didn't do the same, because animations priority works on a "last triggered animation wins" basis, which means that priority conflicts between animations that share the same priority is resolved by playing the last one that was triggered on top of the second to last for all of its duration. Which not only can deform the avatar, but if the overridden animation didn't provide rotation and position animation data for all the involved joints that the deforming one moved and rotated, those that aren't included in the first animation will not go back into their intended position and rotation when the deforming animation stops playing. 

    On a side note, the priority war has been fought already for years with AO's meant to override anything and everything, which led to the addition of priorities up to 6 because of a lot of creators unresponsible use of highest priority possible, everywhere. Bento skeletal additions are a clean slate, where we get to use all priorities from 0 to 6, and looking for highest priority safeguarding animations is not a solution as this will lead to all animations always at highest priority, in the attempt to outshine anything that anyone else made. Ask the creators to lower the face animations priorities as they conflict with other people's products, since now there definitely are tools that allow doing that (and I can tell about it, since I'm the creator of an animation exporter plug in that does exactly that, among other features). 

    • Like 2
    • Thanks 1
  5. 8 hours ago, Sabrina Tamerlane said:

    Besides everybody use Avastar with Blender and seem happy with it.

    You probably missed them, but sometime ago a few posts were made asking for Poser working scenes with bento avatars that would actually work. And thus far, the only option was bvh only, even when one could go with the legacy skeleton scene. 

    However, not everybody in SL uses avastar. I myself have a pretty large user base of my exporter for Maya, so I would suggest to give it a go anyway. 

  6. On 10/5/2020 at 11:11 PM, Sabrina Tamerlane said:

    The Poser team did not like this at all and wrote to me that it was forbidden bv their ToS to export content from Poser into Second Life because... (reasons) 

    Well, it may sound stupid, but as long as you use the software features to export your own work, meaning that you make your own animations without using any of the content that Poser may provide, it is perfectly fine for you to distribute the plug in and use it. Also considering that you may want to operate on a SL avatar and skeleton setup made for Poser. At that point any of the forbidden clauses they stated fall apart. You're using the software and not their content, so a plug in that allows to do what yours does is perfectly legal. Otherwise they should close off any ability to develop plug-ins to rest assured that their precious software is being behold and worshipped as they meant it should be. 

    • Thanks 1
  7. On 9/19/2020 at 4:34 AM, Quarrel Kukulcan said:

    It's especially confusing that the sample Bento skeleton uses the foot bone to drive the toes, and furthermore places the toe bone past the end of the foot and weights no vertices to it to it.

    This is once more a point of view issue. You see that as a bone, while the original skeleton was made in Maya which has no bone system, rather a joint system. So if you look at the bone head position, their placement drive their naming. It's interesting to note that the legacy avatar shapes on the feet worked the heel shape foot deformation using an offset between ankle and foot joint, for which the heel tip uses the vertical location of the foot joint while the ankle gets raised, creating the heel deformation on the base mesh avatar. 

  8. On 9/15/2020 at 11:02 PM, Vir Linden said:

    Sorry, it's a little confusing. anim isn't really a file format; it's just a binary dump of what the viewer uploads when it's creating a new animation. With bvh, you start with a file format and specify various options, and the combination of all that animation + option info gets sent up to create an animation. A .anim file is roughly equivalent to taking all the animation data out of a bvh, and then adding all of the various options chosen in the bvh floater - so you're bypassing the preview and option selection stages and skipping straight to upload. I say "roughly" equivalent because the bvh uploader also tries to do some optimizations on the uploaded animations, which using .anim skips.

    It would probably make sense to allow the preview and option selection stages to be done for .anim as well, using the options specified in the selected .anim as the starting values. A possible feature for another time...

    Sorry Vir, but your take on anim file format is misleading. 

    First, it's not a simple dump. Bvh like data has to go through conversion to quaternion, get negated whenever the W term goes to the negative range so that the W term can be kept positive, then this manipulated quaternion goes through a conversion stage to turn the values into integers comprised between a certain range, in order to be written as signed integers of 2 bytes each, dropping the W term as the negation done at a previous stage allows its reconstruction on the fly. Joint names go through a similar stage to be converted into a byte array. Time code is also being converted according to similar rules. At that point, dump to file has to happen in a specific order, with a header section that contains a few things, then joint name, followed by number of frames, also converted to be 2 bytes allocation, joint priority, also converted into a signed integer, then rotation data frame by frame and finally position data. The serialization process implies a a format which has to be followed, along side with type of converted data (some need to be signed, some unsigned and so on) and therefore it definitely IS a format. The file extension is arbitrary, just for the sake of easier filtering when the file browser is summoned and told to look up for files.

    Now, also an XML file is just a data dump, but it can't be read if some writing rules (aka format) aren't respected. That's what makes a format, and SL's anim is the same, it is a proprietary format developed by Linden Lab for exclusive use with their platform. 

  9. On 9/14/2020 at 6:35 AM, Chic Aeon said:

    Avastar will let you make anim files using Blender.     There IS no preview for anim files in the uploader (yes, not fun) so not you.  You set all the priority etc before exporting.     There may be other ways to make an anim file which I read was the original file format for SL-- before BVH became popular.   

     

    Google tells me this so Maya could also be used:

     

    "3D animation file created by Maya, a professional 3D modeling application; saves references to objects and their animation properties; includes keyframes that specify anchor points of the animation; also includes rotations and the timeline."

    The anim format in Maya is not the same as the one used in SL. This latter is a proprietary binary encoded format that follows some serialization rules and data format. For Maya anim files exports to Secondlife, look at my signature below 😉

    • Thanks 1
  10. On 8/22/2020 at 6:37 PM, Wulfie Reanimator said:

    If I make a product that's intended to work with another product... I'm going to say "made for [another product]."

    I don't even know what to call that besides basic English.

    I think the OP question is about whether it is legit to make addons that extend other products functionality, with their example they're explicitly aiming to a scripted product, which in practice implies that this addon functionally interacts with the main program that the original product runs. Which is slightly different than making a "compatible with X product" item, at least in a consumer's eyes (like a mesh head that plugs well onto a specific mesh body). 

     

    On 8/27/2020 at 9:37 PM, Kyrah Abattoir said:

    It is also probably fine in 99% of cases, feel free to get a creator's blessing, but unless you're potentially creating bugs,.... 

    That's the point of such products to expose APIs for extensions: the addon can't create bugs in the main product because it can't really change the internal structure of the main software, it just can access in the "doors" that the original coder left open with instructions about what can walk through such doors so that the software can respond to input. At most, the add on could suffer from bugs, on its own, and that's none of the main products business, it's the addon creator problem to make sure it properly works before release (all this, always assuming that the APIs were properly tested and don't have holes that can introduce bugs, but that's another issue).

    An example of that is 3d softwares: I make a script that interacts with Maya, for example. I use Maya commands to do things, then I try to input the wrong stuff for a command, Maya doesn't respond to that. My script at that point suffers for a bug, that interrupts its execution, but Maya keeps standing there. It's not like that it stops working or crashes or whatever, as long as I don't introduce bad programming practices that cause crash. But the problem is in the addon, not the main software. 

    • Like 1
  11. 15 hours ago, Tattooshop said:

    I think the problem is in the blender, I tried to open the exported DAE file in the blender and the model looks exactly the same as when uploaded in the SL - enlarged and with incorrect rotation.

    * I will explain a little. I work with a fbx file and it looks fine in blender, but when I export it in DAE, something breaks in it ...

    😛 

     

    Did you check if the object is parented to a empty object that carries scale and rotation data by any chance? If so, unparent your mesh and apply the transformations, then try again

    • Thanks 2
  12. Anyway, I would not include Mudbox among the bad practice softwares, mainly for one reason: its main workflow implies the import of a basemesh to begin with, it's not a design softwares and the user has not as much freedom in that regard. I personally call it a technically oriented artistic tool, because Mudbox basically wants a finished design to add the final details to, it complains a lot if the mesh hasn't got clean topology and UVs upon import, to the point of refusing imported meshes that have a number of problems or very severe ones like non manifold geometry or laminafaces. It is also a texturing tool that starts from a multires subdivision approach, unlike ZBrush which focuses on polypainting and optionally can bake the textures out depending from the workflow used, provided that the model got UVs (either pre-made or made within the program itself). But Mudbox has an image based texture layer system, as opposed to ZBrush which, again, works with vertex colors. For these reasons I wouldn't include MB to that list, instead I would say that among all of those, it's the one that tries to get the best optimized model as input to output middle stage assets. For what type of production, it's up to the user and the model that the user feeds to the software.

  13. 1 hour ago, n0minous said:

    Yup, I'm familiar with the dynamesh to ZRemesher workflow

    So you should also be aware of the spiral loops that a remesh algorithm is prone to create, as opposed to a strict retopology process where the user actually CONTROLS the topology being created. Both process are inherently similar, in which the mesh gets recreated, so perhaps semantically they MIGHT sound similar, but there are two different terms for a reason, and it's not about the raw process in itself, rather the finality. 

  14. 8 hours ago, n0minous said:

    I agree, but I'm not sure whether ZBrush should be included in the list since it has ZRemesher for retopology and ZModeler for polygon modeling

    Zremesher is a remesher, not a retopology tool. The geometry generated by it isn't any good but for sculpting, and it was intended with one scope in mind: let the artist work with digital clay using dynamesh to make the primary shapes (and maybe mock up the secondary) to be free from having a base mesh to start from, then using Zremesher generate a proper mesh that can be sculpted properly using multires subdivision to keep working down to the tertiary shapes and fine details. 

  15. 39 minutes ago, ChinRey said:

    I don't know what it's called in Maya.

    EDIT mode 😁

    40 minutes ago, ChinRey said:

    You can say that about programming too. And music. And every other activity that require a little bit of skill.

    The difference is, you don't blame the compiler if the programmer can't write proper code and you don't blame the violin if the violinist can't play in tune. But you do blame the software if the 3D modeller can't make efficient meshes

    I totally agree. 

    • Like 3
  16. If the product in question provides APIs so that other scripts can communicate and interoperate with it, it's implied that the main product creator is encouraging the practice of making addons for it. More simply stated, the original creator made plugs so that more functionalities could be added from external sources without actually opening their product to anyone. 

    On a industrial scale, it's like questioning the legitimacy of plug ins for photoshop, or any other software for that matter, for sale. If the software house didn't allow that practice, they wouldn't have exposed scripting capabilities in their software to begin with. 

    Hopefully this helps clarify my view on the subject matter. 

    • Like 2
  17. 11 hours ago, jw99sl said:

    Oh look, YOU may add a new design if YOUR cosing skills can, as if you already own Linden Lab instead of Philip himself. Jeeez... 🤦‍♂️ Dude your fantasy really runs wild, it's gonna give you a huge delusion when you'll present your ideas for avatars and they will boot you out of the window laughing at you

    I never presented any avatar to LL dude, the only thing I made is something THEY should have made and that I sell for myself, which is an animation exporter using their proprietary file format .anim , that clearly shows how I do understand the architecture and design of how the system works, unlike you do with your reply to someone else that followed mine: call it virtual world, it still runs on the premises of a videogame system, so SL is primarily and foremost a videogame, of which its user base make a different use. THIS shows how ignorant you are about the matter at hand. 

    Oh and by the way, the only Linden who showed up here left a meme saying "no words", which doesn't mean they were impressed, rather that they wouldn't comment further because your idea deserves insults only, and as LL employee they can't. 

  18. 10 hours ago, DeviousDreams said:

    Having this issue now for the first time. My LODs have exactly the same name and number of materials. The LODs were duplicates of the high poly and decimated. I have double, triple and quadruple checked. Not sure what this things issue is.

    Check the number of triangles in your high LoD : if that exceeds 21k-ish triangles, chances are that this specific material gets automatically split into 2 materials, silently in the uploader, to fit within that limit threshold. That causes the material mismatch with the lower LoDs, hence the error message. 

  19. 9 hours ago, jw99sl said:

    I may add uplink capabiliites as well, if my engineers and coders at WKYC can.

    Oh look, YOU may add up link if YOUR engineers and coders can, as if you already own that company. Jeeez... 🤦‍♂️ Dude your fantasy really runs wild, it's gonna give you a huge delusion when you'll present this idea and they will boot you out of the window laughing at you. 

    • Like 1
    • Haha 1
  20. 9 minutes ago, jw99sl said:

    Yes, but I'm going to have permission from Linden Lab to use their Second Life Grid server software and modify it as a downlink only version of it, then deploy HP Proliant Bladesystem servers with 100TB SSDs, install my modified minimodem next, deploy my modified Second Life Grid software to the latter servers, then begin my service to compete with Stadia and others.

    Satellaview_system.png

    A diagram showing Satellaview operating.

    Goodluck with getting the server side software from LL... They kept it in a safe till now, but they will open it for you because of your brilliant and knowledgeable idea, from your explanation it is clear that you really deeply know how the system works. I really wish to see how you will manage LLs spaghetti code without even being able to tie your own shoes 😂 

    Besides, the whole idea is pathetic on its own.

    Whatever company you'd be able to drag in to this crippled idea that is so ignorant to fall for such a brainfart, will end up to sue the crap out of you for causing their bankruptcy. 

    Go ahead laugh reacting. Your blindness is amusing🤣

    • Like 1
    • Haha 1
  21. 4 minutes ago, arabellajones said:

    As it is, I wonder why I bothered, when I see the money the rubbish is selling for.

    This part goes a long way into every single niche, not just vehicles. From avatars, through clothing to vehicles and buildings, it appears that the least time spent optimizing things the more they sell and a are appreciated, spitting products at machine-gun rates seems more important to consumers. 

    • Like 1
×
×
  • Create New...