Deutsch
Stammtisch & Café

XProfan 10 - Letzte Änderungen

 

RGH
XProfan 10 nähert sich langsam aber sicher der Release-Version. Die nächste Subscriptionslieferung wird also Version RC1 (ReleaseCandidat 1) sein.

Folgende Syntaxänderungen im OpenGL-Bereich habe ich noch eingebaut:

Die OGL-Funktionen Bitmapfont und Outlinefont erhalten einen weiteren Parameter, nämlich das Handle eines mit Create(Font,...) erzeugten Fonts. Die bisherige Lösung mit UseFont hatte den Nachteil, daß sie natürlich nur funktionierte, wenn das OpenGL-Fenster das Hauptfenster des Programmes war. So schauts jetzt aus:

FontNr% = oGL(BitmapFont, hFont&)
FontNr% = oGL(OutlineFont, hFont&, mode!)

Ihr müßt also alle Programme, die Fonts verwenden, entsprechend anpassen. Ich denke aber, besser jetzt vor dem Release noch eine Syntaxänderung, als später der Kompatiblität wegen eine Krücke!

Gruß
Roland
 
Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4
10.08.2006  
 




Frank
Abbing
Richtig. Damit muss man bei einer Betaversion doch immer rechnen und das ist ja auch in Ordnung so.
 
10.08.2006  
 




Jac
de
Lad
Hallo Roland,

ich weiß, dass du jetzt nicht mehr viel integrieren willst, aber hier noch ein schneller Vorschlag:

Kannste bitte eine Funktion InstrCount(sub$,string$) oder so einbauen, die die Anzahl von sub$ in string$ angibt? Das wär klasse!

Jac
 
Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE)
Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP
15.08.2006  
 




RGH
[quote:e847f7c82b=Jacob Liebeck]Hallo Roland,

ich weiß, dass du jetzt nicht mehr viel integrieren willst, aber hier noch ein schneller Vorschlag:

Kannste bitte eine Funktion InstrCount(sub$,string$) oder so einbauen, die die Anzahl von sub$ in string$ angibt? Das wär klasse!

Jac [/quote:e847f7c82b]
Hallo,
das geht doch schon seit ein paar Subscriptionsversionen mit der erweiterten len-Funktion:
anz% = len(string$, del$)
del$ ist der Delimiter zwischen den Substrings.
Und wenn Du wissen willst, wie oft del$ in string$ vorkommt, ziehst Du einfach 1 vom Ergebnis ab.
Da del$ auch mehrere Zeichen groß sein kann, kann man auf diese Weise mit der erweiterten len-Funktion exakt das ermitteln, was du wissen möchtest.

Gruß
Roland

Nachtrag: Bei der Gelegenheit habe ich noch einen kleinen Bug in RC1 entdeckt: Wenn string$ mit del$ aufhört, ist das Ergebnis um 1 zu niedrig. (Auch der Leerstring zwischen dem letzten del$ und dem Stringende ist ein gültiger Substring.) In RC2 wird dieser Bug behoben sein.
 
Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4
15.08.2006  
 




Jac
de
Lad
Ach verdammt, ich hab schon wieder was nicht mitgekriegt... Asche auf mein Haupt!!!!

Jac
 
Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE)
Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP
15.08.2006  
 



[quote:cd9c27c713=Jacob Liebeck]Ach verdammt, ich hab schon wieder was nicht mitgekriegt... Asche auf mein Haupt!!!!

Jac [/quote:cd9c27c713]
Deshalb dieser Thread hier.  [...] 
 
15.08.2006  
 




Jac
de
Lad
Ja, du hast recht...

Noch was anderes: Wie wärs, wenn der Compiler bei einer Header-Definition, die in dern eventuell angegebenen Header-Dateien nicht vorhanden ist einfach in einem selbst definierten Header-Verzeichnis nach der Definition sucht? Damit würde man sich das $H sparen und müsste nicht immer dran denken, welche Header nun eingebaut werden müssen und welche nicht...?

Jac
 
Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE)
Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP
16.08.2006  
 




RGH
Noch eine kleine Syntaxänderung bei OpenGL ab RC2:

Aus XPGLTyp wird XPGLObjType. XPGType kommt hinzu:

t$ = oGL(XPGLObjType, n&)
ermittelt den Objekttyp der XPGL-Daten mit der Nummer n&. Mögliche Ergebniswerte: P, L, LS, LL, T, TS, TF, Q, QS, PY

t$ = oGL(XPGLType, n&)
ermittelt die Art der Werte der XPGL-Daten mit der Nummer n&. Das Ergebnis ist ein String, der maximal aus den vier Buchstaben V, T, C und N besteht. Ein V für Vertexwerte ist immer vorhanden, ein T steht für Texturwerte, ein C für Farbwerte und ein N für Normalwerte.

Gruß
Roalnd
 
Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4
20.08.2006  
 




Jac
de
Lad
Hallo Roland!

Das ist mir schon bei PType$() aufgefallen: Ich finss ungünstig, für solche Befehle als Rückgabewert einen String zu verwenden, weil das Vergleichen undgleich aufwändiger ist, als bei einem Integer. Meiner Meinung nach wärs besser, wenn die Funktionen PType$() und XPGLObjType ein Integer zurückgeben würden; der Programmierer weiß dann aus der Hilfe, was die Werte bedeuten.

Jac
 
Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE)
Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP
20.08.2006  
 




Jac
de
Lad
Hallo Roland!

Ich weiß, du willst nicht mehr viel ändern, aber eine klitzekleine Idee hab ich noch:

Wäre es möglich, dass der Compiler selber erkennt, dass bei DLL-Aufrufen die Adresse eines Strings angegeben werden muss, also dass er das selber umsetzt? Das wäre eine große Erleichterung, da ca. 50% meiner Programmabstürze in der Testphase auf vergessenem Addr() ruhen. Da müsste man nur noch daruaf achten kein p$+q$ oder s anzugeben.

Jac
 
Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE)
Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP
20.08.2006  
 




Frank
Abbing
[quote:5b2f454c64]Wäre es möglich, dass der Compiler selber erkennt, dass bei DLL-Aufrufen die Adresse eines Strings angegeben werden muss, also dass er das selber umsetzt? Das wäre eine große Erleichterung,[/quote:5b2f454c64]
Ab XProfan kann bei APIs direkt ein Literal angegeben werden. So z.B.:
KompilierenMarkierenSeparieren
apiAppendMenu(handle&, 0, 100, "Hier ein Text")
 
20.08.2006  
 




Sebastian
König
[quote:b0d1d2239f]Wäre es möglich, dass der Compiler selber erkennt, dass bei DLL-Aufrufen die Adresse eines Strings angegeben werden muss, also dass er das selber umsetzt? Das wäre eine große Erleichterung, da ca. 50% meiner Programmabstürze in der Testphase auf vergessenem Addr() ruhen.[/quote:b0d1d2239f]
Hallo Jac,

diesen Fehler kannst Du durch einen kurzen Check mit dem ProfanInspector vermeiden, der in solchen Fällen den Fehler E0010 (String direkt an externe Funktion übergeben) meldet...

MfG

Sebastian
 
Windows XP, XProfan/Profan² 4.5 bis 11
Profan2Cpp-Homepage:  [...] 
Alte Profan²-Seite:  [...] 
20.08.2006  
 




Antworten


Thementitel, max. 100 Zeichen.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Beitrag  Schrift  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Themenoptionen

10.189 Betrachtungen

Unbenanntvor 0 min.

Themeninformationen



Admins  |  AGB  |  Anwendungen  |  Autoren  |  Chat  |  Datenschutz  |  Download  |  Eingangshalle  |  Hilfe  |  Händlerportal  |  Impressum  |  Mart  |  Schnittstellen  |  SDK  |  Services  |  Spiele  |  Suche  |  Support

Ein Projekt aller XProfaner, die es gibt!


Mein XProfan
Private Nachrichten
Eigenes Ablageforum
Themen-Merkliste
Eigene Beiträge
Eigene Themen
Zwischenablage
Abmelden
 Deutsch English Français Español Italia
Übersetzungen

Datenschutz


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie