Jump to content

animats

Resident
  • Posts

    6,153
  • Joined

  • Last visited

Everything posted by animats

  1. There are still groups working on that. Unclear how it will work out. That metaverse standards organization has most of the companies who do anything in graphics. They're trying to firm things up from the bottom. glTF (Graphics Language Transmission Format, for moving textures and meshes from one program to another) is the starting point. Second Life is moving towards using that, in place of Collada. This is generally agreed by people who have dealt with both formats to be forward progress. More and more tools speak glTF now. Blender and Maya do, and SL speaks glTF textures. Meshes in 2024, we hope. There is a Interoperable Character/Avatar Working Group. They're not trying to standardize avatars. They're trying to figure out how to translate between different avatar formats. Like the various import filters in Blender that let you bring in .obj or .3ds files. This group focuses on the mechanics of doing it, not whether you're allowed to do it. A separate group is working on exploring Digital Asset Management, the parts of the system which limit what you're allowed to copy, transfer, import, and export. That's more of a talk shop right now. That's a good division of labor. The group working on the mechanics of avatar import/export can get that working, while the other group argues over NFTs, DRM, and business issues. I'm wondering how much time to spend on this. Animats (my RL business name) is a member of this organization. They have some events coming up in October, and I want to see how real this is.
  2. Game devs have been trying GPT-powered NPCs. Search for "AI NPC" to see what's going on. What seems to happen so far is that the NPCs can now conduct conversations on general subjects, or they can do some canned things associated with the game, but not yet act intelligently with respect to the game world. The GPT part isn't yet using much info about where they are, what they are doing, what's supposed to be happening in a game/roleplay sense, etc. This will probably be solved soon for one of the big more-scripted games outside SL. The large language model system needs the backstories of all the characters and current context. As that gets working, SL can reuse some of that technology. SL doesn't have enough people doing the same gameplay to lead in development here.
  3. (Hint to bot controller developers: When your bot-control viewer gets the RegionHandshake message, check the SimName field. That's the region you just arrived in, which may not be the same as the one you asked for in the login request. If it's not where you intended to send your bot, your destination region is probably down. Log out and try again in a few minutes. Increase the retry interval with each retry. This will prevent your bot from cluelessly cluttering up safe hubs.)
  4. It's complicated. Check Tilia's terms of service. Tilia has much stronger obligations to customers, both from their own terms and from their status as a regulated money transfer service. Because of what's been going on in the NFT and cryptocurrency sectors, there's been considerable litigation over the value of virtual tokens and assets. It seems to be settled now that virtual assets have real value which cannot be disclaimed. People have gone to jail for converting customer assets to their own use, despite disclaimers. If you want to read up on this, see SEC Cyber Enforcement Actions. If you're really into this, there's "Application of FinCEN’s Regulations to Certain Business Models Involving Convertible Virtual Currencies" "Convertible virtual currency" is defined very broadly. Doesn't matter what you call it. If' there's some way, however indirect, to convert it to dollars, it's regulated. The Wild West era of virtual assets is over, and the big-hammer enforcement era has arrived. This is somewhat off topic, though.
  5. I'm aware of that. We don't see it viewer side, but know it's happening. After all, this is TeleportFinish. Double region crossings will probably be the hardest problem. Each time you fix an intermittent bug in messaging, though, the remaining bugs acquire greater clarity, and become closer to being fixed. I'm encouraged at progress in this area. Tuesday's demo at Server User Group of faster avatar rezzing in test regions was impressive. Pink/white clouds disappeared within 2-3 secs, and avatars had no parts missing. That was great to see. SL is getting more crowds, and crowds of avatars half-rezzed in event spaces have become a serious problem. Unwanted nude avatars, avatars with heads on backwards, stuff like that. Looks awful. That may be an unrelated problem technically, but from a user perspective, seeing old immersion-breaking bugs being fixed is a clear indicator of progress. From a marketing perspective, half the avatars in the WelcomeHub are stuck in pink/white cloud mode, and some of those won't come back. That alone justifies to management the effort expended in fixing that problem. Keep plugging, and thanks.
  6. OK. Now this is much more helpful. (The link to digitalcommons.law... is a dead link.) First, some suggested reading: "Making a Metaverse that Matters", by Wagner James Au, is a recent book by someone who spent much time in Second Life. That's a good overview. Second, the issues of digital property were at one time addressed by the Second Life Bar Association. There was a group of real-world lawyers in Second Life, and they had their own little "legal village" in Second Life, and discussed dispute resolution and property in virtual worlds.The organization, and its "legal village" of offices, is gone. Faye Blackheart, one of the officers of that organization, still has a law office in world, in the SYZM Tower in NTBI. Third, a point I bring up now and then is that Second Life manages to operate without a huge number of "moderators". Almost everybody else in this space, such as Facebook/Meta/Horizon and Roblox, has an army of outsourced minimum wage moderator goons armed with ban hammers and qualified immunity. Second Life has a small and famously slow-responding governance department. Why does that work? (Hint: it has to do with how property rights work in Second Life.) Feel free to contact me.
  7. Yes, it did, although it was a grad student. Now, if an actual professor came on here, and said "I'm Prof. NAME at UNIVERSITY, here's my university web page and publications list", they'd get a much better reception.
  8. That should come with a premium membership, since that gets you a home.
  9. My point is that below some value, the rendering load doesn't decrease, because the overhead of setting up the mesh dominates the draw time. The LI computation does not fully reflect this, though. I think Beq Janus did some tests on this.
  10. Right. This happens regularly. Usually it comes with a link to a Google or SurveyMonkey form. If you want to interview people in SL, log in and talk to people. To be taken seriously, set up a storefront in world for your project and advertise it a bit.
  11. If you make all LODs the same as the highest LOD, your object will look great but the land impact will be higher. As a rule of thumb, each LOD should have about half the triangle count of the next highest LOD. The lowest LOD should never be forced below 20 triangles or so. Look at your objects in lowest LOD (set Firestorm's LOD factor to 0.0). If you can see through them, you're doing it wrong.
  12. This looks like something for a parachute that's open all the time. The timer is always running, so 10 times a second, the script activates. Maybe have a 1 or 2 second timer to detect falling, then turn on the parachute behavior and go to a fast timer when Z velocity < -EXCESSIVEFALLSPEED. If you just want a parachute to use, Drivers of SL gives out a good freebie.
  13. Interesting. That's very similar to the problem of a double region crossing. We know that if a second region crossing starts before the first has completed (a common case at region corners) a stuck state results. The problems may be related.
  14. All this looks very good. "At least once" is fine. If we have problems with duplicates, that's detectable and fixable. Order preservation means some pathological out of order cases should not come up viewer side. Consolidating events is useful for object updates. But that's UDP side. I don't see anything in the Appendix A list that looks like a good prospect for consolidation for performance improvement. Looking at the list of events in Appendix A, what can generate an event overload? PBR material updates, which could, were just moved to UDP. That was the only time I ever saw much event traffic. The "chatterbox" stuff? Beq Janus may have something to say about that; she's been struggling with group chat synchronization. The "bridge" mechanism? Should we be prepared for any UDP message to appear on the event channel in the future? Viewer event poll timeout bad, simulator timeout normal. Sounds good. Looking good.
  15. The ride is fine, but an hour of travel through Bellessaria is a bit much. It's realistic, in a way. Some years ago I had to visit some place in a huge planned-unit development, one of those places that's mostly cul-de-sacs. After I was done there, I was lost driving out. So I pulled up to a group of teen-agers and asked "How do I get to the real world?" They understood instantly and gave me directions to the freeway.
  16. http://www.sweethome3d.com/freeModels.jsp Miscellaneous open source low poly models in .obj format, for a low-poly home design program. ".obj" format, import into Blender OK. Creative Commons 3.0 license. Some models require attribution. Item which cops might find at crime scene. Many of the models were made for the forensics unit of the Gendarme of France. So there's a good collection of objects commonly found at crime scenes - guns, stacks of money, bolt cutters, angle grinders... Useful for setting up roleplay areas. All the models are sized at 1 unit = 1cm, which is 100x too large for SL. So they need a resize in Blender.
  17. Documentation says there must be a shared border to join parcels. It's a good restriction. Otherwise we'd have checkerboarded parcels useful only for ad signage. If you own two parcels in the same region, they share land capacity. You can buy more land in the same region to get more LI, even if it's not contiguous. So if that's all you need, no problem.
  18. ChatGPT for NPCs is a real possibility. But we need a big training set of SL information from an in-world perspective, and a medium sized training set for the NPC's role. Anyone working on this? Meanwhile, as I mentioned in another topic, there's DeepBump, an open source Blender plug-in which uses machine learning to generate normals for textures. Since I discovered that, I've used it on every brick and rock texture I have, and they all look better. It's really well trained for surfaces with mortared joints. It's not just using intensity; it knows what common surfaces look like. Rock, brick, and bark look extremely good. Carpet nap sometimes works. Seams on clothing sometimes work. Dirt and grass, maybe. You don't have to have a 3D model of the object in Blender; you can just take in a texture, map it onto a face of a cube, run DeepBump, and save the normal texture. Sp you can use this on existing in-world objects for which you have access to the texture image.
  19. Something like that was tried recently. Many of the modern Japanese areas have subway stations, and someone had set up some of them as teleport hubs. But I just went to one, and it didn't do anything any more. Remember East River International Airport? They had a good transit system over several regions. They'd move the transit car to a tunnel way up in the sky, travel there, and then bring the car back down to a short tunnel at ground level. That could be done over longer distances. Have a standard subway car and an experience at the station. You sit in a subway car, and it moves into a tunnel where the tunnel walls are animated to appear to move. Then you're teleported to an identical subway car elsewhere and seated in the same seat, which an experience can do. Then you come out of the tunnel and into a new station. There used to be a system sort of like that which connected New Babbage and some of the other steampunk regions by train. But it was unreliable. I think you can still take a train from New Babbage Main Station, and you get teleported to a landing point elsewhere after a while. It's kind of a letdown and nobody uses it. If the project to make teleports more reliable succeeds, this becomes more feasible. Then you could travel as a group. WelcomeHub should have a station. Get new users out and about. (WelcomeHub does have a train station with a rez zone, with a bridge to Bellessaria, but new users don't have a train and there is no free rezzer. I rezzed one and rode all the way to the end of the line, which takes about an hour. Worked fine, but it's boring. It's endless suburbia, after all.)
  20. This is great! Some notes: "At least once" delivery The most important change is the move to "at least once" delivery instead of "no more than once". That alone will solve some major problems. There may be some viewer-side problems with duplicate events, but those can be detected viewer side. The events EstablishAgentCommunication CrossedRegion TeleportFinish are probably the ones that need viewer-side duplicate detection, because they all imply major viewer side state changes. No big problem detecting that viewer side. Duplicates are far better than losing any of those crucial messages. Losing one of those means a viewer stalled at login, region crossing, teleport, or neighbor region appearance. Are there any others not in that list for which processing a duplicate message causes serious trouble? Event poll timeout semantics Henri and I were arguing above over how to handle this. It's even worse than either of us thought. I'll plug again for the server sending an empty array of events when it has no events to send. Stay on the happy path of HTTP status 200 if at all possible. With Apache on one end and Curl on the other, plus a possible Squid proxy, plus possible VPNs, firewalls, and middle boxes, the error code cases just aren't going to reliably make it through the chain. Existing viewers should be able to handle this without modification, since it's their happy path too. As Monty Linden said above, "Simplify rather than bolt on more special case code. We're dying from state-space explosions". Event order Once we have at-least-once delivery, is it worth guaranteeing in-order delivery of event poller events? Out of order delivery is a feature on the UDP message side, but it doesn't seem to add value on the HTTP event poller side. Out of order delivery makes this much harder to think about and adds code complexity. What is the server-side benefit of out of order event queuing? Something to think about. A discussion topic at this point, not a proposal. Metadata Useful debug tool. That will be useful in correlating visible problems with transient server overloads that caused event drops. SL has more crowds now, which is good. Look at "What's Hot Now" in the viewer and you'll see many regions with over 50 avatars. Now the problems that appear under big-crowd load become important. Retry "And none have magical retry systems that make errors go away without effort." Right. For login failure, the viewer could conceivably try the login again automatically, instead of the user having to do it manually. There are situations where that would help, where a simulator has gone down but the login server is not yet aware of that fact. But those are rare. The viewer is somewhat lost if a TeleportFinish doesn't arrive, because the viewer has no idea its avatar has left for parts unknown. Failed region crossings are potentially recoverable. The usual failed state is vehicle in new region, avatar in old region, avatar state is sitting but on nothing, vehicle seat state in new region is "sat on." with nothing on the seat. It's possible to move the vehicle back to the old region and get everything re-connected, although it takes a sit/unsit/sit cycle to get things cleaned up, and the cleanup is incomplete regarding sit target state. It's far better to avoid getting into that situation than to try to get out of it. Once event lossage is fixed, we'll be able to see what problems remain in that area. Conclusion This is a huge step forward.
  21. This looked familiar. Casino sign, Helios Casino at the WelcomeHub. Here's what it's copied from. Spire, Marin County Civic Center, California. This is a famous work by Frank Lloyd Wright. It's part of the Marin Civic Center, a US National Historic Landmark. Built in 1957, it still looks futuristic, and has appeared in science fiction movies. The spire is a standalone decorative structure, not a tower on top of a building. It's from Wright's tall pointy object period. His drawings of unbuilt works, notably the proposed Arizona Capitol and Broadacre City, contain more tall pointy objects. This is the largest one actually constructed.
  22. I think it would have to be initiated by the server. The server tells the viewer to do a teleport by sending a TeleportFinish message. That tells the viewer the info needed to connect to the destination region's simulator. But that info has a specific UDP port and seed ID, and I think those are "used up" if the teleport fails. Yes. The Other Simulator does not behave quite the same way. I've been logging that, and it's mentioned in the other discussion. What got me into this problem is that I first tested my Sharpview viewer's connection to neighbor regions against the Other Simulator. Sharpview is all new code, with completely different bugs. I got that connection working, then tried SL, and the protocol got stuck waiting for a message. The devs for the Other Simulator try to emulate what SL is doing, so this resulted in discussions at their dev meeting over what was supposed to happen. Nobody was quite sure on the Other Simulator side. I started the other discussion here, and it came out that no one was entirely sure what was supposed to happen on the SL side. Then we all realized we had a problem. This is how you find protocol bugs in the real world. When there's only one implementation, you can have bugs where things seem to work, but you're not sure why, and maybe they fail intermittently. When you have multiple inter-operating implementations, there's a period of much frustration during which all the players compare notes and eventually converge on success. For the parties involved to sometimes be annoyed with each other is normal. For SL, it's the third party viewer developers who see this problem most clearly, because they talk to both SL and the Other Simulator. So TPV developers do a lot of logging and looking at logs. Now that SL has a mobile viewer in development, they have two implementations of their own, which means they have to face these kinds of problems internally. This provides motivation for LL. When you look at SL immersion-breaking failures, most of them appear to be problems where one end is waiting for a message the other end isn't sending. Actual crashes, where the viewer suddenly exits or a region goes down, are rare. The common intermittent problems - teleport fail, region crossing fail, stuck in login connecting to region, objects not appearing, clothing not appearing, avatars stuck in cloud mode - are all cases where some essential message didn't arrive. That doesn't mean there's a single underlying bug, but there's likely some commonality to those problems.
  23. Some of us on the third party viewer side are trying to figure this out. See this long, very technical discussion of what's going on down at the message level. Monty Linden has been looking into this. So have Henri Beauchamp, Beq Janus, and myself. Henri has added more logging to his viewer. Beq and I have been looking at logs and drawing event diagrams. There is general agreement that some necessary messages do get lost. "Why" is still elusive. The code involved dates from the early days of SL. All this attention is starting to make some old, mysterious problems look less mysterious. Progress is made by getting from "my teleport failed" to "viewer sent message X to simulator, which we think should have been replied to with message Y, but message Y did not arrive at the viewer." That's not a fix, that's just trying to understand the problem. None of this is fun. But it is necessary. There's now a reasonably good chance that some long standing problems will get fixed. At last, people are putting a microscope on the part of the machinery that is giving trouble. I'm encouraged.
  24. You can rate forum posts and marketplace items now. We have parcel traffic counts. None of which are all that useful. The most useful review-like feature is 1-star reviews of Marketplace items, to report that some item is an empty box, not what is advertised, or really terrible. That's also true for Yelp and Amazon; the 1-star reviews are the only ones worth reading. Stick with rating things, not residents. Less drama.
  25. That's legit, if you buy the appropriate rights, although those models tend to be too complex for SL. One of my escalators started as a purchased model like that. Then I had to separate out the stair railing and steps so those could be animated. The endless railing had to be turned into a single line Blender path loop and used to extrude a simple cross section. The steps had to be turned into one simple step with a Blender repeat. The frame had far too much geometry and was pretty much redrawn. The foot plates at top and bottom had a real world company logo, and I re-did those to have an Animats logo to avoid a trademark problem. The railing got a rubber texture overlaid with a diamond pattern so you can see the railings move. (Those exist in real life. You can even get moving escalator railings with printed advertising.) I had to write a Python Blender plug-in to re-size the thing for different sizes. The physics and lower LOD models were entirely new. UVs needed a complete rework. By the time I was done, the original purchased model had mostly been used as a guide to the dimensions of the real escalator. I purchased a very nice motorcycle model, a conceptual design based on a real world motorcycle but never built. If I put in a month or two of work, I might have it pared down for SL. Every little clip that holds a wire or cable is fully detailed, and part of the body mesh. So is every bolt. Similarly, I bought a model of Turbinia, the first turbine-powered boat. Too much detail in the wrong places. The raised letters TURBINIA are part of the hull mesh. But no pilot house interior. Paring those down for SL would be a lot of work.
×
×
  • Create New...