Español
PHP, HTML & JavaScript- Foro

3D Grafik - WebGL con three.js

 
- Página 1 -



HofK
Auf una heißen Tipp de IF hin, Yo me de tiempo
three.js  [...]  angeschaut. Como  [...]  (bastante unten) el ersten Resultate.
 
31.01.2016  
 



 
- Página 34 -



p.specht

 
XProfan 11
Computer: Gerät, daß es in Mikrosekunden erlaubt, 50.000 Fehler zu machen, zB 'daß' statt 'das'...
13.03.2020  
 




HofK
Nach el Rahmen war el Besucherbetreuung dran. Man möchte sí no, dass esta a Ausstellungsstücke rempeln oder gegen o. por Wände laufen.

Dazu benötigt uno una Control. Vor encima una Jahr comenzó, nun soweit fertig.
Es konfigurierbar, después de Tests voluntad Yo una passende Variante wählen.







Dazu una Funktionstest, bevor lo en el Schauraum fest integriert se.

El js - Quellen:
CircularControl  [...] 
AreaControl  [...] 

GitHub:  [...] 

Ausprobieren (html):
CircularControl  [...] 
AreaControl  [...] 



El begehbaren Bereiche son farblich hervorgehoben (Kreis, Rechteck, Dreieck).
El Steuerung kann auch con el Nummernblock (Ziffern!) y el Kursortasten tener lugar.

Yo habe una großen Spiegel hingestellt, así uno se incluso como Besucher auch sehen kann. El Kamera steckt en el (ausgeblendeten) Nase. Siehe Quellcode.

Dort en Discourse:  [...] 
 
03.04.2020  
 




HofK
Der rote Besucher war rápidamente zusammen gezimmert, schön es él no.

Desde que selber kein Interesse a Modellierungs-Software como Blender habe, bin I el Búsqueda gegangen. Dabei debería lo necesariamente el empfohlene GLTF- Formato ser. Kostenfrei findet uno como algunos merkwürdige Sachen, normale Personen kaum.

Aber como wurde Yo fündig: konta johanna people Öffentlich / Remixfähig (CC-BY) [...] 

Ein Test igual como Antwort en una Cuestión en Discourse:  [...] 

Dort ansehen y muy einfachen Quellcode betrachten.  [...] 



Daneben waren algunos Spiegelvarianten para el Schauraum a generieren.




// mirrors / Spiegel: Typ: wall-..  IMPORTANT! define after walls / WICHTIG! después de Wänden definieren
// 'rectangle', x,z, y position, w, h,                y-rotation°,  (tilt°/Neigung°), ([color])  (optional)
// 'polygon',   x,z, y position, radius, n.rotation°, y-rotation°,  (tilt°/Neigung°), ([color])  (optional)
// 'wall-rectangle', wall-index, left, btm, w, h,           wall-d, (tilt°/Neigung°), ([color])  (optional)
// 'wall-polygon',   wall-index, left, btm, r, n.rotation°, wall-d, (tilt°/Neigung°), ([color])  (optional)
mirrors = [
['rectangle', 10,11, 2.5,  3.2, 2.12,  -45,  5 ],    // 0
['polygon',    7,10, 1.2,  1.8, 18.025 , 60, 30 ],        // 1
['wall-rectangle', 7, 0.2, 0.9, 1.8,1.4, 0.5, 10, [2] ],  // 2
['wall-polygon', 7, 3.2, 0.9, 1.1, 6.030, 0.5, 10   ]     // 3
];
...

switch ( type ) {

    caso'rectangle':
    caso'polygon':
    caso'wall-rectangle':
    caso'wall-polygon':
 
20.04.2020  
 




p.specht

Yo sería gerne como Mann rumwandern. Momentan bin Yo jedenfalls deiner roten Figur ähnlicher: A Not auch OK
 
XProfan 11
Computer: Gerät, daß es in Mikrosekunden erlaubt, 50.000 Fehler zu machen, zB 'daß' statt 'das'...
21.04.2020  
 




HofK
Einen passenden Mann como GLTF-Modell Todavía No se ha encontrado, aber auch no ewig gesucht.

Aber el Model spaziert ahora por el Gegend  [...]  y kann se en el Spiegel betrachten.



Como fehlt wohl ni Spiegelleuchte, Licht de hinten es al Spiegel siempre ungünstig. So kommt uno en él, qué alles todavía fehlt.

Zu el GLTF-Modellen gab lo en Discourse algunos Posts. [...]  [...]  [...] 

PS: Der runde schräg stehende Spiegel zeigt el Gras bajo el Boden. Das liegt daran, dass uno máximo una Rekursion el Spiegelung de 1 wählen kann. Más es wohl technisch o. de Rechenaufwand no sinnvoll oder posible. Man muss Spiegel also así anordnen, dass así algo como hier en el Test no passieren kann. 
 
23.04.2020  
 




HofK
Como  [...]  hay una Mann.

Sin embargo, el no así passend y pflegeleicht como Damen.



No vom Aussehen, pero dateitechnisch. El gltf-Expediente ha Artefakte, el en el ursprünglichen obj-Expediente no como son. Mit el Windows 3D-Viewer liegt el obj Variante zudem en el Rücken. Auch el Abmessung passt no.

Yo habe ihn veces in's neueste Blender geladen. Como fehlt entonces el Textur. Keine Idea, qué como extra veranstalten muss. Desde que como kein Interesse habe, Blender otra vez geschlossen.

Mit el Import de gltf-Modellen es no siempre trivial. Man sieht lo en Discourse a el vielen Fragen dazu.

Yo bleibe en el Damen!

 
23.04.2020  
 




HofK
Manchmal kommt algo genau a rechten Tiempo.

HofK (23.04.2020)
Der runde schräg stehende Spiegel zeigt el Gras bajo el Boden. Das liegt daran, dass uno máximo una Rekursion el Spiegelung de 1 wählen kann.  


Es zwar correcto, pero la Spiegel con el Bodengras hatte una bastante más Problema. Vor una Jahr funktionierte el en el damaligen Versión perfekt. Yo habe entonces festgestellt, dass je después de Position y Bewegung el Kamera fehlerhafte Spiegelungen entstehen. Yo quería el ya como Cuestión formulieren. Dazu muss uno aber una möglichst überschaubares Ejemplo redactar, en el el Fehler reproduzierbar es. Das macht algo Arbeit, y así Yo lo antes me hergeschoben.

Einige "nette" Fehler



En Bewegung rubbelt el Modell el Hintergrund frei.



Nur kleine Teile voluntad gespiegelt, ansonsten es el Hintergrund a sehen. Oft war sólo el komplette Hintergrund en el Spiegel.

Heute Yo el neueste Versión 116 vom 1.Mai heruntergeladen.



Klickt uno en el Versionsnummer r116 kommt uno a Página releases https://github.com/mrdoob/three.js/releases

Dort schaue Yo siempre, si para mich relevante Los cambios son.

Finde el:

--------------------------------------------------------------------------------------------------
Reflector

Fix rendering bug when using Scene.background. #18973 (@Mugen87)
Remove recursion parameter. #19078 (@Mugen87)
--------------------------------------------------------------------------------------------------

Yo habe después de el Wiederaufnahme el Arbeit al Schauraum en Scene.background umgestellt, porque lo programmtechnisch übersichtlich es. Davor war el Hintergrund una BoxBufferGeometry con skyboxTexture +shader(THREE.ShaderLib).

Der Parámetro recursion está fuera, muss experimentieren, qué como ahora sinnvoll va.
 
03.05.2020  
 




p.specht

Und Yo pensamiento ya, el Lady es tal vez una Vampier ...
 
XProfan 11
Computer: Gerät, daß es in Mikrosekunden erlaubt, 50.000 Fehler zu machen, zB 'daß' statt 'das'...
04.05.2020  
 




HofK
Kleinkram macht siempre viel Arbeit y uno sieht hinterher no así viel como en großen Sachen.

El Wandöffnungen waren bisher sólo reine Löcher. Jetzt puede ser ellos entweder con un otro Material füllen (z.B. como Glasscheibe, Rauchglas o Winter con Eisblumen), oder eben como Loch dejar. Dazu puede ser Ventana- o. Türlaibungen y Simse o. Schwellen definieren. Setzt una continuación todavía passend Rahmen dazu, Es el Wand komplett.

Dort  [...]  actualmente una Video uno unvollständigen Raumes y el dazugehörige Definitionsdatei (todavía sin Anleitung)

Je mehr Details Yo darstelle, umso ruckeliger se el Gang des Models por el Räumlichkeit.

Dazu Yo gerade una Anfrage en Discourse gestellt:  [...] 

Yo hoffe, lo findet se una praktikable Solución.
 
13.05.2020  
 




HofK
HofK (13.05.2020)
Yo hoffe, lo findet se una praktikable Solución.


Offensichtlich Es el Sache no así simplemente theoretisch a beantworten. Das erinnert mich una wenig a mi Cuestión a Geschwindigkeit en Geometry / BufferGeometry. [...] 



Un nachvollziehbare Erklärung es offen. Yo incluso habe no el ausreichenden Durchblick para Kern de three.js y WebGL.

----------------------------------------------------------------------------------------------

Nach corto Überlegung Yo mich entschieden, el hohen Aufwand en Kauf a nehmen y el Sache vollständig umzustricken. Auch si mi Zweifel en el Cuestión "Jerky camera movement with many objects" deutlich fueron:

(rückübersetzt) 
Un Vermutung es, dass el vielen Befehle .addGroup( ..., 3, ... ) el Geometrie "fragmentieren". Dies passt sin embargo no para Comportamiento, si se sólo zwei oder drei Wände de je zwei Dreiecken y una Material en el Sichtfeld el Kamera befinden. 

Das umstricken es así, como si uno en una Kartenhaus una untere Karte zieht y si el Kartenhaus zusammenfällt todavía algunos Karten in's Wasser fallen y unbrauchbar son. Oder si uno una Strickpullover aufräufelt y neu loslegt.

El neue Solución verzichtet vollständig en .addGroup( ).

Der Ansatz es umgekehrt. Für cada benötigte Material se una propio no indizierte BufferGeometry producido. Wird una Objeto con más Materialen erstellt, así voluntad el Dreiecke entsprechend ihres Materials el Geometrie zugeordnet. Damit puede ser de esta Geometrien erzeugten Meshes natürlich no neu positionieren. Pero esto es en Art el Konstruktion como feste Raum-Objetos no vorgesehen.
let m = [];// materials
let mm = [];// multi materials
let vt = [];// vertices
let uv = [];
let geometries = [];
let meshes = [];
...

for ( let i = 0; i < m.length; i ++ ) {

    m[ i ].unshift( i )// insert index at the front of the material definition, used for vt, uv  index
    vt.push( [] );//  vertices array for each material
    uv.push( [] );//  uv's array for each material

}

for ( let i = 0; i < m.length; i ++ ) {

    if ( vt[ i ].length > 0 ) {// only used materials

        geometries[ i ] = new THREE.BufferGeometry();
        geometries[ i ].setAttribute('position', new THREE.BufferAttribute( new Float32Array( vt[ i ] ), 3 ) );
        geometries[ i ].setAttribute('uv', new THREE.BufferAttribute( new Float32Array( uv[ i ] ), 2 ) );
        geometries[ i ].computeVertexNormals();
        meshes[ i ] = new THREE.Mesh( geometries[ i ], getMaterial( m[ i ] ) );
        scene.add( meshes[ i ] );

    } más {

        geometries[ i ] = null;
        meshes[ i ]  = null;

    }

}


Interessant en Umprogrammierung war, dass algunos Dinge se wesentlich vereinfachten, dafür otro Sachen aber muy kompliziert fueron. Man muss en cada Fall todos Design-Varianten neu durchtesten.

Es todavía no bastante fertig, auch porque Yo en el Zuge el Neuprogrammierung todavía diverse Los cambios/ Erweiterungen vorgenommen habe. So auch a el Struktur el Design-Expediente.

Aber lo ha se gelohnt. Lo se ejecuta flüssig. Manchmal hilft eben auch el richtige Instinkt, si uno algo no vollständig durchdringen y se erklären kann.
 
29.05.2020  
 




p.specht

Alte Versionen aufheben y Zwischenstand dokumentieren ha se bewährt. Natürlich überflüssig, dir el a escribir.
Gruss
 
XProfan 11
Computer: Gerät, daß es in Mikrosekunden erlaubt, 50.000 Fehler zu machen, zB 'daß' statt 'das'...
30.05.2020  
 




HofK
Seit mein Provider me antes 4 Jahren simplemente veces así todos mi Daten en el Server unwiederbringlich gelöscht ha ( Kommentar: Sie haben para Sicherheitskopien incluso a sorgen!) bin Yo besonders "pingelich". Alle pocos Stunden landet una Kopie en el Festplatte, una Stick y en el Server.

Como el Skripte sólo kB groß son, es el kein Problema.

Yo habe el Schauraum todavía extra Bauteile spendiert. Mit uno einfachen Definition erhält uno Podeste y ähnliche Sachen.




// shell functions for components (diameter to height)
// functions:  dH[i] = h => term;   def[0,1] => value[0,1]    (dHdefault = h => 1)
dH[0] = h =>  0.5 + 0.25 * sin( 16 * h );
dH[1] = h => 1 - 0.25 * h;
dH[2] = h => 0.2 + sqrt( h );
dH[3] = h => tan( 1 - 0.7 * h );
// components:
// x,z -center,  y0 bottom ,y1 top, radial, height -detail, mm[ i ] (,shell function ) (,rotation angle° )   ( optional )
// mm[] - mantle, top, bottom / Mantel, Deckel, Boden
components = [
[ 7,15, 0.1,1.1, 4,144, mm[14], dH[0], 28 ],// 0
];

 
31.05.2020  
 




Respuesta


Título del Tema, max. 100 Signo.
 

Systemprofile:

Kein Systemprofil creado. [anlegen]

XProfan:

 Contribución  Font  Smilies  ▼ 

Bitte registro en una Contribución a verfassen.
 

Tema opciones

357.087 Views

Untitledvor 0 min.
Paul Glatz vor 17 Tagen
Uwe ''Pascal'' Niemeier23.03.2025
Manfred Barei18.03.2025
R.Schneider05.03.2025
Más...

Themeninformationen



Admins  |  AGB  |  Applications  |  Autores  |  Chat  |  Política de Privacidad  |  Descargar  |  Entrance  |  Ayuda  |  Merchantportal  |  Pie de imprenta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Juegos  |  Búsqueda  |  Support

Ein Projekt aller XProfan, el lo son!


Mi XProfan
Privado Noticias
Eigenes Ablageforum
Temas-Merkliste
Eigene Beiträge
Eigene Temas
Zwischenablage
Cancelar
 Deutsch English Français Español Italia
Traducciones

Política de Privacidad


Wir uso Cookies sólo como Session-Cookies wegen el technischen Notwendigkeit y en uns hay no Cookies de Drittanbietern.

Wenn du hier en unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung de Informationen en unseren Cookies en XProfan.Net a.

Weitere Informationen a unseren Cookies y dazu, como du el Kontrolle darüber behältst, findest du en unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Yo möchte no Cookie