| Autor |
Beitrag |
maximus
      
Beiträge: 896
Win XP, Suse 8.1
Delphi 4/7/8 alles prof
|
Verfasst: 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  Und 1.000 zeilen brauchst DU vielleicht dafür
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 
_________________ mfg.
mâximôv
|
|
umpani
      
Beiträge: 389
|
Verfasst: 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?
Aber wenn Du doch etwas selber programmieren möchtest. Ich habe hier noch die originale, auf 12 Disketten ausgelieferte Version von Borland Pascal 7. 
_________________ Lernen, ohne zu denken, ist eitel; denken, ohne zu lernen, ist gefährlich. Konfuzius
|
|
tommie-lie
      
Beiträge: 4373
Ubuntu 7.10 "Gutsy Gibbon"
|
Verfasst: 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
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
      
Beiträge: 389
|
Verfasst: 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  |
Ich meine natürlich DirectX 7.
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
      
Beiträge: 896
Win XP, Suse 8.1
Delphi 4/7/8 alles prof
|
Verfasst: 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.  |
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 
_________________ mfg.
mâximôv
Zuletzt bearbeitet von maximus am Fr 20.06.03 18:57, insgesamt 1-mal bearbeitet
|
|
BloodyBastard 
      
Beiträge: 22
FC1, Win XP
D6 Enterprise
|
Verfasst: 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
      
Beiträge: 3458
Ubuntu, Win XP
Lazarus
|
Verfasst: 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  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
      
Beiträge: 389
|
Verfasst: 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.  |
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  |
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:
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
      
Beiträge: 3458
Ubuntu, Win XP
Lazarus
|
Verfasst: 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
      
Beiträge: 389
|
Verfasst: 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
      
Beiträge: 896
Win XP, Suse 8.1
Delphi 4/7/8 alles prof
|
Verfasst: 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 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: 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, DGfxPP, D3DDev9)) then exit;
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; 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; 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 
_________________ mfg.
mâximôv
|
|
umpani
      
Beiträge: 389
|
Verfasst: 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
      
Beiträge: 896
Win XP, Suse 8.1
Delphi 4/7/8 alles prof
|
Verfasst: So 22.06.03 14:07
Genau...davon sprach ich schon. Das is irgend 'timing-counter-überlauf' problem, was bei schnellen rechnern auftritt. glaub ich..
Danke 
_________________ mfg.
mâximôv
|
|
|