In response to my novel below ... I fixed it, turns out it was my own
silly fault this time.  I wasn't processing the return values from the
script function calls that cross the network properly.

On Wed, 13 Jan 2016 20:47:56 +1000 David Seikel <onef...@gmail.com>
wrote:

> On Wed, 13 Jan 2016 10:28:25 +0100 Stefan Schmidt
> <ste...@osg.samsung.com> wrote:
> 
> > Hello.
> > 
> > On 13/01/16 10:17, David Seikel wrote:
> > > Wow, this is the first time in about a year that an EFL release
> > > has NOT broken my highly experimental, based on beta API,
> > > SledjHamr virtual world project.  Congratulations guys and gals.
> > > B-)
> > 
> > That is good to hear!
> > 
> > >
> > > On the other hand, I'm still trying to fix up all the breakage
> > > from previous releases.  lol
> > >
> > This one not :(
> > 
> > Besides all these b0rkers jokes we are trying not to break things.
> > From alpha1 onwards I really try to make sure we uncover the
> > problems we might have to avoid regressions in the release. From my
> > point of view it looks like the kind of regressions we have are
> > mostly around behaviour changes. Actual API breaks seem to be under
> > control.
> > 
> > Does this correlate with what you are seeing?
> 
> Keep in mind that my SledjHamr project is expected to take years to
> complete, and has been under development (on and off, mostly off)
> already for years.  It's due to this expectation that I'm using the
> beta stuff in the first place.  I expect the beta APIs I've been using
> will be well and truly stable before I can get a release out.
> 
> In the early days, yes API breaks where common.  These where easy to
> fix though, look it up in the docs, or look at changes to examples,
> just make the compiler happy.
> 
> These days it is more behaviour changes that's the problem.  These can
> be tricky to sort out.  For example, one I "fixed" from the previous
> release (or perhaps the one before that) is that the Elementary
> toolbar on my main window would not display, even though the toolbars
> on the child windows displayed fine.  Both use the same code.  So I
> wrapped it in it's own child window for now, that's just big enough
> to show the toolbar.  Just a work around for now.  While Elementary
> might be stable, I'm using it via Eo, so the problem might be in Eo.
> 
> Another recent bug fix was that the 3D models where not turning up.  I
> can't recall off the top of my head how I fixed that.  Evas_3D isn't
> stable, so I expect problems every now and then.  Also in Evas_3D, I
> was using the example cube and sphere code originally.  Some time last
> year the ability to click on that cube or sphere stopped working,
> around about the time primitives where added to Evas_3D.  I fixed this
> by switching to primitives, and clicks work fine now.
> 
> There have been many other issues like those.
> 
> The one remaining problem, though it's entirely possible it's masking
> more, is to do with very complex communication between the client,
> world server, and script server.  I think, proving to be tricky to
> track down.  Some of the stuff is working, but I should be getting a
> dialogue popping up as the result of interacting with a script, and
> that isn't working now.  I know the dialogue itself works, popping it
> up other ways is fine.
> 
> 
> 
> The following novel describes how complex this is.  Skip it if you
> like.  lol
> 
> I start the client, it tries to connect to a world server (local only
> for testing), if it can't find one, it starts one, then tries again.
> The world server does the same thing for the script server, try to
> connect, on failure, start one.
> 
> Once it's all up and running, the world server tells the script server
> to start compiling all the scripts it finds in the world.  These are
> ordinary LSL scripts (Linden Scripting Language), as invented for
> Second Life (SL) by Linden Labs.  Commonly used open source scripts
> are what I'm testing with.  I'm trying to maintain backwards
> compatibility with both that and the OpenSim (OS) variation of LSL.
> It's common to have thousands of these scripts in one 256 x 256 meter
> region, or even dozens on an avatar.
> 
> LSL is a .... insert REALLY STRONG SWEAR WORDS here ... of a language,
> trying to do stuff often involves multiple scripts communicating with
> each other.  The script server translates them into Lua, then uses
> LuaJIT to compile them.  The script server tells the world server when
> each script is done compiling, the world server then tells the script
> server to actually run them.  Which it does, using LuaJIT.  I wrote a
> worker thread system to run these scripts, as LSL is event driven.  So
> script response to events is expected to be short.  This is actually
> part of the spec of LSL.  Anyone trying an endless loop in LSL should
> expect their script to be terminated.
> 
> As an aside, I'm doing things this way coz I feel that LuaJIT, being
> the fastest scripting language, could do a far better job than normal
> LSL, which is usually compiled to Mono.  If I remember correctly (been
> a while since I did the last benchmarks), SL and OS both take many
> seconds to compile an average script, my compiler is compiling
> hundreds per second.  I haven't benchmarked running performance yet,
> but I expect a decent speed up.  OS has a similar arrangement, but
> translates to C# and compiles to Mono; no one knows what SL does,
> other than use Mono.  SL used to compile the scripts client side,
> using their own runtime, but they switched to compiling to Mono.
> This is why these days you can select either option in SL.
> 
> So these normal, everyday, LSL scripts toss messages back and forth
> between themselves, mostly due to memory limits and lack of a library
> mechanism, and toss messages to the world server to get it to do stuff
> to the world.  The world server tosses events to the script server,
> which are passed onto the scripts.  Stuff that involves interacting
> with the user gets messages tossed between all three.
> 
> The main scripts I'm testing with are called MLP, Multi Love Pose,
> scripts used for sex.  I chose them coz they actually exercise a large
> part of the system in a staged way (so I don't have to implement
> everything at once), they are popular, and are known to be slow.
> Plus, I'm familiar with them, having worked with them in the past.
> When they start up, they mostly just sit idle until someone clicks on
> the object they are in.  Then a half dozen scripts start loading data
> into themselves from "notecards" also stored in the object, spewing
> logging info to the chat console.  After a while, they are ready.  A
> second click is supposed to pop up a dialogue where the user can then
> decide what to do.  Usually the user will then select a pose from the
> dialogue, and the scripts will create "pose balls" in world, which the
> user/s then sit on.  Second Life and OpenSim users will be familiar
> with how this works in world.
> 
> Right now, only some of those messages to the chat console actually
> appear, and the dialogue no longer pops up.  It used to work as far as
> interacting with the dialogue, and getting more dialogues.  The part
> that creates objects in world in response to scripts hasn't been
> written yet.  I don't even have avatars yet, so no one's sitting on
> anything.
> 


-- 
A big old stinking pile of genius that no one wants
coz there are too many silver coated monkeys in the world.

Attachment: signature.asc
Description: PGP signature

------------------------------------------------------------------------------
Site24x7 APM Insight: Get Deep Visibility into Application Performance
APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
Monitor end-to-end web transactions and take corrective actions now
Troubleshoot faster and improve end-user experience. Signup Now!
http://pubads.g.doubleclick.net/gampad/clk?id=267308311&iu=/4140
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to