Skip to content

Instantly share code, notes, and snippets.

@pjjw
Created November 15, 2012 21:39
Show Gist options
  • Save pjjw/4081495 to your computer and use it in GitHub Desktop.
Save pjjw/4081495 to your computer and use it in GitHub Desktop.
<!DOCTYPE HTML>
<html>
<head>
<script src="http://codef.santo.fr/codef/codef_core.js"></script>
<script src="http://codef.santo.fr/codef/codef_3d.js"></script>
<script src="http://codef.santo.fr/codef/codef_tween.js"></script>
<script src="http://codef.santo.fr/codef/codef_music.js"></script>
<script src="http://codef.santo.fr/codef/codef_scrolltext.js"></script>
<script src="intro.js"></script>
</head>
<body onload="init();" marginwidth="0" marginheight="0">
<div class="content">
<center>
<div id="main"></div>
</center>
</div>
</body>
</html>
var player = new music("FLOD");
//player.stereo(true);
//player.LoadAndRun('chip20.mod.zip');
var mycanvas;
var mycanvastxt;
var mycanvasoff;
text ="ACCESS-SRE";
var myfont=new image('font.png');
var mylogo=new image('logo.png');
k=0;
txt_w = text.length*8;
txt_h=8;
var myobjvert = new Array();
var fullpoint = new Array();
var mypoint = new Array();
var mycircle = new Array();
var RES_X=320;
var RES_Y=240;
var adm=48;
var adn=48;
var ratio=48;
var x=RES_X/2;
var y=4;
var d_x = new Array();
var d_y = new Array();
var d_z = new Array();
var a = 0;
var b = 0;
function init(){
mycanvas=new canvas(RES_X,RES_Y,"main");
mycanvasoff=new canvas(RES_X,RES_Y);
mycanvasoff2=new canvas(RES_X,RES_Y);
mycanvastxt=new canvas(txt_w,txt_h);
myfont.initTile(8,8,32);
myfont.print(mycanvastxt,text,0,0);
for(var i=0;i<txt_w;i++){
for(var j=0;j<txt_h;j++){
if(mycanvastxt.contex.getImageData(i, j, 1, 1).data[0]==255){
mypoint[k] = {x:i*2-(txt_w-1), y:-j*2-(txt_h-1), z: 0};
k++;
}
}
}
for(var t=0;t<k;t++){
myobjvert[t]={x:mypoint[t].x, y:mypoint[t].y, z:mypoint[t].z, color:0x552201, size:3};
}
var kk=0;
for(var j=0;j<Math.PI*15;j+=(Math.PI*15)/k){
mycircle[kk] = {x:Math.sin(j)*20, y:-24+kk/5, z: Math.cos(j)*20};
kk++;
}
for(var nn=0;nn<k;nn++){
fullpoint[nn]=createjs.Tween.get(mypoint[nn],{loop:true})
.wait(2000)
.to({x:mycircle[nn].x,y:mycircle[nn].y,z:mycircle[nn].z},4000,createjs.Ease.elasticInOut)
.wait(2000)
.to({x:mypoint[nn].x,y:mypoint[nn].y,z:mypoint[nn].z},4000,createjs.Ease.elasticInOut)
}
my3d=new codef3D(mycanvasoff2, 200, 40, 1, 1600 );
my3d.vectorball_dot(myobjvert);
for (var i=0;i<adm;i++){
d_x[i] = new Array();
d_y[i] = new Array();
d_z[i] = new Array();
for (var j=0;j<adn;j++){
d_x[i][j]=j;
d_y[i][j]=10+Math.cos(a/2)+Math.sin(b*3)+Math.cos(b/2)+Math.sin(a);
d_z[i][j]=4+i/4;
a+=4*Math.PI/(adm-1);
}
b+=2*Math.PI/(adn-1)
}
myscrolltext = new scrolltext_horizontal();
myscrolltext.scrtxt="HELLO NONAMENO IS BACK AGAIN ;) HERE IS MY FIRST ENTRY FOR THE MINITRO CONTEST ON WAB.COM. I HOPE YOU LIKE THIS REALLY TINY SCREEN.... ;) ";
myscrolltext.init(mycanvas,myfont,1);
go();
}
function go(){
mycanvasoff.contex.globalCompositeOperation='source-over';
mycanvasoff2.contex.globalCompositeOperation='source-over';
mycanvasoff.fill('#000000');
mycanvasoff2.clear();
mycanvasoff.contex.globalCompositeOperation='lighter';
mycanvasoff2.contex.globalCompositeOperation='lighter';
for(var i=adm-1;i>=0;i--){
for(var j=0;j<adn-1;j++){
s_x=x+(d_x[i][j]-adn*0.5)/d_z[i][j]*ratio;
s_y=y+d_y[i][j]/d_z[i][j]*ratio;
mycanvasoff.plot(s_x,s_y,3,'#6688aa');
d_x[i][j]-=0.2;
if (d_x[i][j]<0)
d_x[i][j]=adn-1;
}
}
for(var nn=0;nn<k;nn++){
my3d.group.children[nn].position.x = mypoint[nn].x;
my3d.group.children[nn].position.y = mypoint[nn].y;
my3d.group.children[nn].position.z = mypoint[nn].z;
fullpoint[nn].tick(20);
}
my3d.group.rotation.y+=0.04;
my3d.group.rotation.y+=0.02;
my3d.group.rotation.z+=0.01;
my3d.draw();
mycanvasoff.draw(mycanvas,0,0,0.2);
mylogo.draw(mycanvas,28,2);
mycanvasoff2.draw(mycanvas,0,0,1);
mycanvas.quad(0,(RES_Y-10),RES_X,10,'#000000');
myscrolltext.draw(85);
requestAnimFrame( go );
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment