We are pleased to announce the release of
Gideros 2016.10. This release has been a little delayed due to extensive testing and rebuilding needed but as you can see there are many changes and many new APIs which we hope will be useful. Here are the changes and additions we have made:
NEWBox2D particle contact events:
"BEGIN_CONTACT_PARTICLE", "END_CONTACT_PARTICLE", "BEGIN_CONTACT_PARTICLE2", "END_CONTACT_PARTICLE2"
Box2D ParticleSystem methods:
- destroyParticles
- getParticleCount
- getParticleGroupList
- containsParticle
Viewport:lookAt(eyex, eyey, eyez, targetx, targety, targetz, upx, upy, upz) -- set up the transform matrix of this viewport taking eye and target positions and up direction as arguments
JS.eval(code) -- execute arbitrary Javascript code on HTML5 platform
Mesh.clearTexture([slot=0]) -- clear texture
Matrix:invert()
Matrix:transformPoint()
Particles methods:
- setParticleTag(i, tag) -- set the tag associated to the given particle
- getParticleTag(i) -- returns the tag associated to the given particle
- setPaused(isPaused) -- pause or resume this particle system
- isPaused() -- returns wether this particle system is paused or not
- getParticles([set, tag]) -- retrieve particles states of this system
Sprite methods:
- setSkewX(kx), getSkewX(), setSkewY(ky), getSkewY(), setSkew(kx, ky), getSkew() -- new skew (aka "shear") transformation effect, kx and ky are numbers in -90..+90 degrees range
- getAnchorPoint(), setAnchorPoint(ax, ay) -- to relatively set Sprite center position
- getClip() --> x, y, w, h
- Sprite:getWidth(true), Sprite:getHeight(true) -- to get sprite width and height without transformations
- Sprite.setBlendMode(src, dst) -- support of blend functions:
Sprite.ZERO, Sprite.ONE, Sprite.SRC_COLOR, Sprite.ONE_MINUS_SRC_COLOR, Sprite.DST_COLOR, Sprite.ONE_MINUS_DST_COLOR, Sprite.SRC_ALPHA, Sprite.ONE_MINUS_SRC_ALPHA, Sprite.DST_ALPHA, Sprite.ONE_MINUS_DST_ALPHA, Sprite.SRC_ALPHA_SATURATE
application:setKeyboardVisibility(visible) -- Android and iOS support native soft keyboard, returns true if platform has soft keyboard
Plugin (ads): Unity framework and gplugin script (Unity only)
Pixel methods allow to replace Bitmap class and more:
- new(texture, [width = texture width], [height = texture height], [tsx = 1], [tsy = 1], [tx = 0], [ty = 0]) -- additional constructor to create Pixel with texture
- setTexture([texture], [slot], [matrix]) -- set texture and apply matrix to that texture
- setTextureMatrix(matrix) -- to apply matrix to it's texture
- setTexturePosition(x, y)
- getTexturePosition() --> x, y
- setTextureScale(sx, sy)
- getTextureScale() --> sx, sy
- getDimensions() --> width, height
- setColor(c1, a1, c2, a2, [angle]) --> set linear gradient with 2 color-alpha pairs and optional angle
- setColor(c1, a1, c2, a2, c3, a3, c4, a4) --> set gradient with 4 color-alpha pairs (1 pair per vertex)
IMPROVEMENTS+ new camera format detection for Android Camera plugin
+ loading errors checking on GLSL shader creation
+ Mesh.setTexture(texture, [slot=0]) -- to set additional texture for shaders
+ Shader.TIMER constant to allow passing os.timer() value to shaders without lua intervention
+ Path2D:setSvgPath(...) accepts multiple string/number arguments and concatenates them into one string
+ ads plugin: updatedadmob SDK and APIs, interstitial support preload and refresh when closed and fixed setAlignment issue.
+ improved plugin export commands
BUGFIXES+ Mesh.getIndex correctly checks for maximum number of indexes
+ events are not dispatched to garbage collected object
+ updated APK export for splash screen disable/bgcolor
+ correct path to 'All plugins' folder (Fix plugins not applied on Mac)
+ Sound.setListenerPosition fix
+ UrlLoader: PUT and POST correctly implemented
+ Gideros Studio: fixed sendFile check to print correct status
+ Fixed timer and particles running while app is suspended
+ gdrexport: fixed filedownloader
+ particles compile on WinRT
+ timer resuming after suspend
+ Mesh with empty arrays on WinRT doesn't crash
+ fixed logcat overflowing and crashing
+ every TextField (with bitmap, cached and uncached fonts) has correct behavior: cached TextField is not blurred at window resize and uncached TextField respects logical scale
+ fixed sample parameter behavior for all TextFields
+ Path2D could crash app
EXAMPLES"Graphics/MapClown" added
"Audio/Moving sound" added
"3D Horse" updated: lighting added
"Hardware/Keyboard" updated: soft keyboard support added
We hope you enjoy Gideros 2016.10 and look forward to getting your comments here on the forum!
Download Gideros 2016.10
Comments
Likes: n1cke, hgy29
i like the clown examples a lot.
btw they should be next to each other (now bird anim 3d is inbetween two of them).
Likes: n1cke, hgy29, SinisterSoft
Fragmenter - animated loop machine and IKONOMIKON - the memory game
Do you think it's better to use textured Pixel in place of Bitmap?
Thank you heaps
Likes: n1cke, hgy29
Likes: pie
Good work guys!
Donated.
Likes: hgy29, n1cke, john26, pie, SinisterSoft
https://github.com/gideros/gideros
https://www.youtube.com/c/JohnBlackburn1975
BTW. Perfect job!
I mean, can you think of some scenario where Pixel could not replace Bitmap?
My first test with html5 export shows that it's running at 60 fps instead of 30 (as project settings)
win32 export has the same behaviour (60 fps instead of 30, additional parameters to win32.exe have no effect)
Everything is fine on "players" windows and android (30 fps as expected)
On previous release I already had issues on fps, but on my laptop it was following the project setting , nothing changed on the fps count on the other laptop mentioned here: 1200 fps
I also have another issue on win32, the game crashes if I try to draw a Path2d object
However I love the new features, thank you!
Likes: antix
Fragmenter - animated loop machine and IKONOMIKON - the memory game
https://deluxepixel.com
However, I'm still on 2016.6 because I have no indication if newer versions are ready for production code and I don't want to release a product that has bugs (ones that aren't of my own making anyway).
Likes: antix, pie
Fragmenter - animated loop machine and IKONOMIKON - the memory game
https://deluxepixel.com
Ads plugin should be integrated into your android studio project, but Admob will not, you have to add admod manually as before. Currently, only UnityAds can be integrated automatically
The release notes refer to updated Admob SDK and APIs. Which version of Admob do I need to add as a dependency?
I ask because I'm making extensive use of the Pixel class in my new game. If you look at the screen shot you can see the radar, which uses a lot of Pixels. So I am wondering if I upgrade to the latest Gideros will I have to re code a whole heap of stuff?
Likes: antix
https://deluxepixel.com
https://deluxepixel.com
btw, here is the fixed clown particles demo, this time with square particles...
(just replace the code in the demo)
https://deluxepixel.com
Likes: SinisterSoft
There are still some issues on Particle.
I runned this code about 20 times. Sometimes, Particles are not added to stage or added to wrong places. Can you also try it?
ParticleFactory Class
Main.lua
I already use ad:loadAd(adType)
Is this still pre-load?