Jump to content

Tutorial Talk


Wingnut
 Share

Recommended Posts

Wow, I thought you were only going to write a new single page... a different way of "presenting" all of our current documentation.  But you are actually writing new/more documentation.  Interesting.  Yeah, in a way, you've started the "bustup" of the current camera tutorial and basic elements tutorial.  Yep, they are both "heavy" with text, huh? 

I'm always torn.  Sometimes I like all-in-one docs, sometimes I like brief and more navving to get to specific docs.  In cameras... it's difficult to categorize.  Put all the deviceOrientations in one doc?  All the VR's in one doc?  None of that?  yuh yuh yuh.  *scratch scratch*. 

On the higher level, there's the "big 4" main basic categories, it seems.  mesh, lights, cams, and environment.  Maybe a 5th... orienting and positioning.

Environment can be basic or massive.  I think we currently just cover fog and skyboxes.  But actually... heightMaps and background layers should be in there, too.  Water possibly included.  Sun/moon ops and shadows possibly included.  "Environment" can get big, depending upon how wide you allow yourself to define "environment".  (duh?)   Scene.clearColor and .ambientColor, too, maybe.  How about rain and snow?  LOD?  All/some world decorating options could be covered.  And last in line... a link to physics tutorials.

Mesh, Meshbuilder, parametrics/extrudes - what's a basic shape, what isn't, eh?  

Parametrics are big... and require big docs.  Notice Jerome put SOME info about them in mainline "basic elements", and also offers "the big tour" via the parametric shapes tutorial.  For us old-timers... the dual doc seems a little weird, but for noobs... it's a nice way to do it.  Gentle introduction to tubes and ribbons, and then dig-into a deep dedicated doc later, as wanted.

Why am I talking?  :)  It seems I am spewing my thoughts, and we've all heard them before.  Cams, now, use "behaviors" as best I understand them and the universal cam.   Currently we use these behaviors on inputs, but we could also use behaviors to set free/arc/follow... you know... non-input behaviors (could be thought-of as "camtype").  It might already be that way... I'm still learning.

The custom camera inputs system just plain scares me, yet, due to its ridiculously long property names and the stringing together thereof.  And the lookup, and typing it correctly... omg.

At this point, I'm ready for 32 bits... one bit for deviceOrientOnOff, one for isArcRotate, one for isWebVR, one for... well, you get the idea.  It's likely a bad idea... I'm good at coming up with those... but... it still seems less scary than custom inputs.

The point I wanted to make is... camera custom inputs is a game-changer.  It, and the universal camera... open up a powerful but hard to teach system, imho.  Deltakosh did a fine first documentation of that system... but still... I get butt pucker when I read it.  Not sure why.   :)  Where's it all going?  I dunno.  Thanks for your work and good thinkin's, JK!  I'm here to give lousy advice should you need any.  :D

Link to comment
Share on other sites

You are right Wingy, whenever you are categorising anything there are lots of possibilities and so they end up being subjective. Basics, intermediate, advanced are based on their current position in the official documentation and my understanding or lack thereof. Device orientation cameras, etc I don't have the equipment,, little chance of me understanding so bang them off to advanced. Custom camera inputs page, seems understandable, at some stage could probably write a PG (might not be able to of course when it comes to it) so pop it into intermediate, wait for a more detailed description with all the long property names and send that to advanced. My intention is to put more links at bottom of each page to closely related topics, so hopefully navigating will be easier.

Wanted to make all PGs based on MeshBuilder so everything consistent but the time involved in doing so is just too much. So will work on re-organising the pages and should I ever finish will start changing the PGs.

Your advice, lousy or otherwise, is always welcome, I'll just ignore it whenever I want to. Saying that, it was reading your comments on documentation in various topics that planted a seed in my head for doing something about it. It might not end up what you envisioned but it keeps me busy.

Link to comment
Share on other sites

  • 1 month later...
  • 4 weeks later...

Welcome to the forum, @RenStimpyShow.  Thanks for the thanks!  (and thx for the interest in this topic thread.)   Yeah, this thread is an emotional rollercoaster, eh? :)  (yawn)

Got a website?  Maybe an "About you" link?  Done some BJS experimenting?  Feel free to dump your toybox on the floor, here, or in The Wingnut Chronicles, if you wish.  We'll all dig through the pile... poke at your stuff with sharp sticks.  :)  Got ideas?  Projects?  Thoughts?

Got questions, but don't want to bother the Q&A sub-forum?  Same offer... The Wingnut Chronicles is a talk-about-anything thread.  Tutorial Talk has also gone wild, at times, too... as you know.  heh  (I yammer a lot, eh?)

Got good links to docs, playground, playground search, forum search, sourcecode search, etc?  That helps give traction up the BJS learning slope.  Welcome again, talk soon, party on!

Link to comment
Share on other sites

  • 2 weeks later...

Thanks @Pryme8... you certainly write great tutorials.  I can't hardly wait for your NeatFlax website to be fleshed-out.

Everyone:  Speaking of tutorials/docs, all of the great authors within Babylon's Documentation Team (which includes everyone)... are assembling a centralized document... that speaks-of and points-to all off-site tutorials and documents.  Would you like a sneak-peek at this WIP (work in progress)?  I knew you did.  :)

https://github.com/Wingnutt/misc/blob/master/fleshing01.md

(...still changing daily, and soon to be moved-to Deltakosh's choice of location/presentation.  So, don't bother bookmarking this URL.)

The main thing is... Team Docs is joining @Pryme8 in his "Call for Tutorials". 

If you have off-site/personal-site tutorials that you want included into this list... PLEASE submit their URL's to ME, via personal message.  Hurry.  :)

Of course, anyone will be able to edit this document, after it is officially published and placed.  But if you would like to be included now, while WIP is active, just write a PM to me... with the info.  THANKS!!!

And... you can ask me for changes/repairs, too.  But, keep in mind... that this document will be completely editable after the official publishing to our primary docs site.  Party on!

Link to comment
Share on other sites

I will be submitting BJS, focused tutorials here soon.  Ive been really focusing on crunching out tools for TERIABLE, I needed way to procedurally generate towns and dungeons, along with ''grow' vegetation... I also wanted to include a texture syntheses process for terrain shading to make any loaded texture infinite and non repeating which Im really close to finishing.

I also wanted to finish up my research on building things on separate canvas to represent layers and then combining them on a final canvas with the correct stacking.  Ill let you know once I can cook something up.

Is there a list of desirable tutorials?

Link to comment
Share on other sites

Now there is.  :)  http://doc.babylonjs.com/generals/offsite_tutorials_list

Edit at will, friends.  13 user-redirecting "stub files" have been removed from our tutorials list (12 from mid-level, 1 from advanced level).  All of the links from the former stubs... are included in the above list of all known off-site tutorials (that apply to Babylon.js).

Stub files were small files in our tutorial lists.  When browsed, they looked-like...  "We are headed for...[someplace]". 

Rest in peace, stubbies.  :)

Link to comment
Share on other sites

  • 2 months later...

Hi gang.

http://doc.babylonjs.com/tutorials/How_to_create_your_own_Canvas2D_primitive

I just wanted to say what a GREAT tutorial this is.  Want to learn about the "guts" of the Canvas2D system?  Here ya go.

I have been considering creating a tutorial about Text Labeling and Text Tags. 

I started-off in the Canvas2d Overview and Architecture document (also excellent)... learning exactly WHAT a webGL-based canvas IS.

To create a labeling tutorial, I need to categorize the TYPES of labeling.  It appears... that there are 4-types:

1.  DynamicTexture on mesh - Related to W3C DOM (document object model) because it uses a Context2d.  But it requires no extra canvas or div... atop the render canvas.
2.  DOM-based overlay - Uses added DOM elements such as canvas or div (castorgui, bgui, dialog, virtualJoysticks, debug layer, etc).  Uses DOM Context2D too, I believe.  I have not studied castorgui, bgui, and dialog... well at all.  I could use more info.
3.  Absolute-positioned HTML - Rarely used, but still available.  Our debug layer may use a bit of this, too.
4.  WebGL-based canvas - This is the Canvas2D system.  No HTML or DOM objects are used.

Comments?  Do those look like "the big 4" types?  Have I forgotten some?  Should #2 and #3 be in the same category type?  Or should something be split into MORE categories and types?  Perhaps only 2 primary types... DOM-related and NOT DOM-related? 

Thoughts welcome.  Begged-for, actually.  Thanks!

Link to comment
Share on other sites

  • 1 month later...

Yep, that's another.

There's another, too, but it's so unusual that it might not be worth mentioning.  Pointillism.  Essentially, using a particleSystem custom startPosition() function... to draw letter shapes from many position-frozen particles.  As far as I know, it has never been tried, with BJS.

This method, and DK's #5 method... are nearly impossible to internationalize (translate to different languages).

I'm starting the labels tutorial.  One of the things I wish to cover... is how to make the labels clickable, and how well we can change the mouse arrow... to hand pointer... when mousing-over a click-active label.  @Nockawa, others, do we have any good news on mouse-over pointer (mouse cursor) changing... for click-active screen space labels?

Does anyone have a working demo for onMouseover pointer change... for Screen Space (SS) prims?  Thx.

--------------------------

Z-index on ssc2d prims still has issues.  http://babylonjs-playground.com/#1N9RJY#63  That PG works worse than ever.  Last time I worked-with this playground, labels behind the camera were turned-off with an isInFrustum tester (line 57).  Now, it appears that SOME z-ordering work has been done.  You can turn-off isInFrustum testing by toggling the viewWatcher flag in line 46. 

Better yet, I'll save a new playground with NO viewWatcher/frustum stuff.  http://babylonjs-playground.com/#1N9RJY#66  I got mesh missing, I got labels missing, I got trouble.... right here in River City.  :)  Maybe it's NOT time to write the labeling tutorial, yet.

Original post:  http://www.html5gamedevs.com/topic/24333-hidding-a-group2d-whend-the-tracked-mesh-is-off-screen/

The demo #34 in that post... acts the same as #66.  Mesh missing, labels missing, good stuff.   A 5-month-old issue.  (Am I losing it?  Imagining things?) 

I think Nockawa could use a hand... building a test suite for Canvas2D.  Let's make #66 playground... Test Suite #1, if that's okay with everyone.

Oh yeah, we're here to talk about tutorials.  umm...  :)

Link to comment
Share on other sites

 First, there's currently a version of C2D deployed in the PG that is causing issue on many things. I don't know why, my local version is working just fine but many PG I tested are not... I'm going to check that with DK, as soon as I'm sure he deployed the very last version if it's still bugging then I'll take a closer look about what code is deployed. But right now, yes, it's a bit of a mess...

So again, this all is working locally and I do have integration tests (not committed) to prevent regression.

Mouse over should work very well, MasterK is using it all the time without issues.

Link to comment
Share on other sites

Thx @Nockawa and assistants.  Did you take a drive on Route 66?  (The #66 playground mentioned earlier.)  It's still not looking good, with my Firefox. Pan cam left/right - labels go missing.  I haven't tried other browsers, yet.

That's good news about the mouse-overs, thx.  Good good good.

I'm working with another C2D PG at the moment... a demo for the tutorial.  http://babylonjs-playground.com/#1N9RJY#69

It's got a problem, too.  Part of the fun.  :)  _trackedGroups (1st time run) and fontTexture (later runs).  hmm.

It's SO STRANGE trying to teach Canvas2D in 40 lines of text or less.  Like letting all the air out of the car tires... so that the car will fit into the garage.  :D

I suppose C2D labels will have another layer of friendly... another wrapper... after the GUI lib is done.  But maybe not.  Work in progress.

Link to comment
Share on other sites

Wingnut I'll swing you some updates on my tutorials I was working on here soon I have just been sooo swamped, and I wanted to convert a few of them to the new bjs before I finish them up.  But the material one is like pretty much done I just need there to be more hours in the day and for coffee to not lose its effect after so long.

Link to comment
Share on other sites

Thx p8.  Just keep NeatFlax smokin'.  It's an important site for us.

YOU have a label-making system, too, right P8?  Is that production-ready, somewhat?  Got docs on that... at Neatflax?  (thx)  If ready, I can include that as yet another method of making labels... in the labels tut... if I ever get it done.  :)

@Nockawa, I'm still showing #66 broken in FF 50.1.0.  A couple 360 pans of the camera, and all the labels are gone.  Same in IE.

Could be me, huh?  hmm.  Other testers?  We could branch onto a new forum topic, i suppose.   :)

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...