User:Andrew Linden/Mentors QA/2008 04 09

From Second Life Wiki
Jump to navigation Jump to search

Transcript of Andrew Linden's office hours:

[10:20] Feynt Mistral: Yay, Andrew's here.
[10:20] Asriazh Frye: they dont screw in a lighbulb right away. they first invent a better system where lightbulbs dont have to be replaced... which takes some time, of course
[10:20] Lexie Linden: Hi Andrew : )
[10:20] Mia Linden: Welcome Andrew!!!
[10:20] Thely Anansi: lol Shamara
[10:20] Andrew Linden: Hello, sorry I'm late.
[10:20] Andrew Linden: I was fixing bugs.
[10:20] Andrew Linden: And totally forgot.
[10:20] Feynt Mistral: I told them to tell you to defy physics, Andrew, but apparently they didn't listen. >)
[10:20] Rails Bailey: features andrew
[10:20] Andrew Linden: I was hoping someone would remind me, but forgot to remind them to remind me.
[10:20] Lexie Linden: haha
[10:21] Mia Linden: Volunteers please join me in welcoming Andrew Linden our wonderful guest for today's topic Havok 4! And now without further wait hereeeeeeeeee's Andrew!
[10:21] George Linden: XD
[10:21] Miralin Dunheved claps.
[10:21] Bev Aya claps enthusiastically
[10:21] Andrew Linden: Ok, I'm going to quickly summarize what our plans are with Havok4
[10:21] Andrew Linden: then open it up to questions.
[10:22] Andrew Linden: I don't really have much as far as announcements or topics to discuss.
[10:22] Andrew Linden: As you know, we've been working on the Havok4 project for a long time... 1.5 years about.
[10:22] Andrew Linden: Originally we thought it would be about 2 months.
[10:23] Andrew Linden: But it turned out to be about four months of design/cleanup. Then 8 months or reimplementing the parts we had ripped out.
[10:23] Andrew Linden: And another six months of just bug fixing and tweaking to get as close as possible to Havok1 behavior.
[10:24] Andrew Linden: We finally decided it was good enough to to roll out to all of SecondLife -- the bug count was small enough and the payoff was big enough that it was the right decision.
[10:25] Andrew Linden: The payoff is that the SL simulators are much harder to crash when overloading the system with physics problems.
[10:25] Feynt Mistral: i.e. the 100 or so people here now.
[10:25] Multi Gadget v1.52.0 by Timeless Prototype
[10:25] Andrew Linden: Someone here in LL has a graph showing the physics related crashes experiencing a 93% drop after the Havok4 release
[10:26] Andrew Linden: however... that is to be expected. The primary goal of Havok4 was to prevent such crashes. And it turns out, the only way to fix that "bug" was to overhaul the physics engine.
[10:26] Andrew Linden: Anyway, it is out now, and we're still working hard to fix the remaining (and the newly discovered) bugs.
[10:27] Andrew Linden: We'll continue to fix Havok4 bugs for a few weeks. That is, the Havok4 team is not splitting up or changing projects.
[10:27] Andrew Linden: We'll continue what we're doing until problem count is small enough that it won't overwhelm the normal maintenance teams.
[10:28] Andrew Linden: After that, the Havok4 team (3 developers, 1 tester, and a project manager) will probably split up and join other projects.
[10:28] Andrew Linden: I'll probably join the maintenance team for a while.
[10:29] Andrew Linden: Adding new features will happen sometime after that.
[10:29] Andrew Linden: Ok, so that is the current state of affairs. I'll open it up for questions now.
[10:29] Mia Linden: Awesome Andrew and ty!
[10:29] Mia Linden: First Question:
[10:29] Mia Linden: Dragger Lok: What if anything is being done about lltargetomega and llSetLinkPrimitiveParams PRIM_POSITION being seriously affected by Havok 4?
[10:30] Phli Foxchase: http://jira.secondlife.com/browse/SVC-1910
[10:30] Andrew Linden: I know about the TargetOmega issue. In fact, I think Simon is working on it now.
[10:31] Andrew Linden: I'm currently working on some camera bugs (rapid oscillations of the camera location in certain circumstances) and was planning on jumping on the TargetOmega problem too after I'm done with that.
[10:31] Andrew Linden: I haven't heard about the llSetPrimitiveParams() bug yet, but if it is a bug then it falls under the category of stuff we are working on right now.
[10:31] Andrew Linden: ATM we are fixing bugs.
[10:32] Andrew Linden: There is a new update that is in the pipeline... it might get out this week, and it has a few bug fixes in it.
[10:32] Andrew Linden: I can't remember the whole list. You'll have to read the blog post when it goes out.
[10:32] Andrew Linden: Next.
[10:32] Mia Linden: Second Question: XLR8RRICK Hudson: My question is " Do you know that with Havok 4 some but not all 20x20 mega prims all with the same texture are 25% Phantom " The partial phantom prims do not show as set to phantom and toggling them does nothing, they must be replaced to work propery.
[10:33] Andrew Linden: I have not heard about the "partial phantom" bug yet.
[10:33] Andrew Linden: Sounds like a bug.
[10:33] Andrew Linden: next.
[10:33] Mia Linden: Feynt Mistral: I, and a few others, are inspired by the recent blog posting about _considering_ mega prims of truly epic proportions. You yourself had mentioned some ideas to prevent annoying cross over between parcels for objects based on Havok 4. Are there any near future plans to explore and perhaps test these ideas on the beta grid?
[10:34] Andrew Linden: Yes, "megaprim liberation" is something that I want to work on, soon after we're done fixing bugs in Havok4.
[10:34] Andrew Linden: I was planning on doing a little bit of work on that on the side, while still in the maintenance team.
[10:35] Andrew Linden: I had been planning on clamping megaprims that had sides > 256 meters in Havok4, but at the last minute I reconsidered and removed that limitation.
[10:35] Andrew Linden: I had Sabin Linden do a scan of regions to find those that had megaprims > 256 on a side
[10:36] Andrew Linden: and then I went around and did a spot-check on those regions that were using them, to see how they were being used.
[10:36] Andrew Linden: Most of them were using them for sky effects, and had properly set the phantom bit where necessary.
[10:37] Andrew Linden: I'm primarily against megaprims for their grief potential, and their exasperation of the "object overlaps into the neighboring region but is not collidable" problem.
[10:37] Feynt Mistral thinks they should be limited to the parcel's size.
[10:37] Andrew Linden: After browsing some of the ways megaprims are being used I decided that liberating megaprims is a pretty high priority issue
[10:38] Andrew Linden: which is why it is on my very short list of things I want to work on post-Havok4.
[10:38] Andrew Linden: Next.
[10:38] Mia Linden: Kwant Capalini: I have noticed as have some other residents , that hovering whilst flying is now not static, and one tends to descend slowly , is this as a result of havoc4 physics?
[10:38] Andrew Linden: That is a known bug. We want to fix it. It is not fixed yet.
[10:38] Andrew Linden: next
[10:38] Mia Linden: Neovo Geesink: Cam Havok4 allready be tested in the Beta Grid?
[10:38] Andrew Linden: And yes, it IS a result of Havok4.
[10:39] Andrew Linden: Havok4 is currently deployed to most of the Beta Grid, so you could test there, yes.
[10:40] Andrew Linden: The beta grid happens to be the only place where you can still test some Havok1 regions too.
[10:40] Andrew Linden: There are 3 Havok1 regions still up there... "Fame Havok1", "Fortuna Havok1", and "Freelon Havok1". I think
[10:40] Andrew Linden: next
[10:40] Mia Linden: Arianwen Mercy: will the physical engines even back out .. I noticed that many scripts have been messed up the last few days.
[10:41] Andrew Linden: I'm not sure I understand the question. Also, I'd need more info about how the scripts are "messed up".
[10:41] Andrew Linden: Rephrase that question and ask again.
[10:41] Andrew Linden: Next.
[10:41] Mia Linden: Ianmc McMahon: How much of the physics has moved into the browser
[10:42] Andrew Linden: The SL client has no physics. Well, almost none.
[10:42] Andrew Linden: It does some object motion extrapolation, but that is about all.
[10:43] Andrew Linden: There are no plans for moving the fundamental physics to the SL client, however some more physical visual effects might eventually be added.
[10:43] Andrew Linden: Such as... splashing in water, bouncing particles (bouncing off of objects), and perhaps some better avatar animations.
[10:44] Andrew Linden: The fancier physics effects for the SL client are not in the list of projects for the short term, that I know of.
[10:44] Andrew Linden: That is. if we work on them it will be more like a year away rather than months.
[10:44] Andrew Linden: next
[10:44] Mia Linden: Daten Thielt: Now that havok 4 is in, can we expect a new wind simulation that will interact with Havok 4
[10:45] Andrew Linden: Hrm... wind. There are no plans for that right now
[10:45] Andrew Linden: however, it is a pretty isolated project and could be worked on without significant repercussions on the rest of the code
[10:46] Andrew Linden: so it would be "safe" to work on it if a developer had a mind to
[10:46] Andrew Linden: My guess though, is that a better wind implementation is way down the road... a year or more.
[10:46] Andrew Linden: What is more important? Megaprim liberation or better wind?
[10:46] Andrew Linden: Questions like that come up for every project we work on
[10:46] Dragger Lok: portable content
[10:47] Rails Bailey: stable client
[10:47] Andrew Linden: and I suspect there are a great many projects that would get prioritized over improved Wind.
[10:47] ToThePoint Garfield: a better physical engine, someone replaced it with a whorse version
[10:47] Andrew Linden: I'd love to work on wind though. A project like that would be like candy -- very fun.
[10:47] Andrew Linden: next
[10:48] Mia Linden: Edward Griffith: For persons with products out there such as vehicles or Combat items with low push that are hurt by Havok 4 - do you advise waiting for fixes or hacking to get around the problems?
[10:48] Andrew Linden: Yes, I do advise waiting. I'm planning on working on those bugs this week.
[10:49] Andrew Linden: We hope to fix alot of bugs in the next few weeks, and we'll be deploying updates weekly if we can.
[10:49] Andrew Linden: next.
[10:49] Mia Linden: Jabba Aabye: Little question: I noticed that Havok4 is primarily on stabalizing the physics engine, what is going great hearing about the 93% drop of crashes.. But didnt it supposed to increase performance, like the beatifull movies sometimes show on beta testing a few months ago. I am not experiencing that at the moment..
[10:50] Andrew Linden: There have been some performance problems yes.
[10:50] Andrew Linden: Many regions run slightly slower in general on Havok4, but most regions run better when under extreme load.
[10:51] Andrew Linden: A few particular bits of content cause noticably more lag on Havok4 -- vehicles in particular.
[10:51] Andrew Linden: We aren't prioritizing such performance bugs very high right now... we're trying to fix broken content
[10:52] Andrew Linden: however you should expect some fixes going in there eventually.
[10:52] Andrew Linden: There was one bug fix already related to slow performance. It is in the next update already.
[10:52] George Linden: (Jabba may also be considering the Windlight graphical upgrade :) with the two coming out around the same time, could be a tiny confusion :))
[10:52] Andrew Linden: Simon Linden found some memory consumption problems.
[10:53] Andrew Linden: His fixes should specifically help some "void regions".
[10:53] Andrew Linden: next
[10:53] Mia Linden: Neovo Geesink: Has the Beta Viewer versus the RC4 viewer differences in handling the Havoc's or is that entirely seperate from our Viewers / Clients?
[10:54] Andrew Linden: Havok is 99% seprate from the viewer.
[10:54] Andrew Linden: The only connection between the viewer and the Havok4 project that I now about is that we've increased the height limit for editing objects to 4096, I think.
[10:54] Andrew Linden: However, the current SL client only allows you to edit up to 768 meters high.
[10:55] Andrew Linden: Eventually a new client will be released that will raise the edit limit to agree with the Havok4 regions.
[10:55] Andrew Linden: The necessary changes are in the SL client 1.20.0 or higher, so whenever that is released is when the skies will open up for editing.
[10:55] Andrew Linden: Next.
[10:56] Mia Linden: Robin Roar: All rotation scripts on the Corinaldo sim - have stopped - New scripts work - also if the objects are picked up and rerezzed they work - But they can not be just reset - is this from Havok?
[10:56] Andrew Linden: Yes. That is the llTargetOmega() problem which was the very first question asked, IIRC.
[10:56] Andrew Linden: It is known.
[10:56] Andrew Linden: Next.
[10:56] Mia Linden: Arianwen Mercy: sorry was not clear... sigh .. smiles ... well first I noticed that all my TP stations was off to the pioint have having to rescript them to landing point ... also there has been issues in many of the sims I belong to concerning Vendor issues... as well as i wear a hugger and it bounces now when I give someone a hug
[10:57] Andrew Linden: I think I've heard about the hug problem. That is definitely a Havok4 bug.
[10:58] Andrew Linden: The "TP station" bug is new to me. It is very likely a Havok4 bug, however I'm unclear as to what type of TP station you're talking about.
[10:59] Andrew Linden: If it is a TP station using the sit-and-standup-far-away "misfeature" then... it is probably a Havok4 bug.
[10:59] Arianwen Mercy: it is
[11:00] Andrew Linden: Hopefully someone has filed a JIRA item on it. Eventualy those JIRA items get dealt with. Often they are raised internally for developer attention.
[11:00] Andrew Linden: That is the primary way bugs get processed, btw.
[11:00] Andrew Linden: Public JIRA items are scanned for "high priority" problems. Those are pulled inside and assigned or raised for consideration.
[11:01] Andrew Linden: Next.
[11:01] Mia Linden: XLR8RRICK Hudson: " Its seem Havok 4 over reacts to .010 protrusions on the ground will or can it be turn down a bit ?
[11:02] Andrew Linden: I'm unclear on what kind of overreaction you're talking about. By protrusions...
[11:03] Andrew Linden: I take it you're talking about either small edges and their effect on avatar motion, or else you're talking about penetrations and the penetration resolution code (the "push object out of penetration" effect).
[11:03] Andrew Linden: The first problem, where avatar sometimes bounce over stair edges and small obstacles... yes that can be fixed and is one of the bugs I want to fix.
[11:04] Andrew Linden: If it is the second... I'm not sure about the details of the problem and can only speculate.
[11:04] Andrew Linden: Perhaps you could elaborate on the exact problem.
[11:04] Andrew Linden: next.
[11:04] Mia Linden: Dawny Daviau: Once the Havok4 system is fully stabilised and mimics the original Physics Engine, Will there be any plans to enhance the physics capabilities in the future?
[11:05] Andrew Linden: Yes. There are a bunch of features that are now possible to implement now that we have Havok4
[11:05] Andrew Linden: mostly because of some cleanup in the code that happened during that project.
[11:06] Andrew Linden: For example, megaprim liberation is a feature that will be much easier in Havok4 than Havok1, so it could be considered in that category
[11:06] Andrew Linden: Also, along the way I had a lot of ideas on features I'd like to implement
[11:06] Andrew Linden: some of them are pretty easy to do actually
[11:07] Andrew Linden: I'll just mention a few that came to mind. I can't remember all of them that I've been thinking about...
[11:07] Feynt Mistral coughs, "Joints."
[11:07] Andrew Linden: (1) per-object collision hints that could be used to simplify an objects collision shape
[11:08] Andrew Linden: for example, suppose you wanted to make a 200+ prim vehicle, but really just wanted it to collide like a very simple convex shape
[11:08] Andrew Linden: perhaps you could just check a box in the edit tools that says "Make this object collide like a bounding sphere"
[11:09] Andrew Linden: or a box, or perhaps the convex hull of the entire collection
[11:09] Andrew Linden: (2) per-prim phantom settings
[11:10] Feynt Mistral: He's saying they wouldn't need to be limited to 31 prims. You could make it 255 prims if you wanted, but the actual physical representation could be like... a box, or a couple boxes with some cylinders for wheels.
[11:10] Andrew Linden: That is, perhaps you could specify that the 300+ prim dashboard in your airplane, the one with all the numbers individually crafted from prims, has nothing to do with the collision properties of the plane
[11:10] Andrew Linden: so the per-prim phantom setting could be used to NOT add those prims to the physics engine
[11:10] Andrew Linden: There are more ideas... such as adding "joints" back into the system.
[11:11] Andrew Linden: The short of it is that we'll be adding new features that take advantage of the Havok4 physics engine soon
[11:11] Andrew Linden: next
[11:11] Mia Linden: Feynt Mistral: Have you considered client side physics to ease sim tranferring? It would seem like having the client tell the sim it's crossing into what its intended heading and speed are, and interpreting whether it can go where it intends immediately upon entering the sim (as opposed to walking through walls that broach the edge of the adjoining sim) would be a good idea, and a more seamless way to do the transition.
[11:12] Andrew Linden: No we won't be adding that to the client.
[11:12] Andrew Linden: The real solution is to allow objects to collide across region boundaries
[11:12] Andrew Linden: We did some design on that a long time ago and think we know how to do it right, but have never had the chance to do it.
[11:13] Andrew Linden: I've got some new ideas on that, and plan on implementing the first few stages of that project this year.
[11:13] Feynt Mistral points out the other flaw of losing control for anywhere from 2-5 seconds between sim crossing, and then suddenly snapping some place you didn't expect to be.
[11:13] Andrew Linden: What we *should* move to the client is better avatar animations and compensations when colliding with, standing on, or climbing up objects.
[11:14] Andrew Linden: doing "physics" on the client would also enable better camera motion, avatar foot placement, and stuff like that
[11:14] Andrew Linden: next
[11:15] Mia Linden: Ashlin McMahon: Mia what are the chances of new griefing items being built due to the havoc 4 such as White Noise? [10:53] Ashlin McMahon: How is that gonna be bombarded the new pyhsics open up a whole new world to the griefers.
[11:16] Andrew Linden: I'm pretty keen on preventing grief modes via code logic. That is, reducing them by putting fundamental limitations into the world as opposed to setting support policies.
[11:16] Andrew Linden: So, I'm always thinking about how to change the logic to eliminate grief modes.
[11:17] Andrew Linden: I don't know of too many new serious grief modes that are Havok4 specific,
[11:17] Andrew Linden: and in fact, I don't believe there are a huge number of them.
[11:17] Andrew Linden: In any case, I would consider new grief modes to be bugs and would be eager to fix them.
[11:18] Andrew Linden: next
[11:18] Mia Linden: [10:53] Asriazh Frye: i saw that "water sound" for Linden water got added in the upcoming 1.20.0 version of the client, tho still being commented out. does this have to do with the water splash thats being mentioned?
[11:18] Andrew Linden: I'm not familiar with the "water sound" feature or bug,
[11:19] Andrew Linden: so no it is not related to what I was mentioning about water splash.
[11:19] Andrew Linden: I was just saying that making the water splash (visibly) when your avatar moved through it,
[11:19] Andrew Linden: or when an object was thrown into it
[11:19] Andrew Linden: would be a client-only effect, and wouldn't actually have anything to do with the physics engine
[11:20] Andrew Linden: Now... floating objects, or damped motion for sinking objects in water...
[11:20] Andrew Linden: that would be a physics engine feature
[11:20] Andrew Linden: I'm not even sure we could implement such a feature... I sure it would actually break a bunch of content that relies on normal object motion underwater
[11:20] Andrew Linden: but it is fun to think about
[11:21] Andrew Linden: maybe someday we can make physical water effects a per-region or per-estate feature/setting
[11:21] Andrew Linden: next
[11:21] Mia Linden: SarahJane Rotaru: I have been called to several residents in distress due to what looked like bling scripts malfunctioning. Most of them seemed to be using ATI graphics cards and it occured after downloading the last release of the normal viewer. Is this havoc related. I have pictures of what they saw if it helps.
[11:21] Andrew Linden: No, that is not a Havok4 related problem.
[11:21] Andrew Linden: Havok4 is completely server side
[11:22] Andrew Linden: So you'd want to file that as a VWR- (viewer) bug in jira rather than a SVC- (service) bug
[11:22] Andrew Linden: next
[11:22] Mia Linden: Dawny Daviau: Will Havok 4 enable up and coming devices like the falcon, and other haptic devices to sense friction, and mass?
[11:23] Andrew Linden: No, haptic interface gadgets are primarily the domain of the client and its API
[11:23] Andrew Linden: however... I did some major cleanup of the avatar motion (hence all the bugs there) in havok4, with the goal of eventually enabling analog control of the avatar
[11:24] Asriazh Frye was refering to this which can be found at llvieweraudio.h: //#define kAUDIO_ENABLE_WATER 1 // comment out to turn off water ... sorry.. ^^;
[11:24] Andrew Linden: that is, controlling the avatar with a joystick, or other advanced intput device, rather than just the keyboard
[11:24] Andrew Linden: That system is not yet in place (it is one of those "features" that need to get done)
[11:24] Andrew Linden: but it is much easier to do in Havok4 than Havok1
[11:24] Andrew Linden: next
[11:25] Mia Linden: Last Question: Jabba Aabye: Just a little tease for us.... How does Mono and Havok4 perform combined..? Some testresults already?
[11:26] Andrew Linden: I haven't heard anything about that yet, except that Babbage Linden (chief developer on the MONO project) was interested in merging his code with Havok4
[11:26] Andrew Linden: The MONO project should drastically increase the efficienty of the script engine
[11:26] Andrew Linden: and should prevent crippling lag from too many or from very bad scripts
[11:27] Andrew Linden: the Havok4 project is primarily about preventing crippling lag (and crashes) from the physics engine
[11:27] Andrew Linden: so with the two together you should have a simulator that is very hard to crash or create terrible amounts of lag
[11:28] Andrew Linden: There is a third system that contributes to lag on the simulator... we call it the "interestlist"
[11:28] Andrew Linden: it is the code that figures out what update packets to send to what clients
[11:29] Andrew Linden: So when you get huge crowd of avatars in one region a primary source of lag (asside from all the attachment scripts) is the interestlist stuff.
[11:29] Andrew Linden: So, even with Havok4 + MONO it will still be possible to lag a region with too many avatars.
[11:29] Andrew Linden: The overhaul of the interestlist is called the "object transport" project
[11:29] Andrew Linden: and it will start sometime after Havok4 is done.
[11:30] Andrew Linden: That project involves both the simulator and the client
[11:30] Andrew Linden: and will probably be broken up into smaller deliverable projects over a year or more
[11:30] Andrew Linden: so that is the final ingredient to eliminating lag on the server side
[11:31] Andrew Linden: I estimated that once the object transport project is done we could easily hold 200+ avatars in a region without lag
[11:31] Andrew Linden: Another LL developer estimated that it is more like 1000+
[11:32] Andrew Linden: It is not clear what the final numbers will be, but it will definitely be an improvement when it is finally done.
[11:32] Andrew Linden: Fin.
[11:32] Mia Linden: Thanks Andrew woot woot!
[11:32] George Linden: :))
[11:32] George Linden: Wow, lots of questions answered, thank you!
[11:32] Mia Linden: Thanks to everyone for coming today
[11:32] ALLZAP Barrymore shouts: Thanks a lot for all yours explainations ^^
[11:32] ALLZAP Barrymore: Thanks a lot for all yours explainations ^^
[11:32] Torben Trautman claps Applause
[11:32] Lexie Linden: Excellent Q&A!
[11:32] Andrew Linden: Thank you all for having me, and sorry I was late (again).
[11:32] Mia Linden: be sure to watch the VTeam Blog for the Transcript
[11:32] Torben Trautman: WOOOHOOO!!!!
[11:32] Radioactive Rosca: GREAT!
[11:32] Miralin Dunheved claps
[11:32] Jabba Aabye shouts: Thanks Lindens!
[11:32] Aoife Lawson claps.
[11:32] Mia Linden: Andrew we do hope u will come and join us again!