Umstieg von Delphi zu JAVA (wichtige Fragen!)

Status
Nicht offen für weitere Antworten.

g-hun

Mitglied
Hallo!

Ich bin neu im forum und habe ein paar fragen an euch:

also:

ich habe mal vor kurzem mit DELPHI programmiert.
ich fand delphi war eine gute programmiersprache, aber irgentwie dachte ich das java besser wäre. :D

also meine erste frage ist:

ist java besser als delphi, was meint ihr.

meine zweite frage ist:

kann man mit java genau so gute spiele programmieren wie in delphi und kann man eigentlich sogar theoretisch gesehen gta san andreas mit java programmieren. also wäre java überhaupt dafür fähig.

und: ist java nur eine sprache für webseiten oder kann man auch andere gute dinge mit java programmieren?
wie zumbeispiel programme die mit delphi oder c++ programmiert werden.

ich habe schon fast alle programmiersprachen ausprobiert.
doch da blieb JAVA übrig. und die wollte ich auch mal testen! :D :D :D

das wars auch schon. hoffentlich könnt ihr mir weiter helfen!


danke!
 

SebiB90

Top Contributor
g-hun hat gesagt.:
also meine erste frage ist:

ist java besser als delphi, was meint ihr.
besser und schlechter gibt es nicht, jede programmiersprache hat ihre vor und nachteile

g-hun hat gesagt.:
meine zweite frage ist:

kann man mit java genau so gute spiele programmieren wie in delphi und kann man eigentlich sogar theoretisch gesehen gta san andreas mit java programmieren. also wäre java überhaupt dafür fähig.
naja ich glaub da ist die performance bei java bischen zu niedirg obwohl vllt wird sowas mit java 1.6 möglich sein.
aber nicht so aufwendige spiele kann man mit java proggen.
g-hun hat gesagt.:
und: ist java nur eine sprache für webseiten oder kann man auch andere gute dinge mit java programmieren?
wie zumbeispiel programme die mit delphi oder c++ programmiert werden.
nein auf keinen fall, java ist nicht javascript. mit java kann man viel machen nicht nur was für hps, java ist zum beispiel im gegensatz du delphi plattformunabhängig, also kannste sogar für alle systeme programmieren, nur hardwarenahe programmierung ist mit java nicht möglich, sonst kannst du so ziemlich alles mit java machen was du auch mit den anderen programmiersprachen machst.
 

g-hun

Mitglied
gibt es sogar programme die mit java programmiert wurden und auch verkauft werden??

ps: ich habe dir IDE Eclipse runtergeladen!
nun möchte ich auch programmieren. kenn ihr tutorials?
 

meez

Top Contributor
g-hun hat gesagt.:
ist java besser als delphi, was meint ihr.

Ja, aber das ist absolut Subjectiv!


g-hun hat gesagt.:
kann man mit java genau so gute spiele programmieren wie in delphi und kann man eigentlich sogar theoretisch gesehen gta san andreas mit java programmieren. also wäre java überhaupt dafür fähig.

Nein...
1. Nicht dafür Entwickelt, 2. Keine native Anbindung, was für 3D Sachen unerlässlich ist

g-hun hat gesagt.:
wie zumbeispiel programme die mit delphi oder c++ programmiert werden.

Ja, wobei wie schon gesagt keine nativen Apps. geschrieben werden können.


g-hun hat gesagt.:
gibt es sogar programme die mit java programmiert wurden und auch verkauft werden

Ja, wie Sand am Meer...
Eclipse selber ist z.B. in Java geschrieben...Ist zwar frei, aber es gibt dutzende anderer, kostenpflichtiger IDE's
 

g-hun

Mitglied
ihr kennt doch bestimmt die programmiersprache BLITZ BASIC

kann man wenigsten mit java spiele programmieren die man auch in Blitz Basic programmieren kann??
 

Jockel

Top Contributor
Such doch einfach mal auf Sourceforge/Google/was auch immer nach Produkten/Spielen, die in Java geschrieben wurden.
Z.B.: Quake 2 in Java: http://www.bytonic.de/html/screenshots.html
(weshalb ich meez' Punkt auch nicht ganz verstanden habe, dass mit Java keine 3D-Sachen möglich sind (oder habe ich meez da falsch verstanden?))

Wenn sich mit Java kein Geld verdienen lassen würde, würde die Sprache wohl kaum so eine Verbreitung haben, was ja irgendwie impliziert, dass es auch Produkte in dieser Sprache geben muss.
 

Illuvatar

Top Contributor
Meez meinte, man kann nicht direkt auf das Grafikzeugs, wie DX oder OGL zugreifen. Allerdings gibt es Wrapper dafür, die die Sache eben naturgemäß leicht verlangsamen. Bsp. Java3D für DX5 (oder 6?), JOGL für OGL etc.
Tutorial: www.java-forum.org/de/javabuch, sonst im Sticky Thread in der Tutorials Sektion schauen
 

0xdeadbeef

Top Contributor
Man kann mit Java natürlich schon flotte 3D-Spiele machen, wenn man eine native Anbindung an DirectX oder besser (im Sinne plattformübergreifender Entwicklung) OpenGL hat. Dadurch verliert man theoretisch die Plattformunabhänbgigkeit, in der Praxis ist OpenGL mit Java zumindest unter Win und Linux kein Thema - wa den Mac angeht, bin ich mir nicht so sicher. Gibt ja auch genügend Projekte, die beweisen, daß flottes 3D in Java kein Problem ist.

Allerdings muß klar sein, daß man bei einer teilweise interpretierten Sprache im Schnitt etwas Performance verliert. Dazu kommen die vergleichweise sehr langsamen Arrayzugriffe im Vergleich zu C++ und dergleichen, weil jeder Arrayzugriff auf Konsistenz überprüft wird. Last but not least kann unter Java jederzeit die Garbage Collection zuschlagen, was kurzzeitig die Performance des Spiels gegen 0 drückt (Ruckeln).

Hat natürlich alles seine zwei Seiten: durch das Speicherkonzept kann man (beinahe) keine Speicherlecks mehr programmieren und dank der Überwachung der Arrayzugriffe werden schwer zu findende Bugs vermieden.
 

Soulfly

Bekanntes Mitglied
Also wenn man sich das neue JSR-231 ansieht. Das ist die nächste Generation von JOGL. Die ist absolut leistungsfähig und räumt bald in Verbindung mit Mustang (Java 1.6) so richtig auf.

Man kann sagen, dass Java mit Jogl etwa 80-95% der Leistung nativ compilierter OpenGL-Programe hat.

Fazit: Alles ist möglich!
 

byte

Top Contributor
Soulfly hat gesagt.:
Man kann sagen, dass Java mit Jogl etwa 80-95% der Leistung nativ compilierter OpenGL-Programe hat.

In Anbetracht der Tatsache, dass selbst viele native 3D Engines auf aktuellen Rechnern ruckeln, ist das ernüchternd. Aber sicherlich ein Weg in die richtige Richtung.
 

meez

Top Contributor
Soulfly hat gesagt.:
Also wenn man sich das neue JSR-231 ansieht. Das ist die nächste Generation von JOGL. Die ist absolut leistungsfähig und räumt bald in Verbindung mit Mustang (Java 1.6) so richtig auf.

Man kann sagen, dass Java mit Jogl etwa 80-95% der Leistung nativ compilierter OpenGL-Programe hat.

Glaub ich nicht :!:

Zudem find ich's irgendwie Schwachsinnig eine Software wie Jogl zu benutzen...Da schreib ich grad lieber meine ganze App. in einer nativen Sprache, mit der sie dann auch anständig läuft...Zudem gibts halt für andere Sprachen bedeutend mehr gescheite und optimierte Libs...
JAVA ist nicht für 3D Andwendungen entwickelt/designed worden...Und schon gar nicht, um es mit irgendwelchen Krücken a la Jogl zu werden...
Es braucht halt einfach Zeit, um über vierundreissig Umwege auf DX oder GL zuzugreifen!

Was den JSR-231 angeht, das ist einfach ne Spezifikation, und sagt noch gar nichts über die Performance aus...

Die einzige Möglichkeit wäre, die native Anbindung direkt ins JRE zu integrieren , aber das ist zu unflexibel für mich als Anwender/Entwickler (bei so hoch optimierter Software)...Wenn ich ne andere Version (auch Patch Version) der Lib brauche, muss ich zuerst warten bis ein neues JRE rauskommt, und dann auch noch das ganze neue JRE mit meiner App. mitdeployen, um sicher zu sein, dass das Zeugs auch da ist...
 

Soulfly

Bekanntes Mitglied
Klar ist JSR-231 eine Spezifikation! Und?
Trotzdem kannst du hier nicht sagen: " nö da programmier ich lieber nativ!"
Warum programmierst du denn Java, wenn du sowieso so engstirnig denkst?

Kennst du Jogl überhaupt? Wie es funktioniert und so weiter, ich denke nicht!
Es läuft über NIO auf den nativen Treibern und das ist eben der Flaschenhals, der eben einen Overhead produziert und
die Programme leicht verlangsamt, das wird SUN früher oder später auf jeden Fall noch tweaken.

Mach dich erstmal schlau und ich denke du wirst erstaunt sein was man damit alles machen kann.
OpenGL in Applets ist sogar auch möglich, das mit netter Performance seit den JSR-231 builds.
Am Beispiel von Jake2 sieht man es deutlich und da wird noch mit dem alten Jogl gebencht.
Der knüller ist aber, es läuft überall. Und das ist der Grund warum man Java programmiert.
Es soll überall laufen. Und wenn Jogl nicht gut sein soll, dann frage ich mich warum Sun sich dafür engagiert
und auch noch Personal darauf ansetzt.

Auf Jeden Fall ein herzlich willkommen an den Author dieses Threads in der Java-Welt in der die portabiltät
die größere Rolle spiele als die Performance. (Wobei Java immer schneller wird natürlich!)


MfG
Soulfly

PS: Jogl ist keine Software, sondern eine Schnittstellen-API *RÄUSPER*
 

MPW

Top Contributor
Also um Java mal von einer anderen Seite vorzustellen:

Java ist die meistgenutzte Programmiersprache der Welt!

Eine Seite die du an Java vllt. auch noch nicht kennst, sind Handyspiele, die MicroEdition von Java laeuft heute praktisch auf jedem neuen Handy.(Man kann natuerlich auch sinnvolle Anwendungen, nicht nur Spiele damit programmieren.)

Zu Java und Spiele:

Also ich hab schon einige recht gut Java3D Spiele gesehen. Ich meine um sowas wie GTA San Andreas zu proggen...da sitzten selbst Profis ewig dran, so 100 Leute 2 Jahre oder so, das kann man alleine eh nie schaffen.

Aber es gibt ganz nette, sehr fluessig laufende Java 3D Games, Paradroiz ist z.B. eines.
Der Vorteil von Javaspielen ist auch, dass es gleich auf mehreren Plattformen verfuegbar ist.

Was genau willst du machen, willst du ein konkretes Spiel realisieren, oder nur mal so ein paar kleine Spiele machen?
 

meez

Top Contributor
Soulfly hat gesagt.:
Klar ist JSR-231 eine Spezifikation! Und?
Ich sag nur, dass das nichts über die Performance aussagt, da du ja meintest, dass damit (und 1.6) 80-95% nativer Apps. erreicht werden kann...
Soulfly hat gesagt.:
Trotzdem kannst du hier nicht sagen: " nö da programmier ich lieber nativ!"
Warum programmierst du denn Java, wenn du sowieso so engstirnig denkst?
Mach ich auch, sollte ich mich irgendwann der 3D Welt hingeben, weil da Java als Managed Language einfach nicht wirklich tauglich ist...
Das heisst aber nicht, dass Java nicht für die meisten Spiele tauglich ist...Es geht hier um Anwendungen die am Limit laufen...
Soulfly hat gesagt.:
Kennst du Jogl überhaupt?
Jogl ist keine Software, sondern eine Schnittstellen-API *RÄUSPER*
1. Ne noch nie gehört,
2. Klar ist es nur ein Schnittstellen-API, die auf GL Treiber aufsetzt, trotzdem wird die Implementation halt nativ gemacht...Das ganze definiere ich als Software :!:
Soulfly hat gesagt.:
Mach dich erstmal schlau und ich denke du wirst erstaunt sein was man damit alles machen kann.
Es ist nicht das Problem was man damit machen kann, sondern ob es sinnvoll ist...
Soulfly hat gesagt.:
Der knüller ist aber, es läuft überall. Und das ist der Grund warum man Java programmiert.
Sofern ein OpenGL Treiber in genau der erforderlichen Version verfügbar ist. (Es gibt bessere Gründe für Java als Plattformunabhängigkeit)
Soulfly hat gesagt.:
Es soll überall laufen. Und wenn Jogl nicht gut sein soll, dann frage ich mich warum Sun sich dafür engagiert
und auch noch Personal darauf ansetzt.
Nur weil Sun was macht oder toll findet, muss das nicht automatisch auch gut sein...
Soulfly hat gesagt.:
Auf Jeden Fall ein herzlich willkommen an den Author dieses Threads in der Java-Welt in der die portabiltät
die größere Rolle spiele als die Performance. (Wobei Java immer schneller wird natürlich!)
Nicht in jedem Fall, wie oben schon beschrieben, sondern eher die Eigenschaften einer Managed Sprache, die Java heutzutage ausmachen, da die Zeit der Killerapplets definitiv vorbei ist...
 

MPW

Top Contributor
meez hat gesagt.:
Soulfly hat gesagt.:
Kennst du Jogl überhaupt?
Jogl ist keine Software, sondern eine Schnittstellen-API *RÄUSPER*
1. Ne noch nie gehört,
2. Klar ist es nur ein Schnittstellen-API, die auf GL Treiber aufsetzt, trotzdem wird die Implementation halt nativ gemacht...Das ganze definiere ich als Software :!:

Zeit irgendwie, dass du keine Ahnung hast.....also wuerde ich mich ein bisschen zurueckhalten;-)

Java ist einfach noch nicht so alt wie C++, Java kann heute dass, was mit C++ vor 3 - 5 Jahren moeglich war. Und es gibt Einschaetzungen, dass Java C++ ueberholen wird, wenn der Fortschritt weiter so rasant laeuft.
 

AlArenal

Top Contributor
Abgesehen davon muss ein Game nicht immer die allerdollsten allerneusten 3D-Features irgendwelcher Karten und Dualo Cores und solche Scherze völligst ausreizen, um toll zu sein.

Hab mir Anfang des Jahres Darwinia gekauft und das Game ist sowas von cool und kultig, auch ohne SLI & Co, ähnliches gilt z.B. auch für Star Wolves. Eine gute Spielidee angemessen umgesetzt ist deutlich mehr Wert als Games, für die man alle 6 Monate die Karre aufrüsten muss...

Von daher ist es nicht zu weit hergeholt, dass Java zukünfitg auch vermehrt im Bereich 3D und Games eingesetzt werden könnte. Ich habe schon zu Zeiten gezockt, als es für unmöglich gehalten wurde, ordentliche Games in C++ zu coden, weil das ja viel mehr Speicher und Speed frisst, als wenn man schön von Hand seinen Assembler- und C-Code strickt...

Gerade im Entertainment-Bereich ist Zeit nunmal Geld und wenn sich herausstellt, dass in Java die Enticklungszeit verkürzt werden kann..

Ich bin jedes Mal aufs Neue entzückt, wenn ich Civilization 4 starte und im Splash-Screen sowas wie "Initializing Python" steht. Und in der kann man Civ 4 in Python modifizieren und erweitern. In Java 7 wird wohl Groovy mit an Bord sein.. Vielleich tsteht dann bei Civ 6 "Initializing Groovy"?

Aber nur sooo...
 

meez

Top Contributor
MPW hat gesagt.:
Zeit irgendwie, dass du keine Ahnung hast.....also wuerde ich mich ein bisschen zurueckhalten;-)
:?:

Ist die GL Implementation nicht nativ? Hallo?..Hab ich was nicht mitbekommen?
GL Implementationen werden meist als Teile der GK Treiber auf die Kisten gebracht...
Spezifikation + Implementation = SW


Nochmal :?: :bahnhof:
 

Soulfly

Bekanntes Mitglied
Wenn du das so definierst, dann verrate mir doch mal, wie es bei C/C++ oder Delphi funktioniert.
Ungefähr auf die gleiche Weise.
Es gibt also eine dll, auf die mit einer in C geschriebenen "API" Bibliothek auf die
die verfügbaren OpenGl-Funktionen zugegriffen wird. Also auch wieder ein Schnittstelle, die aber im Laufe Zeit
ziemlich eingerostet ist.

Und ja OpenGL wird mit den Treibern geliefert. (Also die Dll)
Diese DLL beinhaltet native Assembleranweisungen, die mit der Hardware kommunizieren und
die Mikroprogramme auf dem Grafikchip ansprechen.

Auf diese greift Jogl auch zu um OpenGl zu nutzen!
Und wenn man sich das alles von weitem anschaut. In C: veraltete Schnittstelle die statisch bleibt.
In Java hingegen haben wir eine Schnittstelle, die gerade neu in Entwicklung ist und jetzt schon fast an
die C-Version rankommt. Sie hat gute Chancen gleichwertig zu werden oder besser. Wie gesagt, der Overhead entsteht noch wenn man auf DLL Bibliotheken zuzugreifen will. Daran wird aber gearbeitet :)

Spezifikation + Implementation = SW

Aha? Du vergisst, dass SW auch lauffähig sein muss! Ein Spezifikation + Implementation ist eigentlich alles, je nach Spezi halt. Du kannst ja auch eine Klasse spezifizieren und dann implementieren! Diese kann man benutzen.
Viele Klassen davon nennen sich Bibliothek, die von Software benutzt werden kann.
Software ist es, wenn es die Spezifikation auch sagt und das Implementierte "allein" startfähig ist.

MfG
Soulfly
 

meez

Top Contributor
Naja, man kann übers Wording von SW streiten...Gibt wohl bessere Ausdrucksweisen...Wenn die Bibliothek lieber ist...Oder um korrekt zu sein eine Software-Bibliothek...Aber es geht hier auch nicht ums Wording...
Es geht mehr darum, aus einem abstrahierten Interpreter auf native Bibliotheken zuzgreifen, die NICHT mit dem Interpreter zusammen ausgeliefert werden...Dies zerstört einer der Vorteile von Java, nämlich sicher zu sein, dass das Zeug, dass ich entwickelt habe auch funktioniert, da ich sicher bin, dass sie im Interpreter vorhanden sind...
 

Soulfly

Bekanntes Mitglied
Tja soweit is Jogl auch schon Mac, Linux mit MesaGL oder TreiberGL von Nvidia oder Ati, Windows mit Treibern und alles softwaremäßige Beschleunigung oder Hardwaremäßige Beschleunigung, wie es gerade möglich ist.
Für alle fälle ist gesorgt!
Und sag du mir nicht, dass du noch nie eine dir fremde Schnittstelle benutzt hast, die noch nicht "im" Interpreter integriert worden ist.
Gibt viele davon!


MfG
Soulfly
 

byte

Top Contributor
Soulfly hat gesagt.:
Auf diese greift Jogl auch zu um OpenGl zu nutzen!
Und wenn man sich das alles von weitem anschaut. In C: veraltete Schnittstelle die statisch bleibt.
In Java hingegen haben wir eine Schnittstelle, die gerade neu in Entwicklung ist und jetzt schon fast an
die C-Version rankommt. Sie hat gute Chancen gleichwertig zu werden oder besser.

Hä? Native Windows Spiele nutzen DirectX als Grafikschnittstelle und die würde ich nicht als veraltet bezeichnen. Im Gegenteil: Direct3D hat OpenGL vor langer Zeit überholt. Ich sage das nicht, weil ich Microsoft Fan bin, sondern weil es einfach Fakt ist. Bin sicherlich der letzte der sich ärgern würde, wenn wieder mehr Spiele OpenGL nutzen würden (wie früher). Aber zur Zeit haben native Windows Spiele halt die Nase vorn. Und selbst wenn Jogl und Co. an die gleiche Leistung kommen würden: Es müsste schon deutliche Vorteile bieten, bevor die Industrie die Plattform wechselt. Denn mal im Ernst: Was bringt mit bitte schön Plattformunabhängigkeit bei einem Computerspiel, wo das Zielpublikum eh Windows besitzt?

Und das Civ4 Beispiel mag löblich sein. Jedoch kann mans auch als Schuss ins eigene Bein verstehen, denn erstens läuft das Spiel auf nicht aktuellen Rechnern miserabel langsam und hat zweitens tausend Bugs (zumindest in den ersten Versionen nach Release). Ich will das nicht auf Python abwälzen, aber wenn schon ein Beispiel alternativer Programmierkunst bei Computerspielen, dann auch bitte ein funktionierendes.

PS: Civ ist natürlich trotzdem ein geniales Game, das steht ausser Frage! Nur ein Wunder an Programmierfertigkeit war keiner der Teile von Sid Meier. :roll:
 

Illuvatar

Top Contributor
Wo wir doch schon offtopic sind: Ich hab mal gehört, dass OpenGL auf Vista nicht mehr funktionieren wird. Ist das immernoch der aktuelle Stand?
 

byte

Top Contributor
Inkompatibilität von Aero-Glass und OpenGL
Der ursprüngliche OpenGL-1.1-Software-Emulator-Treiber von Windows XP wird in Vista durch einen OpenGL-1.4-D3D-Translater mit Hardware-Beschleunigung ersetzt. Die volle OpenGL-Leistung lässt sich weiterhin nur mit dem zur Grafikkarte gehörenden OpenGL-Treiber erreichen. Sofern allerdings dieser Treiber aktiv ist wird der Aero-Glass-Modus deaktiviert. Dies gilt allerdings nur für die gleichzeitige Darstellung von DirectX und OpenGL, also bei der Darstellung der OpenGL-Anwendung im Fenster, wie das etwa bei CAD-Arbeiten üblich ist, Vollbildanwendungen, die den OpenGL-Treiber des Grafikkartenherstellers verwenden, sollen auch von einem Aero-Glass-Desktop gestartet und in vollem Umfang genutzt werden können. Für professionelle Arbeiten mit CAD-Systemen ist dies dennoch hinderlich.

Kritiker sehen darin eine Strategie Microsofts, OpenGL zugunsten von DirectX zurückzudrängen, um konkurrierende Betriebssysteme zu benachteiligen.
 
B

bygones

Gast
denke das passt besser von Thema her in die Allgemeine Programmieren...

*verschoben*
 

MPW

Top Contributor
AlArenal hat gesagt.:
Gerade im Entertainment-Bereich ist Zeit nunmal Geld und wenn sich herausstellt, dass in Java die Enticklungszeit verkürzt werden kann..

Was meiner Meinung nach viel interessanter sein duerfte, ist dass die games alle auch unter Linux und Mac liefen.(Und natuerlich noch so sachen wie Solaris, die aber eh keiner benutzt...)
 

AlArenal

Top Contributor
byto hat gesagt.:
PS: Civ ist natürlich trotzdem ein geniales Game, das steht ausser Frage! Nur ein Wunder an Programmierfertigkeit war keiner der Teile von Sid Meier. :roll:

Das waren Programme aus dem Hause Microsoft auch nie.. allerdings muss ich zugeben von beiden die Sourcen nie gesehen zu haben. Du? ;)

Und was das ewige Gelaber angeht OpenGL wäre ja sooo weit hinter DirectX zurück: Wieso gibts die Engine von ID eigentlich immer auch in einem Linux-Port? Oder kann die Quake-Engine nichts? Natürlich kann man nun wieder kommen, ein Spiel nehmen dass letzte Woche ershcien und ankommen mit "Das kann nun hyper-texture-antialiased-supersampled Quadrupel-Buffering und OpenGL kann das nicht!" - Super! Und? ;)
 

Soulfly

Bekanntes Mitglied
hyper-texture-antialiased-supersampled Quadrupel-Buffering und OpenGL kann das nicht!" - Super! Und?

Um das aufzugreifen! Vor allem welche GRafikkarte kann das wirklich gut darstellen (wenn es das irgendwann geben sollte :) )? Workstationgrafikkarten von Disney vielleicht?

ID-Engines sind die genialsten dinger die ich kenne und ich weiß nicht was daran schlechter sein soll. Naja!

Ich für meinen Teil freue mich, wenn ich wirklich ein Spiel vor mir habe, das eine gute story hat und vielleicht auch noch gut aussieht. Wenn mehr wert auf Story gelegt werden würde, würde es diese Diskussion z.B. auch nicht geben.

MfG
Soulfly
 

AlArenal

Top Contributor
Für mich ist es ne Krankheit und ich nenne sie "Featureitis". Sie äußert sich darin, dass man versucht ein Produkt als "besser" darzustellen, indem man Unmengen neuer Features einbaut, die teils noch eigens erfunden und als solche deklariert werden, ohne einen wirklichen zusätzlichen Nutzen zu bringen.
 

SamHotte

Top Contributor
.. und oft wird darüber vergessen, erstmal die Bugs aus dem bestehenden Programm zu entfernen (siehe M$ Office) *zustimm*
 

RicoSoft

Aktives Mitglied
there are no bugs, only features :p

die kunst besteht darin, die bugs als features zu verkaufen, m$ versteht sich sehr gut darin :)
 
S

stev.glasow

Gast
Sagte der Windows Nutzer ;)
Ist aber doch oft so. Deswegen gibts ja Werbung und so kram. Wir Blender schauen doch auf sowas.
Mal nen anders Beispiel: Denk mir so, kaufst dir mal nen schickes Sturmfeuerzeug hier an der Küste ist's ja doch ziehmlich windig. Guck mir die Feuerzeuge so an, seh eins mit ner geilen Frau drauf und so 'nem "Gastrahler". Denke mir das Ding is cool das nehm ich. 3 Tage später ist das Gas fast leer und auffüllen geht auch nur immer nen bisschen. Dann 2 Tage später löst sich der Deckel und nochmals paar Tage später geht gar nix mehr und bei mehrmaligem Hinsehen ist die Olle doch gar nicht so toll.
Und die Moral von der Geschicht - wir doofen Blender kaufen öfter Piss :roll:

Offtopic sind wir irgendwie gar nicht
 

byte

Top Contributor
Die meisten Spieleentwickler nutzen halt DirectX anstatt OGL, weil Plattformunabhängigkeit bei Spielen für sie kein driftiges Argument ist. DirectX ist halt ein hübsches Delevopment Kit für für die Spieleentwicklung, weil man nicht nur 2D/3D Grafikelemente erzeugen kann sondern auch noch drum und dran wie Sound, Musik etc. OGL hingegen bietet nur 2D/3D zur Entwicklung der Grafikengine.

ID Software ist natürlich ein schönes Beispiel, dass OGL auch was kann. Aber im Gegensatz zu den meisten anderen Spieleentwicklern will ID nicht einfach nur ein Spiel (Doom, Quake) verkaufen, sondern es geht ihnen darum, eine Engine zu vermarkten. Dass sie dann natürlich andere Ansprüche an die API stellen (wie Plattformunabhängigkeit), ist nur natürlich. Trotzdem sind sie (leider) nicht repräsentativ für die gesamte Spieleindustrie.

Und nochmal wegen Civ: In manchen Versionen, gerade in Civ4, waren nach Release so essentielle Bugs drin, das kannst Du nicht mit irgendwelchen Microsoft Produkten vergleichen. Sorry, aber wenn ich mir ein Spiel kaufe, und das Game abkackt, nachdem ich ein vorher gespeichertes Spiel laden möchte oder wo ich mir erst einen Microsoft XML Parser aus dem Netz saugen muss, damit ich das Spiel überhaupt erst spielen kann... da brauche ich mir nicht den Code der Software angucken, um beurteilen zu können, dass im Entwicklungsprozess wohl etwas schiefgelaufen ist.

Desweiteren laufen eigentlich alle Microsoft Produkte bei mir zufriedenstellend. WinXP läuft seit 2.5 Jahren ohne Neuinstallation wie geschmiert und die Office Produkte machen (bei mir) das, wozu sie programmiert wurden. Trotzdem gibt es andere Programme, die das besser umsetzen. Aber offensichtliche Bugs muss ich schon mit der Lupe suchen.
 

AlArenal

Top Contributor
byto hat gesagt.:
Die meisten Spieleentwickler nutzen halt DirectX anstatt OGL, weil Plattformunabhängigkeit bei Spielen für sie kein driftiges Argument ist. DirectX ist halt ein hübsches Delevopment Kit für für die Spieleentwicklung, weil man nicht nur 2D/3D Grafikelemente erzeugen kann sondern auch noch drum und dran wie Sound, Musik etc. OGL hingegen bietet nur 2D/3D zur Entwicklung der Grafikengine.

ID Software ist natürlich ein schönes Beispiel, dass OGL auch was kann. Aber im Gegensatz zu den meisten anderen Spieleentwicklern will ID nicht einfach nur ein Spiel (Doom, Quake) verkaufen, sondern es geht ihnen darum, eine Engine zu vermarkten. Dass sie dann natürlich andere Ansprüche an die API stellen (wie Plattformunabhängigkeit), ist nur natürlich. Trotzdem sind sie (leider) nicht repräsentativ für die gesamte Spieleindustrie.

Ist doch Schmarrn. Du kannst doch nicht erst sagen, dass Plattformabhängigkeit bei Spielen relativ irrelevant ist und dann sagen, dass es das für ne 3D-Engine doch relavant ist. Wo wird die Quake-Engine denn eingesetzt, wenn nicht in 3D-Spielen? Was soll ich denn ne plattformunabhängige Engine entwickeln für plattformabhängige Games? *amkopfkratz*
Die UT-Enginge gibts übrigens auch als Linux-Port....

ID, um bei dem Beispiel zu bleiben, portiert schon seit Ewigkeiten die Engine, gibt Sourcecode raus, usw. Das ist mehr ne ideologische Geschichte von John Carmack und nichts, womit sie noch dolle Kohle machen. Wenn DirectX doch soo viel doller ist, wäre das durch für die Jungs eher ein Argument auch DirectX zu nutzen, um ihre Engine noch viel doller zu machen und damit noch mehr Game-Coder als Kunden zu gewinnen.

Den Aufwand für Sound kannste übrigens vernachlässigen. Keine Game-Schmiede fällt die strategische Pro-DirectX-Entscheidung auf der Basis dessen, dass man damit auch Töne machen kann... Das kannste einfach abstrahieren, so dass in der Win-Version die AUsgabe über DX läuft, auf Linux über ALSA, auf Mac wieder anders. Da gibts nicht die großen Unterschiede. Lenken, Gas geben und bremsen ist auch bei allen Autos gleich...
 

byte

Top Contributor
Es war eine Vermutung meinerseits, aber ich lasse mich gerne von Dir aufklären, wenn das alles so ein Schmarrn ist. Erklär Du mir doch einfach, warum DirectX wesentlich mehr eingesetzt wird als OpenGL. Dazu hast Du Dich nämlich bisher nicht geäußert.

ID, um bei dem Beispiel zu bleiben, portiert schon seit Ewigkeiten die Engine, gibt Sourcecode raus, usw. Das ist mehr ne ideologische Geschichte von John Carmack und nichts, womit sie noch dolle Kohle machen.

Das ist so nicht ganz richtig. Der Sourcecode war lange Zeit nicht frei verfügbar, sondern wurde erst kürzlich unter GNU Lizenz gesetzt, und das betrifft auch nur die mittlerweile alte Q3 Engine. Bevor Du wieder sagst, dass das Schmarrn ist, habe ich extra für Dich den Link rausgesucht: http://www.idsoftware.com/business/technology/

Wenn DirectX doch soo viel doller ist, wäre das durch für die Jungs eher ein Argument auch DirectX zu nutzen, um ihre Engine noch viel doller zu machen und damit noch mehr Game-Coder als Kunden zu gewinnen.

Habe ich nirgends so behauptet, dass DX > OGL ist. Hättest Du etwas nachgedacht, hätte Dir auffallen müssen, dass ich es selbst bedauere, dass DX so weit verbreitet ist.

Den Aufwand für Sound kannste übrigens vernachlässigen. Keine Game-Schmiede fällt die strategische Pro-DirectX-Entscheidung auf der Basis dessen, dass man damit auch Töne machen kann...

Da hast Du wohl recht. Die Entscheidung eines Unternehmens ist eine einfache Kosten/ Nutzen Rechnung. Mit welchen Mitteln lassen sich die Ziele bestmöglich und kostengünstig erreichen. Und da DX9 quasi ein einfacher All-Around Baukasten für Computerspiele ist, zieht OGL wohl den kürzeren. Aber wie gesagt: Das ist eine Vermutung meinerseits! Ich sags lieber, bevor Du mir wieder unterstellst, ein DX Fanboi zu sein... :bae:
 

AlArenal

Top Contributor
byto hat gesagt.:
ID, um bei dem Beispiel zu bleiben, portiert schon seit Ewigkeiten die Engine, gibt Sourcecode raus, usw. Das ist mehr ne ideologische Geschichte von John Carmack und nichts, womit sie noch dolle Kohle machen.

Das ist so nicht ganz richtig. Der Sourcecode war lange Zeit nicht frei verfügbar, sondern wurde erst kürzlich unter GNU Lizenz gesetzt, und das betrifft auch nur die mittlerweile alte Q3 Engine. Bevor Du wieder sagst, dass das Schmarrn ist, habe ich extra für Dich den Link rausgesucht: http://www.idsoftware.com/business/technology/

Ich sprach von "der Quake-Engine", nicht speziell von der aktuellsten Version. Schau mal hier:

Wikipedia hat gesagt.:
id Software veröffentlicht einige Jahre nach dem Release üblicherweise den Quellcode der Quake-Spiele unter der GNU GPL. So wurde der Quellcode von Quake I am 21. Dezember 1999, von Quake II am 22. Dezember 2001 und von Quake III Arena am 19. August 2005 freigegeben.

Siehe: http://de.wikipedia.org/wiki/Quake-Engine
Und: http://www.idsoftware.com/business/techdownloads/
 

byte

Top Contributor
Bevor wir uns im Kreis drehen: ist ne super Sache von ID Software. Aber trotzdem werden die Engines erstmal vermarktet. Q3 ist Ende 1999 erschienen, Ende 2005 kam die GNU Lizenz. Sechs Jahre lang wurde die Engine vermarktet und zu Geld gemacht. Ähnlich lief es bei den älteren Engines. Es kamen eine Vielzahl Spiele mit aufgebohrten ID-Engines auf den Markt. ID verdient demnach ihr Geld nicht primär mit den eigenen Spielen, sondern mit ihren Engines. Es liegt daher auf der Hand, dass sie wesentlich mehr Interesse daran haben, dass ihre Engines flexibel und portabel sind, vergleichbar mit der Framework-Entwicklung.

Aber das ist imo nicht repräsentativ auf dem Spiele Markt. Wie machen es denn die meisten Entwickler? Sie entwickeln eine Engine für Spiel X und das wars. Oder sie kaufen die Engine fremd ein. Wenn sie gut drauf sind, verwenden sie ihre Engine für weitere Spiele im eigenen Haus weiter (siehe Electronic Arts).

Sowas beeinflusst die Wahl der im Entwicklungsprozess eingesetzten Technologien und Werkzeuge natürlich.
 

AlArenal

Top Contributor
Ich habe nie gesagt, dass das zeitnah geschieht, oder man John Carmack darum heilig sprechen soll. Ich habe lediglich erwähnt, dass ID bereits seit langem ihre Engines im Source verfügbar macht und das ist nunmal korrekt.

Und das Fass EA sollten wir gar nicht erst aufmachen. Auf den Sauhaufen bin ich sowas von stinkig......
 

AlArenal

Top Contributor
Und da es nichts gibt, das es nicht gibt:

Wikipedia hat gesagt.:
With the mainstream adoption of graphics acceleration hardware, the use of one API or another no longer implies the use of a specific optimized software renderer. Instead, the low-level rendering logic is implemented in the graphics hardware and its drivers, and thus is largely the same whether OpenGL or Direct3D is used. This trend has revealed that neither API possesses an inherent speed advantage over the other. The performance of an application depends instead on the programmer's skill, the quality of the drivers, and the performance of the graphics hardware.

Und was MS Vista angeht:

Wikipedia hat gesagt.:
Note that this functionality only truly matters for applications running in windowed mode. Full-screen applications, the way most people run games, will not be affected. Desktop compositing wouldn't affect them regardless, and the user won't notice that windows that the user can't see have had desktop compositing deactivated. However, the problem remains for running windowed OpenGL ICDs.

http://en.wikipedia.org/wiki/Direct3D_vs._OpenGL
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
G Umstieg Java/Oracle => C#/MSSQL Softwareentwicklung 13
ARadauer jetzt wirds zeit für Delphi Softwareentwicklung 6
G Umwandung von Vb auf Java Softwareentwicklung 1
von Spotz Kommunikation zwischen Java und Container Orchestrator (Microservices) Softwareentwicklung 11
S Microservices in Java Spring: Nebenläufigkeitsprobleme lösen Softwareentwicklung 6
temi Elementfunktionen vs. Nichtelementfunktionen in Java Softwareentwicklung 20
R Umsetzungen in Java vs. Umsetzungen auf Datenbankebene Softwareentwicklung 9
L Module Eclipse Java 9 Softwareentwicklung 12
R Software-Architekt (Schwerpunkt Java) Softwareentwicklung 9
S VB.NET / C# als Java-Entwickler? Softwareentwicklung 2
J Java Kentnisse vertiefen oder andere Programmiersprache probieren? Softwareentwicklung 8
U Java vs. anderen plattformunabhängige Programmiersprachen Softwareentwicklung 8
S JNI Java from C Softwareentwicklung 0
H [Java]Regex Hilfe Softwareentwicklung 3
D Teamspeak Java html app Softwareentwicklung 5
N UML Komponenten als Java-Klassen abbilden Softwareentwicklung 4
S Java Anfänger hat Probleme mit Scanner Softwareentwicklung 6
C Lohnt es sich noch ein neues Projekt in C++ anstatt Java zu realisieren? Softwareentwicklung 4
U Java oder welche Sprache? Softwareentwicklung 98
MrWhite Ist Java gar nicht sooo objektorientiert??! Softwareentwicklung 16
J Java Long-Werte in C++ auslesen Softwareentwicklung 4
K Mit "Java" html-Seite entscripten Softwareentwicklung 6
Airwolf89 Theoretische Frage - In Java Java-Programme schreiben Softwareentwicklung 5
G Mischsprache aus Java & C# Softwareentwicklung 23
H COBOL und Java Softwareentwicklung 17
H Java als Backend, Javascript als View Softwareentwicklung 3
D Sind EJB Komponenten auch mit Java Swing nutzbar? Softwareentwicklung 8
U Decorator Pattern in der Java API Softwareentwicklung 6
J Java Software nach C++ portieren Softwareentwicklung 6
C Unterschiede: C++ vs. C# vs. Java Softwareentwicklung 21
A Jira durch Java ansprechen Softwareentwicklung 18
M Immutable Objekte und funktionales Programmieren in Java oder Scala Softwareentwicklung 34
B [Web 2.0] Java vs PHP Softwareentwicklung 28
Raidri Flex mit Java Softwareentwicklung 2
L Java + WCF Softwareentwicklung 9
Airwolf89 Java-Programm in C++ portieren Softwareentwicklung 4
T Kapselung nich vollständig umgesetzt in Java? Softwareentwicklung 4
J Korpus mit Python einlesen - weiterbearbeiten mit Java Softwareentwicklung 4
N c# nach java Softwareentwicklung 14
K Suche freies UML Tool um aus .java dateien Diagramme zu. Softwareentwicklung 8
D Java in KLassen, schon vorhanden? Softwareentwicklung 3
B Was ist besser für Grafiken? Java oder C#? Softwareentwicklung 9
R Java Passwort verschlüsseln --> kompliziert! wirklich doo Softwareentwicklung 13
F vorteile php gegenüber java? Softwareentwicklung 46
M Umwandlung von String in java.sql.Date Softwareentwicklung 2
lolkind Iso Datein per Java über Windows XP brennen Softwareentwicklung 13
U [Diskussion] Java vs. C# Softwareentwicklung 208
E Java Programm distributen Softwareentwicklung 35
J Hardware zugriff mit java? Softwareentwicklung 4
N Für und Wieder von Java und .NET (primär C#) | Performance Softwareentwicklung 6
G java.lang.ArrayIndexOutOfBoundsException Softwareentwicklung 5
E Default Java unter Linux aendern? Softwareentwicklung 3
S arabische Buchstaben in java ?:L Softwareentwicklung 3
L Noch 'ne Perl-Frage. Kehre dann auch reumütig zu Java zurück Softwareentwicklung 10
G Serveranbindung mit java Softwareentwicklung 24
P Grafik-Programm mit JAVA? Softwareentwicklung 21
F Welche Sprache sieht ähnlich aus wie Java? Softwareentwicklung 7
T Suche A Star Java Beispielprogramm Softwareentwicklung 2
D C# zu Java - Übersetzer gesucht. Softwareentwicklung 3
F Windows Media Player in Java? Softwareentwicklung 11
C C code in java umschreiben Softwareentwicklung 9
O java und c# - die zweite. Softwareentwicklung 7
S Problem PJIRC java-applet Softwareentwicklung 4
U Geeignete Plattform für Projekt (JSP, PHP, Java-Anwendung) Softwareentwicklung 7
G C++ in JAVA verpacken Softwareentwicklung 2
D C# vs. java Softwareentwicklung 16
G Darstellung von Java-Projekten mit UML Softwareentwicklung 3
E Java & Performance Softwareentwicklung 9
T Brauche für meinen Java-Code dringend Hilfe Softwareentwicklung 4
B Wo bekommt man fertige Java-Programme (z.B. für Lsg LGS) Softwareentwicklung 3
W Herangehensweise an ein Java Programm Softwareentwicklung 4
B Programmierung eines 8051-Assemblers unter Java Softwareentwicklung 3
M Bidirektionale Assoziazion in Java realisieren? Softwareentwicklung 3
J Java <-> C# Softwareentwicklung 1
S c# schneller java - wieso ? Softwareentwicklung 12
D C++ und Java Softwareentwicklung 61

Ähnliche Java Themen

Neue Themen


Oben