Collada : Digital Asset and FX Exchange Schema

COLLADA is a COLLAborative Design Activity for establishing an open standard digital asset schema for interactive 3D applications. It involves designers, developers, and interested parties from within Sony Computer Entertainment America (SCEA) as well as key third-party companies in the 3-D industry. With its 1.4.0 release, COLLADA became a standard of The Khronos Group Inc., where consortium members continue to promote COLLADA to be the centerpiece of digital-asset toolchains used by the 3-D interactive industry.

COLLADA defines an XML database schema that enables 3-D authoring applications to freely exchange digital assets without loss of information, enabling multiple software packages to be combined into extremely powerful tool chains.

Virtual mini aquariums on the web

Last update : July 11, 2012
Okuyama Kazuya, the creator of Q-BLOCK, is also the developer of virtual mini aquariums on the web. The first version was published in 2005. The mini aquarium tropical fish versions are based on ShockWave and are provided as javascript links to integrate in blogs or third party websites as widgets. Different fish types are available : neon, discus, clown, platinum angel. A free main application called Virtual Aqua is also available.

3D Pixel Fun with voxels : Q-BLOCK and Cube Kingdom

Q-BLOCK screen snap

A voxel (volumetric pixel) is a volume element, representing a value on a regular grid in three dimensional space. This is analogous to a pixel, which represents 2D image data in a bitmap (which is sometimes referred to as a pixmap).

Q-BLOCK

Q-BLOCK, created by Okuyama Kazuya, is a Flash-based application that can be used to create and share 3D models made out of coloured square blocks. Wallpapers and icons are easily generated at the press of a button, and models can be shared using permalinks or through a Twitter account.

The drawing tool is extremely simple to use, yet offers enough diversity for pixel art veterans to quickly design something in just a couple of minutes. You can even draw a model layer by layer with the handy canvas feature, which comes with editing options like copy, paste, and an extrude button to automatically apply one layout to every other layer of the block.

Cube Kingdom

Cube Kingdom is a free Japanese desktop application, created in 2009 by Ramza3D, that can be used to create 3D models out of blocks with the same size and dimension. Squares can be placed, erased or coloured over with just a click or two, and there are sixteen different colours that you can choose from to apply to your building blocks.

Hold the middle mouse button to move your construction around the window. The scroll wheel can be used to zoom in or out, and models can be saved or retrieved by selecting the first menu bar option. You can also edit Cube Kingdom’s text configuration file to change background colour and other settings.

Tools for Flash 3D engines

The following tools are available to import and animate objects or to add other features to the 3D Flash engines :

Cast 3D

Cast3D is 3D animation framework library for Adobe Flash in ActionScript3. The foundation is a multi key-framed geometrical animation. Cast3D supports geometry and texture morphing, skin animation, 3D sound, animated movie and video. A number of animation interpolation splines is implemented to provide smooth and natural motion, like Bezier, TCB, Hemite(cubic), Cosine and Linear.

Cast3D does not have it’s own rendering engine. So for 3D graphics rendering Cast3D currently is ported to popular 3D engines, Sandy3D and Papervision3D. Version 0.98 of Cast 3D was released on august 12, 2009 under MIT licence.

AwayBuilder (PreFab3D)

The PreFab3D tool (AwayBuilder) simplifies common tasks, improve the workflow and greatly enhance the visual quality of the Flash 3D productions. It’s a small but powerfull tool that can add visual quality to low polygon models using a nice bag of tricks thanks to the advanced rendering capabilities of Away3D.

JSAway

JSAway, created by fellow Away3D team member Stephen White, brings the capability of the Away3D Flash 3D graphics API to the web and exposes it’s capability to JavaScript for rich interactive 3D web development.

JiglibFlash

JiglibFlash is a open source Actionscript 3D Physics Engine. FIVe3D support for JigLibFlash has now been added to the JigLibFlash SVN library.

3D engines for Flash

Flash 10 (Adobe Flash CS4 Professional) was released on october 14, 2008, has a native support of 3D and uses pixel blender for lighting. Adobe Pixel Bender technology delivers a common image and video processing infrastructure which provides automatic runtime optimization on heterogeneous hardware. You can use the Pixel Bender kernel language to implement image processing algorithms in a hardware-independent manner. The Pixel Bender graph language is an XML-based language for combining individual pixel-processing operations (kernels) into more complex Pixel Bender filters.

The following 3D engines for Flash are based on the native Flash 3d API :

CopperCube

CopperCube is a 3D engine / editor with deployment targets for Flash (.swf) and Windows (.exe). You can create simple interactive 3D scenes without the need to write one single line of code  or even create whole games with the help of a little bit of scripting magic. CopperCube supports realtime 3D character animation, also known as skeletal animation. It supports playing back animated meshes with an unlimited amount of joints and an unlimted amount of weights. Milkshape (.ms3d) is a recommended 3D software to import meshes and animations in CopperCube. Version 1.1.3 of CopperCube was released on january 14, 2010.

CopperCube is a product of the austrian company Ambiera e.U., located in Vienna and owned by Nikolaus Gebhardt. The price for a Light Edition license is 99 €, the Per-seat license for the professionbal version costs 295 €. A 30 days trial version is available for free.

Away3D

Away3D is a realtime 3D engine for flash in actionscript 3, originally derived from Papervision3D. Away3D engine is designed to be fast and extensible. Away3d is an open source production, and relies on the talent and support of industry professionals to keep itself moving. Version 3.4 for Flash 10 was released on august 7th, 2009. The founders of Away3D are Rob Bateman (lead developer) and Alexander Zadorozhny (core developer). The Away3D Team includes about 12 other developers.

An Away3D Lite version is also available. Currently weighing in at under 25K, Away3D Lite can be used in projects with the most stringent bandwidth restrictions. No problem for use in banners, widgets, thumbnails… anything where filesize is a priority. But the biggest single feature offered by the new engine is it’s speed. Current tests clock framerates up to 4 times faster than the standard Away3D library. And with more frames-per-second comes the potential for more polygons, more accessible content on slower machines, and more processing power left for other areas of a Flash application.

Some outstanding examples of Away3D projects are “Café World” on Facebook used by 23 Million people a month, Multipass latern, Shaded Head, Spitfire , Dragonfly and Normalmaps.

PapervisionX

PapervisionX is the next version of Papervision3D built from the ground up based on Flash10’s new 3D api. Ralph Hauwert and Tim were leading the initial efforts on the core of the engine. Papervision3D (pv3D) is an open source 3D engine for the Flash platform. It is written and maintained by a small core team, and contributed to by its ever-growing community. Papervision3D is distributed under the MIT license and is hosted by Google Code.

3D Pixel Engine

Freelancer Kris Temmerman, owner of the Neuro Productions company, is the creator of the 3d Pixel Engine. Instead of rendering each cube every frame in an isometric perspective, he renders only one cube and use that cube as a particle to render a full scene. This way he easily extends the limit of +-1000 cubes to 20.000 or more cubes in a Flash scene.

Kris Temmerman was motivated by the cool 3D pixel editor Q-BLOCK created by Okuyama Kazuya. He developed not only the 3D engine, but he made also a Collada parser witch converts a standard 3D mesh to a 3D pixel object to import external generated 3D objects. Some of Kris Temmermans experiments are really outstanding : 3D Fur Renderer, Collada Parser, Z-Brush Modelling, Simple Flash Ecosystem, Pushing data to Flash using binary sockets (Java / Flash), Dynamic Flash generated favicon, Custom brushes, Panoramic fun, Alice in Wonderland, Nurbs.

Kris Temmerman is a member of the Away3D Development Team and mainly responsible for the Flash 10 upgrade.

Alternativa3D

Alternativa3D is a browser 3D-engine based on Adobe Flash and allows to show three-dimentional worlds, games, virtual tours or objects in a browser. Alternativa3D is provided as SWC-library, which is availiable for all registered AlternativaPlatform users.

Alternativa3D is free for non-commercial purpose with condition to provide a link to AlternativaPlatform. A basic standard licence costs 1000 Euro for one commercial project. The current version is 5.6.0.  The Alternativa platform is developed by Alternativa Game, Ltd. in Russia, the team counts currently 15 people.

Infinity3D

The multi-tasking Infinity3D engine for flash (as3) was designed by Alexei Mikhailovich Romanov from Petersburg. The latest version 1.4.D was released on september 17, 2009. The engine supports animated dynamic objects.

Yogurt3D (Y3D)

Yogurt 3d Engine Corp. announced in december 2009 that there free Adobe Flash 3D Engine API will be ready and available to download for everyone soon. Scene management, character animation and multiple scene support are some of the features included in the Yogurt3D Game Engine.

FIVe3D

The FIVe3D initiative is an open source code for the conception of interactive vector-based 3D animations. The original Actionscript 2 code was ported to Actionscript 3 for Flash 10. The project is developed by Mathieu Badimon.

Like Papervision3D, the following 3D Flash engines are not yet based on the Flash 10 3D API, but nevertheless very performant:

Sophie 3D

Sophie 3D enables you to view  models online with the Flash Player. To do this the model needs to be saved in Wavefront OBJ format. Sophie3D gives you high quality fast renders by displaying over 80.000 polygons in realtime with textures, reflections, transparency and infinite number of lights.

Sophie 3D is one of the products developed at XOSystem. Sophie 3D Component is free to download and use on the condition that it is not used for commercial purposes and that the logo “Sophie 3D Engine” and all the other graphic elements are in no way hidden or modified.
Sophie 3D Component PRO for Adobe Flash Player has the retail price of 239,00 euro. The Sophie 3D Player Pro Licence is for a single domain use only and allows  to publish  3D models without the logo appearing on a 3D scene. It includes Sophie 3D Compressor that can reduce the size of a Wavefront .obj models by about 75%. For example a model file of 1Mb will be compacted to a file of 250Kb.

Sandy 3D

Sandy 3D is an intuitive and user-friendly 3D open-source library developed  now in Actionscript 3.0 for Adobe Flash. Sandy can be used in a commercial project. Sandy3.0 is able to render about 2000-5000 polygons correctly on a pretty recent computer with really correct screen resolution. Version AS3 3.1.2 was released on 28th March 2009.

FFilmation
The FFilmation Engine is an AS3 isometric programing engine, focused mainly on game development. The aim of the project is providing a robust development platform, where game designers can work on the game’s details and forget about the render engine. It is intended to be really usable from a “real production scenario” point of view. The engine is open-source, and released under the MIT license.

FFilmation is developed by Jordi Ministral, the co-owner of a small multimedia production studio in Barcelona, Spain. Version 1.3.3. was released on march 13, 2009. A FFilmation editor is also available. In september 2009, the developer announced on his blog that FFilmation is progressing quietly.

The following Flash 3D projects are listed mainly for historical reasons :

WireEngine3D (we3d)

WireEngine3D is a lightweight and fast 3D Engine for Flash 8/9. The latest version: 3.5.1 was released on 9th april 2008. With the WireEngine it is very easy to animate 3D objects in the 3D world.

3D Engine for Flash MX2004

The OpenSource 3D Engine for Flash MX 2004 allows to create 3D applications using the builtin DataCube object and put  data as dynamic 3D Models into a virtual universe.

3DFS

3DFS is a 3D engine written in ActionScript 2 compatible with Flash Player 7.0 or more. It offers exact visible surface determination even for intersecting or overlapping geometry.

Electric 3D

The Electric 3D Flash engine is used internally by Electric Oyster, an interactive design, development and consulting company, when they develop 3D projects for their clients.

Jiglibflash now also supports Five3D

Syntext Serna Free : Open Source XML Editor

Serna XML Editor

Serna Free XML editor is an easy-to-use open source WYSIWYG XML editor and probably the most powerful among free and open source XML editors for WYSIWYG authoring.

Serna free XML editor is available for all major platforms such as Microsoft Windows™ (2000, XP, Vista), Linux, Mac OS X, and Sun Solaris/SPARC. Version 4.2 was released on october 13, 2009.

Serna Free XML editor has been developed by SYNTEXT Inc., a private American software development company, founded in Seattle, Washington, in 1999. The company is focused on the development of state-of-the-art solutions for creating and maintaining complex XML content for various industries such as aerospace, software development, publishing, and others.

The company’s flagship is the Serna Enterprise XML editor which enables fully distributed collaborative XML authoring.

Image Slicing and CSS Sprites

Last update: December 29, 2011

It’s often discussed whether or not slicing  images  makes them load faster on the web. In the past images slicing was used to  benefit from human perception that makes it seem like the page is loading faster when small pieces are displayed in sequence.  In reality  load time is increased due to the additional simultaneous requests to the web server. The total file size of sliced images is reduced if each slice is compressed to optimal settings.

Today, the contrary of slicing  is done. Separate graphics are grouped in one large image collection. It’s far easier on the server to serve a single large image than many small ones and it’s faster for a web browser to load such an image.

Problems related to css sprites are :

  • No encapsulation: If you want to change one image, you have to change the sprite
  • Don’t degrade: If the browser don’t support CSS, you are in trouble
  • Memory footprint: When sprites get loaded into the browser, they are stored uncompressed and can take up a huge memory
  • read/maintain/modify your CSS. It can be difficult to remember the exact pixel offsets within the sprite

Here is a list with links to useful webpages about related topics :

Dewplayer : lecteur mp3 en flash

Alsacréations, une agence web à Strasbourg en Alsace, spécialisée dans la conception de sites internet conformes aux standards internationaux W3C, offre depuis plusieurs années un lecteur audio mp3 en Flash par Dew, simple à installer et à utiliser.

Appelé Dewplayer, ce lecteur est distribué sous licence Creative Commons, son utilisation est libre et gratuite même dans un cadre professionnel ou commercial.

Un générateur de code XHTML est disponible sur le site qui va produire un code à copier-coller selon les besoins des usagers. L’utilisation de swfobject est recommandée pour l’intégration du lecteur.

Le pilotage du lecteur par Javascript est possible et il y a de nombreuses options disponibles. J’utilise le lecteur depuis des années avec succès. La version la plus récente est 1.9.6.