Import Json 3D Models and Animations in WebGL with Three.js

When you have models with animations created in 3ds Max, and you need a rapid workflow to load them in WebGL with Three.js, I recommend the following steps: 1. Exporting Models in 3ds Max By using the Json Exporter you would be …

WebGL ,

Bezier Curve and Spline

A Bezier spline consists of a sequence of Bezier curves. Consider a degree 3 curve section: \[ F(u) = C_0 + uC_1 + u^2C_2 + u^3C_3 \] The curve does not go through all control points. Suppose we have 4 control points: \(P_0, P_1 …


Catmull-Rom Spline and Cardinal Spline Basis Functions

A Cardinal spline( sometimes called Canonical spline )consists of a sequence of Hermite curves. Consider a single Cardinal segment: \[ F(u) = C_0 + uC_1 + u^2C_2 + u^3C_3 \] Suppose it starts at \(F(0) = P_i\) and ends at \(F(1) …


Hermite Spline Basis Functions

A Hermite spline curve section is specified with 2 positions and 2 tangents at each endpoint. Hermite spline can be adjusted locally because each curve section is only dependent on its endpoint constraints. Consider a single Her …


Morph Animation

Sometimes we need only a subset of the vertices in a mesh to be animated without a full skeleton, such as a set of mouth shapes or face vertices for facial animation. A easy way to do this is using Morph Target Animation. In thi …


Json Animation Format

ver 1.1 Example of the Json 3D Format {   "animation":   {     "keyframeAnimations":     [       {         "name": "Anims_1",         "timeline": "seconds",         "fps": 30,         "animNodes":         [         …

Engine, WebGL

Json Model Format

Skinned Mesh or SubMesh Format of the Json 3D Format    ver 1.1 Example: {       "model":   {     "version": "1.0",          "meshes":     [       {                    "name": "subMesh1",                  "type": "tria …

Engine, WebGL

CryEngine is Now Free and Open Source

Crytek has announced that the CryEngine is now available to everyone for free, including the full source code !  The latest version launched today with a "pay-what-you-want" business model and  with no obligation to pay royaltie …


Direct3D 12 Setting up Development Environment

1. Download the Visual Studio 2015 community (it is free) and Windows 10 SDK. 2. Create a win32 project by the Application Wizard. On the Application Settings check "Empty project" and uncheck "Security Development Lifecycle (SD …


Roberts Operator

Compared with the Sobel Operator which use 8 points, the Roberts Operator use only 4 points to compute the gradient magnitude.  The first order derivative represents the directional derivative: \[ G_x = \begin{bmatrix} -1 & …