|
15.09.2013, 05:34
|
#106
|
Быдлокодер
Регистрация: 05.07.2009
Адрес: Проспит
Сообщений: 5,024
Написано 2,312 полезных сообщений (для 5,349 пользователей)
|
Ответ: Я новичок!
Брррр... Ничего не понял.
Учитывая что ты пользуешься картогрфшопом, думаю косяк в нём, что-то непонятное с координатами
Лучше воспользуйся 3D Max 2008 с B3d Pipeline, для блица самое оно
|
(Offline)
|
|
15.09.2013, 05:40
|
#107
|
AnyKey`щик
Регистрация: 15.09.2013
Сообщений: 13
Написано 0 полезных сообщений (для 0 пользователей)
|
Ответ: Я новичок!
Сохранение всё равно в b3d. Камера должна появиться на месте кубика - который в углу на против двери. Может какие-то преобразования нужны (из локальных в глобальные) координат?
|
(Offline)
|
|
15.09.2013, 05:47
|
#108
|
Быдлокодер
Регистрация: 05.07.2009
Адрес: Проспит
Сообщений: 5,024
Написано 2,312 полезных сообщений (для 5,349 пользователей)
|
Ответ: Я новичок!
Сообщение от harmon
Сохранение всё равно в b3d. Камера должна появиться на месте кубика - который в углу на против двери. Может какие-то преобразования нужны (из локальных в глобальные) координат?
|
Ну и что что в b3d.
Преобразования не какие ненужны, всё должно и так работать.
Может конечно в коде косяк не увидел, однако уверен что дело в картографе.
Я давным давно его забросил, когда столкнулся с подобными инфернальными проблемами.
|
(Offline)
|
|
15.09.2013, 14:00
|
#109
|
Терабайт исходников
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений (для 6,051 пользователей)
|
Ответ: Я новичок!
проверь, находится ли искомый объект в б3д.
сдаётся мне, что он даже не находится, и камера остаётся в нулевой точке.
объект может быть чайлдом другого объекта а не корня модели - искать надо тогда рекурсивно.
|
(Offline)
|
|
15.09.2013, 14:02
|
#110
|
AnyKey`щик
Регистрация: 15.09.2013
Сообщений: 13
Написано 0 полезных сообщений (для 0 пользователей)
|
Ответ: Я новичок!
Сообщение от Mr_F_
проверь, находится ли искомый объект в б3д.
сдаётся мне, что он даже не находится, и камера остаётся в нулевой точке.
объект может быть чайлдом другого объекта а не корня модели - искать надо тогда рекурсивно.
|
Он находится на месте. Код с медиеей во вложении (в 105 сообщении). Как найти рекурсивно?
|
(Offline)
|
|
15.09.2013, 16:17
|
#111
|
Гигант индустрии
Регистрация: 14.12.2005
Сообщений: 2,785
Написано 1,183 полезных сообщений (для 4,437 пользователей)
|
Ответ: Я новичок!
Сообщение от harmon
Проверил координаты всех CHILD - они все 0,0,0.
|
Это локальные координаты чайлда относительно родителя. Тебе нужны глобальные (поставь последний параметр в функциях в 1)
PositionEntity cam%,EntityX(pl%,1),EntityY(pl%,1),EntityZ(pl%,1), 1
__________________
|
(Offline)
|
|
15.09.2013, 16:30
|
#112
|
AnyKey`щик
Регистрация: 15.09.2013
Сообщений: 13
Написано 0 полезных сообщений (для 0 пользователей)
|
Ответ: Я новичок!
EntityParent vr1%,0
cam%=CreateCamera (vr1%)
PositionEntity cam%,EntityX(vr1%,1),EntityY(vr1%,1),EntityZ(vr1%, 1),1
Так тоже не получилось. Камера получается в середине а не на месте кубика.
|
(Offline)
|
|
15.09.2013, 17:57
|
#113
|
Гигант индустрии
Регистрация: 14.12.2005
Сообщений: 2,785
Написано 1,183 полезных сообщений (для 4,437 пользователей)
|
Ответ: Я новичок!
Сообщение от harmon
EntityParent vr1%,0
cam%=CreateCamera (vr1%)
PositionEntity cam%,EntityX(vr1%,1),EntityY(vr1%,1),EntityZ(vr1%, 1),1
Так тоже не получилось. Камера получается в середине а не на месте кубика.
|
Значит физический центр кубика не совпадает с его геометрическим центром.
Это косяк редактора моделей
FitMesh vr1, -(MeshWidth (vr1) / 2), -(MeshHeight (vr1) / 2), -(MeshDepth (vr1) / 2), MeshWidth (vr1), MeshHeight (vr1), MeshDepth (vr1)
cam%=CreateCamera (vr1%)
PositionEntity cam%,EntityX(vr1%,1),EntityY(vr1%,1),EntityZ(vr1%,1),1
__________________
|
(Offline)
|
|
15.09.2013, 18:54
|
#114
|
AnyKey`щик
Регистрация: 15.09.2013
Сообщений: 13
Написано 0 полезных сообщений (для 0 пользователей)
|
Ответ: Я новичок!
Переделал пропал кубик.
|
(Offline)
|
|
15.09.2013, 19:35
|
#115
|
Знающий
Регистрация: 06.12.2010
Адрес: Луганск
Сообщений: 252
Написано 112 полезных сообщений (для 166 пользователей)
|
Ответ: Я новичок!
Проблема в особенности работы редактора: координаты всех вершин заданны от единого центра. Координаты обьектов равны нулю и не меняются.
Тебе нужно задавать координаты точкой.
__________________
AMD Sempron(tm) 1.41Ггц, 1024МБ ОЗУ, GeForce 6200 128МБ, WinXP SP3.
|
(Offline)
|
|
15.09.2013, 20:09
|
#116
|
Гигант индустрии
Регистрация: 14.12.2005
Сообщений: 2,785
Написано 1,183 полезных сообщений (для 4,437 пользователей)
|
Ответ: Я новичок!
Вот твой кубик: под землей с сбитым центром
Graphics3D 800,600,32,2
cam%=CreateCamera ()
CameraRange cam,0.1,10000
vr%=LoadAnimMesh ("11.b3d")
ScaleEntity vr%,0.1,0.1,0.1
SetBuffer BackBuffer ()
;Чтение B3D
For q%=1 To CountChildren (vr%)
vr1%=GetChild (vr%,q%)
vrt$=EntityName$(vr1%)
If vrt$<>"" Then
vrt1$=Lower$(vrt$)
If Instr(vrt1$,"door")>0 Then;Дверь
;EntityParent vr1%,0
t%=CopyEntity (vr1%)
;FreeEntity vr1%
End If
If Instr(vrt1$,"geroy")>0 Then;главный герой
EntityParent vr1%,0
;pl%=CopyEntity (vr1%,0)
hero=vr1
FitMesh vr1, -(MeshWidth (vr1) / 2), -(MeshHeight (vr1) / 2), -(MeshDepth (vr1) / 2), MeshWidth (vr1), MeshHeight (vr1),MeshDepth (vr1)
PositionEntity cam%,EntityX(vr1%,1),EntityY(vr1%,1),EntityZ(vr1%,1),1;Загвоздка помоему где то тут!!!!!!!!!!!!!!!!!!!!!!!!!
End If
End If
Next
MoveEntity cam%,0,0,-10
r%=1
u%=1
While Not KeyHit(1)
old=MilliSecs ()
TurnEntity hero,0,0,.4
If KeyDown(17) Or MouseDown(1) Then MoveEntity cam%,0,0,1;вперед
If KeyDown(31) Or MouseDown(2) Then MoveEntity cam%,0,0,-1;назад
If KeyDown(30) Then TurnEntity cam%,0,1,0;влево
If KeyDown(32) Then TurnEntity cam%,0,-1,0;вправо
r%=r%+u%
If r%=20 Then u%=-1
If r%=1 Then u%=1
MoveEntity t%,0,u%,0
RenderWorld()
Text 10,20,EntityX(cam)
Text 10,40,EntityY(cam)
Text 10,60,EntityZ(cam)
Flip
Wend
__________________
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
15.09.2013, 20:41
|
#117
|
|
Ответ: Я новичок!
Не юзай 3Д ворлд студио, он УГ. + коверкает имена обьектам и задает единый центр ко всем префабам. ( последний недостаток можно вылечить при загрузке )
Не юзай гайлс, он к иерархии добавляет корневой пивот со всякой ересью в имени.
Юзай 3Дмакс + б3дПиплайн.
|
|
|
Сообщение было полезно следующим пользователям:
|
|
02.10.2013, 12:37
|
#118
|
Элита
Регистрация: 21.01.2010
Адрес: Россия, Рязанская область, г.Михайлов
Сообщений: 2,067
Написано 1,185 полезных сообщений (для 2,828 пользователей)
|
Ответ: Я новичок!
Дабы не плодить тем спрошу тут.
Дано:
текстура размером 64х64 (пиксели);
квад размером 1х1 (единица в блице);
Вопрос:
как сделать что бы на кваде эта текстура отображалась как 128х128, но в добавленой части картинка не дублировалась?
т.е. из вот этого (на уровне текстуры, а не объекта):
получилось вот так:
__________
| oo |
| oo |
| |
| |
а не так (этот результат достигается с помощью ScaleTexture (tex, .5, .5)):
__________
| oo oo |
| oo oo |
| oo oo |
| oo oo |
Функция создания квада следующая:
Function CreateQuad(XSize#=1, ZSize#=1, tBrush = 0)
Local Mesh, Brush, Surf
Mesh=CreateMesh()
If tBrush=0
Brush = CreateBrush(255, 255, 255)
Surf=CreateSurface(Mesh,Brush)
Else
Surf=CreateSurface(Mesh,tBrush)
End If
Local t=AddVertex (Surf,-XSize,-ZSize,0,0,1)
AddVertex (Surf,-XSize,ZSize,0,0,0)
AddVertex (Surf,XSize,ZSize,0,1,0)
AddVertex (Surf,XSize,-ZSize,0,1,1)
AddTriangle Surf,t,t+2,t+3
AddTriangle Surf,t,t+1,t+2
EntityFX Mesh, 1+4
Return Mesh
End Function
Есть мысль на счёт создания текстуры ручками, но слишком огромное количество текстур сразными именами. Китайский код не хочу.
__________________
Main PC:
Intel Core i5 4260U 1.44 GHz + LPDDR3 1x4096 1600 MHz + Intel HD Graphics 5000.
Asus Ёжик T101-MT:
Intel Atom N-570 1.66 Ghz + DDR2 2x1024 800 Mhz + Intel GMA 3150 128 Mb DDR2
Скачать Doom 2D: Remake v0.3.8a
|
(Offline)
|
|
02.10.2013, 12:52
|
#119
|
Злобный Админ
Регистрация: 04.09.2005
Сообщений: 5,926
Написано 3,415 полезных сообщений (для 9,330 пользователей)
|
Ответ: Я новичок!
ЕМНИП включить клампинг для текстуры по X и Y и задать текстурные координаты правильно.
__________________
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
02.10.2013, 13:47
|
#120
|
Социал-сычевист
Регистрация: 24.06.2011
Сообщений: 611
Написано 342 полезных сообщений (для 1,359 пользователей)
|
Ответ: Я новичок!
Добавляй во флаги грузимой текстуры 16+32
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 00:13.
|