WebGL:WordPress
From Wiki.cyring.fr
functions.php
<?php
function gPrimitive( $atts ) {
extract(shortcode_atts(array(
'gid' => 'cube.00000000',
'vertices' => '
-0.5, -0.5, -0.5, // d
+0.5, -0.5, -0.5, // c
-0.5, +0.5, -0.5, // a
+0.5, +0.5, -0.5, // b
-0.5, -0.5, +0.5, // h
+0.5, -0.5, +0.5, // g
-0.5, +0.5, +0.5, // e
+0.5, +0.5, +0.5 // f
',
'indices' => '
0, 1, 3, 2, // d c b a
0, 4, 6, 2, // d h e a
0, 4, 5, 1, // d h g c
1, 5, 7, 3, // c g f b
3, 2, 6, 7 // b a e f
',
'colors' =>
'[
[1.0, 0.0, 0.0, 1.0], // Front face
[1.0, 1.0, 0.0, 1.0], // Back face
[0.0, 1.0, 0.0, 1.0], // Top face
[1.0, 0.5, 0.5, 1.0], // Bottom face
[1.0, 0.0, 1.0, 1.0], // Right face
[0.0, 0.0, 1.0, 1.0] // Left face
]',
'style' => '',
'width' => '640',
'height' => '540',
'rgba' => '0.0, 0.0, 0.0, 1.0'), $atts));
$output = '<script type="text/javascript" src="' . get_stylesheet_directory_uri() . '/glMatrix-min.js"></script>'
. '<script type="text/javascript" src="' . get_stylesheet_directory_uri() . '/primitive.js"></script>';
$main = '<script type="text/javascript">'
. 'main("' . $gid . '",[' . $vertices . '],[' . $indices . '],' . $colors . ',' . $rgba . ');'
. '</script>';
$output = sprintf( '%s<canvas id="%s" style="%s" width="%s" height="%s"></canvas>%s',
$output, $gid, $style, $width, $height, $main );
return($output);
}
function twentyten_setup() {
add_shortcode( 'primitive', 'gPrimitive' );
}
?>