{{notification.text}}

MirGames

08.08.05 21:56
0
Смотрел, во флуде кто-то(гость) что-то спрашивал, но никто даже не отреагировал <_< ...

Задаем здесь вопросы по DGLE, просьба - не флудить, и говорить по теме.
#401
zektor
30.08.09 02:12
0
[size=3]program Project1;

uses DGLEngine_header in 'DGLEngine_header.pas';
var AVI_ident,key,key2 : integer;



procedure init;
begin
AVI_ident:=CreateAVITexture('C:\Documents and Settings\Наташа\Рабочий стол\диплом\data\каркас\видео\vid.avi');

end;

procedure draw;
begin
BeginObj3D;
if key=1 then begin
AVI_ident:=CreateAVITexture('C:\Documents and Settings\Наташа\Рабочий стол\диплом\data\каркас\видео\vid2.avi');

key:=0;
key2:=1
end;
if key2=1 then begin
AdductingMatrix3Dto2D;
SetAviTexture(AVI_ident);
Position2D(710,100);
RotateX(180);

DrawPlane(4.6,3.8);
EndObj3D;
end

else begin AdductingMatrix3Dto2D;
SetAviTexture(AVI_ident);
Position2D(510,280);
RotateX(180);

DrawPlane(4.6,3.8);
EndObj3D;
end;
end;

procedure process;
begin
if IsKeyPressed(Key_Escape) then
begin
FreeAVITexture(AVI_ident);
QuitEngine;
end;
end;

procedure video;
begin
key:=1;
disabletimer(1);
end;


begin

if LoadDGLEngineDLL('DGLEngine.dll') then
begin
RegProcedure(0,@Draw);
RegProcedure(1,@Process);
RegProcedure(2,@init);


addtimer(12200,@video);
enabletimer(1);


SetGameProcessInterval(25);
SetEngineInitParametrs(1024,768,32,0,TRUE,FALSE,FALSE,TRUE);
ApplicationName('Evangelion');
StartEngine;
FreeDGLEngineDLL;
end;
end.


//вот так...когда одно видео заменяется другим,то немного тормозит,но работает,а вот остановить ролик я никак не сумел(..
#402
Программир Всия Руси!
30.08.09 20:28
0
zektor
Попробуй
FreeAVITexture(AVI_ident);
вызвать но в try ... except обернуть )
#403
01.09.09 20:08
0
Вопрос по шрифтам:
с помощью утилиты FontGenerator создаётся dft шрифт. Возможно ли увидеть что он создал в графическом виде и отредактировать это?
Я хочу наложить на буквы "ржавчину"..
Отредактировано: 01.09.09 20:10
#404
Программир Всия Руси!
01.09.09 22:41
0
Woolf
Там генерится альфа 1 байтовая текстура, что бы сделать что ты хочешь надо использовать RGBA.
#405
Steave
15.10.09 05:25
0
Доброго времени суток.
Недавно установил DGLEngine и возникли сразу вопросы.
Один из них: работа с мышью.
Проблема:мышь активна, но не отображается в рабочей зоне движка.
Как я понимаю нужно прописать 'курсор' мышки.
Подскажите строки кода и где их взять.
#406
15.10.09 12:43
0
ShowCursor (true) в секции иницилизации.
#407
zveroboy
08.01.10 21:23
0
всем привет.

помогите разобраться со следующей командой движка:

procedure DrawTexture2D(Texture : Cardinal; X , Y, ImageWidth, ImageHeight, Angle, Alpha, Color : integer; Diffuse : boolean = false; FlipX : boolean = false; FlipY : boolean = false);

а конкретно с параметром Color. я рисую спрайт, у которого при загрузке задал альфа-канал по цвету. зачем тут присутствует параметр Color при отрисовке и как его правильно использовать, чтобы он не портил сам спрайт?

при использовании DrawTexture2D_Simple проблем не возникает, всё рисует номрально, там параметра Color не требуется.

--------------------------------------------

м, победил проблему. в руководстве к движку этого не сказано, предлагаю добавить: чтобы параметр Color не вносил искажений в спрайт или текстуру, его нужно выставить в отрицательное знаечение в -1.
Отредактировано: 08.01.10 21:30
#408
Программир Всия Руси!
08.01.10 22:48
0
zveroboy
Вообще то там нужно задавать белый цвет. Цвет определяет смешивание, смешивание с белым - ничего не меняет, любой другой цвет уже исказит спрайт.
#409
zveroboy
08.01.10 23:56
0
Цитата(DRON @ 8.01.2010 - 20:48) [snapback]100968[/snapback]

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

понял. это в принципе в руководстве не написано, пришлось своим ходом доходить.
#410
KaktuZzz
15.04.10 23:34
0
DRON
А тут работает 3D? :D
#411
Программир Всия Руси!
16.04.10 01:15
0
KaktuZzz
Угу. Но юзать первую версию уже не рекомендую.
#412
KaktuZzz
16.04.10 01:34
0
Знаю :) Я думаю, что всё таки DGLE2 2D+3D буду юзать)
Отредактировано: 16.04.10 01:35
#413
KaktuZzz
20.04.10 23:08
0
Может знает кто, как сделать, чтобы камера была всегда на определённой высоте от ландшафта (в 3Д Максе он называется Plane01), есля я например хочу холмы сделать оО
#414
20.04.10 23:44
0
Ну, плэйн это меш в конечном итоге, и по идеи, для того чтоб летать на определенной высоте, нужно знать позицию полика который находиться под камерой.

Следовательно, можно пойти тремя путями :

1)Составить массив высот, вывести в отдельный файл. Грубо, но просто. :)
2)В DGLE можно обращаться к конкретному полику (Вроде, если ниче не путаю), вроде бы копать нужно в сторону GetModelGeometry.
3)В максе сделать карту высот (Если юзаешь дримскейп например для ландшафта), и юзать её в двиге.

Вроде так.
#415
KaktuZzz
21.04.10 00:32
0
Спасиб, попробую..
#416
KaktuZzz
01.05.10 00:16
0
Обрабатываю столкновения, а камера не двигается(
Код
v:=vertex(1,1,5);

if IsKeyPressed(Key_D) or IsKeyPressed(Key_Left) then
begin
old:=pos;

pos.X:=pos.X+2*sin(degtorad(CamA_Y + 90));
if CollideBoxWithScene(level,pos,v) then Pos.X:=old.X;

pos.Y:=pos.Y-2*cos(degtorad(CamA_Y + 90));
if CollideBoxWithScene(level,pos,v) then Pos.Y:=old.Y;

end;

if IsKeyPressed(Key_A) or IsKeyPressed(Key_Right) then
begin
old:=pos;

pos.X:=pos.X-2*sin(degtorad(CamA_Y + 90));
if CollideBoxWithScene(level,pos,v) then Pos.X:=old.X;

pos.Y:=pos.Y+2*cos(degtorad(CamA_Y + 90));
if CollideBoxWithScene(level,pos,v) then Pos.Y:=old.Y;

end;

if IsKeyPressed(Key_S) or IsKeyPressed(Key_Up) then
begin
old:=pos;

pos.X:=pos.X-2*cos(degtorad(CamA_Y + 90));
if CollideBoxWithScene(level,pos,v) then Pos.X:=old.X;

pos.Y:=pos.Y-2*sin(degtorad(CamA_Y + 90));
if CollideBoxWithScene(level,pos,v) then Pos.Y:=old.Y;

end;

if IsKeyPressed(Key_W) or IsKeyPressed(Key_Down) then
begin
old:=pos;
pos.X:=pos.X+2*cos(degtorad(CamA_Y + 90));
if CollideBoxWithScene(level,pos,v) then Pos.X:=old.X;
pos.Y:=pos.Y+2*sin(degtorad(CamA_Y + 90));
if CollideBoxWithScene(level,pos,v) then Pos.Y:=old.Y;

end;
#417
12.10.10 22:03
0
В хелпе по движку в стандартных параметрах написано:

"Color - цвет объекта." Что за "цвет" и что за объект?

и ещё в данной процедуре:

"procedure DrawTexture2D_Split(Texture : Cardinal; X , Y, TexWidth, TexHeight : integer; Angle, Alpha, Color : integer; SplitRect : Trect; Scale : single = 1.0; FlipX : boolean = false; FlipY : boolean = false);"

"Angle, Alpha," - так и должно быть в данной процедуре, если да то для чего используется каждая.
#418
Программир Всия Руси!
13.10.10 22:21
0
Color - цвет выводимого объекта(картинки). Этот цвет смешивается с цветом текстуры, проэксперементируй разные цвета позаводи глядишь и поймешь.
Angle - как следует из название угол поворота кратинки.
Alpha - степень прозрачности.
#419
22.10.10 02:41
0
Какие парметры имеет источник света по умолчанию?
Каков принцип наложения текстуры на 3D объекты средствами движка? Как в примере с астероидами и космическим корабликом.
#420
Программир Всия Руси!
22.10.10 16:00
0
Цитата(Den_ @ Сегодня, 00:41)
[snapback]105079[/snapback]
Какие парметры имеет источник света по умолчанию?

Они заданы только для 0-го источника и по сути такие как в самом OpenGL. Вообще не хочешь гемору всегда задавай сам все параметры которые надо.

Цитата(Den_ @ Сегодня, 00:41)
[snapback]105079[/snapback]
Каков принцип наложения текстуры на 3D объекты средствами движка? Как в примере с астероидами и космическим корабликом.

Совершенно не понятный или не корректный вопрос. Текстура накладывается так же как в максе.
Что бы нарисовать модель с текстурой надо 1 - установить текстуру нужную как текущую SetTexture, 2 - нарисовать модель. Вообще там же в примерах есть все.
#{{post.Index}}
{{post.Author.Login}}
{{post.CreatedDate | date:'dd.MM.yy HH:mm'}}
{{post.VotesRating}}
Отредактировано: {{post.UpdatedDate | date:'dd.MM.yy HH:mm'}}