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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 21.05.2009, 19:31   #311
Beermonza
Инженер ИС
Старожил
 
Аватар для Beermonza
 
Регистрация: 13.12.2006
Сообщений: 2,671
По умолчанию

Цитата:
Сообщение от Вадим Буренков Посмотреть сообщение
Я там найду как выводить графику на Canvas без тормозов и ряби?
Ты там найдешь как создать буфер кадра таким способом, что с ним можно будет работать как в Canvas, так и отрисовывать быстрым методом через указатель в ОЗУ с использованием вставки на ассемблере при поддержке MMX процессора.
В общем флуд тут не разводим (в данной теме это все флуд), все вопросы по этому поводу в соответствующей теме "Как вы относитесь к созданию игр на Delphi?", там опиши свою ситуацию, что отрисовываешь и как, постараюсь помочь.
Руководитель проекта MMO 2D RPG: Настоящее имя Денис Стрижак (10.05.1981-6.02.2019) Мир духу его
Beermonza вне форума Ответить с цитированием
Старый 19.06.2009, 18:56   #312
AvaMight
Пользователь
 
Регистрация: 10.06.2009
Сообщений: 17
По умолчанию

Года 2 назад изучал Delphi (Имею так сказать базовые знания (циклы процедуры и т.д )) .Случайно зашел на форум, прочитал тему от начала до конца и заинтересовался этим делом Скачал программу из поста №106.

Посидел пару-тройку часов(а могет и больше ) поразбирался во всем этом( должен заметить где-то на 90% алгоритмы, функции , логика оказались не понятными).Сидел разбирался до тех пор пока не написал комментарий почти к каждой строке (спасибо Google за помощь).В итоге с n-ой попытки смог осознанно воспроизвести где то 95% кода.

Решил что пожалуй можно чуть чуть потренироватся в расширении данной программы( так сказать для закрепления знаний). Увеличил размер карты, количество текстур( и тому подобная мелочь).Написал код все заработало но....

Но Написать заного то что уже видел раньше(хоть и осознанно) легче чем написать свое

Сразуже неполучилось написать карту:
-вопрос : Вроде как карта в обычном блокноте написана, задана числами(в примере) . Написал я такуюже с новыми размерами но возник вопрос как перейти на новую строку без того что бы в итоге в программе не было 2 пустых клеток?
AvaMight вне форума Ответить с цитированием
Старый 19.06.2009, 19:04   #313
Kostia
Участник клуба
 
Аватар для Kostia
 
Регистрация: 21.11.2007
Сообщений: 1,691
По умолчанию

Выкладывай наработки, глянем что там "творится".
Kostia вне форума Ответить с цитированием
Старый 19.06.2009, 19:15   #314
AvaMight
Пользователь
 
Регистрация: 10.06.2009
Сообщений: 17
По умолчанию

Вот .

Единственно я изменил размер клетки на 20. Может поэтому и такие проблемы( хотя картинки тоже сделал 20х20)

Карта примитивная просто для проверки)
Вложения
Тип файла: rar Игра.rar (170.4 Кб, 67 просмотров)
AvaMight вне форума Ответить с цитированием
Старый 19.06.2009, 19:23   #315
Kostia
Участник клуба
 
Аватар для Kostia
 
Регистрация: 21.11.2007
Сообщений: 1,691
По умолчанию

Так и думал, а кто будет менять размеры самих массивов? А лучше сделать все это дело динамическим!
В общем блокнот кажет, что в нем размер карты 52*21, а массив:
Код:
map: array[1..50,1..20] of char;
...
For y:=1 to 21 do
      For x:=1 to 52  do
...
AvaMight, если хочешь добиться динамики, то лучше воспользоваться динамическими массивами или списками(TList).

Последний раз редактировалось Kostia; 19.06.2009 в 20:04.
Kostia вне форума Ответить с цитированием
Старый 19.06.2009, 20:43   #316
AvaMight
Пользователь
 
Регистрация: 10.06.2009
Сообщений: 17
По умолчанию

В общем с этим вроде как разабрался( проблема была в самой карте(я ее 51х21 сделал) + я написал <=50 в процедуре loadlvl) что и привело к появлению 2 лишних клеток по Х.



p/s Пользоваться Tlist не хочу ибо в данной теме не нашел не 1 его применение(вроде читал внимательно) а без примеров сам многое не сделаю.
Использование динамических массивов даже не представляю как тут реализовать))) ( все же я еще не достаточно силен в программировании, может как наберусь опыта буду использовать)

Пока буду пользоваться таким методом(все таки были приложены усилия в его освоении, и теперь на что то переключится на другое обидно)))

p/p/s Да и спасибо за быстрый и понятный ответ))
AvaMight вне форума Ответить с цитированием
Старый 19.06.2009, 21:57   #317
Beermonza
Инженер ИС
Старожил
 
Аватар для Beermonza
 
Регистрация: 13.12.2006
Сообщений: 2,671
По умолчанию

AvaMight, всегда в карте первыми байтами идет размер карты, при считывании с файла, размеры записываются в переменные, которые используются в циклах, ...никаких ошибок в кодах не будет, разумеется, если массив предусматривает все размеры карт, можно динамикой не пользоваться, но по-уму стоит пользовать динамический массив.
Руководитель проекта MMO 2D RPG: Настоящее имя Денис Стрижак (10.05.1981-6.02.2019) Мир духу его
Beermonza вне форума Ответить с цитированием
Старый 21.06.2009, 19:50   #318
Лубышев
Участник клуба
 
Аватар для Лубышев
 
Регистрация: 23.07.2007
Сообщений: 1,054
По умолчанию

Проблема:
Решил добавить звуки в игру. (Ну например звук выстрела по нажатию) Пробовал стандартными средствами – не получается
Хотел использовать PlaySound но звуки воспроизводятся не моментально и игра подвисает пака не пройдет звук.
Хотел использовать поток для этого, опять не то.
Какие есть решения?
1.Нужно чтобы звуки моментально воспроизводились
2.Нужно чтобы игра при этом не подвисала
3.Нужно чтобы звук воспроизводился неоднократно, т.е. если выстрелил и пока еще шел звук, если еще раз выстрелил еще раз воспроизвелся.
4.А вообще было бы шикарно, если бы одновременно с этим играла бы музыка и, если бы поразил выстрелом врага он бы тоже издал какой-нибудь звук.
Писано по д'Эльфийски
Лубышев вне форума Ответить с цитированием
Старый 21.06.2009, 19:57   #319
Манжосов Денис :)
Участник клуба
 
Регистрация: 29.01.2008
Сообщений: 1,039
По умолчанию

PlaySound('Sound.wav', 0, SND_ASYNC);
Так всё происходит синхронно с программой. Можно, наверное, использовать также FMOD(про него в теме: "Моя первая аркада на Delphi. Демка")
Манжосов Денис :) вне форума Ответить с цитированием
Старый 22.06.2009, 00:31   #320
Лубышев
Участник клуба
 
Аватар для Лубышев
 
Регистрация: 23.07.2007
Сообщений: 1,054
По умолчанию

Замечательно, хотя что то все же не так... немного притормаживает.Стандартные альтернативы есть?
А как сделать чтобы одновременно несколько звуков воспроизводилось? например все это происходит на фоне музыки?
Писано по д'Эльфийски
Лубышев вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Хорошие уроки Render Общие вопросы Delphi 9 15.09.2012 07:13
Акцесс вопросы новичков Yaga Помощь студентам 4 02.06.2008 00:16
Учебники для новичков в програмировании Рар Общие вопросы Delphi 6 08.01.2007 08:07