3DMLW
Developer(s) | 3D Technologies R&D |
---|---|
Stable release | 1.0.5
/ June 1, 2009 |
Preview release | 2.0 alpha 1
/ August 5, 2009 |
Repository | |
Written in | GPLv2[1] |
Website | www.3dmlw.com (archived) |
3DMLW (.
The project has been inactive since 2009; as of 2016, the website, including the documentation, is no longer available.
3DMLW platform
The 3DMLW platform is an open-source software suite aimed at showing dynamic 3D content. It included its own scripting language for software design, and a format support for 3D models.
3DMLW language
3DMLW is an
3DMLW renderer
The rendering engine uses industry standard OpenGL. It can be plugged into 3DMLW Plug-in Interface and consists of a scene library and a graphics library, which provides an optimized rendering pipeline for the scene library structures. The scene library can be utilized independently for the manipulation or conversion of meshes without rendering them.
3DMLW plug-in interface
The plug-in interface mediates input events and output from host windows (e.g. web browsers) or an independent output window. It is extendible to allow integration into 3rd party software. Native support has been implemented for common web browsers.
3DMLW server toolset
The toolset provides batch conversion for several filetypes (
3DMLW file format
A 3DMLW file is a simple text file containing instructions confined to 3DMLW language syntax:
<?xml version='1.0' standalone='no'?>
<document>
<content2d>
<area width='200' height='100' color='#C0C0C0FF' texture='flower.png' />
</content2d>
<content3d id='content' camera='{#cam}'>
<camera id='cam' class='cam_rotation' y='10' z='40' viewy='10'/>
<box name='ground' width='100' height='2' depth='100' color='green' class='ground' />
<box name='dynamic' y='20' width='10' height='10' depth='10' color='blue' />
</content3d>
</document>
In 3DMLW 2D and 3D content are handled independently from each other, but they are free to overlap. For animating 3D scenes and handling different events a Lua scripting facility is provided. The following script snippet demonstrates colour fading:
<script type='text/x-lua'><![CDATA[
receiver = Reference.get("@receiver");
c = receiver:attributeColor("color");
c:setAlpha(c:getAlpha() + 1);
if c:getAlpha() > 255 then
c:setAlpha(0);
end
receiver:putAttribute("color", tostring(c));
]]>
</script>
The use of
allows for easy extension to include other formats.3DMLW files use .3dmlw (e.g. filename.3dmlw) as
Displaying 3DMLW
3DMLW content could be viewed using applications provided by 3D Technologies R&D, including plug-ins for
Usage of 3DMLW
3DMLW was used for Tallinn's old town 3D application. 3D Technologies R&D also is using some parts of 3DMLW engine in their 3D Wayfinder application.
See also
References
External links
- Official website (unmaintained)
- 3D Technologies R&D
- 3DMLW on SourceForge
- "3DMLW". Freecode.