|
FAQ Туториалы и часто задаваемые вопросы |
07.02.2011, 11:56
|
#16
|
Оператор ЭВМ
Регистрация: 03.02.2011
Сообщений: 28
Написано 0 полезных сообщений (для 0 пользователей)
|
Ответ: Вопросы по текстурам.
Сделал такую функцию
Function update_box()
If EntityCollided (user,BOXT) > 0 And KeyDown(SC1)
size=size+1
ScaleEntity b\entity,size,size,size
EndIf
End Function
Пишет
Varible Must be Type и указывает на эту строчку
ScaleEntity b\entity,size,size,size
Хотя до этого прописан такой код
Function create_box(size,x#=0,y#=0,z#=0,txt)
b.cb= New cb
b\entity = CreateCube()
EntityType b\entity,BOXT
PositionEntity b\entity,x#,y#,z#
ScaleEntity b\entity,size,size,size
EntityTexture b\entity,txt
Return True
End Function
Function create_block(sizex,sizey,sizez,x#=0,y#=0,z#=0,txt)
b2.cb2= New cb2
b2\entity = CreateCube()
EntityType b2\entity,BOXT
PositionEntity b2\entity,x#,y#,z#
ScaleEntity b2\entity,sizex,sizey,sizez
EntityTexture b2\entity,txt
Return True
End Function
Что не так?=)
|
(Offline)
|
|
07.02.2011, 13:03
|
#17
|
Гигант индустрии
Регистрация: 13.09.2008
Сообщений: 2,893
Написано 1,185 полезных сообщений (для 3,298 пользователей)
|
Ответ: Вопросы по текстурам.
Наверно нужно вот так
Function update_box()
for b.cb = each cb
If EntityCollided (user,BOXT) > 0 And KeyDown(SC1)
size=size+1
ScaleEntity b\entity,size,size,size
EndIf
next
End Function
|
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
07.02.2011, 13:22
|
#18
|
Оператор ЭВМ
Регистрация: 03.02.2011
Сообщений: 28
Написано 0 полезных сообщений (для 0 пользователей)
|
Ответ: Вопросы по текстурам.
Объекты просто исчезают, ПРИЧЕМ ВСЕ КУБЫ=(
Но все равно спс=)
Function update_box()
for b.cb = each cb
If EntityCollided (user,BOXT) > 0 And KeyHit(SC1)
size=size-0.01
ScaleEntity b\entity,size,size,size
EndIf
next
End Function
Более-менее работает, только теперь один объект это "чувствует"
|
(Offline)
|
|
07.02.2011, 13:35
|
#19
|
Знающий
Регистрация: 06.12.2010
Адрес: Луганск
Сообщений: 252
Написано 112 полезных сообщений (для 166 пользователей)
|
Ответ: Вопросы по текстурам.
Непонимание принципа работы типов вызывает
Сначала ищем нужную запись, потом с ней работаем.
Function update_box()
local ent = EntityCollided (user,BOXT)
If ent > 0 And KeyHit(SC1)
for b.cb = each cb
if b\entity = ent then exit
next
size=size + 1
ScaleEntity b\entity,size,size,size
EndIf
End Function
|
(Offline)
|
|
07.02.2011, 13:38
|
#20
|
Оператор ЭВМ
Регистрация: 03.02.2011
Сообщений: 28
Написано 0 полезных сообщений (для 0 пользователей)
|
Ответ: Вопросы по текстурам.
Объекты как-то криво исчезают, эх=)
Тогда над мне с нуля наверно писать=)
Просто у меня должно плавно увеличиваться=)
----
Подскажите как сделать такое плавное уменьшение или увеличение=)
Буду признателен=)
(После Гамака сложно переходить)
|
(Offline)
|
|
07.02.2011, 14:03
|
#21
|
Знающий
Регистрация: 06.12.2010
Адрес: Луганск
Сообщений: 252
Написано 112 полезных сообщений (для 166 пользователей)
|
Ответ: Вопросы по текстурам.
Они не исчезают, просто увеличиваются так быстро, что камера оказывается внутри и не видит их.
В функции update_box() исправь:
...
size#=size# + 0.001
ScaleEntity b\entity,size#,size#,size#
...
Теперь будет увеличиваться медленно.
|
(Offline)
|
|
07.02.2011, 14:06
|
#22
|
Оператор ЭВМ
Регистрация: 03.02.2011
Сообщений: 28
Написано 0 полезных сообщений (для 0 пользователей)
|
Ответ: Вопросы по текстурам.
Хех=)
Не работает, тоже самое
Graphics3D 0,0,32,1
SetBuffer BackBuffer()
Include "sckeyscan.bb"
Global user,camera,sky,lit
Global t1,t2,s1,s2
Const USERT=1
Const BOXT=2
Type cb
Field entity
End Type
Type cb2
Field entity
End Type
;------^PHYSICS^------
Const UP# = 0.7
Const GR# = 1
Const cj#=1
;------^TEXTURES^_____
t1=LoadTexture ("pack\standart\GF01.jpg")
t2=LoadTexture ("pack\standart\GG01.jpg")
s1=LoadTexture ("pack\standart\SK01.jpg")
s2=LoadTexture ("pack\standart\SK02.jpg")
;------^GAME^-----
Function create_user(x#,y#,z#)
user=CreateSphere()
k#=3
ScaleEntity user,k#,k#,k#
EntityRadius user,k#
camera=CreateCamera(user)
CameraRange camera,0.1,3000
PositionEntity user,x#,y#,z#
EntityType user,USERT
End Function
Function update_user()
V#=0.5
u#=70;
TurnEntity camera,MouseYSpeed(),0,0
TurnEntity user,0,-MouseXSpeed(),0
If KeyDown(SCAKEY)=1 Then MoveEntity user,-V#,0,0
If KeyDown(SCDKEY)=1 Then MoveEntity user,V#,0,0
If KeyDown(SCWKEY)=1 Then MoveEntity user,0,0,+V#
If KeyDown(SCSKEY)=1 Then MoveEntity user,0,0,-V#
MoveMouse GraphicsWidth()*0.5,GraphicsHeight()*0.5
If Abs(EntityPitch#(camera))>u# RotateEntity camera,u#*Sgn(EntityPitch#(camera)),0,0
Collisions USERT,BOXT,2,2
EntityBox user,x#,y#,z#,k#+3,k#+16,k#+3
;---
If EntityCollided (user,BOXT) <= 0
TranslateEntity user,0,-UP#,0
EndIf
End Function
Function create_box(size#,x#=0,y#=0,z#=0,txt)
b.cb=New cb
b\entity= CreateCube()
EntityType b\entity,BOXT
PositionEntity b\entity,x#,y#,z#
ScaleEntity b\entity,size,size,size
EntityTexture b\entity,txt
Return True
End Function
Function create_block(sizex,sizey,sizez,x#=0,y#=0,z#=0,txt)
b2.cb2= New cb2
b2\entity = CreateCube()
EntityType b2\entity,BOXT
PositionEntity b2\entity,x#,y#,z#
ScaleEntity b2\entity,sizex,sizey,sizez
EntityTexture b2\entity,txt
Return True
End Function
Function create_skysphere(t)
sky=CreateSphere(100,user)
FlipMesh sky
EntityTexture sky,t
ScaleEntity sky,2000,2000,2000
End Function
Function create_w()
create_user(0,60,0)
create_box(5,0,10,0,t1)
create_box(15,10,140,10,t2)
create_box(10,10,0,0,t1)
create_block(30,3,30,0,-10,0,t2)
create_skysphere(s1)
End Function
Function update_skysphere()
TurnEntity sky,0,0.01,0
End Function
Function update_light()
lit=CreateLight()
LightRange lit,2000
RotateEntity lit,270,0,0
End Function
Function update_box()
local ent = EntityCollided (user,BOXT)
If ent > 0 And KeyHit(SC1)
for b.cb = each cb
if b\entity = ent then exit
Next
size#=size# + .001
ScaleEntity b\entity,size#,size#,size#
EndIf
End Function
;------^CRETAEWORLD^-
create_w()
;------^PROCESS^-----
While Not KeyHit(1)=1
update_skysphere()
update_light()
update_user()
update_box()
UpdateWorld()
RenderWorld()
Text 10,10,"xPos "+EntityX (user)
Text 10,20,"yPos "+EntityY (user)
Text 10,30,"zPos "+EntityZ (user)
Text 10,40,"Render "+TrisRendered()
Flip
Wend
;----------------------------
End
МБ ошибка во всем коде?
|
(Offline)
|
|
10.02.2011, 15:14
|
#23
|
Оператор ЭВМ
Регистрация: 03.02.2011
Сообщений: 28
Написано 0 полезных сообщений (для 0 пользователей)
|
Ответ: Вопросы по текстурам.
Пишу редактор и столкнулся с проблемой.
Как сейвить путь к текстуре?
У меня прописано так
File=WriteFile(name$+".txt")
For S.vcube=Each vcube
WriteLine(File,S\t1)
WriteInt(File,S\t2)
WriteInt(File,S\t3)
WriteInt(File,S\t4)
WriteInt(File,S\t5)
WriteInt(File,S\t6)
WriteInt(File,S\x)
WriteInt(File,S\y)
WriteInt(File,S\z)
WriteInt(File,S\sx)
WriteInt(File,S\sy)
WriteInt(File,S\sz)
WriteInt(File,S\rx)
WriteInt(File,S\ry)
WriteInt(File,S\rz)
Next
CloseFile(File)
где S\t(NUM)=номеру текстуры по каждой стороне вертексного кубика
__________________
--<(г.г)>--
//Йа КрутЭ КотЭ
|
(Offline)
|
|
10.02.2011, 15:21
|
#24
|
Дэвелопер
Регистрация: 04.11.2009
Адрес: Украина, Днепропетровск
Сообщений: 1,480
Написано 662 полезных сообщений (для 1,985 пользователей)
|
Ответ: Вопросы по текстурам.
Есть предположение что WriteInt пишет в файл ЧИСЛО, а S\t2 - СТРОКА.
Лечится использованием WriteString или WriteLine вместо инта
|
(Offline)
|
|
10.02.2011, 15:36
|
#25
|
Оператор ЭВМ
Регистрация: 03.02.2011
Сообщений: 28
Написано 0 полезных сообщений (для 0 пользователей)
|
Ответ: Вопросы по текстурам.
Я сохраняю эту феню
"pack\standart\GG01.jpg"
не воркает х(
ПОМОГИТЕ =)
__________________
--<(г.г)>--
//Йа КрутЭ КотЭ
|
(Offline)
|
|
10.02.2011, 16:01
|
#26
|
Дэвелопер
Регистрация: 04.11.2009
Адрес: Украина, Днепропетровск
Сообщений: 1,480
Написано 662 полезных сообщений (для 1,985 пользователей)
|
Ответ: Вопросы по текстурам.
File=WriteFile(name$+".txt")
For S.vcube=Each vcube
WriteString(File,S\t1)
WriteString(File,S\t2)
WriteString(File,S\t3)
...
Next
CloseFile(File)
|
(Offline)
|
|
10.02.2011, 16:19
|
#27
|
Оператор ЭВМ
Регистрация: 03.02.2011
Сообщений: 28
Написано 0 полезных сообщений (для 0 пользователей)
|
Ответ: Вопросы по текстурам.
Я же сказал что не работает х(
__________________
--<(г.г)>--
//Йа КрутЭ КотЭ
|
(Offline)
|
|
10.02.2011, 16:30
|
#28
|
Мастер
Регистрация: 24.06.2009
Адрес: Набережные Челны
Сообщений: 930
Написано 292 полезных сообщений (для 504 пользователей)
|
Ответ: Вопросы по текстурам.
Лучше выкласть проэкт с bb файлами и инклудами, текстурами jpg чтобы тест был возможен. Иначе нам придётся заполнять эти файлы своими (или инклуды искать).
Своруют проэкт?
Ну исх. код то уже выставлен...
|
(Offline)
|
|
10.02.2011, 16:45
|
#29
|
Оператор ЭВМ
Регистрация: 03.02.2011
Сообщений: 28
Написано 0 полезных сообщений (для 0 пользователей)
|
Ответ: Вопросы по текстурам.
Это старый - кривой код, лаги лаги там=)
Я уже другой написал...
__________________
--<(г.г)>--
//Йа КрутЭ КотЭ
|
(Offline)
|
|
10.02.2011, 16:54
|
#30
|
Дэвелопер
Регистрация: 04.11.2009
Адрес: Украина, Днепропетровск
Сообщений: 1,480
Написано 662 полезных сообщений (для 1,985 пользователей)
|
Ответ: Вопросы по текстурам.
Прочитай вот это: http://forum.boolean.name/showthread.php?t=14187&page=2, и ещё раз задай свой вопрос. Я не понимаю что не так
|
(Offline)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 12:43.
|