http://www.youtube.com/watch?v=rvWbqhAe17Q&feature=youtu.be
birçok incelemeden tam puan alan oyunumu 2dvd olarak piyasaya sürüyorum sakın korsan indirmeyin :))
http://www.youtube.com/watch?v=rvWbqhAe17Q&feature=youtu.be
birçok incelemeden tam puan alan oyunumu 2dvd olarak piyasaya sürüyorum sakın korsan indirmeyin :))
ne flashı 3d oyun yaptım flash la mı yapılmışa benziyo :)dark basic pro ile yaptıhttp://www.youtube.com/watch?v=oiXcL06P3ko
Ondan dolayı arkadaki video bu dimi ((:?
yinede emeğinize sağlık ((:
tabiki arkadaki videyu ben yapmadım ben programcıyım animasyondan anlamam
sadece duman efekti için bu kadar kod yazdım gerisini sen düşün
Rem ***** Included Source File *****
basla:
#constant TCL_3DSmokeParticleMax 12
#constant TCL_3DSmokeMax 5
type TCL_vec3
x# as float
y# as float
z# as float
endtype
rem --------------------------------------------------------------
rem Vector 2 UDT
rem --------------------------------------------------------------
rem --------------------------------------------------------------
rem User Defined Types
rem --------------------------------------------------------------
type TCL_3DSmokeAT
active as integer
pos as TCL_vec3 : rem include "TCL_Essentials.dba" for this to work
force as TCL_vec3
life as integer
size# as float
FollowObj as word
FollowLimb as word
endtype
type TCL_3DSmokeParticlesAT
pos as TCL_vec3
life as integer
speed# as float
xangle# as float
yangle# as float
endtype
rem --------------------------------------------------------------
rem Initialization
rem --------------------------------------------------------------
rem --------------------------------------------------------------
rem initialize essentials
rem --------------------------------------------------------------
// gosub TCL_Essentials_Init
rem --------------------------------------------------------------
rem variables
rem --------------------------------------------------------------
olacal:
global TCL_3DSmokeIMG as word
global TCL_CTRL_3DSmoke as byte = 1
rem --------------------------------------------------------------
rem arrays
rem --------------------------------------------------------------
global dim TCL_3DSmoke(TCL_3DSmokeMax) as TCL_3DSmokeAT
global dim TCL_3DSmokeParticle(TCL_3DSmokeMax,TCL_3DSmokeParticleMax) as TCL_3DSmokeParticlesAT
rem --------------------------------------------------------------
rem images
rem --------------------------------------------------------------
// TCL_3DSmokeIMG=find free image()
load image "D:\Program Files\The Game Creators\Dark Basic Pro Free\Dark Basic Pro\Projects\TheComet's Library\Examples\3D smoke\media\TCL\TCL_3DSmokeIMG.png",20
load image "C:\ciji\TCL_3DFireIMG.png",21
// TCL_Create3DSmoke(0,18,123,0,6,0,0)
return
function TCL_Create3DSmoke(x#,y#,z#,life,size#,FollowObj,FollowLimb,lock)
//sayy=10000
for n=0+lock to TCL_3DSmokeMax
if TCL_3DSmoke(n).active<2 then exit
next n
if n=TCL_3DSmokeMax+1 then exitfunction -1
if TCL_3DSmoke(n).active=0
sayy=(n*12)+1000
for k=1 to TCL_3DSmokeParticleMax
inc sayy,1
make object plane sayy,100,100,100
if lock=0 then texture object sayy,21 else texture object sayy,20
ghost object on sayy
set object transparency sayy,4
disable object zwrite sayy
set object ambient sayy,0
scale object sayy,size#,size#,size#
// rotate object sayy,0,0,0
if lock=0 then lock object on sayy
if lock=3 then lock object off sayy
SET OBJECT COLLISION OFF sayy
next k
endif
TCL_3DSmoke(n).active = 2
TCL_3DSmoke(n).pos.x# = x#
TCL_3DSmoke(n).pos.y# = y#
TCL_3DSmoke(n).pos.z# = z#
TCL_3DSmoke(n).life = life
TCL_3DSmoke(n).size# = size#
TCL_3DSmoke(n).FollowObj = FollowObj
TCL_3DSmoke(n).FollowLimb = FollowLimb
ENDFUNCTION n
function TCL_Destroy3DSmoke(n)
rem local variables
local k as integer
sayyy=((n*12)+1)+1000
rem if not active, exit
if TCL_3DSmoke(n).active<2 then exitfunction -1
TCL_3DSmoke(n).active=0
rem destroy Smoke
for k=sayyy to sayyy+11
if object exist(k)=1 then delete object k
next k
rem deactivate Smoke
// TCL_3DSmoke(n).active=1
endfunction n
function TCL_Control3DSmoke(xangle#,yangle#)
rem local varaibles
local n as integer
local k as integer
for n=0 to TCL_3DSmokeMax
if TCL_3DSmoke(n).active=2
sayy=(n*12)+1000
for k=1 to TCL_3DSmokeParticleMax
inc sayy,1
rem life
dec TCL_3DSmokeParticle(n,k).life
rem reset particle
if TCL_3DSmokeParticle(n,k).life<1 and (TCL_3DSmoke(n).life>10 or TCL_3DSmoke(n).life=0)
TCL_3DSmokeParticle(n,k).life=10+rnd(10)
TCL_3DSmokeParticle(n,k).pos.x#=(((rnd(2)-1.0)/40)*TCL_3DSmoke(n).size#)+TCL_3DSmoke(n).pos.x#
TCL_3DSmokeParticle(n,k).pos.y#=(((rnd(2)-1.0)/40)*TCL_3DSmoke(n).size#)+TCL_3DSmoke(n).pos.y#
TCL_3DSmokeParticle(n,k).pos.z#=(((rnd(2)-1.0)/40)*TCL_3DSmoke(n).size#)+TCL_3DSmoke(n).pos.z#
TCL_3DSmokeParticle(n,k).speed#=((rnd(2)/64.0)+0.01)*TCL_3DSmoke(n).size#
endif
rem fade particles
s=(TCL_3DSmokeParticle(n,k).life*3)
bass:
if object exist(sayy)=0 then sayy=sayy+1: goto bass
if s>0 then fade object sayy,s
rem Smoke goes up
inc TCL_3DSmokeParticle(n,k).pos.y#,TCL_3DSmokeParticle(n,k).speed#
rem apply force
inc TCL_3DSmokeParticle(n,k).pos.x#,TCL_3DSmoke(n).force.x#
inc TCL_3DSmokeParticle(n,k).pos.y#,TCL_3DSmoke(n).force.y#
inc TCL_3DSmokeParticle(n,k).pos.z#,TCL_3DSmoke(n).force.z#
rem update particles
TCL_3DSmokeParticle(n,k).xangle#=xangle#
TCL_3DSmokeParticle(n,k).yangle#=yangle#
//text 10,10,str$(TCL_3DSmokeParticle(n,k).xangle#)
don=wrapvalue (don+5)
position object sayy,TCL_3DSmokeParticle(n,k).pos.x#,TCL_3DSmokeParticle(n,k).pos.y#,TCL_3DSmokeParticle(n,k).pos.z#
rotate object sayy,TCL_3DSmokeParticle(n,k).xangle#+don,TCL_3DSmokeParticle(n,k).yangle#,0
set object to camera orientation sayy
next k
rem decrement life of Smoke
if TCL_3DSmoke(n).life>1
dec TCL_3DSmoke(n).life
if TCL_3DSmoke(n).life=1 then TCL_Destroy3DSmoke(n)
endif
endif
next n
endfunction