Page 9 of 29

Posted: Thu Apr 21, 2011 2:17 pm
by greenya
UpdateVerices() (either as UpdateIndices()) is a special (Lime's only) methods that allows you to modify existing vertices/indices. In native Irrlicht you can just use getVertices(), cast to proper type and use it as array to do what you want (without notifying actually mesh buffer). In Lime i cannot return you such native pointer, Lime does have Vertices and Indices properties -- but it is a copies of arrays. Modification requires to call UpdateVertices/Indices.

P.S.: for some more details you can read this post http://irrlicht.sourceforge.net/phpBB2/ ... 157#234157 (starting from "MeshBuffer class has been extended.")

Posted: Thu May 19, 2011 1:41 pm
by greenya
Version 0.9 has been released

New examples:
23.MeshHandling // native example, demonstrates how to work with mesh buffers directly;
26.OcclusionQuery // native example, shows how to use occlusion queries in Irrlicht (you gfx driver must return true for driver.QueryFeature(VideoDriverFeature.OcclusionQuery) call);
L06.AnalogueClock // shows simple real time analogue clock with neonlike arrows; defines ClockNode class which is derived from SceneNode;
L07.FastStaticRendering // shows how to render geometry very fast using mesh buffers directly; allows to choose 16- or 32-bit mesh buffers to use;
L08.WPFWindow // shows how to use Lime in WPF application; it uses WindowsFormsHost control, so basically it implements WinForms UserControl and embeds it into WPF; i'm sure that it is possible some how to use direct3d natively, so it will be possible to draw for example dynamic background using irrlicht and draw on the top WPF controls (or complete alpha blend with WPF controls), but that requires not just HWND, but maybe some direct3d handle or device id; not sure about this for now;

Shots:
Image

Notes

~
Moved to VS2010. IrrlichtLime.dll assembly built with .NET Framework 4.0.

~
Fulfilled appropriate support of custom mesh creation and its manupulation. Now it is possible to create Mesh and MeshBuffer objects using their proper static methods Create(). MeshBuffer.Create() can create any vertices-typed mesh buffers with 16-bit and 32-bit indices. Additional overloadings for Append() and UpdateIndices() methods were added to support 32-bit mesh buffers. To add and remove buffers in mesh use AddMeshBuffer() and RemoveMeshBuffer() respectively. Please see 23.MeshHandling and L07.FastStaticRendering to see how to use all these features.

~
Made more handy some basic classes. Added more constructors and Set()s to AABBox. Added copy constructors to Line3Df, Triangle3Df, Plane3Df and Matrix. Added constructors with transition, rotation and scale vectors to Matrix. Added "==" and "!=" operators to Color/f. Added named colors as static props to Color.


Updated Irrlicht SDK to trunk rev. 3727
See changes.txt for full list of changes.

Posted: Fri May 20, 2011 8:16 pm
by Revan1985
i've found a little...
err...

bug.
there is no chance to derive a class from GUIElement.
the error is "GUIElement had no constructor defined".
How can i do to create new custom GUIElement?

Posted: Sat May 21, 2011 7:07 am
by greenya
Revan1985 wrote:How can i do to create new custom GUIElement?
Sorry, but for now it is impossible to inherit IGUIElement.

Posted: Sat May 21, 2011 9:25 am
by Revan1985
greenya wrote:
Revan1985 wrote:How can i do to create new custom GUIElement?
Sorry, but for now it is impossible to inherit IGUIElement.
there is a specific reason for this choice?

Posted: Sat May 21, 2011 4:55 pm
by greenya
Yes.
Because GUIElement is not the same as IGUIElement. First one is a managed class. It is not impossible, but not an easy task either. Look into SceneNode and check out how its done if you're interested.

Posted: Sat May 28, 2011 2:36 am
by LizardGamer
Can I use Mono with Lime? Because I really to make my projects cross platform

Posted: Sun May 29, 2011 7:42 am
by greenya
LizardGamer wrote:Can I use Mono with Lime? Because I really to make my projects cross platform
You can use Mono compile and run, but you will be able to run EXE only under Windows.

Posted: Sun May 29, 2011 10:01 am
by LizardGamer
greenya wrote:
LizardGamer wrote:Can I use Mono with Lime? Because I really to make my projects cross platform
You can use Mono compile and run, but you will be able to run EXE only under Windows.
So it will only work with Windows and no other os?

Posted: Sun May 29, 2011 10:39 am
by Revan1985
with mono, you can compile for linux either.
you can use them everywhere.
I don't know if you need a linex package for linux or the exe run either....

Posted: Sun May 29, 2011 12:03 pm
by greenya
You cannot use in under Linux, because Irrlicht.dll is compiled under Windows, it is Windows-only-library.

Posted: Mon May 30, 2011 11:01 am
by Revan1985
there is also the option to recompile the dll for linux (as .a if i remember).
The mono use .a for linux, or i'm saying a stupid thing?

Posted: Mon May 30, 2011 11:18 am
by serengeor
Revan1985 wrote:there is also the option to recompile the dll for linux (as .a if i remember).
The mono use .a for linux, or i'm saying a stupid thing?
Shared libraries under linux are '.so' files.

Posted: Mon May 30, 2011 1:00 pm
by greenya
Revan1985 wrote:there is also the option to recompile the dll for linux (as .a if i remember).
The mono use .a for linux, or i'm saying a stupid thing?
Maybe there something like that is possible - to compile C++ CLR under Linux, but i'm not sure in that at all, because don't have/use Linux.

Posted: Wed Jun 01, 2011 8:06 am
by Revan1985
there is not the method OnAnimate in the SceneNode?