<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
<channel>
<title>Forum Pasja Informatyki - Najnowsze z tagiem obj</title>
<link>https://forum.pasja-informatyki.pl/tag/obj</link>
<description>Powered by Question2Answer</description>
<item>
<title>Webgl three js - światło punktowe</title>
<link>https://forum.pasja-informatyki.pl/577993/webgl-three-js-swiatlo-punktowe</link>
<description>

&lt;p&gt;Cześć, tworzę model ziemi w webgl w bibliotece three.js:
&lt;br&gt;
&lt;img alt=&quot;&quot; src=&quot;https://forum.pasja-informatyki.pl/?qa=blob&amp;amp;qa_blobid=11502115505212028873&quot; style=&quot;height:460px; width:600px&quot;&gt;
&lt;br&gt;
Chcę&amp;nbsp;uzyskać efekt światła słońca z oddali. Myślę, że najlepiej się nada tzw. światło punktowe:
&lt;br&gt;
&lt;img alt=&quot;&quot; src=&quot;https://forum.pasja-informatyki.pl/?qa=blob&amp;amp;qa_blobid=7815140762782523043&quot; style=&quot;height:213px; width:600px&quot;&gt;&lt;/p&gt;



&lt;pre class=&quot;brush:jscript;&quot;&gt;
const light = new THREE.PointLight( 0xff0000, 1, 100 );
light.position.set( 50, 50, 50 );
scene.add( light );&lt;/pre&gt;



&lt;p&gt;Mam problem z zaimplementowaniem, gdzie bym nie dał światła - brak efektu. To kwesta tego, że nie ma podłoża pod obiektem?
&lt;br&gt;
Albo niewłaściwy rodzaj światła?
&lt;br&gt;
Tak wygląda mój kod:
&lt;br&gt;
&amp;nbsp;&lt;/p&gt;



&lt;pre class=&quot;brush:jscript;&quot;&gt;
&amp;lt;html&amp;gt;
	&amp;lt;head&amp;gt;
		&amp;lt;style&amp;gt;canvas { width: 100%; height: 100% }&amp;lt;/style&amp;gt;
	&amp;lt;/head&amp;gt;
	&amp;lt;style&amp;gt;
		body { background-color: black;}
		p {color: white;};
	&amp;lt;/style&amp;gt;
	
	&amp;lt;body&amp;gt;
		
		&amp;lt;script src=&quot;js/three.js&quot;&amp;gt;&amp;lt;/script&amp;gt;		
		&amp;lt;script&amp;gt;  
			var scene = new THREE.Scene();
			var camera = new THREE.PerspectiveCamera( 60, window.innerWidth / window.innerHeight, 0.1, 40*1024 ); 
			var renderer = new THREE.WebGLRenderer({ antialias: true });
			
			renderer.setSize( window.innerWidth, window.innerHeight ); 
			document.body.appendChild( renderer.domElement ); 
			camera.position.set(0,128,1024); 
				

		var textures = ['img/EARTH.jpg']; var materials = [];
		for(var i=0;i&amp;lt;textures.length;i++) {
			var texture = THREE.ImageUtils.loadTexture(textures[i]);
			texture.anisotropy = renderer.getMaxAnisotropy();
			materials.push(	new THREE.MeshBasicMaterial({map: texture})); 
		}
		var geometry = new THREE.SphereGeometry(512,128,256);
		var cube = new THREE.Mesh( geometry, new THREE.MeshFaceMaterial( materials )); //Utworzenie siatki trojkatow tworzacej kostke
		scene.add( cube );  
		cube.position.x+=512;  
		cube.position.y+=128;

			//Wczytanie tekstur
			var textures = ['img/skybox/north.jpg',
							'img/skybox/south.jpg',
							'img/skybox/top.jpg',
							'img/skybox/bottom.jpg',
							'img/skybox/west.jpg',
							'img/skybox/east.jpg'];
			var materials = [];
			
			for(var i=0;i&amp;lt;textures.length;i++) {	
				var texture = THREE.ImageUtils.loadTexture(textures[i]);
				texture.anisotropy = renderer.getMaxAnisotropy();
				materials.push(	new THREE.MeshBasicMaterial({map: texture, side: THREE.BackSide}));  
			}																						
		
			var geometry = new THREE.CubeGeometry(32*1024,32*1024,32*1024); // cube (skybox)	
			var skyBox = new THREE.Mesh( geometry, new THREE.MeshFaceMaterial( materials )); 
			skyBox.position.y -= 1024;
			
			scene.add( skyBox );  
			
			
        	const directionalLight = new THREE.DirectionalLight( 0xffffff, 0.5 );
scene.add( directionalLight );

			var kat = 0;
			function render() {		
				requestAnimationFrame(render);
				
								
				    kat -= 0.004; 
					camera.position.x = Math.sin( kat ) * 1500; 
					camera.position.z = Math.cos( kat ) * 1024; 
					camera.lookAt( scene.position ); 
					
				
		
				renderer.render(scene, camera);
			}
			render();
					
		&amp;lt;/script&amp;gt;
	&amp;lt;/body&amp;gt;
	
&amp;lt;/html&amp;gt;&lt;/pre&gt;



&lt;p&gt;Teoretycznie powinno działać niemal gdziekolwiek, gdzie zaimplementuję kod w &amp;lt;script&amp;gt;&lt;/p&gt;</description>
<category>JavaScript</category>
<guid isPermaLink="true">https://forum.pasja-informatyki.pl/577993/webgl-three-js-swiatlo-punktowe</guid>
<pubDate>Thu, 12 Jan 2023 21:43:30 +0000</pubDate>
</item>
<item>
<title>Problem z wyświetleniem obrazu OBJ w Three.js</title>
<link>https://forum.pasja-informatyki.pl/536509/problem-z-wyswietleniem-obrazu-obj-w-three-js</link>
<description>

&lt;p&gt;Witajcie,&lt;/p&gt;



&lt;p&gt;rzeźbie sobie i rzeźbie, ale może tym razem się uda.&lt;/p&gt;



&lt;p&gt;Próbuje wczytać &lt;em&gt;image.obj&lt;/em&gt; w&amp;nbsp;Three.js, ale wyrzuca dwa błędy:&lt;/p&gt;



&lt;pre class=&quot;brush:plain;&quot;&gt;
three.js:6215 THREE.Object3D.add: object not an instance of THREE.Object3D. OBJLoader

image.obj:1 Failed to load resource: net::ERR_CACHE_READ_FAILURE
&lt;/pre&gt;



&lt;p&gt;&amp;nbsp;&lt;/p&gt;



&lt;p&gt;main.js&lt;/p&gt;



&lt;pre class=&quot;brush:jscript;&quot;&gt;
const scene = new THREE.Scene();

const camera = new THREE.PerspectiveCamera (64, window.innerWidth/window.innerHeight, 0.1, 1000);

const renderer = new THREE.WebGLRenderer({antialias: true});

renderer.setSize(window.innerWidth, window.innerHeight);

document.body.appendChild(renderer.domElement);

const colorYellow = new THREE.Color(&quot;hsl(40, 100%, 60%)&quot;);
const colorPink = new THREE.Color(&quot;hsl(306, 100%, 60%)&quot;);


const loader = new THREE.OBJLoader();
loader.load('image.obj');


const light = new THREE.PointLight(colorPink, 2);
const light2 = new THREE.PointLight(colorYellow, .5);


 light.position.z = 20;
 light.position.y = -20;
 light.position.x = -40;

 light2.position.z = 10;
 light2.position.y = 20;
 light2.position.x = 40;


scene.add(light);
scene.add(light2);
scene.add(loader);

camera.position.z = 55;

renderer.render&amp;nbsp;(scene,&amp;nbsp;camera);
&lt;/pre&gt;



&lt;p&gt;&amp;nbsp;&lt;/p&gt;



&lt;p&gt;oraz index.html&lt;/p&gt;



&lt;pre class=&quot;brush:xml;&quot;&gt;
&amp;lt;!DOCTYPE html&amp;gt;
&amp;lt;html lang=&quot;en&quot;&amp;gt;
&amp;lt;head&amp;gt;
    &amp;lt;meta charset=&quot;UTF-8&quot;&amp;gt;
    &amp;lt;meta http-equiv=&quot;X-UA-Compatible&quot; content=&quot;IE=edge&quot;&amp;gt;
    &amp;lt;meta name=&quot;viewport&quot; content=&quot;width=device-width, initial-scale=1.0&quot;&amp;gt;
    &amp;lt;title&amp;gt;Document&amp;lt;/title&amp;gt;
&amp;lt;/head&amp;gt;
&amp;lt;body&amp;gt;

    &amp;lt;script src=&quot;https://cdnjs.cloudflare.com/ajax/libs/three.js/r126/three.js&quot;&amp;gt;&amp;lt;/script&amp;gt;
    &amp;lt;script src=&quot;https://unpkg.com/three@0.126.0/examples/js/loaders/OBJLoader.js&quot;&amp;gt;&amp;lt;/script&amp;gt;
    &amp;lt;script src=&quot;main.js&quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;/body&amp;gt;
&amp;lt;/html&amp;gt;&lt;/pre&gt;



&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description>
<category>JavaScript</category>
<guid isPermaLink="true">https://forum.pasja-informatyki.pl/536509/problem-z-wyswietleniem-obrazu-obj-w-three-js</guid>
<pubDate>Thu, 08 Apr 2021 17:56:15 +0000</pubDate>
</item>
<item>
<title>Jak załadować plik obj do THREE.js ?</title>
<link>https://forum.pasja-informatyki.pl/535511/jak-zaladowac-plik-obj-do-three-js</link>
<description>

&lt;p&gt;Witajcie,&lt;/p&gt;



&lt;p&gt;mam już trochę kodu (kamera, światło, itp.) i wszystko działa. Gdy chcę&amp;nbsp;wyświetlić&amp;nbsp;obj&amp;nbsp;pojawia się błąd '&lt;em&gt;Uncaught TypeError: THREE.OBJLoader is not a constructor&lt;/em&gt;'&lt;/p&gt;



&lt;pre class=&quot;brush:jscript;&quot;&gt;
const loader = new THREE.OBJLoader();
loader.load('image.obj');

scene.add(loader);&lt;/pre&gt;



&lt;p&gt;&amp;nbsp;&lt;/p&gt;



&lt;p&gt;Jak dodać konstruktor by obraz&amp;nbsp;obj pojawił się na ekranie?&lt;/p&gt;



&lt;p&gt;&amp;nbsp;&lt;/p&gt;



&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description>
<category>JavaScript</category>
<guid isPermaLink="true">https://forum.pasja-informatyki.pl/535511/jak-zaladowac-plik-obj-do-three-js</guid>
<pubDate>Thu, 01 Apr 2021 12:30:07 +0000</pubDate>
</item>
<item>
<title>Pomoc w zrozumieniu pliku obj</title>
<link>https://forum.pasja-informatyki.pl/170209/pomoc-w-zrozumieniu-pliku-obj</link>
<description>Cześć. Chciałbym się dowiedzieć jak działają pliki obj, w sensie co dana linijka w nich oznacza. Co oznaczają liczby po danych literach, w jakiej kolejności ustawione są wierzchołki oraz czym są tajemnicze normalne?</description>
<category>Systemy operacyjne, programy</category>
<guid isPermaLink="true">https://forum.pasja-informatyki.pl/170209/pomoc-w-zrozumieniu-pliku-obj</guid>
<pubDate>Thu, 18 Aug 2016 15:38:53 +0000</pubDate>
</item>
</channel>
</rss>