/
VERSIONS.TXT
97 lines (46 loc) · 4.47 KB
/
VERSIONS.TXT
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
***** Monkey2 v1.1.09 *****
Added SDL GameController class. Tweaked Joystick/GameController Open logic so devices can be added/removed more cleanly. See joystick and gamecontroller samples in bananas.
Added experimental selective reflection. Use '#Reflect namepsace_path' to enable reflection for an entire namespace. Using same system as 'Using' ie: can end with '..' to 'reflect all'.
***** Monkey2 v1.1.08 *****
Added AudioDevice.PlayMusic.
Language addition: Added bool->string implicit conversion, returns "True" or "False". Note that a bool cannot be safely converted to a string and back using built-in conversions, because bool->string->bool will always return true (since string->bool returns true if string is non-null, and bool->string always returns a non-null string). A std.stringio.ParseBool function has been added to parse "True"/"False" style strings. Use this or something similar if you are parsing bools from a stream.
Language addition: Added where expressions to classes. Note that since classes can't be overloaded, class where expressions can only possibly generate errors, they can't be used to 'select' a particular overload.
Language addition: parser now allows optional newlines before primary expressions, which allows you to split long expressions over multiple lines.
Language addition: objects can now by cast to/from void ptr using the Cast<> operator.
Language addition: Elvis operator '?Else' added, eg: 'Local x:=y ?Else -1' will assign 'y' to 'x' if y is 'true', else will assign -1 to 'x'.
Language addition: Safe reference operator added, eg: 'Local x:=c.t' will assign 't' to 'x' if 'c' is not null, else will assign null to 'x'. Can simplify 'If c Then c.Blah' type stuff.
Mojo3d component system added, Animator/RigidBody/Collider now component based.
Mojo3d anisotropic texture filtering enabled, see anisotropic test.
Mojo3d Scene.EnvColor added.
Mojo3d Renderable class added.
std.permissions added, android only for now.
Implemented custom openal on macos 'coz the OS one is stuffed.
***** Monkey2 v1.1.07 *****
Android min-sdk now 14 for android projects.
Added Scene.DestroyAllEntities.
Added new 'instance' uniformblock type for better (not great yet) instancing.
Enabled assimp FBX and BLEND loaders.
Sprites now compare with depth buffer.
Added Sprite.TextureRect:Rectf property for simple 3d sprite animation.
Fixed Texture.Flags setter.
Added simple outline drawing to Canvas, see: Canvas.OutlineMode, Canvas.OutlineColor and Canvas.OutlineWidth. See chimpmunkdebugger.monkey2 in hellochipmunk banana for demo.
Implemented point light shadows using rgba depth cube texturing for webgl compatibility. Slow, needs to do some culling.
Added ParticleSystem entity subclass. A ParticleSystem contains a ParticleBuffer and a ParticleMaterial, so you can creating multiple instances of the same ParticleBuffer with different materials. See mojo3d particles test.
Added LinearColors property to UniformBlock and Renderer. Material color properties now always in sRGB space. Changed Color.Gold etc. to compensate (they were linear colors).
Added bananas showcase files. See Help->Bananas showcase.
***** Monkey2 v1.1.06 *****
* App no longer renders when minimized/inactive.
* Added 'Internal' decl visibility to mx2cc, which means a decl is only visible to other decls within the same module.
* Namespace mojo3d now uses degrees. Namespaces monkey.math and std.geom still use radians.
* Mx2cc now tries to make docs for type extensions. No way to link to 'em yet.
* Entity Position, Basis, Scale, Matrix etc properties are now in *world* space. Use LocalPosition, LocalBasis etc for local space versions. Ditto SetPosition, Setbasis, SetScale etc methods.
* Added subclasses for RigidBody: StaticBody, DynamicBody and KinematicBody, use these with New instead of RigidBody.
***** Monkey2 v1.1.05b *****
* Fixes a number of fairly critical GC bugs. GC is more aggressive now which has turned up a few 'lurkers'.
* Mojo 2d lighting now handles windows/devices larger than 1920,1080.
* Added 3d modules!
***** Monkey2 v1.1.05 *****
* Added std.requesters.OpenUrl support for android and ios.
* Added WIP assimp and bullet modules mainly for future use by mojo3d but its nice to have standalone versions of these.
* Added tinyfiledialog library for linux requesters, except for Proceed which uses kdialog as there's no equivalent in tfd.
* Added WIP MSVC support for faster compile times on windows. To enable, use 'MX2_USE_MSVC=1' in bin/env_windows.txt and rebuild all modules.