HOME

TheInfoList



OR:

O3D is an
open-source Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use and view the source code, design documents, or content of the product. The open source model is a decentrali ...
(
BSD license BSD licenses are a family of permissive free software licenses, imposing minimal restrictions on the use and distribution of covered software. This is in contrast to copyleft licenses, which have share-alike requirements. The original BSD lic ...
)
JavaScript JavaScript (), often abbreviated as JS, is a programming language and core technology of the World Wide Web, alongside HTML and CSS. Ninety-nine percent of websites use JavaScript on the client side for webpage behavior. Web browsers have ...
API An application programming interface (API) is a connection between computers or between computer programs. It is a type of software interface, offering a service to other pieces of software. A document or standard that describes how to build ...
O3D Project Page
from Google Code
created by
Google Google LLC (, ) is an American multinational corporation and technology company focusing on online advertising, search engine technology, cloud computing, computer software, quantum computing, e-commerce, consumer electronics, and artificial ...
for creating interactive
3D graphics 3D computer graphics, sometimes called CGI, 3D-CGI or three-dimensional computer graphics, are graphics that use a three-dimensional representation of geometric data (often Cartesian) that is stored in the computer for the purposes of perfor ...
applications that run in a
web browser A web browser, often shortened to browser, is an application for accessing websites. When a user requests a web page from a particular website, the browser retrieves its files from a web server and then displays the page on the user's scr ...
window or in a XUL desktop application. O3D may be crafted for use in any application area; however, it is geared towards
games A game is a Structure, structured type of play (activity), play usually undertaken for entertainment or fun, and sometimes used as an Educational game, educational tool. Many games are also considered to be Work (human activity), work (such as p ...
, advertisements,
3D model In 3D computer graphics, 3D modeling is the process of developing a mathematical coordinate-based representation of a surface of an object (inanimate or living) in three dimensions via specialized software by manipulating edges, vertices, and ...
viewers, product demos, simulations, engineering applications, control and monitoring systems, and massive online
virtual world A virtual world (also called a virtual space or spaces) is a Computer simulation, computer-simulated environment which may be populated by many simultaneous users who can create a personal Avatar (computing), avatar and independently explore th ...
s. O3D is currently in Google's incubation lab, and was originally built as a web browser plugin. Since 2010, O3D is a JavaScript library implemented on top of
WebGL WebGL (short for Web Graphics Library) is a JavaScript Application programming interface, API for rendering interactive 2D and 3D graphics within any compatible web browser without the use of plug-in (computing), plug-ins. WebGL is fully integra ...
. O3D is viewed as bridging the gap between desktop-based 3D accelerated graphics applications and
HTML Hypertext Markup Language (HTML) is the standard markup language for documents designed to be displayed in a web browser. It defines the content and structure of web content. It is often assisted by technologies such as Cascading Style Sheets ( ...
-based web browsers. Proponents assert that creating a full-featured 3D graphics engine that can be downloaded and run through web browsers may eliminate the need to install large applications on a local desktop computer. This allows O3D to maximize reusability amongst application resources, while providing a robust interface to the client's CPU and GPU using JavaScript. Originally, O3D used a plug-in based architecture which allowed 3rd party developers to integrate custom functionality, such as pre- and post-render effects,
particle system A particle system is a technique in game physics, motion graphics, and computer graphics that uses many minute sprites, 3D models, or other graphic objects to simulate certain kinds of "fuzzy" phenomena, which are otherwise very hard to rep ...
s, and
physics engine A physics engine is computer software that provides an approximate simulation of certain physical systems, typically classical dynamics, including rigid body dynamics (including collision detection), soft body dynamics, and fluid dynamics. I ...
s. Because the plugin was written in C, it communicated directly with hardware; thus, the speed of scene rendering was largely dependent on the GPU of the computer rendering it. Now, much of this same functionality is built into
WebGL WebGL (short for Web Graphics Library) is a JavaScript Application programming interface, API for rendering interactive 2D and 3D graphics within any compatible web browser without the use of plug-in (computing), plug-ins. WebGL is fully integra ...
. The main advantage O3D has over alternative desktop or console based 3D rendering engines is that O3D may load, render, and transform
models A model is an informative representation of an object, person, or system. The term originally denoted the plans of a building in late 16th-century English, and derived via French and Italian ultimately from Latin , . Models can be divided int ...
and their respective textures dynamically, using
AJAX Ajax may refer to: Greek mythology and tragedy * Ajax the Great, a Greek mythological hero, son of King Telamon and Periboea * Ajax the Lesser, a Greek mythological hero, son of Oileus, the king of Locris * Ajax (play), ''Ajax'' (play), by the an ...
and/or
COMET A comet is an icy, small Solar System body that warms and begins to release gases when passing close to the Sun, a process called outgassing. This produces an extended, gravitationally unbound atmosphere or Coma (cometary), coma surrounding ...
in real time. Traditional compilation of source code, application resources, and object libraries are no longer necessary, since all of these are loaded in real time. These remote resources may be designed, developed, and maintained outside the core rendering or viewing application within a typical
object-oriented Object-oriented programming (OOP) is a programming paradigm based on the concept of '' objects''. Objects can contain data (called fields, attributes or properties) and have actions they can perform (called procedures or methods and impleme ...
MVC application. This makes developing rich 3D application easier because they do not need to be recompiled per resource changes, allowing for a more robust and distributive approach when designing 3D applications. On May 7, 2010, Google announced that O3D would be changing from a plugin to a JavaScript library running on top of WebGL.


See also

*
WebGL WebGL (short for Web Graphics Library) is a JavaScript Application programming interface, API for rendering interactive 2D and 3D graphics within any compatible web browser without the use of plug-in (computing), plug-ins. WebGL is fully integra ...
- An open standard for showing hardware accelerated 3D graphics with
JavaScript JavaScript (), often abbreviated as JS, is a programming language and core technology of the World Wide Web, alongside HTML and CSS. Ninety-nine percent of websites use JavaScript on the client side for webpage behavior. Web browsers have ...
* VRML and X3D - Open standard from Web3D Consortium *
List of WebGL frameworks Software framework, Frameworks are available to create WebGL content quickly and easily without building from the ground up. Note: The following list mixes WebGL Library (computing), libraries with game engines as well as Platform as a service, cl ...


References


External links


O3D Developers' Site

GWT-O3D Developers' Site


{{Webarchive, url=https://web.archive.org/web/20120310180553/https://code.google.com/apis/o3d/docs/groups.html , date=2012-03-10
Trimble 3D Warehouse (Online 3D Model Repository)

Trimble SketchUp (3D Modeler)

A free 3D content importer/editor/publisher for creating O3D scenes

Google I/O 2009 - Developing On O3D: View From The Trenches YouTube video

Sophos Security: Researcher rewarded over $30,000 for finding 3 security flaws in O3D
Application programming interfaces Free 3D graphics software Software using the BSD license