Понедельник, 25 Августа 2025, 03:11

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
Результаты поиска
SaiteiДата: Понедельник, 03 Сентября 2012, 23:54 | Сообщение # 981 | Тема: Дайте пример 2D полета самолета
старожил
Сейчас нет на сайте
Zavelon, там вроде ничего такого... image_angle и, непосредственно, направленное движение
SaiteiДата: Среда, 29 Августа 2012, 21:19 | Сообщение # 982 | Тема: Генерация мира. Нужны ответы
старожил
Сейчас нет на сайте
Quote (TimKruz)
Если C++ для тебя родной, то почему ты не можешь переписать алгоритм с Java на C++?..
Алгоритмы тебе и так подсказали, и ты сам где-то что-то нашёл, так почему не можешь реализовать всё "в металле"?
Если возникают ошибки, когда пытаешься сделать что-то - пиши конкретно, кто-нибудь да объяснит смысл ошибки, поправит... А то так получается вот что: "я ничего не понял, сделайте всё за меня, только мне нужно именно на C++".

скажем так... Алгоритмы знаю, но движок-то достойный подобрать не могу... А если и подберу - мне нужен временный наставник
SaiteiДата: Среда, 29 Августа 2012, 19:12 | Сообщение # 983 | Тема: Пиксель - арт.
старожил
Сейчас нет на сайте
Vinrax, можно и не пиксель-арт... Скайп есть? Нужны чуть другие тайлы
Ну а вот... Это я от грусти и от уныния:

SaiteiДата: Среда, 29 Августа 2012, 17:12 | Сообщение # 984 | Тема: Генерация мира. Нужны ответы
старожил
Сейчас нет на сайте
x-and1988, очень любопытно. Кстати я помню твою игру. Ты серьезно мог бы помочь? =)
Был бы очень признателен! Я буду дома ближе к вечеру. Контактные данные оставь в ЛС пожалуйста

Добавлено (29.08.2012, 17:12)
---------------------------------------------
java джавой, но С++ роднее... Кто-то такую весч на С++ поможет реализовать?

SaiteiДата: Вторник, 28 Августа 2012, 22:18 | Сообщение # 985 | Тема: Движки под ЯП C#\с++\java
старожил
Сейчас нет на сайте
Посоветуйте пожалуйста. И есть ли такие, которые дадут кроссплатформенность? Юнити не в счёт

Сообщение отредактировал Saitei - Вторник, 28 Августа 2012, 22:20
SaiteiДата: Вторник, 28 Августа 2012, 15:32 | Сообщение # 986 | Тема: Пиксель - арт.
старожил
Сейчас нет на сайте
killman13, первый, т.к. второй толстым показался...
SaiteiДата: Вторник, 28 Августа 2012, 15:25 | Сообщение # 987 | Тема: Пиксель - арт.
старожил
Сейчас нет на сайте
Добрый день... Я вот игру пишу... Кто-то может нарисовать блок земли, блок земли с травой и блок камня с размерами 32х32? Подниму репутацию. Буду очень благодарен
SaiteiДата: Воскресенье, 26 Августа 2012, 01:53 | Сообщение # 988 | Тема: Генерация мира. Нужны ответы
старожил
Сейчас нет на сайте
TimKruz, но как рендерить-то,отталкиваясь от массива?
SaiteiДата: Воскресенье, 26 Августа 2012, 01:50 | Сообщение # 989 | Тема: Генерация мира. Нужны ответы
старожил
Сейчас нет на сайте
Quote (TimKruz)
Какое отношение имеет это к генерации? При разрушении изменяй число в массиве на 0 и всё. Это, конечно, если ты будешь использовать массивы.

Ну как бы я... Ээээ... Клоню к тому, что каждый блок имеет свой id, чтоли... То есть если разрушить блок земли - разрушится только ОН, а не ВСЕ...
Quote (TimKruz)
А давай ты попробуешь сам тут логически расписать то, что уже понял и до чего сам додумался. Тут ведь разные алгоритмы могут быть, нельзя принимать что-то одно как универсальное решение.
Главное сделай свою функцию, выдающую случайные числа, а то стандартная тут не пойдёт. Она непредсказуема.

Пока мои познания ограничиваются тем, что я буду иметь двумерный массив (map[x][y])... Например map[0][0] = 1; - блок земли, а map[0][1] = 0; - воздух (пустота)...
Ещё я понял что генерация мира будет проходить в цикле. Там будут свои ограничения и правила... И будет использоваться функция рандома (например компьютер будет высчитывать: ставить блок выше или ниже?).
Подумываю над тем, чтобы компьютер сначала делал верхний слой (горки и т.п.), затем все, что ниже, заливал землёй. Потом на определенном уровне (он колебаться будет... Ну, представим, что от 30 до 40) будет ставиться блоки камня (земли больше не будет, генератор значение "1" вытеснит на "2") (опять же с рандомным шансом в 80%, 20% - всякие руды (разные). Последний этап генерации - генерирование пещер (удаление внизу блоков и образование "данжев")

Но вот... Хотелось бы от А до Я расписать... Причём от простого к сложному. Так, как надо действовать

Добавлено (26.08.2012, 01:40)
---------------------------------------------
всё ещё жду...
Завтра буду переводить для себя вот это:

Добавлено (26.08.2012, 01:44)
---------------------------------------------

Quote
2) Как достигается генерация такого естественного ландшафта?

В очень ранней версии Minecraft’а я использовал карту высот 2D шумов Перлина , чтобы придать миру форму. Ох, точнее я использовал множество из них. Один для общего подъёма, один для придания неровностей и один для мелких деталей. Для каждого столба из блоков высота вычислялась по формуле (подъём + (неровность*мелкие детали))*64+64. Все подъёмы и неровности были гладкими, на слишком большие добавлялся «шум», и детали были более запутаннее, чем сейчас. Этот метод имеет большое преимущество в плане скорости и в нём 16*16*(количество шумов) сэмплов для генерации в каждом чанке, но проблема была в том, что этот способ скорее был туп. Особенно тупизна видна в том, что нельзя сгенерировать нависающие склоны и арки.

Итак я предпочёл эту систему похожей, сделанной на 3-D шумах Перлина. Вместо проверки по высоте, я установил значение шума на «густоту» и теперь всё, что ниже 0 (нуля) будет воздухом, а всё, что на том же уровне или выше будет землёй. Чтобы убедиться, что дно плоское и без дыр, а верх не плоский я просто добавил высоту (исключая места под водой) в список сэмплов для генерации.

Но, к сожалению, я тут же столкнулся с проблемами производительности и игровой механики. Производительность падала из-за того, что нужно было обработать огромное количество сэмплов, а проблемы с игровой механикой были в том, что не было равнин и пологих холмов. Решением стало переключение сэмплов в более низкое разрешение (8х по горизонтали и 4х по вертикали) и использование линейной интерполяции . Внезапно игра стала генерировать равнины, пологие холмы и большинство единичных летающих блоков пропали.

Текущая формула, которую я использую довольно запутана (и секретна!), но она постепенно эволюционирует (когда я работаю над игрой). И да, она ещё использует 2D карту высот и карты шумов.

xX

Добавлено (26.08.2012, 01:50)
---------------------------------------------
Кажется шум Перлина мне нужен...

Читаю статью, пока всё в тумане. Но там тоже генерация случайных чисел идёт

Сообщение отредактировал Saitei - Воскресенье, 26 Августа 2012, 01:07
SaiteiДата: Воскресенье, 26 Августа 2012, 00:42 | Сообщение # 990 | Тема: Алгебра
старожил
Сейчас нет на сайте
anton-gar, может попробуешь объяснить? =)
SaiteiДата: Суббота, 25 Августа 2012, 23:13 | Сообщение # 991 | Тема: Работа с сетью
старожил
Сейчас нет на сайте
Quote (MasterSith)
ЭтоЧудоИзЧудес, спасибо! То что нужно! А то про какие-то сокеты ссылки кидают...

lolwhat? O_o
любой сервер на сокетах построен. Троллизм?
SaiteiДата: Суббота, 25 Августа 2012, 19:56 | Сообщение # 992 | Тема: Алгебра
старожил
Сейчас нет на сайте
агак... А решается-то не так, похоже... Я ещё сильнее запутан теперь:
SaiteiДата: Суббота, 25 Августа 2012, 19:51 | Сообщение # 993 | Тема: Алгебра
старожил
Сейчас нет на сайте
karuy, да не в каком. Я открыл "подготовку к ВУЗам". Но там не подготовка, а просто сборник задач) Ну и споткнулся, блин)) Вообще, кажется. такие задачи решают в 10 классе
Vinchensoo, хорошо, и за наглядные формулы спасиб

karuy, а откуда получилось 1+cosX=a? Вот именно с этого момента и ниже я как-то не догоняю..)
SaiteiДата: Суббота, 25 Августа 2012, 19:47 | Сообщение # 994 | Тема: Генерация мира. Нужны ответы
старожил
Сейчас нет на сайте
Вот с Fade мудрили-мудрили, а споткнулись на мелочи (здесь не его вина (т.к. он вообще программирует на Java, а я - на С++)). У нас не получалось сделать так, чтобы в классе создавались новые экземпляры блоков (членов). Синтаксис ругался. Точно уже не помню, но, кажется, конкретно с этим проблема всплыла. Ну а я пытался выучить джава - много подхватил, НО мне там очень неудобно работать (eclipse 64-bit удивительным образом критовал, а 32-bit ужасно глючит). Итак, давайте всё логически распишем? От начала до конца, пунктами? Очень пригодилось бы. Код TimKruz посмотрел. Спасибо, немного открылись глаза. Но хотелось бы сейчас поэтапно расписать всю эту генерацию (в игре будут разрушаться блоки)
SaiteiДата: Суббота, 25 Августа 2012, 16:29 | Сообщение # 995 | Тема: Алгебра
старожил
Сейчас нет на сайте
ЭтоЧудоИзЧудес, да, я уже искал. Находил, но пока что не получается. Пытаюсь решить, но не выходит...
SaiteiДата: Суббота, 25 Августа 2012, 16:23 | Сообщение # 996 | Тема: Алгебра
старожил
Сейчас нет на сайте

"Сведение к квадратным уравнениям"
SaiteiДата: Суббота, 25 Августа 2012, 13:05 | Сообщение # 997 | Тема: Работа с сетью
старожил
Сейчас нет на сайте
MasterSith, справочник по сокетам. Любой. Желательно Microsoft'a =)
http://msdn.microsoft.com/en-us/library/fx6588te
http://msdn.microsoft.com/en-us/library/6y0e13d3
SaiteiДата: Пятница, 24 Августа 2012, 13:16 | Сообщение # 998 | Тема: Генерация мира. Нужны ответы
старожил
Сейчас нет на сайте
Quote (Fade)
int meter

за что отвечает эта переменная?
SaiteiДата: Пятница, 24 Августа 2012, 13:11 | Сообщение # 999 | Тема: Генерация мира. Нужны ответы
старожил
Сейчас нет на сайте
Quote (LunarPixel)
не вижу связи..

Очень занятые люди (вроде)
Quote (LunarPixel)
Какой уж тут рандом?! Хотя, конечно, рандом будет присутствовать, генерация же случайная (рандомная)

эх... мне бы код глянуть глазком...
SaiteiДата: Пятница, 24 Августа 2012, 13:03 | Сообщение # 1000 | Тема: Генерация мира. Нужны ответы
старожил
Сейчас нет на сайте
LunarPixel, ну... Многие в офисах сидят, работают
Quote (LunarPixel)
Пробегаешь во всей карте, и расставляешь блоки по определенным правилам (максимальная высота, относительно соседних блоков, вид блока и т.д.)
Или изначально строишь возможные свободные пути перемещения, а остальное пространство заполняешь блоками.
Это как пример, есть и другие способы, конечно.

Великий рандом чтоли?
Поиск:

Все права сохранены. GcUp.ru © 2008-2025 Рейтинг