Files |  Tutorials |  Articles |  Links |  Home |  Team |  Forum |  Wiki |  Impressum

Aktuelle Zeit: So Jul 20, 2025 00:35

Foren-Übersicht » Programmierung » OpenGL
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 11 Beiträge ] 
Autor Nachricht
BeitragVerfasst: Di Okt 30, 2007 15:58 
Offline
DGL Member

Registriert: Di Okt 23, 2007 10:20
Beiträge: 84
erledigt


Zuletzt geändert von elektrokrach am Di Nov 27, 2007 11:26, insgesamt 1-mal geändert.

Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Okt 30, 2007 19:43 
Offline
DGL Member
Benutzeravatar

Registriert: Mi Mär 09, 2005 15:54
Beiträge: 372
Wohnort: München
Programmiersprache: Delphi, C#, FPC
Kannst ja mal im DelphiGl-Wiki hier oder bei OpenGL.org hier schauen. Kenns persönlich auch nicht, aber vieleicht wirst du aus den beschreibungen schlauer

Grüße

_________________
Aktuelles Projekt: Gael - Development Blog
Website: LightBlackSoft.com


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Okt 30, 2007 20:05 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 02, 2002 15:41
Beiträge: 867
Wohnort: nahe Stuttgart
Das ist das VA- oder VBO-Pendant zu glSecondaryColor - so wie man zB. glColorPointer verwenden würde.
Wenn glDrawArrays() oder ähnliche Funktionen zB. ein Arrayelement zeichnen, callen sie ua.:
Code:
  1. if (normal array enabled) then
  2.   Normal3[type]v(normal array element i);
  3. if (color array enabled) then
  4.   Color[size][type]v(color array element i);
  5. if (secondary color array enabled) then
  6.   SecondaryColor3[type]v(secondary color array element i);
  7. // ... usw ...
  8.  


MfG


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Okt 30, 2007 21:06 
Offline
Guitar Hero
Benutzeravatar

Registriert: Do Sep 25, 2003 15:56
Beiträge: 7810
Wohnort: Sachsen - ERZ / C
Programmiersprache: Java (, Pascal)
Kanst du mal ein Beispielbild mit und ohne Secondary-Color rendern und ins Wiki stellen (bzw. hier rein und ich stells dann ins Wiki).
Entspricht das rendern mit SecColor einem Blending, oder wie muss man sich das vorstellen?

_________________
Blog: kevin-fleischer.de und fbaingermany.com


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Okt 30, 2007 21:30 
Offline
DGL Member

Registriert: Di Okt 23, 2007 10:20
Beiträge: 84
erledigt


Zuletzt geändert von elektrokrach am Di Nov 27, 2007 11:27, insgesamt 1-mal geändert.

Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Okt 30, 2007 22:29 
Offline
DGL Member
Benutzeravatar

Registriert: Do Dez 05, 2002 10:35
Beiträge: 4234
Wohnort: Dortmund
Von ATI gibt es da eine Beispielcode und zu der Funktion gehört auch noch eine Extension.

http://ati.amd.com/developer/sdk/RadeonSDK/Html/Samples/OpenGL/RadeonSecondaryColor.html
http://www.opengl.org/registry/specs/EXT/secondary_color.txt

Ich habe allerdings das Gefühl, dass es sich dabei lediglich um eine zusätzlich Farbe handelt. Also eine Grundfarbe und eine zusätzliche Farbe. Aber so genau schlau bin ich auch diesen Dokumenten auch nicht geworden.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Okt 30, 2007 23:16 
Offline
DGL Member

Registriert: Di Okt 23, 2007 10:20
Beiträge: 84
Sieht aus als würden die einfach zusammengeblendet. Kommt mir irgendwie vor als gehörte das in die Kategorie "Dinge die die Welt nicht braucht".


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Okt 30, 2007 23:22 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Diese sekundäre Farbe kann man nutzen um den spekulativen Lichtanteil zu verändern. Dazu muss man beim Lichtmodel für GL_LIGHT_MODEL_COLOR_CONTROL GL_SEPARATE_SPECULAR_COLOR angeben. Es ist also etwas recht Spezielles.

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Okt 30, 2007 23:29 
Offline
DGL Member

Registriert: Di Okt 23, 2007 10:20
Beiträge: 84
egal


Zuletzt geändert von elektrokrach am Di Nov 27, 2007 11:27, insgesamt 1-mal geändert.

Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Okt 30, 2007 23:33 
Offline
DGL Member
Benutzeravatar

Registriert: Do Sep 02, 2004 19:42
Beiträge: 4158
Programmiersprache: FreePascal, C++
glSecondaryColor wirkt nur, wenn die beleuchtung nicht aktiviert ist. Man kann damit sozusagen ein Fake-Licht erzeugen, wenn vorher mit glEnable(GL_COLOR_SUM) das addieren der SecondaryColor auf die Fragmentfarbe aktiviert wurde. Dies geschieht noch nach der Texturierung. Könnte also in manchen fällen durchaus hilfreich sein. Vielleicht probier ich dazu gleich nochwas aus.

Gruß Lord Horazont

_________________
If you find any deadlinks, please send me a notification – Wenn du tote Links findest, sende mir eine Benachrichtigung.
current projects: ManiacLab; aioxmpp
zombofant networkmy photostream
„Writing code is like writing poetry“ - source unknown


„Give a man a fish, and you feed him for a day. Teach a man to fish and you feed him for a lifetime. “ ~ A Chinese Proverb


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Okt 31, 2007 05:22 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 02, 2002 15:41
Beiträge: 867
Wohnort: nahe Stuttgart
So wie ich zB. diesen Link verstanden habe, ist das Prinzip recht simpel.

Normalerweise wird die im Lighting berechnete Farbe mit der der Textur multipliziert, wobei das per-Vertex-Specular allerdings verloren geht. glLightModeli(GL_LIGHT_MODEL_COLOR_CONTROL, GL_SEPARATE_SPECULAR_COLOR); sorgt dafür, dass das Specular im LightModel addiert statt multipliziert wird, was den Effekt behebt.

Und bei deaktiviertem Lighting kann man es selbst zur "nachträglichen" Addition benutzen, wenn man GL_COLOR_SUM enabled, was in Zeiten von PPL-Shadern aber doch irgendwie überholt wirkt.

MfG


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 11 Beiträge ] 
Foren-Übersicht » Programmierung » OpenGL


Wer ist online?

Mitglieder in diesem Forum: Bing [Bot] und 12 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.009s | 17 Queries | GZIP : On ]