Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi ist NonVCL etwa schneller als VCL ? (https://www.delphipraxis.net/68624-ist-nonvcl-etwa-schneller-als-vcl.html)

Corpsman 2. Mai 2006 20:37


ist NonVCL etwa schneller als VCL ?
 
Hallo,

Ich arbeite mich gerade in die OpenGL Programmierung ein.

Und da sind eigentlich alle Beispiele die es gibt in NONVCL Programmiert, also so das die Exe gerade mal 20-30 kb hat.

Nun ist das Ansich ja nicht schlimm, nur halt sehr ungewohnt für mich , da ich das so bisher noch nie Programmiert habe.

Also habe ich mehr oder weniger via Copy Paste die NOnvcl Projekte in ein "Normales" Projekt kopiert.

Läuft auch.

Das Prob ist nur das es nu Ruckelt.

Und vorher lief es einwandfrei Flüssig.

Habe ich da nun einen Fehler im Kopieren gemacht , oder ist das echt so das die "Normalen" Projekte langsammer sind.

Der einzige Unterschied den die beiden Projekte haben ist eigentlich nur das die NONVCL version ja ne endlosschleife hat die immer wieder Render aufruft.

da ich diese endlosschleife ja bei den Normalen Projekten net habe habe ich den Code in

Application.OnIdle

eingefügt.

mkinzler 2. Mai 2006 20:39

Re: ist NonVCL etwa schneller als VCL ?
 
OniDle ist u:u. schelcht, da die Geschwindigkeit nicht meher linear ist. Ein Timer wäre u.U. besser.

markusj 2. Mai 2006 20:40

Re: ist NonVCL etwa schneller als VCL ?
 
Es ist sogar mir bekannt, dass die VCL bequem aber langsam ist ... Analog zu Windows

Corpsman 2. Mai 2006 20:45

Re: ist NonVCL etwa schneller als VCL ?
 
Habs mit nem Timer gemacht dann ist es noch schlimmer !!

d.h. ich mus das alles in diesem NonVCL zeug Programmieren, und mich an das alles gewöhnen ?

mkinzler 2. Mai 2006 20:54

Re: ist NonVCL etwa schneller als VCL ?
 
In einem OpenGl-Programm benutzt du im Normalfall ja weniger (Windows-)Gui-Elemente. Es gibt aber einige Delphi-OpenGL-Frameworks die dir Grundlegende Funktionen bieten.

Daniel G 2. Mai 2006 21:15

Re: ist NonVCL etwa schneller als VCL ?
 
Zitat:

Zitat von Corpsman
d.h. ich mus das alles in diesem NonVCL zeug Programmieren, und mich an das alles gewöhnen ?

Ich hab's in nem anderen Thread schon geschrieben:

non - vcl hilft dir, das Prinzip hinter Windows zu verstehen, wie es arbeitet, warum es im Prinzip nur Fenster gibt und wie die Nachrichtenschleife funktioniert. Nach 2 Monaten passt das schon und du fühlst dich ganz wie zuhause. Am Besten guckst du dir die NON - VCL Tuts von Luckie an.

Bernhard Geyer 2. Mai 2006 21:53

Re: ist NonVCL etwa schneller als VCL ?
 
Zitat:

Zitat von markusj
Es ist sogar mir bekannt, dass die VCL bequem aber langsam ist ... Analog zu Windows

Ich würde nicht generell von langsam reden. Sie ist nur für manche Dinge nicht ausgelegt. Und dazu gehört neben Treiber-Programmierung u.a. auch Spiele-Programmierung mit DirectX. Dazu gibt es aber auch Klassenmodelle wie DelphiX welche sich dieses Mangels annehmen. Grundsätzlich kann man aber auch mit der VCL (GUI-)Programme schreiben die fast nicht langsamer sind als Non-VCL-Programme. Man muß nur die Fallen kennen bzw. die Vorteile eines Objektmodells zu nutzen wissen.

Corpsman 3. Mai 2006 08:03

Re: ist NonVCL etwa schneller als VCL ?
 
OK da bleibt mir nichts anderes Übrig als mich in die NOnVCL Programmierung ein zu arbeiten.

Habt ihr Links zu den Tutorials oder mus ich mir die erst suchen ?

MagicAndre1981 3. Mai 2006 08:06

Re: ist NonVCL etwa schneller als VCL ?
 
Schau mal auf Luckie's Homepage.

turboPASCAL 3. Mai 2006 08:40

Re: ist NonVCL etwa schneller als VCL ?
 
Zitat:

Also habe ich mehr oder weniger via Copy Paste die NOnvcl Projekte in ein "Normales" Projekt kopiert.

Läuft auch.

Das Prob ist nur das es nu Ruckelt.

Und vorher lief es einwandfrei Flüssig.

Habe ich da nun einen Fehler im Kopieren gemacht , oder ist das echt so das die "Normalen" Projekte langsammer sind.

Der einzige Unterschied den die beiden Projekte haben ist eigentlich nur das die NONVCL version ja ne endlosschleife hat die immer wieder Render aufruft.
Also ich kann mich nicht beschweren, meine GLscene Projekte laufen alle flüssig und schnell. Auch was ich mit DelphiX unter VCL hinbekommen hab ist von der Geschwindigkeit einwandfrei.

Was ich jetzt einfach mal Annehme ist das dein Programm etwas Unoptimiert ist. Wenn Du hier mal den Code zur verfügung stellst könnte man nachschauen wie was wo und event. warum...
OpenGL-Projekte in nonVCL aufzubauen ist eigentlich auch kein Problem es gibt schöne Tuturials und Codevorlagen.
zB. hier: http://www.sulaco.co.za/

Der Nachteil liegt bei nonVCL darin das man alles selbst machen muss. (nix mit Click, Click, fretig :stupid: )

Grundvorraussetzung sind aber ein wenig nonVCL-Kentnisse im Bezug auf den Aufbau und das Messagehandling von Fenstern ( Windows ;) ).


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:46 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz