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

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

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

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

Ответ
 
Опции темы
Старый 06.03.2011, 22:00   #1
Aikon
ПроЭктировщик
 
Регистрация: 12.02.2011
Сообщений: 131
Написано 23 полезных сообщений
(для 52 пользователей)
Вывод титров и создание диалогов с NPC

Поделитесь идеями как проще сделать?

Допустим есть диалог:
- Привет, Вася
Игрок должен выбрать:
[сказать] Привет, Колян!
[сделать] Дать в рожу

По идее сами диалоги вполне удобно будет хранить в xml. Как сделать вывод текста в нужном месте? И чтобы выбирать ответ можно было мышкой.

Пока такая вот идея:
текст выводится стандартно. Под ним, на камеру вешаю несколько прозрачных "кубиков" по числу ответов, располагающихся точно под текстом, с возможностью выбирать мышкой. Далее обрабатывать нажатие на "кубик".

Так же буду рад, если кто хорошими исходниками поделится, чтобы осознать, как лучше делать. Посмотрел WorldWar[Tanks] - тихий ужас, хотя игра очень даже, судя по картинкам (у меня не запустилось).
(Offline)
 
Ответить с цитированием
Старый 06.03.2011, 22:04   #2
Program23
Бывалый
 
Аватар для Program23
 
Регистрация: 26.04.2009
Адрес: Россия, Уфа
Сообщений: 680
Написано 182 полезных сообщений
(для 406 пользователей)
Ответ: Вывод титров и создание диалогов с NPC

Причем здесь WorldWar[Tanks]?Не вижу связи между WorldWar[Tanks] и названием темы.
__________________
Фриланс:
Freelancer.com
Upwork
(Offline)
 
Ответить с цитированием
Старый 06.03.2011, 22:07   #3
LLI.T.A.L.K.E.R.
Мастер
 
Аватар для LLI.T.A.L.K.E.R.
 
Регистрация: 24.06.2009
Адрес: Набережные Челны
Сообщений: 930
Написано 292 полезных сообщений
(для 504 пользователей)
Ответ: Вывод титров и создание диалогов с NPC

Это не ЗД.
Лучше не кубики, а GUI-кнопки (со свойствами типа "текст" и "скрипт-действие")

зы: дай мне библиотечку Blitz3D+xml

Скрипты:
http://blitzetc.blitzmax.ru/index.ph...BF%D1%82%D1%8B

Подходящего gui пока предложить не могу.
Но мне по нраву DevilGUI, тип как Windows. Можно свои скины делать.
(Offline)
 
Ответить с цитированием
Старый 06.03.2011, 22:25   #4
Aikon
ПроЭктировщик
 
Регистрация: 12.02.2011
Сообщений: 131
Написано 23 полезных сообщений
(для 52 пользователей)
Ответ: Вывод титров и создание диалогов с NPC

LLI.T.A.L.K.E.R., GUI-либа наверно какая то нужна? Свое писать лень.
XML - http://www.blitzbasic.com/Community/...hp?topic=46647

Program23, ни при чем, просто привел пример не очень хорошего (с моей точки зрения) кода. Прежде чем новый проект начать, хочу посмотреть как народ пишет, чтобы может пару идей своровать (про триггеры очень хорошие идеи были).
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
LLI.T.A.L.K.E.R. (06.03.2011)
Старый 07.03.2011, 00:04   #5
IGR
Blitz's Shame !!
 
Регистрация: 31.03.2007
Сообщений: 3,639
Написано 832 полезных сообщений
(для 2,013 пользователей)
Ответ: Вывод титров и создание диалогов с NPC

ну кубики это слишком !! Можно просто квады !!
Можно вообще "воображаемы" ректанглы для каждого варианта ответа, и проверять вхождение курсора в ректангл и клики !!
Небольшая трабла у тебя будет с многострочными вариантами ответов !! Ширина будет фиксированая а висоту уже нужно расчитать !!
(Offline)
 
Ответить с цитированием
Старый 07.03.2011, 01:31   #6
Aikon
ПроЭктировщик
 
Регистрация: 12.02.2011
Сообщений: 131
Написано 23 полезных сообщений
(для 52 пользователей)
Ответ: Вывод титров и создание диалогов с NPC

IGR, а не подскажешь можно ли выводить текст на квады, а не экран, в Blitz?
(Offline)
 
Ответить с цитированием
Старый 07.03.2011, 01:37   #7
Alex_Noc
Разработчик
 
Регистрация: 02.04.2007
Сообщений: 353
Написано 54 полезных сообщений
(для 289 пользователей)
Ответ: Вывод титров и создание диалогов с NPC

квады + проецирование на них текста -1
текст + текст ширина+ тексты высота - 2 (высчитывай координаты мыши)
это методы - спрогать думаю знаешь как не 5 лет тебе всеже
(Offline)
 
Ответить с цитированием
Старый 07.03.2011, 01:56   #8
IGR
Blitz's Shame !!
 
Регистрация: 31.03.2007
Сообщений: 3,639
Написано 832 полезных сообщений
(для 2,013 пользователей)
Ответ: Вывод титров и создание диалогов с NPC

так обычным текстом выводить !! Не думаю что уж десяток строк текста тормозить !! Зачем заморачиватся !!
(Offline)
 
Ответить с цитированием
Старый 07.03.2011, 06:36   #9
Alex_Noc
Разработчик
 
Регистрация: 02.04.2007
Сообщений: 353
Написано 54 полезных сообщений
(для 289 пользователей)
Ответ: Вывод титров и создание диалогов с NPC

если хочешь чтоб текст поворачивался вместе с квадом -ИЗУЧИ ПОНЯТИЕ ТЕКСТУРА!
Если надо чтобы текст был виден на экране когда виден обьект в камеру - ИЗУЧИ ПРОЕЦИРОВАНИЕ ТЕКСТА НА ОБЪЕКТ!
ГО В СПРАВКУ!!!
(Offline)
 
Ответить с цитированием
Старый 07.03.2011, 09:59   #10
RegIon
Элита
 
Аватар для RegIon
 
Регистрация: 16.01.2010
Адрес: Новосибирск
Сообщений: 2,157
Написано 502 полезных сообщений
(для 1,012 пользователей)
Ответ: Вывод титров и создание диалогов с NPC

Небольшая трабла у тебя будет с многострочными вариантами ответов !! Ширина будет фиксированая а висоту уже нужно расчитать !!
и ширину посчитать можно..если шрифт имговский...
так обычным текстом выводить !! Не думаю что уж десяток строк текста тормозить !! Зачем заморачиватся !!
если рендрить текст в текстуру а потом её натягивать...ОЧЕНЬ тормозит..сам проверял..(хз почему)...
-
вот небольшой коддик...как дравить имаговский фонт (без фастимга)....(бла..небольшой баг..нельзя загрузить из папки не прописав её в тхт'шке фонта..)
сам фонт Вложение 12902
Function loadFontimage(filename$)
    Local f, i, l$, r$, Animimage$, AnimTextureFlags, Texture

    filename=Replace (filename,"/", "\")
    f = ReadFile(filename)
    If f=0 Then Return 0
     Font=CreateBank(12) 
    While Not Eof(f) 
        l=Trim(ReadLine(f))
        i=Instr(l,"=",1)
        If Len(l)>0 And Left(l,1)<>";" And i>0 Then
            r=Trim(Right(l,Len(l)-i))
            l=Upper(Trim(Left(l,i-1)))
            Select l
                Case "ANIMIMAGE"
                        AnimImage=r
                Case "FRAMEWIDTH"
                    FrameWidth=Int(r)
                Case "FRAMEHEIGHT"
                    FrameHeight=Int(r)
                Case "WIDTH"
                    Width=Int(r)
                Case "HEIGHT"
                    Height=Int(r)
                Case "KERNING"
                    Kerning=Int(r)                
            End Select
        EndIf
    Wend
    CloseFile f
    fnt=LoadAnimImage(animimage,FrameWidth,FrameWidth,0,256)

PokeByte font,0,FrameWidth
PokeByte font,1,Frameheight
PokeByte font,2,Width
PokeByte font,3,height
PokeByte font,4,kerning
PokeInt font,5,fnt
Return font
End Function 

Function DrawImText(Font%,texts$,x%=0,y%=0,midl=True)
If Len(texts$)>0
If font%>0 
Font_%=PeekInt(font%,5) 
fw=PeekByte(font,2)
fh=PeekByte(font,3) 
ker=PeekByte(font,4)
If Midl>0 Crip#=((fw-ker)*Len(texts$))/2 Else crip#=0
For i=1 To Int(Len(texts$))
f=Asc(Mid(texts$,i,1))
DrawImage font_%,(x%+(fw-ker)*(i-1))-crip,y%-fw,f
Next
EndIf
EndIf
End Function

 Function FreeFontImage(Font%)
FreeImage PeekInt(font%,5) 
FreeBank font%

 End Function
__________________
Сайт: http://iexpo.ml

Последний раз редактировалось RegIon, 02.06.2011 в 13:42.
(Offline)
 
Ответить с цитированием
Старый 07.03.2011, 13:47   #11
Reks888
Дэвелопер
 
Аватар для Reks888
 
Регистрация: 04.11.2009
Адрес: Украина, Днепропетровск
Сообщений: 1,480
Написано 662 полезных сообщений
(для 1,985 пользователей)
Ответ: Вывод титров и создание диалогов с NPC

Сообщение от Aikon Посмотреть сообщение
Так же буду рад, если кто хорошими исходниками поделится, чтобы осознать, как лучше делать. Посмотрел WorldWar[Tanks] - тихий ужас, хотя игра очень даже, судя по картинкам (у меня не запустилось).
WorldWar[Tanks] не имеет никакого отношения к диалогам
__________________
>type C:\MyProj\*
www.sypiac.weebly.com
>
(Offline)
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо Reks888 за это полезное сообщение:
is.SarCasm (07.03.2011), Program23 (07.03.2011)
Старый 07.03.2011, 20:42   #12
is.SarCasm
Бывалый
 
Аватар для is.SarCasm
 
Регистрация: 17.05.2009
Адрес: Днепропетровск
Сообщений: 672
Написано 180 полезных сообщений
(для 428 пользователей)
Ответ: Вывод титров и создание диалогов с NPC

Он наверно про кричащих ботов:
"Сергей: Мы все погибли"
"Колян: в отаке!"
(Offline)
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо is.SarCasm за это полезное сообщение:
Program23 (07.03.2011), Reks888 (08.03.2011)
Ответ


Опции темы

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

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


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


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