Primitive Rendern- wie macht man?

Anfängerfragen zum Programmieren mit PureBasic.
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

wie gesagt, freak gehört zum entwickler-team.

Fred, der chefprogrammierer, schaut hier eher selten rein.

für feature-requests:
http://www.purebasic.fr/english/viewforum.php?f=3

wie gesagt, die umstellung auf DX9 als subsystem für die PB-Befehle ist im gange.

in wie weit DX9 als API ansprechbar ist/sein wird, kann ich nicht sagen, hab ich zu wenig ahnung davon...

aber da openGL komplett ansprechbar ist (mit einem kleinen Import),
sollte das eigentlich für DX auch nicht SO schwierig sein.

außerdem hatte Stefan schon ein DX9-Subsystem gecodet,
bevor mit der einbindung vorangeschritten wurde.
hatte ich doch schon verlinkt den thread.
Stefan weiß bestimmt auch mehr darüber, wie man das im speziellen ansprechen kann.

was die speziellere umsetzung betrifft, solltest du bedenken,
dass für Fred generell die cross-platform-kompatibilität im vordergrund steht.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
ReneMiner
Beiträge: 58
Registriert: 20.07.2007 14:54
Wohnort: zwischen Westerwald und Siegerland

Beitrag von ReneMiner »

Gut.

Ich hab natürlich nochmal reingeschaut in das kleine Progrämmchen und tatsächlich habe ich die Ursache für den Endlos-Lauf den es eigentlich nicht geben darf gefunden-
am Ende der Sektion "BewegeBälle" im if Ball()\Korrigieren > 40- Block hab ich eine Richtung vergessen und habs behoben inden ich bei im
Select Ball()\Einschlag
noch ein

Code: Alles auswählen

Default
if Ball()\Richtung < 340
Ball()\Richtung = Ball()\Richtung + 7 + Random(10)
else
Ball()\Richtung = Ball()\Richtung - 7 - Random(10)
endif
Ball()\Korrigieren = 20 ; halbe Zeit bis zur nächsten Korrektur
eingefügt hab. Damit wäre das eigentlich auch behoben - doch ich bin jetzt zu faul erst die Datei auf einem Datenträger von meinem Rechner auf diesen zu bringen und diese hochzuladen...

Dabei ist mir aber nochwas aufgefallen:

kann es sein das der "gewöhnliche" Basic-Ausdruck

A = A + 1

in pb einfach mit

A+1

erledigt wird- oder hab ich da was falsch interpretiert?

und
benutze EnableExplicit und Define, dann erscheinen deine Variablennamen im autocomplete.
außerdem werden so tippfehler vermieden, du kannst nicht aus versehen on-the-fly eine falschgeschriebene variable definieren.
Ich find keinen "EnableExplicit"-Schalter :cry: - auch nichts darüber in der Hilfe - soll ichs an den Anfang meines Programmes schreiben? -
und wäre

Global Define A.l
Global A.l

am Ende das Gleiche?
käme das untere überhaupt bei eingesetztem "EnableExplicit" in Frage?
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Beitrag von Kiffi »

ReneMiner hat geschrieben:kann es sein das der "gewöhnliche" Basic-Ausdruck

A = A + 1

in pb einfach mit

A+1

erledigt wird
Ja
ReneMiner hat geschrieben:Ich find keinen "EnableExplicit"-Schalter
es gibt keinen Schalter im eigentlichen Sinne. In der IDE (so wie in VB)
wirst Du das also vergeblich suchen. Einfach in die erste Zeile Deines
Codes 'EnableExplicit' reinschreiben und fertig ;-) (Macht VB übrigens auch
so).

Grüße ... Kiffi
a²+b²=mc²
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

> Ich find keinen "EnableExplicit"-Schalter - auch nichts darüber in der Hilfe

in der hilfe unter "Compiler Direktiven"

ich kann die benutzung von autocomplete nur empfehlen...
sollte das nicht defaultmäßig eingeschaltet sein?

du findest das im menu Datei unter Einstellungen oder so (Preferences) (ich benutz die englischen einstellungen)
und wäre
Global Define A.l
Global A.l
am Ende das Gleiche?
käme das untere überhaupt bei eingesetztem "EnableExplicit" in Frage?
nur das untere kommt in frage.

Global ist eine Art Define.
Define dient nur zum definieren, wenn eine Var nicht Global, Shared, Static oder Protected sein soll...
also für stinknormale lokale variablen, die man ohne Explicit einfach on-the-fly reinschleifen würde.
da letzteres aber unübersichtlich, fehleranfällig und uncool ist,
kann man EnableExplicit setzen.

übrigens tut das nichts weiter, als dafür zu sorgen, dass Variablen,
die nicht ausdrücklich definiert wurden, angemeckert werden.
benutzen kann man alle definitions-commandos auch ohne, nur verliert Define dann etwas an sinn.
A = A + 1
in pb einfach mit
A+1
erledigt wird-
erledigt werden kann. du kannst jederzeit "A = A + 1" schreiben, wenn du willst.
viele von uns bevorzugen die kurzschreibweise.
aber für komplexere zuweisungen braucht man dann doch das "="
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
ReneMiner
Beiträge: 58
Registriert: 20.07.2007 14:54
Wohnort: zwischen Westerwald und Siegerland

Beitrag von ReneMiner »

OK, soweit alles gut,

damit die Frage die über dem Thread steht auch eine Antwort bekommt und jemand der per Suchfunktion hier landet auch was findet:


http://www.purearea.net/pb/CodeArchiv/German.html#7

Herr Moebius hat mich glücklich gemacht
:mrgreen:
Benutzeravatar
PureBasic4.0
Beiträge: 785
Registriert: 29.10.2006 17:26
Wohnort: 127.0.0.1

Beitrag von PureBasic4.0 »

@ReneMiner: Wenn du nen guten Visuellen Editor mit DX 9.0c willst, nehm 3DGameStudio. Die meisten hier werden den nicht empfehlen, aber du kannst dir ja mal die kostenlose Version runterladen
PB 4.50 RC1 + Ubuntu 10.04 LTS + Windows 7 x64
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

nuja... über den Editor kann ich mich nicht beklagen, der ist durchaus ok.

aber der rest vom 3DGS ist streckenweise kacke.
auch die tatsache, dass die professional-version 800 steine kostet oder so.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Coder Pinhead
Beiträge: 234
Registriert: 27.02.2007 10:54
Wohnort: Germany

Beitrag von Coder Pinhead »

PureBasic4.0 hat geschrieben:@ReneMiner: Wenn du nen guten Visuellen Editor mit DX 9.0c willst, nehm 3DGameStudio. Die meisten hier werden den nicht empfehlen, aber du kannst dir ja mal die kostenlose Version runterladen
Jo der ist ganz nett hatte damals mit 3DGameStudio/A6 rumgebastelt gehabt 8)
Windows 8.1 x64 | PureBasic v5.x x86/x64

Sämtliche Syntax, Tipp und Rechtschreibfehler unterliegen dem Copyright des Verfassers.
ReneMiner
Beiträge: 58
Registriert: 20.07.2007 14:54
Wohnort: zwischen Westerwald und Siegerland

Beitrag von ReneMiner »

es scheint auch schon DirectX 9.0c für Purebasic zu geben, schau mal einer an- warum sagt Ihr mir das nicht?

http://www.purearea.net/pb/showcase/ind ... ort=1&sQ=0 -ziemlich weit unten...
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

> warum sagt Ihr mir das nicht?
Kaeru Gaman hat geschrieben:DX9 ist einbindbar mit einem dementsprechenden subsystem.
http://www.purebasic.fr/german/viewtopic.php?t=7623
Kaeru Gaman hat geschrieben:außerdem hatte Stefan schon ein DX9-Subsystem gecodet,
bevor mit der einbindung vorangeschritten wurde.
hatte ich doch schon verlinkt den thread.
Stefan weiß bestimmt auch mehr darüber, wie man das im speziellen ansprechen kann.
...wer lesen kann, ist klar im vorteil... ;)
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Antworten