Текущий архив: 2006.12.31;
Скачать: CL | DM;
ВнизРедактор карт в 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;
Скачать: CL | DM;
Память: 0.66 MB
Время: 0.13 c