Torna indietro   Hardware Upgrade Forum > Software > Programmazione

AWS annuncia European Sovereign Cloud, il cloud sovrano per convincere l'Europa
AWS annuncia European Sovereign Cloud, il cloud sovrano per convincere l'Europa
AWS è il principale operatore di servizi cloud al mondo e da tempo parla delle misure che mette in atto per garantire una maggiore sovranità alle organizzazioni europee. L'azienda ha ora lanciato AWS European Sovereign Cloud, una soluzione specificamente progettata per essere separata e distinta dal cloud "normale" e offrire maggiori tutele e garanzie di sovranità
Redmi Note 15 Pro+ 5G: autonomia monstre e display luminoso, ma il prezzo è alto
Redmi Note 15 Pro+ 5G: autonomia monstre e display luminoso, ma il prezzo è alto
Xiaomi ha portato sul mercato internazionale la nuova serie Redmi Note, che rappresenta spesso una delle migliori scelte per chi non vuole spendere molto. Il modello 15 Pro+ punta tutto su una batteria capiente e su un ampio display luminoso, sacrificando qualcosa in termini di potenza bruta e velocità di ricarica
HONOR Magic 8 Pro: ecco il primo TOP del 2026! La recensione
HONOR Magic 8 Pro: ecco il primo TOP del 2026! La recensione
HONOR ha finalmente lanciato il suo nuovo flagship: Magic 8 Pro. Lo abbiamo provato a fondo in queste settimane e ve lo raccontiamo nella nostra recensione completa. HONOR rimane fedele alle linee della versione precedente, aggiungendo però un nuovo tasto dedicato all'AI. Ma è al suo interno che c'è la vera rivoluzione grazie al nuovo Snapdragon 8 Elite Gen 5 e alla nuova MagicOS 10
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 14-11-2006, 20:19   #1
PUMA81
Senior Member
 
L'Avatar di PUMA81
 
Iscritto dal: Sep 2004
Messaggi: 404
importare file .3ds in java, si può fare??

Ciao a tutti, ho un problema: dovrei importare dei file 3d in java che ho trovato sulla rete. Questi file sono completi di texture solo che sono .3ds
Io sono riuscito a caricare solo file .obj solo che quando vado ad eseguire l'applicazione, l'oggetto importato è privo di texture (lo vedo solo grigio, senza colore).
Ho provato anche a convertire il file .3ds in .obj tramite 3d studio max, solo che il risultato che ottengo dopo aver eseguito il codice è sempre lo stesso, cioè oggetto privo di texture.
Qualcuno sa dirmi se è possibile caricare sti file .3ds oppure come fare per far vedere sti oggetti a colori??
dimenticavo: ho provato anche ad applicare la texture ad un file .obj solo che java me lo fa vedere sempre grigio



Grazie e ciao.
PUMA81 è offline   Rispondi citando il messaggio o parte di esso
Old 14-11-2006, 20:56   #2
PGI-Bis
Senior Member
 
L'Avatar di PGI-Bis
 
Iscritto dal: Nov 2004
Città: Tra Verona e Mantova
Messaggi: 4553
butta l'occhio qui

http://java3d.j3d.org/utilities/loaders.html

P.s.: al pvt rispondo appena ho reinstallato Java3D
PGI-Bis è offline   Rispondi citando il messaggio o parte di esso
Old 15-11-2006, 10:50   #3
PUMA81
Senior Member
 
L'Avatar di PUMA81
 
Iscritto dal: Sep 2004
Messaggi: 404
Quote:
Originariamente inviato da PGI-Bis
butta l'occhio qui

http://java3d.j3d.org/utilities/loaders.html

P.s.: al pvt rispondo appena ho reinstallato Java3D
Ottimo, ora gli do un'occhiata...
Grazie e ciao.
PUMA81 è offline   Rispondi citando il messaggio o parte di esso
Old 15-11-2006, 12:28   #4
PUMA81
Senior Member
 
L'Avatar di PUMA81
 
Iscritto dal: Sep 2004
Messaggi: 404
Ciao, ho dato un'occhiata a quel link che mi hai dato, ho scaricato il loader relativo a 3ds, solo che non riesco a capire come fare per caricare i file 3ds.
Io sono andato in questo link:

http://sourceforge.net/project/showf...ease_id=344671

Ho scaricato entrambi i file, solo che il primo mi da errore, mentre il secondo è una applet...
Come devo fare?? Me lo potresti spiegare?

Ancora grazie e ciao.
PUMA81 è offline   Rispondi citando il messaggio o parte di esso
Old 15-11-2006, 13:45   #5
PGI-Bis
Senior Member
 
L'Avatar di PGI-Bis
 
Iscritto dal: Nov 2004
Città: Tra Verona e Mantova
Messaggi: 4553
Tutto dipende dall'errore che ti da. Incollo un esempio:

Codice:
import javax.media.j3d.*;
import javax.vecmath.*;
import com.sun.j3d.loaders.*;
import com.sun.j3d.utils.universe.*;
import com.sun.j3d.utils.behaviors.mouse.*;
import java.awt.*;
import java.awt.event.*;

public class Max extends WindowAdapter implements Runnable {
	public static void main(String[] args) {
		Max m = new Max();
		m.init();
		EventQueue.invokeLater(m);
	}

	private Frame frame = new Frame("3ds loader – Sample");
	

	public void init() {
		GraphicsConfiguration config = SimpleUniverse.getPreferredConfiguration();
		Canvas3D canvas = new Canvas3D(config);
		canvas.setPreferredSize(new Dimension(400, 400));
		SimpleUniverse universe = new SimpleUniverse(canvas);
		universe.getViewingPlatform().setNominalViewingTransform();
		Bounds bgLightBounds = new BoundingSphere(new Point3d(), Double.POSITIVE_INFINITY);
		AmbientLight bgLight = new AmbientLight(new Color3f(0.5f, 0.5f, 0.5f));
		bgLight.setInfluencingBounds(bgLightBounds);
		BranchGroup root = new BranchGroup();
		root.addChild(bgLight);

		BranchGroup loadGroup = load3DS("/sample.3ds");
		if(loadGroup != null) {
			TransformGroup sceneTransform = new TransformGroup();
			sceneTransform.setCapability(TransformGroup.ALLOW_TRANSFORM_READ);
			sceneTransform.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE);
			MouseRotate rotator = new MouseRotate();
			rotator.setTransformGroup(sceneTransform);
			sceneTransform.addChild(rotator);
			rotator.setSchedulingBounds(bgLightBounds);
			sceneTransform.addChild(loadGroup);
			root.addChild(sceneTransform);
		}

		root.compile();
		universe.addBranchGraph(root);
		frame.setLayout(new GridLayout(1, 1));
		frame.addWindowListener(this);
		frame.add(canvas);
	}

	public BranchGroup load3DS(String path) {
		BranchGroup loadGroup = null;
		try {
			Loader loader = new com.microcrowd.loader.java3d.max3ds.Loader3DS();
			Scene scene = loader.load(getClass().getResource(path));
			loadGroup = scene.getSceneGroup();
		} catch(Exception ex) {
			ex.printStackTrace();
		}
		return loadGroup;
	}

	public void run() {
		frame.pack();
		frame.setVisible(true);
	}

	public void windowClosing(WindowEvent e) {
		System.exit(0);
	}
}
Dovresti dare un'occhiata alla documentazione del caricatore 3ds che usi (io non l'ho vista) per controllare se ci siano particolari requisiti per quanto riguarda le texture, in particolare relativamente alla loro posizione sul filesystem.
PGI-Bis è offline   Rispondi citando il messaggio o parte di esso
Old 17-11-2006, 16:30   #6
PUMA81
Senior Member
 
L'Avatar di PUMA81
 
Iscritto dal: Sep 2004
Messaggi: 404
Ciao, innanzitutto grazie per la risposta
Continuo ad avere problemi...
Allora, ti spiego ciò che ho fatto: sono andato nel link che mi avevi detto, ho scaricato questo loader http://sourceforge.net/project/showf...ease_id=344671
per la precisione il primo e l'ho copiato in C:\j2sdk1.4.2_10\jre\lib\ext
Praticamente mi sta sorgendo un dubbio: è giusto il percorso dove ho incollato il file .jar che ho scaricato??
Anche perchè il codice che hai scritto tu mi lancia un'eccezione, per la precisione java.lang.NoClassDefFoundError: com/microcrowd/loader/java3d/max3ds/Loader3DS
Exception in thread "main" >Exit code: 1

Scusa se ti rompo, ma vedo che sei l'unico in grado di risp alle mie domande...
Ancora grazie e ciao.
PUMA81 è offline   Rispondi citando il messaggio o parte di esso
Old 17-11-2006, 16:49   #7
PGI-Bis
Senior Member
 
L'Avatar di PGI-Bis
 
Iscritto dal: Nov 2004
Città: Tra Verona e Mantova
Messaggi: 4553
quando lanci la JVM con il comando Java quello che parte (normalmente) è il JRE che dovrebbe stare in:

c:\programmi\java\jre1.4.2_10

Tu hai correttamente collocato il file jar nella cartella delle estensioni della piattaforma Java ma l'hai fatto per la piattaforma Java "privata", quella che accompagna il JDK.

Con tutta probabilità, la compilazione del programma procede senza restituirti eccezioni. Capita perchè javac usa la piattaforma privata del JDK.

Se lanci il programma specificando il percorso di "java.exe"

promtp:> C:\j2sdk1.4.2_10\bin\java.exe eccetera

l'eccezione ClassNotFound non dovrebbe più verificarsi. Alternativamente puoi "estendere" il JRE pubblico copiano il jar Loader3DS1_2.jar nella cartella "ext" del JRE pubblico (anzichè "j2sdk" si chiama "j2re", o una cosa del genere).

Giusto per non dimenticarsi delle librerie esterne usate, durante la scrittura del programma può essere preferibile lasciare il jar "esterno" nella cartella in cui sviluppi il progetto (magari in una sub directory "lib" di quella cartella) ed includere "manulalmente" il jar tra il percorso di ricerca del compilatore e della macchina virtuale durante la compilazione e l'esecuzione. Puoi farlo con l'opzione -cp (abbreviazione di -classpath). Supponendo che la compilazione avvenga nella cartella in cui si trova il file jar esterno, il comando sarebbe:

javac -cp .;Loader3DS1_2.jar sorgenti da compilare

per la compilazione e:

java -cp .;Loader3DS1_2.jar NomeClasseMain

per l'esecuzione.

Per una questione di netiquette, più che di unico in grado, parlerei di unico che ha tempo .
PGI-Bis è offline   Rispondi citando il messaggio o parte di esso
Old 21-11-2006, 11:39   #8
PUMA81
Senior Member
 
L'Avatar di PUMA81
 
Iscritto dal: Sep 2004
Messaggi: 404
Ci sono riuscito...
Ancora grazie PGI-Bis
Forse dovrò gestire le collisioni, casomai posso disturbarti??

Ciao
PUMA81 è offline   Rispondi citando il messaggio o parte di esso
Old 21-11-2006, 12:59   #9
PGI-Bis
Senior Member
 
L'Avatar di PGI-Bis
 
Iscritto dal: Nov 2004
Città: Tra Verona e Mantova
Messaggi: 4553
Oh, non farti problemi a "disturbarmi" ma tieni conto che io sono l'unico primate del pianeta che non ha mai capito gli alberi BSP.
PGI-Bis è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


AWS annuncia European Sovereign Cloud, il cloud sovrano per convincere l'Europa AWS annuncia European Sovereign Cloud, il cloud ...
Redmi Note 15 Pro+ 5G: autonomia monstre e display luminoso, ma il prezzo è alto Redmi Note 15 Pro+ 5G: autonomia monstre e displ...
HONOR Magic 8 Pro: ecco il primo TOP del 2026! La recensione HONOR Magic 8 Pro: ecco il primo TOP del 2026! L...
Insta360 Link 2 Pro e 2C Pro: le webcam 4K che ti seguono, anche con gimbal integrata Insta360 Link 2 Pro e 2C Pro: le webcam 4K che t...
Motorola edge 70: lo smartphone ultrasottile che non rinuncia a batteria e concretezza Motorola edge 70: lo smartphone ultrasottile che...
Il Wi-Fi 7 ha un nuovo re: da ASUS arriv...
In arrivo l'auto "Frankenstein"...
Chip NVIDIA H200 in Cina? 'Come vendere ...
iPhone 16 torna super conveniente: ora c...
Offerte Amazon pazzesche: tech, smartpho...
Ubisoft annuncia l'arrivo dei 60 fps per...
Infratel Italia: ecco la nuova mappa del...
Hoover HMC5 in offerta: il battimaterass...
Un'idea 'rivoluzionaria' dal Politecnico...
Steam ha registrato un record di ricavi ...
'Quando sei pronto… vai': ChatGPT sotto ...
Razer: l'intelligenza artificiale piace ...
Disastro Rad Power Bikes: incendio al ma...
Speciale Braun in offerta su Amazon: reg...
Threads cresce e batte X su mobile a liv...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 16:30.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v