Jump to content

Extrude Ragu

Resident
  • Posts

    1,060
  • Joined

  • Last visited

  • Days Won

    1

Everything posted by Extrude Ragu

  1. To summarise the primary reasons why I think people move to Discord (And thus, the primary holes SL needs to fulfill to keep people socialising in-world) Chat persistence - In SecondLife, when you Groupchat, you're only chatting to whoever is online now, and whoever is offline will not see what you sent - So there is less point in using Groupchat to reach groups of people in SecondLife as it is less effective. If chat was persisted, this would be less of a problem Role chats - Sometimes we just want to talk to staff in our sims group, or perhaps residents, or some other special group-within-a-group of people, discord allows this, whilst the in-world tools do not Reliable reach - If we @ someone on discord we can be pretty sure the message will get seen by them as the client will do a whole lot to draw attention to it, there is no such facility in SecondLife Some Secondary things:- Sharing - Multi-media sharing is easier in Discord, think images etc. We can just drag them into the chat to let other people see them. Toilet/Bed/Train/Bus Messaging. OK this sounds dumb but people like to yap on their phone whilst they are on the go. Discord allows that. Some way to send messages into SL from outside would be perfect Streaming - Suppose this falls under sharing, but today people like to stream what they're up to, their video games, etc to each other, admittedly a harder technology to graft into SecondLife and one that might never happen at least from LL, but people do like to stream stuff
  2. Does anyone know the maximum transition time for these functions? They are not documented
  3. Interesting that we will be able to color emission independently At first reading seeing that the Alpha channels are going under utilized seemed bad (think: disk space) but then the alpha channel has always been problematic to pack due to image editors like photos hop, affinity photo being 'smart' with the alpha channel, so at least it'll make life easier I suppose since in practice most textures won't use Emission, it remains 3 texture uploads like before so 30L$ a pop Occlusion channel is interesting, I suppose this is just for 'fake' detail and not a replacement of the occlusion rendered by the viewer. It would seem like a good opportunity to me seeing as these objects would render under different rules to also make the real-time occlusion a bit less weak for objects rendering using pbr, so creators don't feel the need to bake AO on everything and thus we can use repeating textures for houses and large objects instead of lots of baked ones
  4. I wonder if SL should team up with either ATI or Nvidia in some kind of sponsorship to modernize the graphics pipeline of the viewer. I mean for the graphics company, it's a nice business case study, to show how their technology and expertise could make an old game run much faster, and for LL even though it costs money to get engineers from one of these graphics cards to use their expertise to improve the viewer, they'd probably be able to do it in 1/5th of the time it would take for a less graphically experienced in-house linden to do it. It'd also be good for publicity if there's a big name like ATI or NVidia coming up when the viewer opens, it'd probably change the public perception of SecondLife into something that has been modernized.. Yes I know LL are modernizing it as we speak but public perception matters
  5. I created an alt a few days ago with the sole purpose of making a bird to fly around the grid on. Don't judge I just prefer to make alts instead of outfits Anyway, as a new account I was sent to the new newbie area (very modern btw - well done LL) - And eventually I went to a 'Newbie friendly' area in the destination guide cuz I like to see what the newbies in SecondLife are experiencing from time to time. So I landed in this Newbie friendly area I believe it was the Social Island. Immediately this person in a penguin avatar started using some tool to shove me around with their avatar - as a new avatar I was being griefed I did manage to groundsit so they could not shove me around but not great. They were persistent too, even after I groundsit they were still on my head for a whole hour trying to push me.
  6. Ok so I've actually spent a lot of time trying to find the 'correct' answer for this in the past, apologies that my post is a little longer than others, but I hope it will be helpful Channel Packed Firstly, the most important thing to know is that SecondLife uses Channel Packing. What Channel Packing means is that SecondLife uses the alpha channel of an image to store data other than transparency to save on disk space. The alpha channel for every pixel is a value between 0 and 1 (or 0 and 255 in image terms) - Data we pack into our image from another greyscale (black and white) image. According to the Material Data for SecondLife documentation, SecondLife uses three textures, each use the alpha channel for different purposes OK so this might be a bit overwhelming but I'll go over them one by one and try to break them down as best I can as I understand it Texture 1 - Diffuse map The RGB Channels are the diffuse map - On passing glance you might think this is just the color of the object - It's similar but not quite - What this really is is how light is diffused over the object. So to be technically correct, the 'Diffuse' bake from the Bake Type's drop down in Blender will get you the RGB channels for Diffuse as that takes lighting and material of the object into account. Some people might opt to use the 'Combined' bake but that is a debate to be had about graphics settings and a whole can of worms I'm just going to avoid. What about the alpha channel on Diffuse? The alpha channel on a diffuse map is optional, in SecondLife it can used for three different purposes Emission Transparency - Alpha Blending Transparency - Alpha Masking Emission Emission data is useful for objects that emit light in different places, think for example like a tech control panel with LED's and stuff, you can have just little spots of the texture light up. For that you'd bake an Emission map and then use Channel Packing to combine it with your diffuse (I will describe channel packing further down) Alpha blending is good for objects with semi-transparent materials - Note that this is expensive to render as the computer drawing each pixel has to now do additional maths using the alpha channel. Avoid alpha blending where you can. Alpha masking is good for stuff like tree leaves etc where it's either fully visible or it's fully transparent - This is less expensive than alpha blending. Texture 2 - Normal Map You would get the RGB data by selecting the bake type 'Normal' The alpha channel - What the heck is a 'Specular Exponent?' So what specular exponent in normal map alpha really means, is that it takes each pixel's alpha value from the normal map (from 0 fully transparent, to 1 solid) and multiplies it against the Glossiness setting in-world What this means in practice is that the alpha channel on your normal map is really important because it controls how glossiness data of your material. The confusing part Ok so we know that the alpha channel on a normal map controls glossiness, so we need to bake 'Glossy' from the Bake Types in Cycles. Right? Right?? Unfortunately not, baking Glossy in Cycles produces RGB data that is actually used for our specular map >.< So what the heck do we bake? Well, we want a grayscale image to use as glossy, and unfortunately there is no option for that - However - There is an option to bake the inverse of what we want - the Roughness bake which is literally out glossiness data inverted. So, to get the correct alpha channel 1. Bake Roughness 2. Use an image editor to Invert roughness, this is our greyscale Glossiness map. It's also possible to invert the texture inside Blender's Image Editor by going to Image -> Invert -> Invert Image Colors Texture 3 - Specular Map RGB Channels - I've reached the conclusion that this is the 'Glossy' bake from Blender as it produces data that looks the most correct to me in my experience Alpha Channel - Controls the reflected environment map - IE it's a multiplier for this In theory this is good for metals, but Honestly SecondLife's environment map sucks so I tend to avoid using this. Some PBR materials you might download come with reflection maps - I think what you'd do is simply plug the reflection map into emission inside your node editor, and then bake emission to get this data if you wanted to reflect the 'environment' but honestly today that effect sucks so Currently SecondLife is in the process of implementing PBR/GLTF and when that happens, using the Alpha Channel on specular will become more desirable. When that happens you'll want to experiment with the alpha channel on specular, but actually you'll be uploading PBR materials so this whole thing i'm teaching you now will become legacy information. How do I channel pack textures? In my experience, photo editors such as Photoshop, Affinity Photo do not work as they destroy RGB data when a pixel becomes fully transparent for reasons beyond my understanding The best way to channel pack a texture is to use a tool built explicitly for channel packing I recommend the Multi-Channel Image Tool it is free, open-source and it's the easiest to use channel packer I've found. If you're not familar with Github, you download it by clicking "V.1.2.0 - Optimized..." under 'Releases' and then clicking 'Multi-Channel-Image-Tool.zip' to download the program. On the Combine tab in the program, there is an R,G,B,A tab, and you set the data for each of these in their respective tabs Example So for example, if I wanted to channel pack a normal map for SecondLife, I'd use my normal map texture for the R/G/B tabs, and set the channel to extract from the image to R/G/B respectively. Then for the Alpha Channel, I'd select my Glossiness texture (Inverted Roughness). It will default to extracting Alpha data from the Glossiness map, which is wrong our image is black and white. So we'll just choose 'Red' as black and white images have the same value for Red/Green/Blue. Finally I'd click Save as, now I've saved a channel packed image! Anyway that's my wealth of knowledge on the subject. I hope it helps you and any other SecondLife resident looking for this info
  7. The funny part about the short skirts is that whilst a lot of it is skimpy for the sake of being skimpy, the other reason is that the further you rig a skirt below the butt it becomes exponentionally more a PITA to make rigging that looks nice. Time is money and all that. Wish SL would add physics skirt bones to the armature or something to that effect to make it easier..
  8. Probably because there would be too many tickets to manage. Servers generally get less stable the longer they are running. Most servers and the software they run are rarely completely water-tight and due to human error by programmers or hardware error can have memory leaks and other issues such as corruption that accumulate and degrade service. Restarting servers on a schedule is pretty standard stuff, it is a form of preventative maintenance. It's always going to result in more up-time if the server restarts on a schedule than waiting until the person who runs the sim notices/cares to report it.. don't forget not all sims are being monitored by their owners constantly. There's a debate to be had about how long between restarts though. Personally I reckon LL could get away with once a fortnight instead of once a week
  9. I actually prefer the Linden Chat UI simply because it can be folded down to take less space The firestorm one has these massive tabs on the left.. I think there's an option to have them over the top but then they are not all visible. Big space waste going on here, means the Conversation window is often getting in the way of everything. At least on the LL one you can collapse this down to just people/group profile pictures. I really wish Firestorm had this Unfortunately the default SL viewer can't be used in my sim because LL never added camera distance limit functionality or 3d parcels to LL so enforcing RLV viewers is the only way to get privacy in my sim. Not to mention all the developer stuff in Firestorm that I use on a daily basis anyway. Still, I hope one day we will get a better chat window.
  10. I mean by this standard aren't you basically describing every community and/or job ever as a cult? Like.. membership requirements to me is just another way of saying community standards.. A community without standards by definition is not a community, the definition of the word is a group of people with some unifying shared common interest(s) Closed communities.. Well actually this is the same point - an 'open' community isn't a community at all, a community that includes everybody is not a community at all Initiation rituals, symbolism, you're basically describing pomp and ceremony... something most people engage in, most people celebrate the things they care about, go out of their way to make people feel accepted and let others know that they are accepted. This occurs even at peoples jobs Uniforms is just a physical manifestation of expression of shared values. Most jobs have uniforms, most schools have uniforms except bar maybe some countries Esoteric meaning understood by only a small group, well again you mean like skilled work or perhaps people with hobbies, most people have interests they like to focus on that only a smaller group of people know as deeply about as them.. By this standard there are an uncountable number of 'cults' everywhere
  11. Can I propose something a little more radical to what everyone has been talking about so far? You know how in RLVa there is the function @camdistmax which limits the distance a user can alt-cam away from their avatar What if LL took the code for that, and put it in their viewer/server as a standard llFunction (that requires camera control permissions/experience permissions) LL Could then use their fancy high capacity event regions and use them to host skybox instances for people who want to live in Skyboxes. These skybox regions would be experience enabled with one of LL's global experiences, and use the camera distance limit of say 64 meters so the skybox owner can see throughout their skybox but can't peep into their neighbors. These people can continue to use orbs because in a skybox region you won't have explorers. The security orbs won't upset anyone in a region like this. Then, once these skybox regions are available, we have say a one year transition period, after which skyboxes and their orbs are no longer allowed on the mainland. Now every explorer has a right of way in the air. Mainlanders can continue to put up banlines if they wish, but I'm guessing with the availability of these skybox regions, the people who will choose mainland will be there for social reasons, rather than for a lack of a better option.
  12. Further experimentation Hooking CHANGED_REGION as the point where RLV restrictions are cleared works fine. I thought I'd be smart and see if I could fix the ghosted HUD issue by holding PERMISSION_ATTACH and then calling llDetachFromAvatar before the Experience can 'detach' it incase the Experience detach is what is buggy.. changed(integer change) { if (change & CHANGED_REGION) { llOwnerSay("@clear"); if (llGetPermissions() & PERMISSION_ATTACH) { llDetachFromAvatar(); llOwnerSay("Detach called"); } else { llOwnerSay("Permissions lost"); } } } I do receive the "Detach Called" message event in the chat, indicating that llDetachFromAvatar was run, but the HUD remains visible on the Client-side, as a ghosted attachment . Luckily simply right clicking the HUD makes it disappear. So all in all, managed to fix the RLV issue, but no fix for ghosted temp attachments..
  13. Also noting that, the RLV portion of my script did have an @clear RLV command on detach event but the RLV restrictions never cleared. I had a lot of scripts in my HUD that hook the attach event for one reason or another. I theorized that the other attach event handlers in other scripts could cause enough execution time to prevent the RLV one running. Seeking to eliminate attach event handling as much as possible I changed the behavior of some of these scripts to use CHANGED_OWNER when possible or simply checking llGetAttached() during an event to determine attachment status rather than establish it from events. Now when I teleport out of the sim, though the HUD remains visibly attached until right clicked, the RLV restrictions are getting lifted at least. Progress!
  14. I just tried this, I put a script in my HUD that has been temp attached using Experience Permissions default { changed(integer change) { llOwnerSay("change " + (string)change); } } I then teleported out of my Experience enabled region (Note that temp attached items that were attached with Experience Permissions behave differently according to wiki) A change event was indeed raised and a message entered the chat. change 768 768 is CHANGED_REGION and CHANGED_TELEPORT. So both events fire from a temp attached item via experienced perms when leaving the experience region
  15. In my sim Kokoro Academy we use the Experience Permission system to llAttachToAvatarTemp(...) a multi-function HUD of sorts. One of the functions of the HUD is to issue a few RLV restrictions to get privacy in the sim (Our layout is ill-suited to parcels for many reasons). Notably we limit camdistmax, fartouch and sittp to 16 meters. This all works fine, until you teleport out of the sim - In theory, temp attachments are supposed to detach from the agent when leaving the sim. In practice, they often only get detached on the server side, and remain attached client side as a 'ghosted' HUD. Often, simply right clicking a ghosted HUD is enough to get it to disappear, but sometimes you can't remove it until relog. The RLV restrictions therefor become applied even outside our sim because the viewer thinks the HUD is still attached when it isn't. There are even cases where the HUD is detached client side, but somehow the restrictions remain. Obviously that is problematic, but so far I've not had any clever ideas to workaround this issue other than advise people to simply relog after leaving the sim - Not ideal - Anyone came across this problem before, knows of a workaround? Are there any things that can be adjusted about a temp hud, to make it less likely to be ghosted? Or a way of issuing RLV restrictions in such a way that leaving the parcel they were issued from will always remove the restrictions, even if the HUD remains attached client side? Any help at all would be appreciated
  16. Personally, I would avoid assignment inside a function call, purely for maintainability sake - Think about the you in a couple of years time who has to edit the program, now it's not obvious if it was meant to be == or =. It's harder to spot mistakes The conditional assignment idea seems solid to me.
  17. Anything that the World Economic Forum has it's grubby little hands on is something that I look at with extreme distrust. Their hands are deep in the pockets of all the wrong people. These are the people who make plans for our futures without our permission. The people who say that we will 'own nothing and be happy'.
  18. No mod = No sale for me too. I think one of the things the causes this upset that we need to vent about it is that we're constantly getting our noses rubbed in it. By default, every time we search no-mod items show up in the search results. Yes you can then modify the search to show only mod items, but once you've seen it, the damage is done - You've been reminded of how much greed there is out there and how much talent goes to waste because of greed. Worse still, you might forget about this greed and forget to check if the item is mod before purchase and be grieved when you find out it isn't. This leads to an unhappy shopping experience. IMO, as shoppers we should have shopping preferences, so that things we don't like aren't rubbed in our faces every time we shop. If we can require our search results to all be mod, we don't have to be reminded of this greed all the time and the grief is reduced.
  19. When I look at Zuckerberg I see someone who's mind and body are still in their college years, but has found themselves with so much wealth and power that it has corrupted their soul.
  20. I once went exploring from the Aquarium in Bay City and headed East I had been exploring for an hour without problems. The moment I left Bay City and hit the mainland, it became a maze of ban lines and no obvious walking path. I found myself circumnavigating a giant ugly 2D texture 'privacy wall'. I made a wrong turn at some point and got teleported home. It was the first un-managed mainland sim I had crossed into too - Not even two sims in! I personally see the old unmanaged mainlands as a bit of a failed experiment to be honest. LL asked the question - "what would happen if we just made land development a free-for-all with no rules or standards?" and the answer of course is an unmitigated mess with no consistency or standards. There might be some people who love the mainland in its current form, but I'm afraid I'm not one of them. That's not to say that I think that mainland development should be top-down - On the contrary I recognise that things are usually better from organic growth. But rather I think that there should be some basic rules and standards that should be abided by so that there is some standard of enjoyment for all, and I hope future mainland developments will have some more standards.
  21. I tried the Performance Improvement Viewer today, some notes Firstly, to answer the obvious question, the performance improvement was actually pretty good - I logged in next to my Premium Linden Camper home with Ultra settings and draw distance 128 and the viewer was managing a stable and smooth-to-the-eyes (no stutter) 20fps. On firestorm with equivalent settings I'd get about 5fps and not a smooth 5 either. So firstly, let me just say that, that might not sound like a big deal, and I can already hear the people demanding 60fps. But the effect it had on me was big - Usually when I visit my premium home, I lower my draw distance, and I never leave because either I have to turn my graphics down to get decent FPS or keep my draw distance so low it's not enjoyable to explore. But because the FPS was so much better, I actually went exploring and found it enjoyable! I spent a good couple of hours just roaming around the continent and seeing things I'd never seen before. To me that was pretty revolutionary and I can't overstate how transformative that felt. As I was exploring, I noted that the FPS remained smooth, even when turning my camera etc. Eventually I just closed the performance window and just had a walk around. Lag was no longer an issue that had to be at the front of my mind whilst exploring. Were there bugs? Yes, but nothing major - Notably I noticed on occasion that some textures near me or even under me such as the road blurred on occasion despite definitely already being cached. A couple of buildings during my exploration seemed to be stuck in lowest LOD until I cammed close. Now for some criticism of Belissaria! It's a damn maze! There's no signage or anything, and lots of dead end roads that there is no warning it's a dead end such as a sign. During my wander I didn't encounter any people, or any natural social spots such as shops, bars etc, and I feel like that is a missed trick for making these sims nicer place. I also felt like too much space was given to the car and not enough to the humble avatar - Especially over bridges where the sidewalks become narrow enough that the lamp-posts take up the entire sidewalk and you have to use the road. It would have been nice to have some trails that are just for walking. Sim crossings still suck, and at one point I ended up under the road http://maps.secondlife.com/secondlife/Sutherfield/172/252/30 here and had to use someones furniture inside their house to escape from under the road - I then got stuck inside their house because the doors were locked!!
  22. First time I've heard the performance viewer will be multi-threaded, but that is good news if it is true. I've been purposefully clinging onto my older i7 with less cores and higher clock speed just for SL. I'd be interested to find out how many threads the new viewer will be able to take advantage of, if nothing else to help inform the next upgrade. I imagine there are diminishing returns on splitting the workload out but it's not an area I'm familiar with. nerd talk: I've always wondered why CPU's/Mobo designs are limited to one clock speed, it's always made sense in my mind to have a CPU chip that behaves as two separate CPU's, one with a low clock speed and many cores, and another with a high clock speed and a few cores. You could then get the best of both worlds. Some programs will just never be multi-threaded particularly business applications where transactions happen synchronously
  23. The truth is, every person you meet chooses to live life each day for different reasons. Your life might seem meaningless to you, because you are waiting to be given meaning, but the truth is the only person who can give meaning to your life is you. My advice would be to soul search and think about what and who is important to you, and how you can protect and contribute towards those things and people. Sometimes that means you need to grow as a person and learn new skills or become stronger to get along with yourself. In my opinion, having a sense of purpose.. duty, like you're a part of your world and help it spin around will bring infinitely more satisfaction than the quick dopamine hit of consuming goods etc.
  24. When I think of marketing I think of attracting new customers, and choosing which customers to attract. Generally, the best customer to attract is the loyal one who will use your service to the end of time. SecondLife has customers like this today, but they are ageing. People who haven't used SecondLife before and are our age aren't as open to trying new things. My suggestion would be this - Re-open the teen grid and introduce new people to SecondLife whilst they are young and open to new ideas and learning new concepts, give them the confidence to use and enjoy the platform and you'll have new customers for life.
  25. I do wonder how well a script function that allows you to set script priority at run time will work - Specifically, lowering the priority might not work, depending on how it is implemented What most people are not aware is that inside the animation file, besides the base priority, each individual joint in the animation also gets a priority. Most of the animation software people use hides that fact from the user so most people are unaware, but if you dissect the anim file format it's there. Tools people typically use to animate, such as Avastar, if you look at a .anim animation file produced by Avastar with AnimHacker you'll see that not only does Avastar set the base priority to what you exported, but they also set the joint priority to the same value. That means that most animations out there now have non-zero joint priorities. I actually suspect (programmer instincts) that what Avastar exports is kinda wrong and the joint priority should be set to zero to indicate they use the base priority - Because the trouble is now if you were to just edit the base priority to a lower value, nothing would change because the viewer would instead just use the joint priorities, which are all higher than the base priority. If the LSL function were made to override all the joint priorities, that might mean that if say your future AO with the ability to set priority had a walking animation where the arms had a lower priority to the legs to allow you to hold bags and stuff, that data would now be flattened and lost, which is something to think about.
×
×
  • Create New...