forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Blitz3D (http://forum.boolean.name/forumdisplay.php?f=45)
-   -   Вопрос-Ответ (для новичков) (http://forum.boolean.name/showthread.php?t=7886)

DeeJex 05.11.2010 01:03

Ответ: Вопрос-Ответ (для новичков)
 
Какие же мы все слепые - я по ошибке в начале команды px подставил :D

DeeJex 06.11.2010 23:03

Ответ: Вопрос-Ответ (для новичков)
 
Вот есть у меня функция, проверяющяя, находится ли объект ногами на поверхности
Код:

Function GetStayOn(x1,y1,z1,pitch1,yaw1,roll1,x2,y2,z2) ;Где x/y/z2 - коорд. поверхности
tmp_p1 = CreatePivot()
PositionEntity tmp_p1,x1,y1,z1
RotateEntity tmp_p1,pitch1*90,yaw1*90,roll1*90
MoveEntity tmp_p1,0,-1,0

tmp_p2 = CreatePivot()
PositionEntity tmp_p2,x2,y2,z2

If EntityX(tmp_p1)=EntityX(tmp_p2) And EntityY(tmp_p1)=EntityY(tmp_p2) And EntityZ(tmp_p1)=EntityZ(tmp_p2) Then tmp_true=1

FreeEntity tmp_p1
FreeEntity tmp_p2

If tmp_true Then Return 1

End Function

Проверяем:
Код:

GetStayOn(0,1,0,0,0,0,0,0,0)
Результат: 1.
Ставим вверх ногами:
Код:

GetStayOn(0,0,0,2,0,0,0,1,0)
Результат: 0. А должно быть 1. Что не так?

Hurrit 06.11.2010 23:27

Ответ: Вопрос-Ответ (для новичков)
 
Ну всё правильно, стоит головой на поверхности, значит ноль. У тебя моделька?

DeeJex 06.11.2010 23:32

Ответ: Вопрос-Ответ (для новичков)
 
Цитата:

Ну всё правильно, стоит головой на поверхности,
не-а, читай внимательно: GetStayOn(0,0,0,2,0,0,0,1,0), ногами упорот в поверхность. Дебагом выяснил, что при расчетах функции результат получается неадекватный.
Цитата:

У тебя моделька?
Не имеет значения, расчет по клеткам.

EvilOkta 08.11.2010 21:43

Ответ: Вопрос-Ответ (для новичков)
 
Всем привет, у меня такой вопрос. Каким образом можно вставить в Blitz3D (в команду Text) возможность написать символ из таблицы символов имеющий юникод(? если это конечно называется юникодом))).
Скажем обычный текст:
Text 100,100 "Hello Hell!"
То что требуется:
Text 100,100 "╬" (символ под кодом U+256C)

Reks888 08.11.2010 22:22

Ответ: Вопрос-Ответ (для новичков)
 
Text 100,100,Chr(KeyCode), где KeyCode - значение твоего символа в ASCII от 0 до 255. Если в ASCII нету, то не ко мне.
Я точно помню что такая перекрестная фигня в ASCII есть, где-то между 200 и 255, в самом конце.

EvilOkta 08.11.2010 23:07

Ответ: Вопрос-Ответ (для новичков)
 
Идея интересная спасибо ))
Только один минус... в блитце как я понял идет поддержка кодировки 1251, а нужный мне символ (да и другие интересные символы) в кодировке 866
например тот самый злополучный "╬" который имеет chr(206) в блитце переиначивается как "О"
есть идеи как сменить кодировку для выдергивания символов?

Reks888 08.11.2010 23:35

Ответ: Вопрос-Ответ (для новичков)
 
шрифты?
С такой же проблемой сталкивались разрабы Dwarf Fortress. Их решением были картинки, тоесть они имели графический шрифт для всех используемых в игре символов

pepel 09.11.2010 05:40

Ответ: Вопрос-Ответ (для новичков)
 
какой функцией можно узнать захайден (hideentity) обьект или нет?

DeeJex 09.11.2010 09:41

Ответ: Вопрос-Ответ (для новичков)
 
Цитата:

Сообщение от pepel (Сообщение 167652)
какой функцией можно узнать захайден (hideentity) обьект или нет?

BB_EntityHidden из либы blitz3d.dll, которая где-то в файловом архиве 3dcom.3dn.ru
Цитата:

Идея интересная спасибо ))
Только один минус... в блитце как я понял идет поддержка кодировки 1251, а нужный мне символ (да и другие интересные символы) в кодировке 866
например тот самый злополучный "╬" который имеет chr(206) в блитце переиначивается как "О"
есть идеи как сменить кодировку для выдергивания символов?
На fastlibs.com качай либу fasttext(вроде бесплатно раздается), там есть режим юникод, но он не всегда работает.

Dzirt 09.11.2010 11:04

Ответ: Вопрос-Ответ (для новичков)
 
Да нафига либы то?! Можно просто переменную завести чтобы узнавать захайден обект или нет....

pepel 09.11.2010 16:38

Ответ: Вопрос-Ответ (для новичков)
 
подскажите плз пытаююсь из функции перейти с помощью "goto" к лейблу
".load" но он видимо из функции не может его распознать пишет undefined.
".load" находится перед циклом

impersonalis 09.11.2010 16:47

Ответ: Вопрос-Ответ (для новичков)
 
не используй goto

pepel 09.11.2010 16:54

Ответ: Вопрос-Ответ (для новичков)
 
ммм тогда такой вопрос.кто как загружает уровни? поидее нужно выгрузить все ентити, и загрузить уровень из файла?
просто в первый раз дошел до загрузки уровней , гемор еще тот. =)

IgorOK 09.11.2010 17:07

Ответ: Вопрос-Ответ (для новичков)
 
Цитата:

Сообщение от pepel (Сообщение 167721)
ммм тогда такой вопрос.кто как загружает уровни? поидее нужно выгрузить все ентити, и загрузить уровень из файла?
просто в первый раз дошел до загрузки уровней , гемор еще тот. =)

Записывай в типы хендлы энтити, а при очистке уровня проходи циклом по ним и удаляй каждый. Впрочем можно и не всё удалять. То что можно использовать повторно просто переставляй на новое место.


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

vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot