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

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

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

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

Ответ
 
Опции темы
Старый 28.08.2008, 04:37   #1
Machete
AnyKey`щик
 
Регистрация: 03.07.2008
Сообщений: 9
Написано 0 полезных сообщений
(для 0 пользователей)
Несколько вопросов

В процессе изучение блица возник ряд вопросов.
Собственно:
1.У меня в игре есть частицы.Создаются они таким образом:

Function CreateSpark1.TSpark(x#,y#,z#,n)
For i=1 To n ;кол-во частиц
s1.TSpark= new TSpark
.....
Return s1
next
End Function

Function CreateSpark2.TSpark(x#,y#,z#,n)
For i=1 to n
s2.TSpark= new TSpark
.....
Return s2
next
End Function

А обновляются в главном цикле так:
For s1.TSpark = each TSpark
UpdateSpark1(s1) ; ф-я изменяющая местоположение частиц
Next

For s2.TSpark = each TSpark
UpdateSpark2(s2)
Next

Мне представлялось, что каждый тип частиц будет двигаться так, как задано в его (типе) функции апдейта.Но на практике траектория частицы получается смесью всех функций апдейта. То есть все частицы всех типов летят одинаково и по какой-то дурцкой траектории.
Подскажите как правильно написать структуру создания и обновления частиц, чтобы каждый тип частиц имел уникальную траекторию.

2.Каким образом можно создать сетку для трехмерного игрового поля(террэин), пусть и плоского.В 2д сетке, ячейками являются изображения или ректанглы.А чем будут являтся ячейки в сетке для 3д поля?

3.На каком-то форуме нашел код:

type Thing
field name$
field Type
field g.Gun, p.Pistol
end Type

type Gun
field Power#, Freq#
end Type

Type Pistol
field Power#, TypePula
end type

Захотел применить его для своего инвентаря.
По моим представления этот код написан чтобы,например,у g.Gun, был параметр name$, у p.Pistol был параметр name$ и т.п. То есть чтобы у нескольких типов были общие параметры.Если это не так, то возможно ли сделать так как я представил это себе и как.
И как ссылаться на такой тип.

Буду признателен, если рассеете мои заблуждения.

Последний раз редактировалось Machete, 28.08.2008 в 11:04.
(Offline)
 
Ответить с цитированием
Старый 28.08.2008, 04:47   #2
MiXaeL
Бывалый
 
Аватар для MiXaeL
 
Регистрация: 22.08.2006
Сообщений: 700
Написано 146 полезных сообщений
(для 267 пользователей)
Ответ: Несколько вопросов

1. Проще всего два разных типа сделать.
Сообщение от Machete Посмотреть сообщение
А чем будут являтся ячейки в сетке для 3д поля?
Чем угодно. Да хоть шестиугольниками, если нравится.
3. Ну ты всё правильно понимаешь.
(Offline)
 
Ответить с цитированием
Старый 28.08.2008, 10:00   #3
ABTOMAT
Ференька
 
Аватар для ABTOMAT
 
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,741
Написано 5,461 полезных сообщений
(для 15,675 пользователей)
Ответ: Несколько вопросов

1. У афтора и есть 2 разных типа
Лично моё имхо
Я делал чяастицы так
У меня 1 всего тип
И есть параметры массы, вектор скорости, время жизни и т.п. Оперируя этими параметрами можно получить пыль, искры, светлячки и много чего ещё. Лучше делать побольше параметров чтобы можно было настроить поведение частиц, а на все типы частиц всё равно типов не напасёсся (максимум 5 типов сделаешь потом задолбает)
В коде не фкуриваю как у тебя функция типа spark возвращает объект типа TSpark, это имхо работать не будет, да ещё у тебя две функции CreateSpark продекларированы, сч одинаковым именем. Проверь, ты правильно сюда код скопировал?

Function CreateSpark.spark(x#,y#,z#,n)
For i=1 to n
s2.TSpark= new TSpark
.....
Return s2
next
End Function
2. ИМХО квадраты состоящие из 2 полигонов
Хотя может я не совсем понял шо те надо.

3. Вообще делается класс Item, от него наследуются классы Weapon, Medkit,Eqip от Weapon наследуются Meele и Distance, от Distance наследуются Pistol, Gun, AutomatKalashnikova и всем трём задаются свои дополнительные переменные и свойства. Но это увы только там где есть ООП. В блитзе я бы сделал один тип Thing и прямо в ём бы и писал все параметры которые понадобятся как пистолету, так и ружью, плюс к этому - тип оружия, 0 - пистолет 1 - ружжё. В обоих случяаях будет юзаццо филд Power#, но в случае с пистолетом будет ещё юзацо филд TypePula а Freq# будет просто болтаться без дела, а если это ружьё, то наоборот. И обрабатывать естественнов зависимости от типа оружия.
__________________
Мои проекты:
Анальное Рабство
Зелёный Слоник
Дмитрий Маслов*
Различие**
Клюква**

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

(Offline)
 
Ответить с цитированием
Старый 28.08.2008, 11:08   #4
Machete
AnyKey`щик
 
Регистрация: 03.07.2008
Сообщений: 9
Написано 0 полезных сообщений
(для 0 пользователей)
Ответ: Несколько вопросов

1.На самом деле у меня тоже один тип ( spark - TSpark - опечатка, исправил).Название ф-ий тоже разное и тоже исправил.
Так как же мне аптейтить какждую переменнуя типа (s1.TSpark,s2.TSpark) чтобы не затрагивать другие?По идеи надо где-то писать First.
Поделитесь примером.

2.Понял

3.А я думал блиц объектно ориентированный язык :O.
Я еще слышал понятие - вложенные типы, это тоже самое?
(Offline)
 
Ответить с цитированием
Старый 28.08.2008, 11:14   #5
MiXaeL
Бывалый
 
Аватар для MiXaeL
 
Регистрация: 22.08.2006
Сообщений: 700
Написано 146 полезных сообщений
(для 267 пользователей)
Ответ: Несколько вопросов

3. Нет, блитц не имеет ООП. За ООП смотри в сторону BlitzMax и Blitz3D SDK.
А еще вот сюда загляни: http://forum.boolean.name/showthread.php?t=1194

Последний раз редактировалось MiXaeL, 28.08.2008 в 11:26.
(Offline)
 
Ответить с цитированием
Старый 28.08.2008, 14:17   #6
turBO
ПроЭктировщик
 
Аватар для turBO
 
Регистрация: 02.03.2007
Сообщений: 194
Написано 65 полезных сообщений
(для 168 пользователей)
Ответ: Несколько вопросов

Сообщение от Machete Посмотреть сообщение
Каким образом можно создать сетку для трехмерного игрового поля(террэин), пусть и плоского.В 2д сетке, ячейками являются изображения или ректанглы.
Повесить сетку на террейн?

грузи тексу, буферизируй, малюй сетку, "размножь":

tertex=loadtexture("t.jpg") ;256x256
BackBuffer(tertex)
color 0,0,255
line 1,256,256,256
line 256,1,256,256
SetBuffer BackBuffer()

scaletexture tertex,10,10
entitytexture terrain,tertex
__________________
— Скажи мне, что это не бомба.
— Хорошо. Это котенок. Замечательный взрывной котенок.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Machete (28.08.2008)
Старый 28.08.2008, 18:20   #7
ffinder
Дэвелопер
 
Аватар для ffinder
 
Регистрация: 10.09.2007
Сообщений: 1,442
Написано 793 полезных сообщений
(для 1,460 пользователей)
Ответ: Несколько вопросов

Сообщение от ABTOMAT Посмотреть сообщение
1. У афтора и есть 2 разных типа
И есть параметры массы, вектор скорости, время жизни и т.п.
по группам:
1. движение: скорость, ускорение, угловая скорость, угловое ускорение;
2. внешний вид: текстура, цвет, альфа, размер (он же масштаб, можно раздельный по X и Y);
3. время жизни: несколько стадий (у меня три). между ними все числовые значения интерполируются.

Сообщение от ABTOMAT Посмотреть сообщение
В обоих случяаях будет юзаццо филд Power#, но в случае с пистолетом будет ещё юзацо филд TypePula а Freq# будет просто болтаться без дела, а если это ружьё, то наоборот.
а можно сделать что freq, вернее ROF(rate of fire) будет отвечать за скорострельность, у неавтоматического оружия просто будет равен 0.
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Несколько вопросов Leito Blitz3D 5 27.09.2009 20:56
Несколько вопросов по Блитз3Д ABTOMAT 3D-программирование 12 30.05.2007 00:15
Несколько вопросов vadim2 3D-программирование 7 06.12.2006 01:10
Несколько вопросов Stranger 3D-программирование 8 05.09.2006 21:12
несколько вопросов spat1 Основной форум 0 08.06.2006 15:10


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


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