Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > Blitz3D > Полезные функции

Полезные функции Выкладываем полезные функции, чтоб не изобретать велосипед заново...

Ответ
 
Опции темы
Старый 11.12.2006, 18:44   #1
pipns
Нуждающийся
 
Регистрация: 01.10.2006
Сообщений: 55
Написано одно полезное сообщение
(для 0 участников)
Мало ресурсный огонь.

Graphics3D 600, 600, 16, 2
SetBuffer BackBuffer( )
phWorldCreate( 1 )
phWorldSetGravity( 0, -9.8, 0 )
SeedRnd MilliSecs( )
Global Camera = CreateCamera( )
Global Light = CreateLight( )
Type SpriteFire
Field Sprite
Field AlphaD#
Field AlphaM#
Field MoveY#
Field MoveXZ#
End Type
Type Fire
Field TimeD%
Field TimeN%
Field PX#
Field PY#
Field PZ#
Field R
Field G
Field B
End Type

PositionEntity Camera, 0, 100, -200
RotateEntity Camera, 45, 0, 0

Create_Fire 70, -40, 0, 0, 255, 255, 55
Create_Fire 70, 40, 0, 0, 125, 125, 255

Mirror = CreateMirror( )
Repeat

Update_SpriteFire
Update_Fire

UpdateWorld
RenderWorld


Flip 0
Until KeyHit(1)
End

Function Create_SpriteFire ( AlphaD#=1, AlphaM#=.001, Scale#=1, MoveY#=.05, MoveXZ#=0, PX#=0, PY#=0, PZ#=0, R=0, G=0, B=0 )
sf.SpriteFire = New SpriteFire
sf\Sprite = CreateSprite ( )
sf\AlphaD# = AlphaD#
sf\AlphaM# = AlphaM#
sf\MoveY# = MoveY#
sf\MoveXZ# = MoveXZ#
EntityShininess sf\Sprite, 1
ScaleSprite sf\Sprite, Scale#, Scale#
EntityColor sf\Sprite, R, G, B
PositionEntity sf\Sprite, PX#, PY#, PZ#
End Function
Function Update_SpriteFire ( )
For sf.SpriteFire = Each SpriteFire
sf\AlphaD# = sf\AlphaD# - sf\AlphaM#
EntityAlpha sf\Sprite, sf\AlphaD#
TranslateEntity sf\Sprite, sf\MoveXZ#, sf\MoveY#, sf\MoveXZ#
If sf\AlphaD# <= 0 Then
FreeEntity sf\Sprite
Delete sf
EndIf
Next
End Function

Function Create_Fire ( Time=100, PX#=0, PY#=0, PZ#=0, R=0, G=0, B=0 )
fr.Fire = New Fire
fr\TimeD% = Time%
fr\TimeN% = Time%
fr\PX# = PX#
fr\PY# = PY#
fr\PZ# = PZ#
fr\R = R
fr\G = G
fr\B = B
End Function
Function Update_Fire ( )
For fr.Fire = Each Fire
fr\TimeD% = fr\TimeD% - 1
If fr\TimeD% <=0 Then
Create_SpriteFire 1, .001, 1, .05, Rnd(-.015,.015), fr\PX#+Rnd(-3,3), fr\PY#, fr\PZ#+Rnd(-3,3), fr\R, fr\G, fr\B
fr\TimeD% = fr\TimeN%
EndIf
Next
End Function
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Eugenes (30.06.2012)
Старый 11.12.2006, 19:08   #2
pipns
Нуждающийся
 
Регистрация: 01.10.2006
Сообщений: 55
Написано одно полезное сообщение
(для 0 участников)
Re: Мало ресурсный огонь.

Извените за мою не грамотность. Просто когда я пишу быстро, у меня получаеться чушь!
(Offline)
 
Ответить с цитированием
Старый 12.12.2006, 01:37   #3
HolyDel
 
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений
(для 2,707 пользователей)
Re: Мало ресурсный огонь.

работает.
(Offline)
 
Ответить с цитированием
Старый 13.12.2006, 04:07   #4
Черный крыс
 
Сообщений: n/a
Re: Мало ресурсный огонь.

AMT_particle_system - рулит!!! =)
 
Ответить с цитированием
Старый 16.12.2006, 20:37   #5
vadim2
Знающий
 
Регистрация: 08.06.2006
Сообщений: 304
Написано 3 полезных сообщений
(для 8 пользователей)
Re: Мало ресурсный огонь.

Сообщение от Diablo1909
AMT_particle_system - рулит!!! =)
А где её взять бесплатно?
(Offline)
 
Ответить с цитированием
Старый 16.12.2006, 23:00   #6
jimon
 
Сообщений: n/a
Re: Мало ресурсный огонь.

попросить у автора
 
Ответить с цитированием
Старый 24.12.2006, 13:42   #7
Тарас Шевченко
Знающий
 
Регистрация: 17.08.2006
Сообщений: 246
Написано 0 полезных сообщений
(для 0 пользователей)
Re: Мало ресурсный огонь.

2 jimon: Может вопрос глупый, но кто автор и как с ним связаться?
(Offline)
 
Ответить с цитированием
Старый 24.12.2006, 15:16   #8
Valet
Знающий
 
Регистрация: 16.07.2006
Сообщений: 304
Написано 3 полезных сообщений
(для 0 пользователей)
Re: Мало ресурсный огонь.

Странно... Может только лишь я не могу узреть в этом примере самого пламени?
(Offline)
 
Ответить с цитированием
Старый 24.12.2006, 20:19   #9
Progger_Leo
 
Сообщений: n/a
Re: Мало ресурсный огонь.

Я тоже что-то пламени узреть не могу... А пива не пил...
 
Ответить с цитированием
Старый 24.12.2006, 23:20   #10
jimon
 
Сообщений: n/a
Re: Мало ресурсный огонь.

Тарас Шевченко
попроси Maxus'а или Tormoz'а
 
Ответить с цитированием
Старый 25.08.2007, 20:04   #11
avel
Бывалый
 
Аватар для avel
 
Регистрация: 12.10.2006
Сообщений: 737
Написано 131 полезных сообщений
(для 452 пользователей)
Re: Мало ресурсный огонь.

а я чего-то тоже пламени не заметил... где сам огонь-то? там только спарки.
(Offline)
 
Ответить с цитированием
Старый 12.09.2007, 22:27   #12
Crystal
Терабайт исходников
 
Аватар для Crystal
 
Регистрация: 05.07.2007
Сообщений: 5,196
Написано 1,721 полезных сообщений
(для 5,374 пользователей)
Re: Мало ресурсный огонь.

function 'phworldcreate' not found

__________________
Проект "Deathbring World - Rangers" и его финансовая поддержка:
https://boosty.to/deathbringrangers

Я на - TWITCH
Канал на YouTube
(Offline)
 
Ответить с цитированием
Старый 12.09.2007, 22:31   #13
dimanche13
Мастер
 
Регистрация: 19.03.2007
Сообщений: 1,039
Написано 153 полезных сообщений
(для 252 пользователей)
Re: Мало ресурсный огонь.

Crystal, а "ph" в названии функции тебе ничего не говорит?
(Offline)
 
Ответить с цитированием
Старый 12.09.2007, 23:04   #14
NitE
злобный флудер
 
Регистрация: 10.07.2007
Сообщений: 2,585
Написано 789 полезных сообщений
(для 1,476 пользователей)
Re: Мало ресурсный огонь.

Скрытый текст (вы должны войти под своим логином или зарегистрироваться и иметь 5 сообщение(ий)):
У вас нет прав, чтобы видеть скрытый текст, содержащийся здесь.
(Offline)
 
Ответить с цитированием
Старый 29.11.2007, 00:05   #15
BOPOH
AnyKey`щик
 
Регистрация: 17.01.2007
Сообщений: 6
Написано одно полезное сообщение
Re: Мало ресурсный огонь.

;a как вам мой вариант ???;BOPOH / red_kapcap icq 212602917;DEMO_Fire;Graphics3D 800,600,16,2Const SyncTime=30Global sync=CreateTimer(SyncTime)Global oldtime=0Global fps#=SyncTimeSeedRnd MilliSecs()AmbientLight 100,100,100Global light_amb=CreateLight():RotateEntity(light_amb,80,-20,0)plane=CreatePlane():EntityTexture plane,MakeTx_001()SetBuffer BackBuffer()Global GLTarget=CreatePivot()Global Camera=CreateCamera(GLTarget):CameraClsColor Camera,200,170,200MoveEntity Camera,0,2,-15:PointEntity camera,GLTarget;;=================iniGlobal GlobalFireTexture=FireTexture(1) ; 1 or 2For ix=0 To 50e=CreateNewFire(1,1,Rnd(1,2)):PositionEntity e,Rnd(-10,10),0,Rnd(-10,10)NexttExit=False;===================================================While Not tExitSoftFPS#()If KeyDown( 1 ) tExit=TrueTurnEntity GLTarget,0,0.2,0If fps>=SyncTime e=CreateNewFire(1,1,Rnd(1,2)):PositionEntity e,Rnd(-10,10),0,Rnd(-10,10)SetBuffer BackBuffer()UpdateWorld ()RenderWorldColor 255,10,10Text 0,0,"FPS="+RSet$(Str(FPS#),6) +" Triangles Rendered: "+RSet$(TrisRendered(),10)WaitTimer(Sync)Flip Wend ;-----------------------------------------\\\Function SoftFPS#()fps#=1000/(MilliSecs()-oldtime)oldtime=MilliSecs();Return fps#End Function ;-----------------------------------------///Function CreateNewFire(Size=1,wt=1,ht=2)ent0=CreatePivot()tx=GlobalFireTextureent=firemesh(wt,Ht,ent0)EntityTexture ent,txEntityBlend ent,3EntityFX ent,17;---------------animSetAnimKey ent,0,0,1SetAnimKey ent,1,0,1TurnEntity ent,0,90,0SetAnimKey ent,2,0,1SetAnimKey ent,3,0,1TurnEntity ent,0,90,0SetAnimKey ent,4,0,1SetAnimKey ent,5,0,1TurnEntity ent,0,90,0SetAnimKey ent,6,0,1SetAnimKey ent,7,0,1AddAnimSeq ent,8Animate ent;-----------------------ent1=firemesh(wt,Ht*0.6,ent0)EntityTexture ent1,txEntityBlend ent1,3EntityFX ent1,16RotateMesh ent1,0,45,0 SetAnimKey ent1,0,0,1SetAnimKey ent1,1,0,1TurnEntity ent1,0,-90,0SetAnimKey ent1,2,0,1SetAnimKey ent1,3,0,1TurnEntity ent1,0,-90,0SetAnimKey ent1,4,0,1SetAnimKey ent1,5,0,1TurnEntity ent1,0,-90,0SetAnimKey ent1,6,0,1SetAnimKey ent1,7,0,1AddAnimSeq ent1,8Animate ent1ScaleEntity ent0,0.01,0.01,0.01SetAnimKey ent0,0,0,0,1frames=160For ix=1 To frames Step 15k#=Rnd(-0.2,0.3)SetAnimKey ent0,ix,0,0,1ScaleEntity ent0,1+k*0.5,1+k#,1+k*0.5Nextframes=frames+10ScaleEntity ent0,0.01,0.01,0.01SetAnimKey ent0,frames,0,0,1AddAnimSeq ent0,frames+10Animate ent0Return ent0End Function Function FireTexture(Size=1)Local x#,y#,strn%,kadr%,col%Local w#,h#sz=16 Shl sizestrn=(sz*0.5)tx=CreateTexture(sz,sz,3)SetBuffer TextureBuffer(tx)LockBufferFor x=0 To sz-1For y=0 To sz-1WritePixelFast x,y,0;+$ff000000NextNextUnlockBuffer;--------------------generate pictureFor ix#=0 To strn-1 ;Step 2;5max#=strnkStep#=(0.0+ix)/max#kStepi#=1-kStep#k0#=((kStep*10) And 7)*0.11794k#=(ix And 3);----select colorClr=Rnd(10)Select True Case Clr9r=000:g=0:b=200*kStepi#Default r=155:g=100*kStep#:b=0End Select s#=0a#=0.590+Rnd(0.08)pos#=2Xsm#=0;-----loopWhile pos#3 kadr=0WendNextReturn TxEnd Function Function FireMesh(w#=1,h#=1,par)Mes=CreateMesh(par):CrSur=CreateSurface(Mes)AddVertex(CrSur,-w,0,0,1,0,0)AddVertex(CrSur,0,h,0,1,1,0)AddVertex(CrSur,w,0,0,0,1,0)AddVertex(CrSur,0,0,w#,0,1,0)AddVertex(CrSur,0,h,0,0,0,0)AddVertex(CrSur,0,0,-w#,1,0,0)AddTriangle(CrSur,0,1,2)AddTriangle(CrSur,3,4,5)Return mes End Function Function MakeTx_001(sz=32)tx=CreateTexture(sz,sz)SetBuffer TextureBuffer(tx) ClsColor 80,40,10:ClsFor i1=1 To 320b=Rnd(-20,20):Color 80+b,40+b,10x=Rnd(sz):y=Rnd(sz)For i=1 To 4Plot x+Rnd(-1,1),y+Rnd(-1,1)Next:NextReturn txEnd Function
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Плохая Туберкулезная палочка... Данил Болтовня 19 19.06.2009 14:20
Огонь при выстреле Тарас Шевченко 3D-программирование 1 11.02.2007 17:59
Огонь ЛысыЙ_Чук-Иванчук 3D-программирование 18 30.11.2006 23:39
Нужен огонь. ЛысыЙ_Чук-Иванчук 3D-программирование 22 01.11.2006 14:46
PhysX SDK 2.6.0 - мало и много jimon C++ 1 29.10.2006 23:59


Часовой пояс GMT +4, время: 00:28.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com