Beta release 3.1b

Information and change log about the latest ZGameEditor release.

Moderator: Moderators

Post Reply
Imerion
Posts: 200
Joined: Sun Feb 09, 2014 4:42 pm

Post by Imerion »

Really nice feature! I was missing something like this, and this implementation sounds practical! Will try it soon!
User avatar
Kjell
Posts: 1883
Joined: Sat Feb 23, 2008 11:15 pm

Post by Kjell »

Hej Ville,

Fantastic long-awaited feature! I'm sure people migrating-from / familiar-with Game Maker will be very happy with this too :)

K
User avatar
Rado1
Posts: 775
Joined: Wed May 05, 2010 12:16 pm

Post by Rado1 »

This is really great feature! I'm going to use it in my current projects and demos related to external libraries. It is perfectly applicable also in physic-aware apps with various kinds of simulated objects sharing common simulation properties but being different, for instance, in shape.

When I tried to open the Box2D testbed project from https://googledrive.com/host/0BxwfQ8la8 ... 91-win.zip, ZGE it throws an access violation exception in ZExpression. For sure, the previous version of ZGE beta worked correctly.
User avatar
VilleK
Site Admin
Posts: 2277
Joined: Mon Jan 15, 2007 4:50 pm
Location: Stockholm, Sweden
Contact:

Post by VilleK »

Rado1: There was a problem with array of arrays in Model.Definitions. Fixed today, please download the beta again.
fracteed
Posts: 43
Joined: Wed Apr 30, 2014 1:14 am
Location: Sydney

Post by fracteed »

Nice work Ville! The model inheritance looks great 8)

I have been using the music component quite extensively and happy to report that it works great under Android now.

The only issue (and it is a minor one) is that when the Music component is set to loop, it does so incorrectly. The last note of the midi file always plays back at the same time as the first note when it loops around. This happens on Windows or Android.

I did work around this by making my midi loop an extra eighth note longer than it should be, and making this extra note an octave higher than the first note. That way it blends when the first/last notes are played together.

I can post a project file if it helps...not sure if this is a known issue?
User avatar
VilleK
Site Admin
Posts: 2277
Joined: Mon Jan 15, 2007 4:50 pm
Location: Stockholm, Sweden
Contact:

Post by VilleK »

Hi fracteed,

Sure, post a example project with a short midi-loop and also the original midi-file you are using, and I'll see if I can fix it!
fracteed
Posts: 43
Joined: Wed Apr 30, 2014 1:14 am
Location: Sydney

Post by fracteed »

Hi Ville...I have attached a project with just a music component and a basic midi file I whipped up to demonstrate the issue. It is just a minor scale going up in eighth notes that repeats once, then tries to loop.

You will hear that when ZGE tries to loop it, the last note is played at the same time as the first note on the loop around. I have also included the midi file.

Thanks for looking at it!
Attachments
scale_loop_test.zip
(864 Bytes) Downloaded 325 times
User avatar
VilleK
Site Admin
Posts: 2277
Joined: Mon Jan 15, 2007 4:50 pm
Location: Stockholm, Sweden
Contact:

Post by VilleK »

Beta updated:

- Vector types (vec2,vec3,vec4) can now use alternate syntax for accessing elements (suggested by Kjell):

vec4 v;
v.x=1; //same as v[0]
v.y=1; //same as v[1]
v.z=1; //same as v[2]
v.w=1; //same as v[3]

x,y,z,w or r,g,b,a can be used

- File.Size updated for embedded content (reported here)

fracteed, I could not find a quick solution to the midi-looping issue. I'll see if I can look at it again next week.

Has anyone been able to try the model inheritance system yet? I've only done very basic testing myself, so I'm interested in knowing how it works for others.

http://www.zgameeditor.org/files/ZGameEditor_beta.zip
User avatar
Kjell
Posts: 1883
Joined: Sat Feb 23, 2008 11:15 pm

Post by Kjell »

Hej Ville,
VilleK wrote:Vector types (vec2,vec3,vec4) can now use alternate syntax for accessing elements
Super! Time to update some libraries ( Color / Vector / Matrix ) :) I'll get them to you as soon as possible.

K
User avatar
Rado1
Posts: 775
Joined: Wed May 05, 2010 12:16 pm

Post by Rado1 »

Just a stupid question (I have no time to test it now): are the x/y/z/w/r/g/b/a properties case insensitive? So can someone write var1.x and another one var1.X? The same for built-in properties such as CurrentModel.Position.x or CurrentModel.Position.X.
User avatar
Kjell
Posts: 1883
Joined: Sat Feb 23, 2008 11:15 pm

Post by Kjell »

Hi Rado1,
Rado1 wrote:Are properties case insensitive?
I only found this out recently as well .. but everything in ZGameEditor is not case-sensitive. So for instance the following works just fine ..

Code: Select all

APP.cameraPOSITION.x = aPp.tiME;
Not that i'd recommend that kind of coding style ;)

K
User avatar
VilleK
Site Admin
Posts: 2277
Joined: Mon Jan 15, 2007 4:50 pm
Location: Stockholm, Sweden
Contact:

Post by VilleK »

Beta updated with a bugfix for model inheritance.

About case sensitivity: I didn't want to make component names and property names case sensitive, i.e. you should be able to write "app.mouseposition" etc if you want instead of demanding exact case. However reserved words (including type names) in the scripting is still case sensitive: "if" "while" etc.
User avatar
Kjell
Posts: 1883
Joined: Sat Feb 23, 2008 11:15 pm

Post by Kjell »

Hej Ville,
VilleK wrote:About case sensitivity: I didn't want to make component names and property names case sensitive, i.e. you should be able to write "app.mouseposition" etc if you want instead of demanding exact case.
Agreed .. i like it quite a bit more than i thought i would ( first time using a language that isn't case-sensitive ).

The only issue is that the auto-complete dialog is case-sensitive at the moment. So when you start typing "app.mousepo" and trigger the dialog, it doesn't give you any suggestions.

K
User avatar
Rado1
Posts: 775
Joined: Wed May 05, 2010 12:16 pm

Post by Rado1 »

Thanks to improvements in ZGE 3.1b it is possible to write expressions like this:

Code: Select all

Mesh[2] m;

m[0] = Mesh1;
m[1] = Mesh2;
That's nice. However, when the declaration Mesh[2] m; is placed to a ZLibrary, ZGE reports the error "Cannot convert Mesh to Group". It would be desired to have global arrays of meshes and other components which can be placed to arrays.
Attachments
test.zgeproj
example project
(405 Bytes) Downloaded 329 times
User avatar
Rado1
Posts: 775
Joined: Wed May 05, 2010 12:16 pm

Post by Rado1 »

VilleK wrote:Update:

- "vec3 foo; App.LightPosition = foo;" syntax supported.
Hi Ville, I wanted to use this syntax improvement, but does not work when trying to assign global variable of type vec3; "Invalid conversion: ((float)pos.ManagedValue)" error is reported. See the attached testing project.
Attachments
test2.zgeproj
testing project
(358 Bytes) Downloaded 311 times
Post Reply