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

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

Вернуться   forum.boolean.name > Программирование игр для компьютеров > Blitz3D > 3D-программирование

3D-программирование Вопросы, касающиеся программирования 3D мира

Ответ
 
Опции темы
Старый 11.10.2008, 19:33   #1
ArtemkA
ПроЭктировщик
 
Аватар для ArtemkA
 
Регистрация: 09.10.2008
Адрес: Казань
Сообщений: 137
Написано 7 полезных сообщений
(для 9 пользователей)
переменная + текст

блин проблемка нарисовалась....

допустим есть:

player = CreateCube()
player_pivot = CreatePivot()

а в переменной selected$ у меня храниться имя объекта по которуму я кликнул мышью (допустим player) а при нажатии на правую кнопку мыши нужно передвинуть не player а player_pivot...естественно в переменной selected$ будет храниться player и передвиниться сам куб, а надо к player добавить _pivot...как это зделать?

пробовал так:

selected$ = selected$+"_pivot" , но неполучаеться
(Offline)
 
Ответить с цитированием
Старый 11.10.2008, 19:38   #2
ABTOMAT
Ференька
 
Аватар для ABTOMAT
 
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,741
Написано 5,461 полезных сообщений
(для 15,675 пользователей)
Ответ: переменная + текст

Шо-то ты так отжог шо я даже не понимаю что тебе там надо
__________________
Мои проекты:
Анальное Рабство
Зелёный Слоник
Дмитрий Маслов*
Различие**
Клюква**

* — в стадии разработки
** — в стадии проектирования
Для проектов в стадии проектирования приведены кодовые имена

(Offline)
 
Ответить с цитированием
Старый 11.10.2008, 19:56   #3
ArtemkA
ПроЭктировщик
 
Аватар для ArtemkA
 
Регистрация: 09.10.2008
Адрес: Казань
Сообщений: 137
Написано 7 полезных сообщений
(для 9 пользователей)
Ответ: переменная + текст

у меня есть несколько объектов которые имеют по одному пивоту и называються они так: имя_объета_pivot например:

player = CreateCube() ; объект
player_pivot = CreatePivot() ; пивот к объекту

tank = CreateCube() ; объект
tank_pivot = CreatePivot() ; пивот к объекту

допустим я выбиру player и когда я нажму правой кнопкой мыши по пространству, то передвинуться должен не player, а его пивот т.е. player_pivot.

пример:
допустим тут я кликнул по player
If MouseHit(1) Then
mov = CameraPick(camera,MouseX(),MouseY())
selected$ = mov
If selected$ = player Then mov = 1 : EntityColor player,0,128,255 Else EntityColor player,128,128,255
EndIf

selected$ будет содержать "player"

If MouseDown(2) Then
If mov <> pol Then
PositionEntity selected$+"_pivot",PickedX#(),PickedY#()+0.9,Picke dZ#()
EndIf
EndIf

но так передвигаеться не пивот а сам куб
(Offline)
 
Ответить с цитированием
Старый 11.10.2008, 20:12   #4
HolyDel
 
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений
(для 2,707 пользователей)
Ответ: переменная + текст

Артем, так не делается.

player и player_pivot это не имена объектов. Это так сказать имена их указателей.
ради интереса выведи selected$ на экран - ты будеш неприятно удивлен, нет там никакого player, будет какое то число.

есть две интересные команды NameEntity и EntityName - первая задает настоящее имя - вторая получает.
вот их и используй )
(Offline)
 
Ответить с цитированием
Старый 11.10.2008, 21:01   #5
tormoz
Гигант индустрии
 
Аватар для tormoz
 
Регистрация: 14.12.2005
Сообщений: 2,785
Написано 1,183 полезных сообщений
(для 4,437 пользователей)
Ответ: переменная + текст

Артем, изучай типы
Без них ты стратегию не сделаешь
__________________
(Offline)
 
Ответить с цитированием
Старый 11.10.2008, 21:13   #6
ArtemkA
ПроЭктировщик
 
Аватар для ArtemkA
 
Регистрация: 09.10.2008
Адрес: Казань
Сообщений: 137
Написано 7 полезных сообщений
(для 9 пользователей)
Ответ: переменная + текст

спасибо за советы....буду учить

но я так и непонял как мне зделать
допустим я задам нейментити для player: NameEntity player,"tank"

и попробую передвинуть
PositionEntity EntityName(player),PickedX#(),PickedY#()+0.9,Picke dZ#()

также тоже неполучится

Последний раз редактировалось ArtemkA, 11.10.2008 в 21:21.
(Offline)
 
Ответить с цитированием
Старый 11.10.2008, 21:51   #7
jimon
 
Сообщений: n/a
Ответ: переменная + текст

ArtemkA
просто надо двигать
PositionEntity player,PickedX#(),PickedY#()+0.9,Picke dZ#()
 
Ответить с цитированием
Старый 11.10.2008, 21:52   #8
HolyDel
 
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений
(для 2,707 пользователей)
Ответ: переменная + текст

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

логика такова:
CameraPick - возвращает хендл ентити
получаешь его имя
прибавляеш к его имени "_pivot"
ищешь ентити с новым именем
двигаешь его
(Offline)
 
Ответить с цитированием
Старый 11.10.2008, 22:13   #9
tormoz
Гигант индустрии
 
Аватар для tormoz
 
Регистрация: 14.12.2005
Сообщений: 2,785
Написано 1,183 полезных сообщений
(для 4,437 пользователей)
Ответ: переменная + текст

Да думаю ему нужно дать толчок
пока не поймет принципа.

Наверное у него нет семплов блитца

Артем, есть такое понятие: хендл (Handle) объекта.
Это "ручка" за которую ты его таскаешь в коде.

Например:
a=LoadMesh(patch$)
b=CreateCube()
c=CreatePivot()

Теперь в переменных а в с у нас хендлы объектов
в а - загруженная модель
в в - созданый куб
в с - созданая виртуальная точка - пивот

Ты можешь совершать манипуляции с этими объектами обращаясь к переменной, содержащей хендл:
PositionEntity a,1,0,30.4
MoveEntity b,0,0,4
TranslateEntity c,0,3,0

new_var=a

RotateEntity new_var,90,0,0

Избегай пользоваться NameEntity без особой необходимости - она тебе понядобится для мгновенного доступа к элементу типа в дальнейшем.

А сейчас найди в факе тему про типы и читай
__________________
(Offline)
 
Ответить с цитированием
Старый 11.10.2008, 22:58   #10
ArtemkA
ПроЭктировщик
 
Аватар для ArtemkA
 
Регистрация: 09.10.2008
Адрес: Казань
Сообщений: 137
Написано 7 полезных сообщений
(для 9 пользователей)
Ответ: переменная + текст

Сообщение от HolyDel Посмотреть сообщение
Артем. код писать не буду, не из вредности, а чтобы ты сам думал.

логика такова:
CameraPick - возвращает хендл ентити
получаешь его имя
прибавляеш к его имени "_pivot"
ищешь ентити с новым именем
двигаешь его
я уже третий день думаю все никак придумать немогу...
(Offline)
 
Ответить с цитированием
Старый 11.10.2008, 23:16   #11
ABTOMAT
Ференька
 
Аватар для ABTOMAT
 
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,741
Написано 5,461 полезных сообщений
(для 15,675 пользователей)
Ответ: переменная + текст

Забей, не делай так черезжёпно
2 переменные заведи да и всё
__________________
Мои проекты:
Анальное Рабство
Зелёный Слоник
Дмитрий Маслов*
Различие**
Клюква**

* — в стадии разработки
** — в стадии проектирования
Для проектов в стадии проектирования приведены кодовые имена

(Offline)
 
Ответить с цитированием
Ответ


Опции темы

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Бумажный текст Жека Стихотворения 1 18.11.2009 10:26
Текст над моделью. Hellfalcon 3D-программирование 13 02.07.2009 22:30
Глобальная переменная из функции? maximus009 3D-программирование 15 02.03.2009 00:17
Динамичный текст... Alex_Noc 3D-программирование 18 16.07.2008 01:16
2D текст в 3D GomZik 3D-программирование 12 20.01.2008 03:48


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


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