Wingnut

Members
  • Content count

    4,214
  • Joined

  • Last visited

  • Days Won

    88

Everything posted by Wingnut

  1. How switch material by button click?

    Yeah, no UVs. just "colorKind" data. Still though, per-vertex colorKind data is nice. It's "the forgotten material" in many ways... especially dynamically animating it. It will be rediscovered... alive and well, in the ashes of dead HDR/PBR materials, someday. Jerome will hit a bad button one day, and POOM, a Mandelbrot fractal pattern will get painted into the skull's colorKind buffer... and the angels will sing. Or, maybe not. I used the OPEN feature... at this joint... http://jsoneditoronline.org/ to load this url... https://raw.githubusercontent.com/BabylonJS/Babylon.js/master/assets/meshes/skull.babylon It worked great, and for once... my dog smiled approvingly. hmm. Maybe he's sick.
  2. Hi gang! Newbie Wingnut here again, hope everyone is well. Here begins a massive "chronicle" of "Stupid Stuff That Wingnut Talks About". It will get big and stale, but what the heck. I goof around in 3dMax a bit, and I've seen their massive 'library' of procedural primitives/shapes, and one would think that BJS is destined to have every one of those, plus a few hundred more. Thoughts, anyone? Thanks!
  3. Actually, I like your current picture... no need to change it on my account. I just ALSO wanted to see you with eyes-up. The current picture... needed a "partner" picture... a counter-weight picture. *shrug*. Thanks for the other info, too! Vegas is pretty fun, in general. I don't gamble, but I loved the lights (esp after baking-up)... and I liked the drinking on the streets being a-ok. Take the glass from ANY bar, return it to ANY bar. And the ham steaks were cheap and big... which made me more thirsty... for more street drinking. I've visited LV 3 times. Once was for the NAB convention... I used to do some TV production crap... mostly a gopher. Wow, a music producer! That's... kind of hard work, I hear. Ever use ADAT? How annoying that was, eh? erf. Now we got hot-swappable hard-drives and flashcards that we can plug in/out of our workstations... smooth as silk (in theory).
  4. Dark theme working again, thx DK! On another subject... let's talk about one of my foremost BJS super-heroes, @RaananW. He seems like a great guy... smart as they come, kind, helpful... one of the best BJS superstars I have never met. Over a couple years time period, I've occasionally "sniffed his armpits"... looking for pictures/info about him. A few months after he joined, I gave him a little ribbing about his "forlorn" and humility-instilling eyes-down expression-less forum picture. A handsome chap... with a kind look. But I wanted to see his smile (just like I still want to see @ozRocker's smile). Anyway, I think I finally found a picture of a smiling Raanan... [link]. Woah, even handsomer and kinder-looking! Then I found ANOTHER picture... of a really big Raanan smile: (Hide this one from his girlfriend, who is NOT the girl in the pic) NOW we know what makes Raanan smile, eh? Getting some tension relief from a pretty girl. What's going-on here, you ask? Well, Raanan has just bet his daughter's tennis shoe... on a pair of tens. (yes, it IS the same "pair of tens" that are rubbing his shoulders) What happens in Las Vegas... STAYS in Las Vegas, right? (unless Wingnut is out to dig-up some dirt and smiles) heh I think Raanan is a guitar player and singer, too (cool). I once found a picture of a hippy-like musician which I think was Raanan, but I could not verify that it was him. I think he had girls hanging all over him in THAT picture, too. We love you, Raanan! (no, not in that way... in the other way) Thanks for hanging-out with us, for being a great helper and problem solver, and for putting-up with my razzing. Don't ever leave, okay? Okay, good. NEXT... we're going after @adam and @fenomas and @Raggar. We need to see THEIR smiles, too. Hide the data, guys. Wingnut Claus is coming... to town. ---------------------------------------------- Back on subject... have we (got) a working PG search for 'advancedTexture', yet? http://doc.babylonjs.com/playground?code=advancedTexture Nope. Darn. I think I broke that. Sorry, team. How are we going to find all of DK's cool Babylon GUI playgrounds... if we can't search for 'advancedTexture'? @Jaskar and @Haylan and the team might already be working on it, though (IF indeed it IS some further problems... caused by my non-standard character usage in a playground, which I think it is so). No hurry, guys... I'm just (overly?) worried about it (mostly because I caused it). I don't like breaking things, esp when it involves a currently SUPER-HOT topic like Babylon GUI. You can freely delete https://www.babylonjs-playground.com/#11JINV#22 THRU #35. (delete all PG's in that series > 22). I have home copy of #35, safe. In fact, you can delete entire #11JINV series... if needed. (thx) Party on! PS: Raanan... if I've crossed a bad line, PM me, I'll edit things, no problems.
  5. Wrap mesh around another object

    *nod* Very good! Yeah, I was a bit off-topic, sorry. Have you done some time in 3DSMax? Back in the 30's when I worked with Max alot (wink)... vertex selection was "the deal". If you could highlight ONLY the points that need adjusting, then you had a chance at scaling ONLY those points. The "vertex selecting" panel was quite a monster. See all those choose-able selection-type buttons at the top. Select by face, by edge, by cross-section, by vertex, all different ways of selecting. You would need the same sort of thing, I guess. Once you can select ONLY the points that need adjusting, THEN you might be able to apply scaling. Not easy, I don't think. In a way, I guess you are seeking an automated "overlap finder and corrector"... and/or a "too-close-to-overlapping finder and corrector". Something that iterates thru all the clothing verts, and checks how near they are... to the adjacent "skin" point "beneath" them. Phew. That's SO FAR over my head... that it's a hazard to aviation. heh. Sorry. I hope I didn't screw-up the thread by sticking my nose-in. Nice tool idea, though. I hope you/others can create something that works.
  6. Wrap mesh around another object

    Hi again OzR, good to see you. Slow replies, eh? I delayed THIS reply by 16 hours... just to see if smarter people than I... would reply. You already know that I'm more talk than action, and I'm often wrong/mis-directioned. But what the heck... I'll throw some opinions at ya. My PM buddy @gryff, author of the BJS "Blue Lady" demo (and many other great demos)... might have some good info, too. He stands pinged. Physics cloth is the way to do this. Physics particle/point impostors not only ATTEMPT-TO escape collision with meshImpostors ON THEIR OWN (without needing a VERY INTELLIGENT algorithm to avoid cloth-body overlaps), but they will also provide cloth hang-weight and flow-yumminess. But, have you got a Cray XMP5 or Silicon Graphics Onyx? SOME of the problem is with... WHERE to be skin-tight, and where to be looser-fitting... all on the same garment. Mesh-skinning on skeletons... uses weightedVertices to determine what will happen to Suzy's sloppy cellulite hip flab... should her skeleton/bones attempt to do a sit-up. Ideally, your garment vertices should also "listen-to" bone transformations. In a way, a garment is a second layer of skeleton skinning... yes? But with things like dresses, and even pants, the fit is often tighter in the waist, butt and crotch, but looser towards the bottom. Have you seen the Blue Lady demo on the BJS main site? I think it uses bone-transformation-listening weighted vertices to make her dress fit/move rather nicely. But there is no physics involved there, so the dress cloth won't flow/swing correctly when she does unexpected moves or when the winds blow. It fits well, but it doesn't "act" like cloth. Many of the "better" cloth and hair sims (physics-active/weighted flowing things) that we see from time to time... are rendered to video. The playback shows smooth flows, and it looks great. But doing that in real-time (non-video)... with the physics reacting to mouse moves, and lots of points/resolution in your cloth for max "liquidity"... that is asking a lot of a computer, JS-based or not. And, PLACING the cloth on the body will be tough, too. Then having overlap detection and correction code, while still honoring the garment's tendency to fit tighter on the top, looser on the bottoms, wow, that would be one hell of a project. It would almost be wiser to REQUIRE Spandex-like skin-tight clothing on all your models. Essentially, paint-on clothing. Sorry if this all seems like bad news. But I have watched you perform some "holy crap"-level miracles with BJS, so you certainly have a reasonable chance at doing this, too. These are some of the issues. But there are MUCH smarter people than I... for this subject. Let's hope they give better advice. Be well. Side Note: Attention all BJS forum users: Be sure to help others... whenever you get a chance. Thanks!
  7. How switch material by button click?

    Nothing important. I was only including your project in a short list of "big future challenges". Sorry if I caused an unwanted ping.
  8. How switch material by button click?

    Hi guys. In PM, AA and I... are talking. I have a feeling that AA's imported mesh (in his/her home project)... has multiple mesh and multiple materials. So I have asked him/her questions about this, and showed how to check length of newMeshes and scene.materials. I hope you don't mind me revealing some PM discussion, AA. I won't tell them about our secret gold mine, I promise. heh I have also asked him/her to open a free github account and put his/her .babylon file and skin textures... into some folders there... so we can do playground work on them. Meantime, here's are friend Dude... with a funny-looking torso texture. Dude has been temporarily renamed 'skull'. The REAL skull model... has no UV's. http://playground.babylonjs.com//#A4HF3#15 I also showed new-coder AA how it was somewhat important to put LOTS of "stuff" inside the loader onSuccess area. So, we are slowly but surely getting AA up-to-speed. He/She will soon be a pro. After I learn how many mesh and materials are used in AA's model, I will advance this PG series, and activate some HTML buttons... and we'll do some texture changing... like I did on the torso of our 6-mesh, 5-material friend... Dude. I also started teaching AA about UVs, and how some models don't have them. Also, teaching how to view .babylon files in Notepad or online JSON viewers... or via github (checking for UVs). I wanted to report where we are... in AA's BJS Orientation Class. I'm certainly no model-loading expert... but I think 'we' can get him/her started on a decent path. Thx for your assistance, aW! We'll get AA's BJS go-cart fired-up and motoring down the trail, no matter what it takes... right? (ahem) Then we'll get back to the great @Mythros player-slides-down-hills challenge... after some more doughnuts and coffee. heh. We haven't forgotten about you, Mythy, but your challenge requires heavy work. Physics or not, is the big question... for your challenge.
  9. switch between active camera?

    Hi again! YOU will become good in coding, too, IF you do research and experiments. It's easy. BabylonJS is easy to learn, and it promotes JS learning... wonderfully. This is because BJS makes it easy and quick... to make beautiful scenes. It has a great results-per-learning ratio/quotient. You'll be a BJS pro very quickly, as others have, and have great fun doing it. Now, off to work we go: In the Babylon GUI docs, in the Events section, there is a nice playground link. It has a button with an onPointerDown "observable". We can copy some of that code, and put it into other projects. http://playground.babylonjs.com//#A4HF3#8 Lines 98-122 add the button. In lines 109-11, we tell the pointerDown observer to switch cameras if the button is pressed. Easy, eh? Currently, the button is center-screen. You will need to do research to learn how to change button position. Research is good. You asked for a "nice transition". This is a QUICK nice transition. But you can also use ONE camera, and add various animations to it... that are triggered by the button. With animation, and perhaps using BJS animation ease-in/ease-out features, you can "fly" the camera to a new location. Then to another, and to another, all day long. Animation... is a SMOOTH nice transition, but not as QUICK as the current camera switcher. In this GUI, the invisible GUI "window" (called an advanced DynamicTexture) covers the entire screen. But you can also "map" that "window"... onto planes and other mesh... just like using an emissiveTexture on a mesh's material. Sometimes, putting buttons or "control panels" onto a mesh/plane, and then setting plane.parent = camera... works nice. Since the plane-o-GUI is parented to the camera, its turns and moves WITH the camera... and thus is always in-view to the user. All in all, you will notice that advancedDynamicTextures can be created in TWO different ways. One way, for full-screen work-area. The other way, for mapping onto a mesh as if it were a standard texture. AND, doing both ways, or MANY OF both ways... all in the same scene, is allowed and encouraged. Cool, huh? In this playground, lines 154-158, there are SIX made-for-mesh advancedDynamicTextures being used (one for each ring-of-text, each mapped onto invisible spheres). Wow, huh? Freedom to go crazy! Hope this helps.
  10. switch between active camera?

    Hi AA. Nice find! You have good eyes. Here's a playground demo that might be interesting. http://playground.babylonjs.com//#A4HF3#7 A property... scene.activeCamera is rather important. It chooses which camera to use. The code in lines 98-100... switches the camera every 10 seconds. In other projects, you may wish to use a keypress or GUI button... to change scene.activeCamera. A useful property, indeed. Note: Don't accidentally confuse scene.activeCamera with scene.activeCameras. Ok, party on!
  11. Way to Fit one Mesh into Another

    Hi again, guys. I still don't perfectly understand the goals, here. Just for fun, I want to remind that all mesh have bounding boxes, once created or imported-into a scene. The bounding boxes can be measured, and these measurements can be used to create/re-size other "container mesh". It is faked containment, but it still looks/works properly... to the end-user. Using these bounding box measurements, precise-sized gaps can be opened and closed between each mesh (in an array/line-up of many mesh). You can easily add/remove a mesh to/from a line-of-mesh... once you query/know the bounding box dimensions of the added/removed mesh. Let's pretend that the user has chosen some nice mesh models... to position side-by-side on a shelf. That shelf CAN be (seemingly automatically) re-scaled longer or shorter, and can determine proper shelf-width by summing all the widths of the bounding boxes of all shelf mesh. To users, it would APPEAR that the shelf is a smart, auto-scaling container/holder. But actually, it is all done with your "container scaling calculator" which gets applied to the shelf/holder after every mesh addition or removal. No CSG or other mesh-splitting is needed at all, in this case. Just up-scale or down-scale the container/shelf... based upon the measurements of the bounding boxes of the contained/held mesh models. Anyway, I just wanted to yap some more. I did a little time hiking/skiing in Alaska back-country. Although I have never cut-open a backpack and sewn-in more storage space, I have indeed done precise measuring of contained objects, and stretched some backpack materials... to make things fit. I say all this... just in case the goal is to build a shelf or box that is precisely-sized to fit chosen mesh, and allow re-scaling (re-sizing) as mesh are added/removed. If this is the goal, I'd say... make a "smart container". An "observer" watches for changes in the container.containedMesh array, and if it sees a change, it measures the added/removed mesh, and re-scales itself properly... to compensate for the change. https://www.babylonjs-playground.com/#1KH9RY#12 Somebody once wanted a topless box. I used an "indices chainsaw" to de-index the top side. heh. This would be a good container to use as a starter for "Lary's Auto-Sizing Container v1.0", right? Or not. PG#13 is active, too, with some .showBoundingBox = true... on the contained things. Ok, I'll shut up now. I'm probably off-topic, anyway. Be well.
  12. Object dedected

    Hi Julian. You ask for moon and stars, but I am nice. I will take you part-way down the trail. https://www.babylonjs-playground.com/#11CHPW#2 We import mesh. When pointerOver mesh, cursor changes, and we do background random color. We store ref to mesh... inside scene.hovered. When pointerOut, cursor normal, background changes color again. We clear ref inside scene.hovered. When pressing 'e'... nothing happens (unless something is hovered). Pressing 'e' when hovering model, background changes color again. (line 40) Warning: I added no canvas.focus(), so you must click on canvas ONCE... to make 'e' keypress active (when hovering). Line 40+ is where you will launch the window or gui panel... for mesh scene.hovered. Scene.hovered will contain the mesh that is hovered-over.. when 'e' was pressed. You CAN launch an absolute-positioned HTML div, or even an iFrame, if you wish. var myDiv = document.createElement('div') works fine...then use document.body.appendChild(myDiv). Then set myDiv.style.position = "absolute" and myDiv.style.top = some%, and myDiv.style.left = some%, etc. Or, you can use our new Babylon GUI system, which isn't as powerful as HTML, but it is VR and webVR ready. Lots of demos are nearby. It works great for launching information panels/containers, and its text does word-wrapping fine, but its containers are not yet ready for overflow/scrolling. I hope this helps. Stay in touch. Addendum: https://www.babylonjs-playground.com/#11CHPW#3 I decided to add a small pop-open panel-of-Babylon-GUI when you press 'e' while hovering mesh. Not very exciting, but a good starter for you, if you choose. Ok bye again.
  13. Way to Fit one Mesh into Another

    Hi Lary. I give my opinion. Generally, there are 2 methods: 1. Modify vertex data (somewhat difficult, but easier with simple mesh) 2. Fake it, using mesh-adding, re-scaling, re-positioning, etc. Make it LOOK-LIKE mesh is split, but actually create two narrower mesh. One of the two could be re-scaled original. The other... a new mesh. (Quite easy, but MUST be simple mesh) Simple mesh = box, rectangle, sideways tube, sideways cylinder, sideways triangle-stock (prism), stick-like things with consistent shape-profile along entire length of "run". Can you tell us more details? If your mesh is simple... perhaps possible. If mesh is complex, like inserting more tube into section of torus knot, then perhaps VERY difficult. Others are sure to comment soon. It is a lazy weekend for many. For others... they are raking.
  14. Very nice! I'm still curious as to WHY the physicsImpostor is slow to "catch-up-with" the force-positioned boxes. https://playground.babylonjs.com/#9T2J6Z#14 This time, instead of mesh.getAbsolutePosition() for impulse contact point, I use mesh.physicsImpostor.physicsBody.position. I impulse the impostor's center, not the mesh's center. Interesting results. I also changed the position/rotation init lines (47/48 and 61/62) from copyFrom to clone. No symptom changes seen... from that. I have 5 console logs just before each impulse. I am trying to "watch" IF/NOT the impostors are still increasing altitude (rising) when the impulses fire. Highlight the console log lines, then use the handy control-slash to activate them... and watch console. The impostors show NO RISING during the 5 console logs. The numbers in all 5 console logs... are the same. The impulses fire when the impostors are about .000998 off-the-ground, according to the numbers. The impulses shouldn't happen before the impostors hit a height of 20. Strange. Even my dog is scratching his beard.
  15. Perhaps that simply takes more time... the same as a delay? hmm. uhn... https://playground.babylonjs.com/#9T2J6Z#11 (back to old way, but...) Look at line 40. physicsImpostor.forceUpdate(); Seems to work. No need for line 42 timer. I got 10 good RUN's without any tumbling mesh. BUT... impostor.forceUpdate()... calls impostor._init()... which removes previous impostor and installs new one. That is precisely what @BitOfGold suggested we try. heh. But I sort-of like your #10 piece-by-piece value-installer, too. It is an interesting (yet still puzzling) solution. I think it's time for drugs, now.
  16. Yeah, that is certainly incorrect highlight positioning. I will try to investigate that, too. You on desktop? Laptop? Lesser things? Which browser? Same problem in other browsers? Anyway... I did some more playing on the PG. https://playground.babylonjs.com/#9T2J6Z#9 One box, one re-positioning, one impulse (after 3 secs). See value .000005 in line 42? Yep. SOMETIMES that is enough delay, sometimes not (on MY puter). Sometimes box spins, sometimes not. Weird. Higher value = less spinning. But I am still getting occasional spin with .001, so maybe micro-values in setTimeouts... aren't consistent enough to base tests-upon. *scratch scratch* :/
  17. Hi H! Yeah, the playground is being a bit weird. There is "gray selection" and "blue selection" in dark theme. Blue selection is the ACTUAL selection, and gray selection is "other occurrences". Here's what I see. If I fast-double-click on the word 'physicsImpostor', then SOME of the occurrences are in gray, and some in blue. Then just keep clicking-around on some of the occurrences, and the PG app seems-to become confused. There's even a LIGHT BLUE selection possible. I assume that is a blue + gray selection at the same time. And there's a LIGHT GRAY selection possible, too. Not sure what ITS story is. I think a new version of the editor was recently installed. It might take a little time to do some tweaks. Thanks for the report on that. I should try to find the docs for this new editor and see what I can learn... and perhaps update the playground tutorial with links to the new docs. Just a reminder to playground "adjusters": @JCPalmer made a suggestion a long time ago... to allow access to playground search... AT the playground. At minimum, we should have a quick-link to the playground search page. If we want to get fancy, allow the editor to be replaced with a full-powered playground search window. When opened, it defaults-to "results page from previous search" (for users touring-through a search-results list). If no previous search, it should be only the input field. I love Jeff's idea. We should somehow move forward with it, I think, and if possible. Yes, we DO have playgrounds-at-the-search-page (playground links and eyeball icons)... but we DON'T have search-at-the-playground-page. Not sure if plausible, but what-the-heck... still worth mentioning.
  18. Hi again, Herbert. https://playground.babylonjs.com/#9T2J6Z#3 In that PG, I turned-off gravity. setTimeout #1 (line 43) - elevates box1, then 2 seconds later, setTimeout #1b applies delayed impulse1 (lines 46-48) setTimeout #2 (line 52) - elevates box2, then 2 seconds later, setTimeout #2b applies delayed impulse2 (lines 61-63) setTimeout #3 (line 68) - removes all forces on both boxes, then immediately applies impulse2 to box1 (line 81) Things are "acting" a little better, eh? Deduction: hehe. Not sure. It seems we must wait for positioning to finish... before applying impulse. ALL of your impulses are applied-at mesh.getAbsolutePosition() contact point, so there should NEVER be any rotation. Any impulse applied at mesh center... should not spin the mesh. Yet your boxes spin like hell, unless we delay the impulses. It appears that these two lines... box.position.copyFrom(startPosition); box.rotationQuaternion.copyFrom(startQuaternion); (same for box2) ... require some time to complete. It seems... in the earlier PG's... that the impulses happen BEFORE the boxes have established their NEW absolutePosition. It make no sense at all. *scratch scratch* hmm. Without the impulse-delays, the impulses apply off-center force, causing box spin. Note: I changed the direction of impulse2 from -z to +z, just for easy watching. I also changed line 37, but it didn't fix anything, and I forgot to un-change it. I will continue to study and experiment. Perhaps others will join us and have more ideas. And, of course Herbert, if YOU have some ideas/thoughts, or discover something via more experiments, we want to hear about them. This is a very interesting issue. All of us want to determine why this is happening. Stay tuned.
  19. Hi Herbert! I haven't had time to study your playground well, but I did see one issue. http://doc.babylonjs.com/classes/3.0/physicsimpostor#setangularvelocity-velocity-rarr-void (Pardon the 'Set the body's linear velocity.' text, there. Supposed to say 'angular', not 'linear') ANYway... setAngularVelocity() requires a vector3, not a quat. (PG lines 51 and 62) That MIGHT make a difference... not sure. Party on!
  20. Best way to create tooltip

    https://playground.babylonjs.com/#0HT3SZ#6 Hi again TF! I've been goofing-around. I kept the button (and its buttonStack)... completely separate from label1/2 and their tooltipStack. That way I get more control over placement of tooltipStack. I put some "position work" into a scene.executeWhenReady() code-block - lines 52-64. To get a useful buttonStack._measureForChildren.left/top... I had to wait-for "when ready" or else those values were 0 and 0. And _measureForChildren is not necessarly a good thing to use, or useful. It's just something I discovered when using my in-browser object inspector... and it had some delicious-looking numbers to play-with. heh Inside a scene.executeWhenReady()... I now have good values for the buttonStack._measureForChildren values... showing 606 and 402 at the console. But, I am still thinking about HOW to use those numbers... to give you full control of tooltip placement IN-RELATION-TO the button which uses/has that tooltipStack. In other words, I would like the tooltipStack to be positioned RELATIVE to the buttonStack, and easily, and micro-adjustable. Sometimes things are in pixels, sometimes in percentages, so I'm still testing/experimenting. Currently, the tooltip popup is hard-set at 50px/50px in lines 59-60. But above that line... you can see where Wingnut was experimenting. I use my browser built-in object inspector to look at the properties on stackpanels and buttons... and use lots of console.log(whatever) to see what values are available, and when. But, generally speaking, I would NOT make tooltipStack be a child of buttonStack. Let them BOTH be children of AdvancedDynamicTexture, and use special positioning code (like I am attempting) to keep tooltipStack "loosely attached-to" buttonStack. It's SORT OF like parenting tooltipStack to buttonStack, but YOU keep control over relative positioning. Still thinking. Help from everyone... welcome. thx. Notice I "collapse" the width of tooltipStack... to make it disappear (line 95). This might not be the best way to make a GUI container appear/disappear... but it works. Better suggestions welcome, of course.
  21. On a different subject, I have noticed that the playground has suddenly gotten some advanced features. I see light-colored theme, code-folding, and an "overview view" along the editor right edge. AND, I cannot select dark theme. Does anyone have link to a forum announcement about these changes? Are we running a new Monaco? I broke a thousand things with those non-standard chars, didn't I? *sigh* It was my dog's idea to use non-standard chars for meter faces. It really was. I told him that we shouldn't, but he insisted. Really. ------------------------------- Can we do ANOTHER subject? Although @Mezzorio probably hates me for giving him a little razzing, recently, I want to work-on an issue that HIS project... illuminated. https://www.babylonjs-playground.com/#XCPP9Y#290 Papapanel is a stack panel that is set .isVertical = false (@line 34). Papapanel "holds" 2 other stack panels... panel (added @41) and panel_b (added @77). panel = green button-stack. panel_b = blue button-stack. I was hoping that papapanel.isVertical = false... would place green button stack BESIDE blue button stack. Does anyone know HOW to put panel and panel_b, side-by-side, instead-of stacked? I don't want to force their positions. I prefer to use a master container or master stack panel [such as papapanel] that has an option to stack things horizontally. Perhaps .isVertical is intended-for controls, and stack panels are actually containers. SO, putting two stack panels side-by-side inside a master "papa" stack panel... might not be intended-by-design, or possible. Any ideas, fixes, thoughts... wholeheartedly welcomed. thx.
  22. Hi gang. @Jaskar and @Haylan ... thanks for your work. The "retro gui" project is moving along ok, again. I'm working on a big dial. (yawn) BUT... http://doc.babylonjs.com/playground?code=advancedTexture ...is failing. bad character in string literal at line 1 column 6284 of the JSON data. The playground searcher thinks there is still some rotten data in the PG DB. I didn't use any non-standard characters in PG's 29-35 in the retro-gui project. They all SAVED and LOADED fine. SO, there might be some residual bad characters in the 22-28 series. They all load fine, but I think one of them is killing the PG search for advancedTexture. Thx for thoughts/work, gang.
  23. Drag and drop assistance

    Programming does exactly what you tell it to do, eh? Ok, we still got a windshield wipers issue? Is that why this thread is not marked solved? If I wuz yoo, I would just make one basic wiper animation. If you can, change the animation speed for the different wiper-speed settings. Don't re-start the animation with each speed change. Between each full wipe-cycle, check if the switch changed. It will either be a speed change, or a stop command. If you do it this way, no need for any animation blending, right? You CAN do animation speed-changes mid-wipe, too, I think. But for animation stop, that would be checked after completion of a cycle. If switch @stop, don't re-start the animation. Wiper is already "home", yes? Thoughts? PS: I picked-up Train Sim World the other day, the 2-pack with the CSX Heavy Haul and the Great Western high-speed transit route. Its pretty stripped yet, but I got it with Steam, so I hope to see some free updates come down the line... or at least some fixes. The tunnels are quite terrible yet, from external cam view. Could be my MPU pukin' on a shader or something, I suppose. Other things are annoying, too. But... nice graphics/realism. After I played, I swear my computer room smelled like locomotive grease and diesel smoke.
  24. Setting Avatar as a Gif

    http://www.html5gamedevs.com/profile/27682-rdzar/ http://www.html5gamedevs.com/profile/18969-eboo/ These darned kids and their fancy gfx... I tell ya.
  25. Hey, thx Lihis! Good to hear you are rolling again. Something will break, or it will make your dog sick, or something. I'm not responsible for damages.