Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > разработка игр, графический дизайн и моделирование > Gamedev - cоздание игр: Unity, OpenGL, DirectX
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.02.2010, 21:19   #101
Ckomoroh
Я еще только учусь
Форумчанин
 
Аватар для Ckomoroh
 
Регистрация: 24.10.2009
Сообщений: 125
По умолчанию

А если текстур больше чем 255?
Ckomoroh вне форума Ответить с цитированием
Старый 27.02.2010, 21:22   #102
Beermonza
Инженер ИС
Старожил
 
Аватар для Beermonza
 
Регистрация: 13.12.2006
Сообщений: 2,671
По умолчанию

Вводим по 2 байта на текстуру, 65535 будет, первый байт - тип (каталог), второй - вид (номер файла).
Руководитель проекта MMO 2D RPG: Настоящее имя Денис Стрижак (10.05.1981-6.02.2019) Мир духу его
Beermonza вне форума Ответить с цитированием
Старый 02.03.2010, 14:15   #103
Ckomoroh
Я еще только учусь
Форумчанин
 
Аватар для Ckomoroh
 
Регистрация: 24.10.2009
Сообщений: 125
По умолчанию

Сейчас проверил какие он загружает данные, - оказывается все грузит нормально, но видимо неверно обрабатывает...Проверил клетки с ошибками - они входят в массив, но значения у них другие должны быть.....
Из-за чего такое может быть?
Ckomoroh вне форума Ответить с цитированием
Старый 02.03.2010, 16:12   #104
Beermonza
Инженер ИС
Старожил
 
Аватар для Beermonza
 
Регистрация: 13.12.2006
Сообщений: 2,671
По умолчанию

Возможно из-за неверного разделения данных в файле. Например, тот же блокнот у меня скрывает некоторые байты, я их вижу в рукописном просмотрщике, или добавляет байт переноса вместе с байтом пробела, ...и каждый раз по разному. Даже если я посмотрю в блокноте содержимое и изменю только один символ, без изменения длины содержимого, то клиентское приложение уже не может прочесть файл, выдается ошибка чтения. Именно поэтому я сразу отказался от типизированных файлов, и создал свой формат для карт.
Руководитель проекта MMO 2D RPG: Настоящее имя Денис Стрижак (10.05.1981-6.02.2019) Мир духу его
Beermonza вне форума Ответить с цитированием
Старый 06.03.2010, 19:37   #105
Ckomoroh
Я еще только учусь
Форумчанин
 
Аватар для Ckomoroh
 
Регистрация: 24.10.2009
Сообщений: 125
Печаль

Нашел суть ошибки. Все из-за моей невнимательности=)

И еще один вопрос. Я заметил, что при передвижении персонажа к правому нижнему углу карты загрузка ЦП начинает расти до 40-50%, а при движении к левому верхнему углу уменьшается до 0-2%. При этом рисуются объекты только те которые показываются камерой... Из-за чего такое?

P.S. исправил сообщение, т.к. нашел ошибку.
P.P.S и кстати, даже с банком текстур кол-во затраченной памяти не сильно снизилось, только на 2мб...

Последний раз редактировалось Ckomoroh; 06.03.2010 в 20:01. Причина: Нашел ошибку
Ckomoroh вне форума Ответить с цитированием
Старый 24.04.2010, 12:13   #106
Ckomoroh
Я еще только учусь
Форумчанин
 
Аватар для Ckomoroh
 
Регистрация: 24.10.2009
Сообщений: 125
По умолчанию

После столь продолжительного периода я решил вновь заняться игрой.
Увеличил карту в 4 раза.

И решил сделать, чтоб с монстров выпадали вещи.
Сделать так, чтобы вещи появлялись в инвентаре - это легко, а вот как сделать так, чтобы вещи появлялись на карте, например в клетке, где находился моб? С одной вещью это сделать легко, а вот как сделать. чтобы несколько вещей лежали в одной клетке?

Есть идея сделать двумерный массив размером с массив карты. Массив числовой (longint). Также сделать базу по вещам и пронумеровать их, только в номере, например нельзя использовать 0 (т.е нумероваться будет так: 1,2,3,4,5,6,7,8,9,11,12,13 и.т.д.). Когда моб убит, вычисляется шанс выпадения вещи, если вещь выпадает, то в ячейку двумерного массива записывается номер + 0, после чего высчитывается вторая вещь и если выпадает, то приписывается ее номер + 0. Т.е. например выпали вещи под номерами 11 и 8, тогда в клетке будет записано 11080, после чего, если игрок хочет поднять выпавшие вещи, то считываем номера и предлагаем ему выбрать вещь, или взять все(если место есть в рюкзаке).
У этого способа просто куча минусов. Например, если вещей больше 1000, то при выпадении 3 вещей понадобится огромное 15-ти значное число.

А может сделать строковый массив? и разделителем между номерами использовать, например, -?
Ckomoroh вне форума Ответить с цитированием
Старый 24.04.2010, 13:05   #107
Alex Cones
Trust no one.
Старожил
 
Аватар для Alex Cones
 
Регистрация: 07.04.2009
Сообщений: 6,526
По умолчанию

Сделай лучше по программерски:

Код:
$10000 Or $20000 Or $01000 etc.
SQUARY PROJECT - НАБОР БЕСПЛАТНЫХ ПРОГРАММ ДЛЯ РАБОЧЕГО СТОЛА.
МОЙ БЛОГ
GRAY FUR FRAMEWORK - УДОБНАЯ И БЫСТРАЯ РАЗРАБОТКА WINAPI ПРИЛОЖЕНИЙ
Alex Cones вне форума Ответить с цитированием
Старый 24.04.2010, 13:30   #108
Ckomoroh
Я еще только учусь
Форумчанин
 
Аватар для Ckomoroh
 
Регистрация: 24.10.2009
Сообщений: 125
По умолчанию

Alex Cones, я ничего не понял что Вы написали
Ckomoroh вне форума Ответить с цитированием
Старый 24.04.2010, 14:08   #109
Alex Cones
Trust no one.
Старожил
 
Аватар для Alex Cones
 
Регистрация: 07.04.2009
Сообщений: 6,526
По умолчанию

Наглядно:
Помните была такая вещь, "dendy" называлась? Так вот на джойстике было 8 кнопок (TURB`ы шли как обычные, но с частотой), так вот, сигнал подавался так:

A - 1
B - 2
SELECT - 4
START - 8
UP - 16
DOWN - 32
LEFT - 64
RIGHT - 128.

В итоге - мы можем закодировать любую комбинацию нажатых клавиш всего ОДНИМ байтом по следующей схеме:

Например, нажато A + UP
На вход придет сигнал "17" Он раскладывается с помощью побитного разложения и получаем A + UP.

Аналогично можете сделать у себя:
МЕЧ - 1
ЩИТ - 2
КОПЬЕ - 4
КНИГА - 8

Рендомно берете число от 0 до 15, затем побитно раскладываете и узнаете, что выпало.

Например получили число 10, значит выпали ЩИТ и КНИГА.

Суть ясна?
SQUARY PROJECT - НАБОР БЕСПЛАТНЫХ ПРОГРАММ ДЛЯ РАБОЧЕГО СТОЛА.
МОЙ БЛОГ
GRAY FUR FRAMEWORK - УДОБНАЯ И БЫСТРАЯ РАЗРАБОТКА WINAPI ПРИЛОЖЕНИЙ
Alex Cones вне форума Ответить с цитированием
Старый 24.04.2010, 15:10   #110
Вадим Буренков
Участник клуба
 
Аватар для Вадим Буренков
 
Регистрация: 06.03.2009
Сообщений: 1,346
По умолчанию

Какой гениальный алгоритм . Я б вряд ли додумался так делать...
Вадим Буренков вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Создание 2d RPG игры VTR Gamedev - cоздание игр: Unity, OpenGL, DirectX 29 19.05.2009 16:34
RPG на Дельфи Juffin Gamedev - cоздание игр: Unity, OpenGL, DirectX 10 10.04.2009 21:37
Создание текстового RPG KORN Софт 3 15.07.2008 09:21
3D-RPG Кронос Gamedev - cоздание игр: Unity, OpenGL, DirectX 25 12.05.2007 11:21