Autor Beitrag
maximus
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 896

Win XP, Suse 8.1
Delphi 4/7/8 alles prof
BeitragVerfasst: Fr 20.06.03 16:49 
ÔK..du hast es nicht anders gewollt *grrr*

Wer schreibt denn extra ein directX framework, um dann nur ein dreieck zu mahlen? ...und zeilenverschwendung ist einzig und allein der 'overhead' von engines wie DelphiX...nach dem motto: ich zeichne mir ein dreieck in delphiX und compilier mir damit 30 units mit in die exe. Die musstes du zwar nicht selbst schreiben, aber nutzen tuts dir auch nicht 8) Und 1.000 zeilen brauchst DU vielleicht dafür :twisted:

Ganz davon abgesehen wird man für die paar zeilen reichlich belohnt...und man hat das gefühl es selbst gemacht zu haben. Desweiteren lernt man mehr, als wenn man ne fertige engine nimmt und 'n paar sprites bewegt.

Denk mal drüber nach :wink: :D

_________________
mfg.
mâximôv
umpani
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 389



BeitragVerfasst: Fr 20.06.03 17:01 
Ich weiß gar nicht, wo ihr das Problem bei DelphiX seht.

Gut ich sehe ein, das es veraltet ist. Und das Direct Draw seit DirectX nur noch mitgeschleppt wird.

Aber für 2D Spiele (und nichts anderes) reicht es völlig.

Aber ich muß die Zustimmen. Die Spriteengine ist eine seltsame und Abstoßende Komponente.
Ich habe und werde Si nicht benutzen.

Aber wofür sollte ich mit 1000 Zeilen Code herumschlagen, wenn die in DelphiX schon vorgefertigt sind. Ich will ja schließlich meine Zeit nicht mit dem Initialisieren, sondern mit dem Spiel selber verbringen.
(Natürlich nicht nur mit einem Dreieck).

@Maximus: Du benutzt ja schließlich auch eine TEdit-textfeld und programmierst es nicht selber. Oder? :wink:

Aber wenn Du doch etwas selber programmieren möchtest. Ich habe hier noch die originale, auf 12 Disketten ausgelieferte Version von Borland Pascal 7. :wink:

_________________
Lernen, ohne zu denken, ist eitel; denken, ohne zu lernen, ist gefährlich. Konfuzius
tommie-lie
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 4373

Ubuntu 7.10 "Gutsy Gibbon"

BeitragVerfasst: Fr 20.06.03 17:24 
umpani hat folgendes geschrieben:
Gut ich sehe ein, das es veraltet ist. Und das Direct Draw seit DirectX nur noch mitgeschleppt wird.

Was? Jetz' lies dir den Satz nochmal genau durch und sag mir, was DirectX ist :mrgreen:
DirectDraw wird sehr wohl noch benötigt. Nicht alle Spiele sind 3D. DirectDraw ist nur in Direct3D eingeflossen, warum weiß ich nicht, da müsste man Microsoft fragen...

Zitat:
Aber wofür sollte ich mit 1000 Zeilen Code herumschlagen, wenn die in DelphiX schon vorgefertigt sind. Ich will ja schließlich meine Zeit nicht mit dem Initialisieren, sondern mit dem Spiel selber verbringen.
(Natürlich nicht nur mit einem Dreieck).

Das Initialisieren schreibst du einmal und machst dann für jeden Project nur noch Copy&Paste.
Der Vorteil: Native Programmierung ist i.d.R. schneller, und bei der Qualität von DelphiX würde ich sogar sagen, seehr viel schneller...

Bei Umfangreichen Projekten sind fertige Umgebungen schon ein Riesenvorteil, weil man dort auch das meiste braucht, DelphiX ist aber für ein zeitgemäes Spiel wirklich nicht das Wahre...
Soviel nur als Anregung ;-)

_________________
Your computer is designed to become slower and more unreliable over time, so you have to upgrade. But if you'd like some false hope, I can tell you how to defragment your disk. - Dilbert
umpani
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 389



BeitragVerfasst: Fr 20.06.03 17:33 
tommie-lie hat folgendes geschrieben:

Was? Jetz' lies dir den Satz nochmal genau durch und sag mir, was DirectX ist :mrgreen:


Ich meine natürlich DirectX 7. 8)

Aber mal ganz im ernst. Web von uns hat zeit, ein wiklich zeitgemäßes Spiel zu programmieren?

Ich spreche wohl für die meisten von uns, wenn ich sage: "Ich programmiere nur so zu Spaß".
Man hat nun mal auch noch einen Beruf (der gottseidank nichts mit Computern zu tun hat)

Und für diesen Spaß reicht mir (ich spreche nur für mich) DelphiX aus.
Im Moment programmiere ich ein Eye of the Beholder Clon. Auch Dafür reiche DelphiX aus.

_________________
Lernen, ohne zu denken, ist eitel; denken, ohne zu lernen, ist gefährlich. Konfuzius
maximus
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 896

Win XP, Suse 8.1
Delphi 4/7/8 alles prof
BeitragVerfasst: Fr 20.06.03 18:56 
umpani hat folgendes geschrieben:
...
Aber wenn Du doch etwas selber programmieren möchtest. Ich habe hier noch die originale, auf 12 Disketten ausgelieferte Version von Borland Pascal 7. :wink:


Juhuu...die wollte ich immerschon als original haben. Damit hab ich früher lustige sachen gemacht. Dann muss ich wohl mal ne alte DOS-kiste rauskramen, eine die schön lamgsam ist, da der compiler von Borland Pascal 7.0 (mit Objekten) leider einen Bug hat, der verhindert, dass die programme auf schnellen PCs laufen .

Schicks mir gleich mal rüber :wink:

_________________
mfg.
mâximôv


Zuletzt bearbeitet von maximus am Fr 20.06.03 18:57, insgesamt 1-mal bearbeitet
BloodyBastard Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 22

FC1, Win XP
D6 Enterprise
BeitragVerfasst: Fr 20.06.03 18:56 
wow, die Frage artete ja richtig aus :) aber find ich toll :)
ob ich jetz jedi-headers oder komponenten benutzen werde, weiss ich noch nicht. Da ich zur Zeit keine Lust und Zeit für den Initialisierungsprozess zu schreiben habe, werde ich wahrscheinlich mit Komponenten beginnen. Für zum Einarbeiten und das, was ich machen möchte, wird es sicherlich völlig reichen. (Nein, ich will nicht nur Dreiecke zeichnen :-) )
Also danke vielmals für die Tipps!

gruss
Bloody Bastard

_________________
nix
mimi
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 3458

Ubuntu, Win XP
Lazarus
BeitragVerfasst: Fr 20.06.03 19:36 
@maximus
aber wie schon gesagt wurde, machst alles selber ?
mit winAPI ?
bzw ganz selber ?
also schreibst du dir auch dein einges forum ?
also ich finde dieses jedi zeug ist viel zu umfangreich und zu schwer sieht man ja bei den jedi headern :evil: mind 100 zeilen code für die installizierung gut brauchst du nur einmal zu schreiben, aber davon werden die hedas auch nicht "geschmackvoller":)

_________________
MFG
Michael Springwald, "kann kein englisch...."
umpani
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 389



BeitragVerfasst: Fr 20.06.03 19:52 
maximus hat folgendes geschrieben:
umpani hat folgendes geschrieben:
...
Aber wenn Du doch etwas selber programmieren möchtest. Ich habe hier noch die originale, auf 12 Disketten ausgelieferte Version von Borland Pascal 7. :wink:


Juhuu...die wollte ich immerschon als original haben. Damit hab ich früher lustige sachen gemacht. Dann muss ich wohl mal ne alte DOS-kiste rauskramen, eine die schön lamgsam ist, da der compiler von Borland Pascal 7.0 (mit Objekten) leider einen Bug hat, der verhindert, dass die programme auf schnellen PCs laufen .

Schicks mir gleich mal rüber :wink:



Nun ich denke, Borland wird mir nicht gleich die Ohren abreissen, wenn ich die eine 10 jahre Alte Version der Programmiersprache gebe (man möge mich eines Besseren belehren):

Schau mal hier: 8) 8) 8) 8)

umpani.dyndns.org
Benutzer: umpani
Passwort: umpani

Mach übrigens bei der Installation einige Probleme.
Kann man nicht aus dem Windows XP Explorer installiere, sondern nur über die Eingabeaufforderung (aber auch in Windows). Weiss der Geier warum. :?

Ich lasse BP übrigens nur 1-2 tage drin. Will ja mein DSL nicht überlasten.
Aber wenn Du 5 kb Download von Mir bekommst ist es ja schon bald da.

_________________
Lernen, ohne zu denken, ist eitel; denken, ohne zu lernen, ist gefährlich. Konfuzius
mimi
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 3458

Ubuntu, Win XP
Lazarus
BeitragVerfasst: Fr 20.06.03 19:55 
@umpani
wenn wir von dir nichts mehr höhren wissen wir ja warum:)
kostet der tp7.0 eingentlich noch was bei borland ?

_________________
MFG
Michael Springwald, "kann kein englisch...."
umpani
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 389



BeitragVerfasst: Fr 20.06.03 20:12 
Ich glaube nicht. Bei Amazon gibt es das noch als CD zu einem Buch. (für 15 €)

_________________
Lernen, ohne zu denken, ist eitel; denken, ohne zu lernen, ist gefährlich. Konfuzius
maximus
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 896

Win XP, Suse 8.1
Delphi 4/7/8 alles prof
BeitragVerfasst: So 22.06.03 11:40 
@umpani: Cool...war zwar nur halb ernst gemeint, aber ich lad das mir mal runter. Wollte nur testen, ob du tatsächlich gutmütig genug bist, mir die orig.disketten zu zuschicken...download is natürlich die beste lösung.

Läuft das bei dir unter XP? auf was für einer maschine?

danke schonmal.

mimi hat folgendes geschrieben:
@maximus
aber wie schon gesagt wurde, machst alles selber ?
mit winAPI ?
bzw ganz selber ?
also schreibst du dir auch dein einges forum ?
also ich finde dieses jedi zeug ist viel zu umfangreich und zu schwer sieht man ja bei den jedi headern :evil: mind 100 zeilen code für die installizierung gut brauchst du nur einmal zu schreiben, aber davon werden die hedas auch nicht "geschmackvoller":)


*g* Natürlich nicht! Nur wo es sinn macht...ein programmierer sollte nicht davor zurückschrecken etwas selbst (komplett neu) zu schreiben , wenn er eine andere implementierung oder architektur wünscht und für sinnvoll hält!

Das macht bei edit-feldern natürlich keinen sinn, da sie ihren zweck nahezu perfekt dienen.

@directX init: um mal deine horror vorstellung von der initialisierung zu entkräften... ich komme grad mal 71 zeilen und viel davon sind sicherheit-abfragen:
ausblenden volle Höhe Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
Procedure TDynaGame.initViewPort(handle: HWND);
begin
  FInitialized := false;
  if InitDirectGfx then
  begin
    D3DDev9.SetRenderState(D3DRS_ZEnable,  Word(false));
    D3DDev9.SetRenderState(D3DRS_CullMode, D3DCull_None);
    D3DDev9.SetRenderState(D3DRS_Lighting, Word(false));
    D3DDev9.SetRenderState(D3DRS_ANTIALIASEDLINEENABLE,  word(true));


  end else begin
    MessageBox(0, PChar(SHALFailed),PChar(SDynaWarning), MB_ICONWARNING);
    CloseDirectGfx;
    if not InitDirectGfx(false) then
    begin
      MessageBox(0, PChar(SGraphicsFailed), PChar(SDynaWarning), MB_ICONWARNING);
      exit;
    end;
  end;
  RestoreDeviceObjects;
end;

function TDynaGame.InitDirectGfx(HAL : boolean = true): boolean;
begin
  Result := false;
  D3D9 := Direct3DCreate9(D3D_SDK_VERSION);
  if D3D9 = NIL then exit;

  InitPresentParameters;

  if hal
  then devType := D3DDEVTYPE_HAL
  else devType := D3DDEVTYPE_REF;
  if failed(D3D9.CreateDevice(D3DADAPTER_DEFAULT, devType, WinHandle,
                              D3DCREATE_SOFTWARE_VERTEXPROCESSING,
                              //D3DCREATE_HARDWARE_VERTEXPROCESSING,
                              DGfxPP, D3DDev9)) then exit;

  // All righta
  Result := true;
end;

procedure TDynaGame.InitPresentParameters;
begin
  Fillchar(DGfxPP, sizeof(DGfxPP), 0);
  DGfxPP.Windowed      := not FFullScreen;
  DGfxPP.hDeviceWindow := WinHandle;
  if (FFullScreen) then
  begin
    DGfxPP.BackBufferWidth  := FWidth;
    DGfxPP.BackBufferHeight := FHeight;
    case FDepth of
      bd16 : DGfxPP.BackBufferFormat := D3DFMT_A1R5G5B5;
      bd32 : DGfxPP.BackBufferFormat := D3DFMT_A8R8G8B8;
      else exit;
    end;
    DGfxPP.BackBufferCount                  := 1;
    DGfxPP.SwapEffect                       := D3DSWAPEFFECT_FLIP;//D3DSWAPEFFECT_DISCARD;
    DGfxPP.FullScreen_RefreshRateInHz       := D3DPRESENT_RATE_DEFAULT;
    DGfxPP.FullScreen_PresentationInterval  := D3DPRESENT_INTERVAL_IMMEDIATE;

  end else begin
    if failed(D3D9.GetAdapterDisplayMode(D3DADAPTER_DEFAULT, DGfxDm))
    then exit;
    DGfxPP.SwapEffect       := D3DSWAPEFFECT_DISCARD;
    DGfxPP.BackBufferFormat := DGfxDm.Format;
    DGfxPP.SwapEffect                       := D3DSWAPEFFECT_FLIP;//D3DSWAPEFFECT_DISCARD;
    DGfxPP.FullScreen_RefreshRateInHz       := D3DPRESENT_RATE_DEFAULT;
    DGfxPP.FullScreen_PresentationInterval  := D3DPRESENT_INTERVAL_IMMEDIATE;
  end;
end;


...Ich versteh ja, dass das geschmacksache ist (und das hatte ich ja schon erwähnt), aber ich garantiere dir, dass auch du, eines tages, die schnauze voll haben wirst und es mal richtig wissen willst :wink:

_________________
mfg.
mâximôv
umpani
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 389



BeitragVerfasst: So 22.06.03 11:59 
Zitat:
Läuft das bei dir unter XP? auf was für einer maschine?



Habe jetzt nen AMD 2600+ aber bp noch nicht ausprobiert.

Nur bei der installation in XP gibt es probleme (aber nicht unüberwindbar)(siehe oben)

Ach ja und diesen Patch brauchst du auch noch:

www.webplain.de/turbopascal/error200.php

_________________
Lernen, ohne zu denken, ist eitel; denken, ohne zu lernen, ist gefährlich. Konfuzius
maximus
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 896

Win XP, Suse 8.1
Delphi 4/7/8 alles prof
BeitragVerfasst: So 22.06.03 14:07 
umpani hat folgendes geschrieben:
...
Ach ja und diesen Patch brauchst du auch noch:

www.webplain.de/turbopascal/error200.php


Genau...davon sprach ich schon. Das is irgend 'timing-counter-überlauf' problem, was bei schnellen rechnern auftritt. glaub ich..

Danke :)

_________________
mfg.
mâximôv