• Stars
    star
    168
  • Rank 225,507 (Top 5 %)
  • Language
    C++
  • License
    GNU General Publi...
  • Created about 10 years ago
  • Updated over 4 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

The Art of 3D, a new language for dynamic document description of real-time 3D animations

Tao3D - A language for dynamic 3D animations

Tao3D is a dynamic document description language designed specifically for real-time 3D animations. It can be used to present complex information in an entertaining and interactive way.

Tao3D includes support for the following features:

  • A complete programming language, with loops, tests, functions, and more.
  • Real-time, capable of displaying complex animations at 60FPS.
  • Sophisticated 2D and 3D text layout, 2D and 3D shapes, extrusion.
  • 3D objects from a variety of formats, including .OBJ and .3DS
  • 3D point clouds supporting hundreds of thousands of points
  • Integrated audio and movie support based on industry standard VLC
  • Real-time updates based on external data files in .CSV format
  • Fetch data, pictures or movies directly over HTTP

For a better overview of the software, please watch this YouTube video: https://www.youtube.com/watch?v=Fvi29XAo4SI and the Taodyne channel https://www.youtube.com/Taodyne.

A basic tutorial of the language can be found here: http://www.taodyne.com/presentation/tutorial-2.0.html. More tutorials, blogs and forums can be found on the Taodyne developers web site: http://www.taodyne.com/shop/dev/en/.

Change log since 2.0-libre

  • 81: Merge Libre edition and Pro code for Tao3D 1.60
  • 72: Added sanity tests in the test directory
  • 71: Add ROUNDED enpoint style
  • 70: Add ability to specify endpoint styles using text
  • 69: Fixed typo in source files for Pro version
  • 68: Removed a few remaining references to TaoPresentations with Tao3D
  • 67: Put web UI thumbnails in a separate hidden directory
  • 66: Fix launch error on Linux - Replaced TaoPresentations with Tao3D
  • 65: Put web editor thumbnails in hidden .thumbnails directory
  • 64: Update background color even if it's black (ticket #26)
  • 63: Update example list
  • 62: Fix messages about QSslSocket on Windows with old OpenSSL
  • 61: Fix rendering of 3D models with transparent colors, ticket #24
  • 60: Implement indent and unindent with 'tab/shift-tab', ticket #23
  • 59: Add explanation to "Shift" template
  • 58: Fine-tune highlighting in text editor, ticket #21
  • 57: Fix highlighting mechanism for overlapping regions, ticket #22
  • 56: Fix highlighter for comments within string, ticket #22
  • 55: Added missing French translations
  • 54: Avoid splitting text when there's no writing direction change, ticket #21
  • 53: Remove references to 'title text X', ticket #20
  • 52: Added comments to Hello World example, ticket #20
  • 51: Updated Hello World to make it easier to copy-paste smaller sections
  • 50: Fetch examples directly from Taodyne web site, ticket #20
  • 49: Disable transparent windows on Windows, it's broken, ticket #18

Prerequisites

The software can be built on Windows, MacOSX and Linux. To build Tao, you will need:

  • A C++ compiler (Tested with g++ and clang)
  • OpenGL at least version 2.1, and related development files. Tao does not presently support OpenGL ES, but we'd like this to happen.
  • Git
  • Qt version 4.8 or above (there is a crash on MacOSX with 5.3.2)
  • LLVM version 2.9 (porting to 3.x is left as an exercise for the reader)

The software also downloads or includes a few extra packages, including:

  • NodeJS
  • CryptoPP (a somewhat dated set of files)
  • GLC-Lib (a rather old version)
  • VLC (you may need to build it yourself if you want multistream support)

Many thanks to all the authors who indirectly made Tao possible

Build instructions

git clone https://github.com/c3d/tao-3D.git
cd tao-3D
git submodule update --init --recursive
./configure
make install

Free Software (GPLv3) and Commercial License

This software is free, available under the GNU General Public License v3. Commercial licenses are also available. The commercial version of the product adds, among other things:

  • Direct support for stereoscopic and most auto-stereoscopic displays
  • Decoding the vast majority of 3D movie formats, tiled or multi-stream
  • The ability to encrypt and digitally sign the source code

More Repositories

1

xl

A minimalist, general-purpose programming language based on meta-programming and parse tree rewrites
C++
234
star
2

elfe

Extensible Language for Everyday
C++
91
star
3

build

A simple makefile-based build system that I split from ELFE / XL
Makefile
65
star
4

unsubsquirrel

An absolute necessity for the sophisticated mailing list user
C
24
star
5

recorder

A lock-free real-time flight recorder for your C or C++ programs
C
17
star
6

make-it-quick

A simple auto-configuring make-only build system
Makefile
16
star
7

db48x

An HP48 rebuild for modern calculators
C
6
star
8

freedom-covenant

A covenant for individuals who want to defend freedom
5
star
9

xl-c

A re-implementation of the XL programming language in straight C
C
3
star
10

spice

Top-level repository for SPICE components
Makefile
3
star
11

tao-film-strip

A Tao3D module showing an animated film strip
2
star
12

tao-snowfall

A Tao3D module that makes snow fall on the screen background
2
star
13

emacs-setup

My personal emacs setup
Emacs Lisp
2
star
14

workload

A very simple workload that consumes a configurable amount of CPU / memory
C
2
star
15

presentations

A repository for the Tao3D source code of my presentations
GLSL
2
star
16

slicinggpus-presentation

Presentation about slicing GPUs virtually for DevConf.cz
GLSL
1
star
17

kata-performance-measurements

Some memory usage performance measurements done on Kata Containers
Shell
1
star
18

tao-mapping

A Tao3D module for advanced texture mapping
C++
1
star
19

tao-filters

A Tao3D module providing a number of simple image filters
C++
1
star
20

x11spice

X11 spice server
C
1
star
21

tao-visuals

A Tao3D module defining common Tao visual elements used in several demos
1
star
22

tao-water-surface

A Tao3D module to draw a dynamic water surface
C++
1
star
23

tao-shading

A Tao3D module providing shading effects (Gooch Shading, Cel Shading)
C++
1
star
24

spice-streaming-agent

C++
1
star
25

tao-pan-and-zoom

A Tao3D module to create Pan-And-Zoom presentations
1
star
26

tao-vlc-audio-video

A Tao3D module using VLC to read movie and sound files
C++
1
star
27

tao-point-clouds

A Tao3D module to quickly display point clouds
C++
1
star
28

mbuto

Minimal Builder Using Terse Options
Shell
1
star
29

tao-shaders

A Tao3D module offering a number of simple shader-based effects
C
1
star
30

HPDS

HPDS 3.0 was a cross-development system for HP48SX
1
star
31

tao-materials

A Tao3D module to generate procedural materials
C++
1
star
32

tao-help-viewer

The Tao3D help viewer, derived from QtHelp
C++
1
star
33

tao-web-remote

A Tao3D module using NodeJS to provide a web-based preview and remote control of a screen
HTML
1
star
34

tao-nodejs

A Tao3D module to use NodeJS from a Tao program
C++
1
star
35

tao-digital-clock

A Tao3D module showing a digital clock
1
star
36

tao-chroma-key

A Chroma Key (green screen removal) module for Tao3D
Shell
1
star
37

tao-webui

The Web-based user interface for Tao3D
JavaScript
1
star