![]() |
про террайн и карты в общем
ну в общем так, надо разделить террайн на сетку, а потом сделать как бы картинку-сетку(для террайна но не текстуру), в которой один элемент(квадратик) будет закрашен определлёным цветом. потом при загрузке, определённый элемент картинки будет иметь дело с соответствующим элемнтом террайна.:wallbash: :wallbash: :wallbash:
ну например - прочитал, что элемент(в картинке) зелённый значит на элемент в террайне посадить растительность... >O< надеюсь спросил понятно!:) |
Re: про террайн и карты в общем
А почему не текстуру? Ёё редактировать по террайну нагдяднее. Натягиваешь на террайн, рисуешь на ней мышом кого хошь. К примеру, красный канал- карта высот, синий- карта путей, зилоный- карта растительности. Сохраняешь своё творчество в файл. При загрузке читаешь в имейдж и, анализируя цвета, строишь по ним готовый ландшафт. Остальное- юзай мосх. Делов на десять центов.
См.команды: CreateTexture CameraPick SetBuffer Color Plot CopyRect SaveImage LoadImage GetColor |
Re: про террайн и карты в общем
cпасиб, пойду учить!
а вот ещё - как рандомно расставить деревья, я делаю так: Forc=0To99 tree=LoadAnimMesh("mesh\tree1\tree1.b3d") ScaleEntitytree,.1,.1,.1 EntityTypetree,treeT Repeat PositionEntitytree,Rnd(-512,512),100,Rnd(-512,512) Until Abs(EntityX(ent))>20 Or Abs(EntityZ(ent))>20 MoveEntity tree,0,-1000,0 Next а у меня чёто неполучается, чтобы и растояние между ними было 20 и чтобы они расстилились по террайну!!! |
Re: про террайн и карты в общем
Теоретически нельзя расстелить 100 деревьев по террайну 1024 х 1024, так чтобы и растояние между ними было 20 и застелить весь террайн.
Почему тебя не устраивает просто разбросать 100 деревьев по террайну? |
Re: про террайн и карты в общем
а они у меня ваще в одном(почти) месте все, и некоторые ваще летают в воздухе... в общем щас чё-нить накалдую!
|
Re: про террайн и карты в общем
Код:
Until Abs(EntityX(ent))>20 Or Abs(EntityZ(ent))>20 |
Re: про террайн и карты в общем
по примеру скавена делал!!!
мож чё-нить недопнял !? |
Re: про террайн и карты в общем
ну там масив ещё, я просто не написал а так почти точная
|
Re: про террайн и карты в общем
нифига себе, чё это тока что было... ничё не понял???
|
Re: про террайн и карты в общем
аааааа. внимателно щас проситал скавена и въехал, всё всё пардон!
|
Re: про террайн и карты в общем
а то что одно сообщение разбилось на несколько-не понял.
|
Re: про террайн и карты в общем
надо правильный бамбук курить ! :)
|
Re: про террайн и карты в общем
ндяяяяяяяяяяяяяяяяяя. я оказывается когда писал, то курсор мыши случайно оставил на кнопочки "Отправить быстрый ответ", и каждый пробел в моём сообщении - отправлял ответ!
кстати а почему бамбук-то? эт-жжж трууубка пррросто, йк- но весьма веселительнааааая......йк а можно прочитать пиксель(с текстуры) и взависимости от позиции и цвета его, на террайне чё-нить делать...? |
Re: про террайн и карты в общем
ато если по каналам, то их всего три, а вдруг мне больше надо будет !
|
Re: про террайн и карты в общем
Цитата:
|
Re: про террайн и карты в общем
лана, пойду туда-куда послали...
|
Re: про террайн и карты в общем
Вот мой лесок)
NTrees=80 число деревьев Dim Tree(NTrees) создаем массив MTree=LoadMesh("Entity\Tree2.3ds") загружаем дерево HideEntity MTree For q=1 To NTrees Tree(q)=CopyEntity(MTree) .RepeatGeneration sc#=Rnd(0.1,0.8) ScaleEntity MTree,sc#,sc#,sc# случайный размер дерева X#=Rnd(1024*3) Z#=Rnd(1024*3) Y#=TerrainY(Ground,X,0,Z) а вот чтоб в воздухе не появлялось а на террейне If Y>4 And Y<6 And Rnd(10)>2 Then Goto RepeatGeneration PositionEntity Tree(q),X,Y,Z TurnEntity Tree(q),Rnd(40)-30,Rnd(360),Rnd(40)-30 уклон(поворот) дерева Next FreeEntity MTree пс Ground-террейн предлогаю еще записать в файл чтоб не рандомно появлялось а всевремя одинакова) ппс а вообще я делаю типо редактора куда мышкой кликую там дерево и появляется а потом сохраняю в файл а перед нач игры файл читаю |
Re: про террайн и карты в общем
Цитата:
Читай в Хелпе про команды, которые я перечислил выше. |
Re: про террайн и карты в общем
to Horror:
ага-ага этот код я у себя в архивах откопал, кажется он с блиц.пп! ту Дипломат: а у тебя команд РидПиксел[Фаст]-не было... 8) ту ВСЕМ: БОЛЬШОЙ СПАСИБ!!!!!!!!!!!!!! |
Re: про террайн и карты в общем
Да, ёё у меня в списке не было. Вероятно потому, что ReadPixelFast юзать не надо вовсе- ибо она приводит к беспричинным вылетам на некоторых машинах, а команду ReadPixel юзать для данной конкретной цели неудобо.
Зато у меня была команда GetColor, которую ты благополучно упустил из виду... 8) |
Re: про террайн и карты в общем
агя, благополучно... =)
видимо мне есщё учиться-учиться-учиться-учиться-и учить [R]TFM 8) |
Re: про террайн и карты в общем
Единственная причина которя приводит к беспричинным вылетам это корявый кодер, который незаблокировал поверхность.
А если рисунок 1024 х 1024, это сколько времени понадобиться для чтения информации с помощью GetColor, она же МЕДЛЕННАЯ. Я думаю лучше все-же юзать ReadPixelFast (ибо быстрее), особенно для больших рисунков. И не забывать блокировать поверхности. |
Re: про террайн и карты в общем
Цитата:
Вылетает, и достаточно часто, с блокировкой и проверкой размера и тд. На одном компе все отлично - на другом МАВ. Так что нафиг эти фасты. Разве что если пишешь для себя |
Re: про террайн и карты в общем
"сенкс"-сказал я в 19 посте, когда понял , что далеко мне ещё до этого!
|
Часовой пояс GMT +4, время: 05:57. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot