Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Игры";
Текущий архив: 2006.12.31;
Скачать: [xml.tar.bz2];

Вниз

Редактор карт в DelphiX   Найти похожие ветки 

 
Домовенок ©   (2006-02-04 00:14) [80]

> Cash ©   (01.02.06 12:32) [63]
> Люблю текстурные курсоры, и когда скорость меньше
> 100 fps при резких движениях мышью курсор начинает скакать по полю.
> Зрелище не слишком лицеприятное, поэтому предпочитаю держать fps
> как можно ближе к идеальному.


Идеальный FPS считается 60-80... На некоторых машинах при FPS более 100 картинка неровно перерисовывается и изображение рябит. У меня такая проблема была, например в Call Of Duty - играть было не возможно, спас vsync в опциях игры. Много где еще с аналогичными проблемами сталкивался.


 
Cash ©   (2006-02-04 09:25) [81]

Домовенок ©   (04.02.06 00:14) [80]:
Не на некоторых машинах, а на мониторах с низкой вертикальной разверткой.
В таких случаях либо VSYNC либо преобрести качественный монитор.

Аццкий_рыцарь:)   (03.02.06 13:40) [78]:
Мне этот класс нужен для завершения модуля.
Это будет модуль твоей карты, все как надо + возможность
сохранения/загрузки в спец. формат файла.


 
Домовенок ©   (2006-02-04 11:17) [82]

> Cash ©   (04.02.06 09:25) [81]

У меня вообще-то нормальный монитор :).
А ты игру пишешь для себя? Или пользователи с неправильным монитором у тебя в расчет не идут? И кстати правильно тебе написали, сколько бы фпс у тебя не было, визуально это будет выглядеть как 100-120.

*Извиняюсь за оффтоп.


 
Cash ©   (2006-02-04 11:36) [83]

Домовенок ©   (04.02.06 11:17) [82]:
Ну... как знаешь, Call Of Duty у меня без VSYNC идет, нравится!!!!....
А нерадивые юзвери с кривыми и уж очень старыми мониторами пусть на
этот самый VSYNC и надеются. Он вроде для них и для ну очень
требовательных к видеоотдаче людей сделан.
"Вертикальная синхронизация поможет избежать некоторых дефектов в
видеопередаче..."
Большой оборот кадров говорит о легкости и быстроте кода. Можно и
подумать о какой нибудь фиче для улучшения гейминга! А если у тебя
при выводе 120 примитивов оборот составит около 80 - 90 кадров, то
время думать не о фичах, а о том, что к хирургу пора, руки к плечам
с пятой точки перешивать!


 
Аццкий_рыцарь:)   (2006-02-04 14:30) [84]

ФИЗИКА - 5 !!!! ААА!!!!!! все, ща похаваю и выложу код с ObjectDo :)


 
Cash ©   (2006-02-04 14:32) [85]

Аццкий_рыцарь:)   (04.02.06 14:30) [84]:
Физик много бывает, какая именно?


 
Аццкий_рыцарь:)   (2006-02-04 14:44) [86]

У нас пока что общая :) 1 курс техникума :)

вот класс:

 type
 TObjectdo = class(TImageSprite)
 protected
 procedure DoMove(MoveCount: Integer); override;
 private
 xobj:integer;
 yobj:integer;
 questprogress:integer;
 isclickable:boolean
 end;

и кстати, насчет освещения...

мне получилось сделать как тут говорили, но мне кажется что будет легче и меньше глюков, если только раз нарисовать этот свет на спрайте, а потом уже перерисовывать. Только у мну не получается одна вещь... Как сделать, чтоб у спрайта рисунка небыло, всмысле картинки, но рисовать на нем можно было. Я пытался делать типа рисунок белый квадрат, и транспарент включал на белый, но когда я drawadd, на него :), то свет смешивается с воном и получается резкий переход.


 
Cash ©   (2006-02-04 14:54) [87]

Аццкий_рыцарь:)   (04.02.06 14:44) [86]:
Гы-гы-гы... мне нужен полностью работоспособный класс, так что и DoMove
тоже надо огласить. Дело в том, что его надо будет бросить в модуль с
классом карты, для этого надо его полностью переписать. Поэтому мне и
нужен он весь с методами.

А сто ты имеешь ввиду под "нарисовать на спрайте"?
Не, свет, как и все остальное должен перерисовываться.

И... ето.... ужас прям какой то. Сперва Protected, потом Private.
Издевательство над бедным кодоанализатором какоето! :)))


 
Аццкий_рыцарь:)   (2006-02-04 15:19) [88]

воть:

Procedure Tobjectdo.DoMove(MoveCount: Integer);

 begin
    inherited DoMove(MoveCount);
  if playervector<>9 then
  begin
  X:=grass.x+xobj;
 Y:=grass.y+yobj;
  end;
  collision;

end;

ну смотри, если я через surface рисую на спрайте с картинкой свет только когда create, то прога не глючит из-за альфы, потому что я рисую там один раз, только вот свет смешивается с задним фоном некрасиво. А если я в Dxtimer ставлю рисовать постоянно этот свет ТО ГЛЮКИ НЕВООБРАЗИМЫ!


 
Cash ©   (2006-02-04 16:40) [89]

Аццкий_рыцарь:)   (04.02.06 15:19) [88]:
Порядочный глюк - это вполне вообразимая вещь! Его видно четко и ясно,
иначе это не глюк, а последствие неправильной последовательности
нажатий клавиш. Одним словом надо бы описать. Глюки то есть.


 
Аццкий_рыцарь:)   (2006-02-04 17:10) [90]

Я неправильно выразился:) вернее ФПС сильно падает, а вообще-то... нафиг мне этот свет сдался? :) я вожусь с ним неделю и ничего толкового не добился :(


 
Домовенок ©   (2006-02-04 22:59) [91]

> Cash ©   (04.02.06 11:36) [83]

Не забудь прикрутить VSync в настройки своей игры :)


 
Аццкий_рыцарь:)   (2006-02-04 23:10) [92]

Кстати, маленький вопросик: как сделать, чтоб в DelphiX картинка спрайта не растягмвалась на всю ширину и длинну спрайта? у неё нет никакого свойства, типа Stretch:(


 
Аццкий_рыцарь:)   (2006-02-06 11:24) [93]

Cash, ты де? :)


 
Cash ©   (2006-02-06 15:31) [94]

Я, здесь. Просто со своими лагами пока разбираюсь.


 
Cash ©   (2006-02-06 16:00) [95]

Слушай Аццкий_рыцарь:), а у тебя C&C Generals (ZH) есть?


 
Аццкий_рыцарь:)   (2006-02-06 17:17) [96]

давненько играл :) ужо нет :((( а что?


 
XProger ©   (2006-02-06 17:27) [97]

Аццкий_рыцарь:):
http://timeforkill.mirgames.ru/img/scr/5.jpg
http://timeforkill.mirgames.ru/img/scr/6.jpg
http://timeforkill.mirgames.ru/img/scr/7.jpg
Представь себе - не глючит! :)
Переходи на тёмную сторону силы - API ;)


 
Cash ©   (2006-02-06 21:31) [98]

Аццкий_рыцарь:)   (06.02.06 17:17) [96]:
Надыбай, поставь, заведи себе HEX редактор,
а я дам почву для размышлений о форматах.
(Мой любимый редактор лежит на http://www.bpsoft.com,
скачай от туда версию 3.3, а я таблеткой обеспечу.
Вещичка мощнейшая, умеет даже очень много)

Кроме того сгодились бы Аллоды 1 и 2, а еще
моя люимица: EVE OnLine, я просто покажу как
узнавать форматы файлов и создавать их.

XProger ©   (06.02.06 17:27) [97]:
Опять ты "Тиранус" взялся за свои проделки! :)))


 
Аццкий_рыцарь:)   (2006-02-07 01:24) [99]

Там только есть 4.23 и 4.2 версии :( а что бы еще сгодилось? а то такого нет :( Lineage 2 не покатит? или дум или гта?

XProger эйта ты на чем сделал, что не глючит? АПИ?


 
XProger ©   (2006-02-07 07:33) [100]

Аццкий_рыцарь:), ну эта, как его там... OpenGL + Win API - во! :)


 
Cash ©   (2006-02-07 08:12) [101]

Аццкий_рыцарь:)   (07.02.06 01:24) [99]:
Тьфу, блин, не 3.3, а 3.11, вот от сюда: http://www.bpsoft.com/downloads/

На счет их, я их не вскрывал, так что не знаю как там дела делаются.
Вон, читаю со своих ломалок на винте:
"Солдаты анархии"
"EVE OnLine" - http://www.eve-ru.com
"Аллоды" 1/2
"C&C Generals"/"The Lord of the ring: Battle of the MiddleEarth"
"Transport Tycoon Deluxe" - http://goldgames.times.lv/ttd/download.html

Но Генералы предпочитительнее всех.


 
Аццкий_рыцарь:)   (2006-02-07 10:46) [102]

Сегодняпосле учебы зайду к одному "типу", у него генералы должны быть


 
Cash ©   (2006-02-08 18:26) [103]

Ну что, поставил? Поставь себе еще HEX редактор, а потом посмотри сюда:
http://www.projectcl.h15.ru/files/bigfiles.htm

На то, что ты все поймешь я и не надеюсь, отписал я етот док уже очень
давно, а сейчас перечитал и ничего не понял :). В любом случае погодя я
поясню некоторые вещи, которые согут быть непонятными.


 
Аццкий_рыцарь:)   (2006-02-08 20:31) [104]

блина генералов нима :( пойду искать завтра у других знакомых.

кстати, ты был прав, что я не все пойму


 
Аццкий_рыцарь:)   (2006-02-08 20:32) [105]

и еще...

Генералы разве написаны на Дельфях ?      О_о


 
Cash ©   (2006-02-09 11:21) [106]

Аццкий_рыцарь:)   (08.02.06 20:32) [105]:
Нет, но с помощью Delphi можно раздербанить ихние ресурсы! ;)


 
XProger ©   (2006-02-09 11:38) [107]

http://extractor.ru


 
Аццкий_рыцарь:)   (2006-02-24 00:30) [108]

Здарова всем :) вы меня еще не забыли? :) я скоро продолжу тему, главное не удаляйте. Просто времени нет :(((


 
XProger ©   (2006-02-24 01:37) [109]

Аццкий_рыцарь:), дык мы тут живём ;)


 
Аццкий_рыцарь:)   (2006-02-25 15:08) [110]

XProger :)


 
Cash ©   (2006-02-28 15:53) [111]

С небольшим опозданием примерно в месяц, наконец даю эту процедурку
долбанную:

Procedure SaveToStream(Stream: TStream);
var
  i,j: integer;
begin
  Stream.Write(Map.Width,4); // пишем ширину сетки карты
  Stream.Write(Map.Height,4);  // пишим высоту соответственно
  Stream.Write(DxSpriteEngine1.Engine.Count,4);  // говорим, сколько объектов на карте
// теперь пишим сетку поэлементно
  for j:=0 to Map.Height-1 do begin
    for i:=0 to Map.Width-1 do begin
      Stream.Write(Map.Chips[i,j],4);
    end;
  end;
// а после сетки записываем поэлементно все объекты с карты
  for i:=0 to DxSpriteEngine1.Engine.Count-1 do begin
    Stream.Write(TObjectDo(DxSpriteEngine1.Engine.Items[i]). xobj,4);
    Stream.Write(TObjectDo(DxSpriteEngine1.Engine.Items[i]). yobj,4);
    Stream.Write(TObjectDo(DxSpriteEngine1.Engine.Items[i]). questprogress,4);
    Stream.Write(TObjectDo(DxSpriteEngine1.Engine.Items[i]). isclickable,1);
  end;
end;


Вопрос на засыпку! Как использовать эту процедуру для сохранения карты
в файл?

Поцедура считывания такая же, за исключением замены Write на Read, и
еще, для TSream.Read нельзя использовать поля классов, при таком
раскладе наджо использовать буффер того же типа, что и поле класса.
То есть сперва TStream.Read(T,n);, а потом Variable.Value:=T;.
Вот так!

И это... не пытайся эту процедуру имплементировать в прогу, ничего из
этого не выйдет. Осмотри ее, это наглядный и живучий пример из серии:
"Как сделать ...", это должно дать наводку на написание своей
процедурки. ;)



Страницы: 1 2 3 вся ветка

Форум: "Игры";
Текущий архив: 2006.12.31;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.67 MB
Время: 0.04 c
2-1165871607
MegaNop
2006-12-12 00:13
2006.12.31
ActionMainMenuBar


2-1165772153
lobach
2006-12-10 20:35
2006.12.31
Как отследить запуск приложения?


6-1155109077
Kiloper
2006-08-09 11:37
2006.12.31
Как пользоваться функцией POST компонента IdHTTP?


2-1165999682
sergeyst
2006-12-13 11:48
2006.12.31
Попадание точки в заданную область


2-1165998541
Алик
2006-12-13 11:29
2006.12.31
Вывод Bitmap на экран без создания окна





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский