 |
3D-программирование Вопросы, касающиеся программирования 3D мира |
17.08.2007, 11:51
|
#16
|
Ференька
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,743
Написано 5,461 полезных сообщений (для 15,676 пользователей)
|
Re: Всем привет, помогите мне зеленому:)
PIRSER, функция, это, например, такой код:
[blitz]Function prevedmedved(x,y)
Text x,y,"Превед, медвед!"
End Function [/blitz]
вызов функции - это например такой код:
[blitz]
........
код проги
.......
RenderWorld
prevedmedved (20,20) ; !!! Вызов функции
flip
......
......
[/blitz]
Ты щас уже второй раз выкладываешь в своем посте код самой функции, а нам нужно то место где ты её вызываешь!
Кста как ты сделал чтобы текст выделялся в посте цветами точно так же как в Блитзе? Ну там, каменты жёлтенькие, переменные синенькие и т.д.? Я тоже так хочу!
__________________
Мои проекты:
Анальное Рабство
Зелёный Слоник
Дмитрий Маслов*
Различие**
Клюква**
* — в стадии разработки
** — в стадии проектирования
Для проектов в стадии проектирования приведены кодовые имена
|
(Offline)
|
|
17.08.2007, 11:56
|
#17
|
AnyKey`щик
Регистрация: 31.05.2007
Сообщений: 9
Написано 0 полезных сообщений (для 0 пользователей)
|
Re: Всем привет, помогите мне зеленому:)
Вот!
это с одним мешем, без скайла и позиции.

SeedRnd MilliSecs()
Graphics3D 640,480,16,0
SetBuffer BackBuffer()
Scool=LoadMesh("D:\my game\1\1.x")
Function MakeSkyBox( file$ )
m=CreateMesh()
;front face
b=LoadBrush( file$+"_FR.bmp",49 )
s=CreateSurface( m,b )
AddVertex s,-1,+1,-1,0,0:AddVertex s,+1,+1,-1,1,0
AddVertex s,+1,-1,-1,1,1:AddVertex s,-1,-1,-1,0,1
AddTriangle s,0,1,2:AddTriangle s,0,2,3
FreeBrush b
;right face
b=LoadBrush( file$+"_LF.bmp",49 )
s=CreateSurface( m,b )
AddVertex s,+1,+1,-1,0,0:AddVertex s,+1,+1,+1,1,0
AddVertex s,+1,-1,+1,1,1:AddVertex s,+1,-1,-1,0,1
AddTriangle s,0,1,2:AddTriangle s,0,2,3
FreeBrush b
;back face
b=LoadBrush( file$+"_BK.bmp",49 )
s=CreateSurface( m,b )
AddVertex s,+1,+1,+1,0,0:AddVertex s,-1,+1,+1,1,0
AddVertex s,-1,-1,+1,1,1:AddVertex s,+1,-1,+1,0,1
AddTriangle s,0,1,2:AddTriangle s,0,2,3
FreeBrush b
;left face
b=LoadBrush( file$+"_RT.bmp",49 )
s=CreateSurface( m,b )
AddVertex s,-1,+1,+1,0,0:AddVertex s,-1,+1,-1,1,0
AddVertex s,-1,-1,-1,1,1:AddVertex s,-1,-1,+1,0,1
AddTriangle s,0,1,2:AddTriangle s,0,2,3
FreeBrush b
;top face
b=LoadBrush( file$+"_UP.bmp",49 )
s=CreateSurface( m,b )
AddVertex s,-1,+1,+1,0,1:AddVertex s,+1,+1,+1,0,0
AddVertex s,+1,+1,-1,1,0:AddVertex s,-1,+1,-1,1,1
AddTriangle s,0,1,2:AddTriangle s,0,2,3
FreeBrush b
ScaleMesh m,100,100,100
FlipMesh m
EntityFX m,9
EntityOrder m,10
Return m
End Function
lit=CreateLight()
cub=CreateCube()
PositionEntity cub,0,0,0
tex=LoadTexture("1.jpg")
ScaleTexture tex,10,10
EntityTexture cub,tex
ScaleEntity cub,1,.5,2
cam=CreateCamera(cub)
PositionEntity cam,x#,y#,z#
CameraRange cam,0.1,10000
Repeat
;upravlenie kubom
If KeyDown(200) MoveEntity cub,0,0,10
If KeyDown(208) MoveEntity cub,0,0,-10
If KeyDown(203) TurnEntity cub,0,1,0
If KeyDown(205) TurnEntity cub,0,-1,0
sky=MakeSkyBox("sky")
ScaleEntity sky,100,100,100
UpdateWorld
RenderWorld
Flip
Until KeyHit(1)
End
|
|
(Offline)
|
|
17.08.2007, 12:01
|
#18
|
AnyKey`щик
Регистрация: 31.05.2007
Сообщений: 9
Написано 0 полезных сообщений (для 0 пользователей)
|
Re: Всем привет, помогите мне зеленому:)
To АВТОМАТ Хех не знал, я думал скай куб, эт просто объект. Зачем мне его вызывать, если он показывается  Да я полный НУБ!
Текст просто копировал сразу из Блица, а он сам так вставляется 
|
(Offline)
|
|
17.08.2007, 12:02
|
#19
|
Ференька
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,743
Написано 5,461 полезных сообщений (для 15,676 пользователей)
|
Re: Всем привет, помогите мне зеленому:)
Repeat !!! Это ж цикл!
;upravlenie kubom гы, научи блитз понимать русские буквы и не парься транслитом 
If KeyDown(200) MoveEntity cub,0,0,10
If KeyDown(208 ) MoveEntity cub,0,0,-10
If KeyDown(203) TurnEntity cub,0,1,0
If KeyDown(205) TurnEntity cub,0,-1,0
sky=MakeSkyBox("sky") !!! создаёшь скайбокс в цикле, т.е. он создаётся у тебя примерно 30 раз в секунду. Тормоза при этом понятны.
Создавай скабокс ДО цикла и не будет тебе тормозов. 
ScaleEntity sky,100,100,100
UpdateWorld
RenderWorld
Flip
Until KeyHit(1)
|
Фигасе, я ине знал что он так копируется
Нет, ты не НУБ, НУБ - создатель бблиотеки Ashadow, скорее просто новис 
__________________
Мои проекты:
Анальное Рабство
Зелёный Слоник
Дмитрий Маслов*
Различие**
Клюква**
* — в стадии разработки
** — в стадии проектирования
Для проектов в стадии проектирования приведены кодовые имена
|
(Offline)
|
|
17.08.2007, 12:05
|
#20
|
Blitz's Shame !!
Регистрация: 31.03.2007
Сообщений: 3,639
Написано 832 полезных сообщений (для 2,013 пользователей)
|
Re: Всем привет, помогите мне зеленому:)
SeedRnd MilliSecs()
Graphics3D 640,480,16,0
SetBuffer BackBuffer()
Scool=LoadMesh("D:\my game\1\1.x")
lit=CreateLight()
cub=CreateCube()
PositionEntity cub,0,0,0
tex=LoadTexture("1.jpg")
ScaleTexture tex,10,10
EntityTexture cub,tex
ScaleEntity cub,1,.5,2
cam=CreateCamera(cub)
PositionEntity cam,x#,y#,z#
CameraRange cam,0.1,10000
sky=MakeSkyBox("sky")
Repeat
;upravlenie kubom
If KeyDown(200) MoveEntity cub,0,0,10
If KeyDown(20  MoveEntity cub,0,0,-10
If KeyDown(203) TurnEntity cub,0,1,0
If KeyDown(205) TurnEntity cub,0,-1,0
ScaleEntity sky,100,100,100
UpdateWorld
RenderWorld
Flip
Until KeyHit(1)
End
Function MakeSkyBox( file$ )
m=CreateMesh()
;front face
b=LoadBrush( file$+"_FR.bmp",49 )
s=CreateSurface( m,b )
AddVertex s,-1,+1,-1,0,0:AddVertex s,+1,+1,-1,1,0
AddVertex s,+1,-1,-1,1,1:AddVertex s,-1,-1,-1,0,1
AddTriangle s,0,1,2:AddTriangle s,0,2,3
FreeBrush b
;right face
b=LoadBrush( file$+"_LF.bmp",49 )
s=CreateSurface( m,b )
AddVertex s,+1,+1,-1,0,0:AddVertex s,+1,+1,+1,1,0
AddVertex s,+1,-1,+1,1,1:AddVertex s,+1,-1,-1,0,1
AddTriangle s,0,1,2:AddTriangle s,0,2,3
FreeBrush b
;back face
b=LoadBrush( file$+"_BK.bmp",49 )
s=CreateSurface( m,b )
AddVertex s,+1,+1,+1,0,0:AddVertex s,-1,+1,+1,1,0
AddVertex s,-1,-1,+1,1,1:AddVertex s,+1,-1,+1,0,1
AddTriangle s,0,1,2:AddTriangle s,0,2,3
FreeBrush b
;left face
b=LoadBrush( file$+"_RT.bmp",49 )
s=CreateSurface( m,b )
AddVertex s,-1,+1,+1,0,0:AddVertex s,-1,+1,-1,1,0
AddVertex s,-1,-1,-1,1,1:AddVertex s,-1,-1,+1,0,1
AddTriangle s,0,1,2:AddTriangle s,0,2,3
FreeBrush b
;top face
b=LoadBrush( file$+"_UP.bmp",49 )
s=CreateSurface( m,b )
AddVertex s,-1,+1,+1,0,1:AddVertex s,+1,+1,+1,0,0
AddVertex s,+1,+1,-1,1,0:AddVertex s,-1,+1,-1,1,1
AddTriangle s,0,1,2:AddTriangle s,0,2,3
FreeBrush b
ScaleMesh m,100,100,100
FlipMesh m
EntityFX m,9
EntityOrder m,10
Return m
End Function
ненадо функцию в главном коде вызивать !!
|
(Offline)
|
|
17.08.2007, 12:10
|
#21
|
AnyKey`щик
Регистрация: 31.05.2007
Сообщений: 9
Написано 0 полезных сообщений (для 0 пользователей)
|
Re: Всем привет, помогите мне зеленому:)
Ребяты спасибо!!! Воткну ка я вам по плюселю! Все работает, все ок.
To АВТОМАТ. Значит все, что создается в цикле, создается 30 в секунду. Т.е. обнавляется, так? А то, что до цикла, единажды, я все правильно понял?
|
(Offline)
|
|
17.08.2007, 12:13
|
#22
|
Blitz's Shame !!
Регистрация: 31.03.2007
Сообщений: 3,639
Написано 832 полезных сообщений (для 2,013 пользователей)
|
Re: Всем привет, помогите мне зеленому:)
To АВТОМАТ. Значит все, что создается в цикле, создается 30 в секунду. Т.е. обнавляется, так? А то, что до цикла, единажды, я все правильно понял?
|
только не 30 раз , а равно столько сколько цыклов происходит за 1 секунду !!
|
(Offline)
|
|
17.08.2007, 12:18
|
#23
|
AnyKey`щик
Регистрация: 31.05.2007
Сообщений: 9
Написано 0 полезных сообщений (для 0 пользователей)
|
Re: Всем привет, помогите мне зеленому:)
А сколько их происходит, как это узнать?
|
(Offline)
|
|
17.08.2007, 12:22
|
#24
|
Ференька
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,743
Написано 5,461 полезных сообщений (для 15,676 пользователей)
|
Re: Всем привет, помогите мне зеленому:)
Уважаемые, я примерно сказал 30 раз - чтоб не грузить всякими FPS'ами. 30 раз - т.е. 30 FPS.
Как узнать? Измеряй время до цикла и после цикла х\затем несложной арифметикой вычисля время, за которое он прошёл, и на это число дели 1000 (1 секунда = 1000 миллисекунд) - вот те и FPS
смотри в хелпе команду Millsecs ()
__________________
Мои проекты:
Анальное Рабство
Зелёный Слоник
Дмитрий Маслов*
Различие**
Клюква**
* — в стадии разработки
** — в стадии проектирования
Для проектов в стадии проектирования приведены кодовые имена
|
(Offline)
|
|
17.08.2007, 12:26
|
#25
|
Blitz's Shame !!
Регистрация: 31.03.2007
Сообщений: 3,639
Написано 832 полезных сообщений (для 2,013 пользователей)
|
Re: Всем привет, помогите мне зеленому:)
А сколько их происходит, как это узнать?
|
ето счётчик ФПС !!
посмотри в разделе функции или в факе !!
|
(Offline)
|
|
17.08.2007, 13:49
|
#26
|
Blitz's Shame !!
Регистрация: 31.03.2007
Сообщений: 3,639
Написано 832 полезных сообщений (для 2,013 пользователей)
|
Re: Всем привет, помогите мне зеленому:)
кста , вот эта функция :
vFPS=MilliSecs()
If vFPS-vLastFPS>1000
vShowFPS=vCurFPS
vLastFPS=vFPS
vCurFPS=0
Else
vCurFPS=vCurFPS+1
End If
Text 5,5,"FPS: "+vShowFPS
|
(Offline)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 07:24.
|