Sorry for not answering, this email got buried under my inbox. IIRC, Woden is built on modern GL techniques, and GL_POLYGON is deprecated > in 3.0, so I doubt it.
By polygon, what do you mean?, an arbitrary concave polygon or a convex polygon? For a convex polygon, you only need to use what is known as a triangle fan. For a concave polygon, you need a constrained Delaunay triangulation, which is an easy to explain but hard to implement algorithm. I guess that GL_POLYGON only supports convex polygons. For the convex case, take a look here: http://en.wikipedia.org/wiki/Triangle_fan I think that the code should be something like this; builder := WDGeometryBuilder ... points := {}. points do: [:p | builder addP: ...]. indexBase = 1. 3 to: points size: [:i | builder addI: 1 i2: i - 1 i3: i3. ]. If you want the concave case, take a look into the incremental Delaunay triangulation algorithm. Then, into adding the constrains (edges of the polygon) to construct the constrained Delaunay triangulation. Now, this is a 2D algorithm, so the points have to be in a plane. Don even think on trying a 3D Delaunay triangulation, because it is for volumes and not surface, and it is hellish. > > I Woden still developed? Currently I do not have time to work in Woden, but when I get more time, I will continue working on it. More time means after May, because of studies and a paper that I am presenting in ICSE. I Woden still developed? Because I thought that Object Profile was working > on it. Otherwise maybe we should switch to the CodeCity engine… it seems to > have more “support”. > > Now, I do not want to add many more low level features to Woden, until I get a production ready version of Lowcode/uFFI, which is required to optimize some really performance critical sections of Woden. With Lowcode I am getting C like pointers in the VM with a small overhead in comparison with nbFloat32AtOffset: and nbFloat32AtOffset:put: . Pointers and C structures are required to fill buffers with an exact memory layout, which is required by OpenGL 2+ . The alternative to Lowcode or the NativeBoost x86-32 assembler, is to move significant parts to C++. Moving significant parts to C++ means a huge loss of flexibility, and it means a completely different engine. Completely different, because I have been reading about more modern game engines, and better design patterns such as Entity Component System. Anyway, one of the first thing that I am going to do when coming really back to Woden, is to move it to GitHub. By using git I can fix some part of the native library dependency hell. Bullet is used for physics it is written in C++, and I am definitely not going to rewrite in Smalltalk. Moreover, I would like to put some sort of skybox in my scene. Apparently > it's not possible yet, so my question is how could I do that? Skyboxes are in my TODO list. My biggest problem with sky-boxes are in loading the cube map texture. A cube map texture is actually a single texture that has six faces. The six faces of a cube. Skybox support requires loading a cube map texture, and then using a special material for the sky with a special shader. I am going to try getting a demo working in the weekend, it should not be very complicated. It also gives me a good opportunity to rewrite the shaders. I found a better way to embed shaders when working in the VirtualGPU, by using the GTInspector. you want to reinvent all the effort ronie put in woden? It is more probably that the one reinventing and being successful would be myself. Graphics programming is really hard, specially if we are doing it in a completely dynamic language as Smalltalk or Pharo. I have learned valuables lessons by reinventing my game/graphics engine several time, and studying long time ago others game engines, such as the good old Quake engine. Woden is not my first or second graphics engine, I have already lost the count. I think it is about my sixth/seven engine. And I still think that there's a lot of room that I have improve, without rewriting everything. Do not expect to see a AAA game engine written completely in Pharo or Smalltalk. The optimizations done in AAA engines simply cannot be done in Smalltalk. They are designed with simple data structures that are optimized to work well with CPU caches. There is also some heavy inlining done by the C/C++ compiler. No garbage collection, just manual and deterministic memory management. If you want to make a new engine, please be aware that the graphics landscape is becoming quite interesting. Specially because this year we are going to see Vulkan, which is the successor of OpenGL, and Direct3D 12. Those new graphics API are said to be very low level in comparison with OpenGL. According to Valve ( http://www.phoronix.com/scan.php?page=article&item=valve-lunarg-vulkan&num=1 ), writing a graphics engine for Vulkan is similar to writing a graphics driver or developing for consoles. All of this requires heavy support for pointers a la C. Best regards, Ronie Salgado 2015-04-16 18:24 GMT-03:00 Alexandre Bergel <alexandre.ber...@me.com>: > > Uhh.. > > > > I Woden still developed? Because I thought that Object Profile was > working on it. Otherwise maybe we should switch to the CodeCity engine… it > seems to have more “support”. > > Ronie? > > Alexandre > > > > >> On 16 Apr 2015, at 15:11, Alexandre Bergel <alexandre.ber...@me.com> > wrote: > >> > >> No idea, but let us know! > >> > >> Alexandre > >> -- > >> _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: > >> Alexandre Bergel http://www.bergel.eu > >> ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;. > >> > >> > >> > >>> On Apr 16, 2015, at 4:41 AM, Lusa Nicolas <nicolas.l...@usi.ch> wrote: > >>> > >>> Hello, > >>> > >>> I am Nicolas Lusa from university of Lugano and I am working on my > master thesis with the supervision of Yuriy Tymchuk. > >>> Right now I am working with woden and I am trying to build polygons. > >>> Question1: Is it possible somehow to build polygons in woden? > >>> > >>> If not: > >>> I know woden is based on OpenGL and I also know that in OpenGL is > possible to draw polygons with GL_POLYGON and a given array of points. > >>> Question2: How could I use GL_POLYGON through woden for my purpose? > >>> > >>> Moreover, I would like to put some sort of skybox in my scene. > Apparently it's not possible yet, so my question is how could I do that? > >>> > >>> Thanks in advance. > >>> Cheers. > >>> Nicolas > >> > > > > -- > _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: > Alexandre Bergel http://www.bergel.eu > ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;. > > > >