Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Cineca inaugura Pitagora, il supercomputer Lenovo per la ricerca sulla fusione nucleare
Cineca inaugura Pitagora, il supercomputer Lenovo per la ricerca sulla fusione nucleare
Realizzato da Lenovo e installato presso il Cineca di Casalecchio di Reno, Pitagora offre circa 44 PFlop/s di potenza di calcolo ed è dedicato alla simulazione della fisica del plasma e allo studio dei materiali avanzati per la fusione, integrandosi nell’ecosistema del Tecnopolo di Bologna come infrastruttura strategica finanziata da EUROfusion e gestita in collaborazione con ENEA
Mova Z60 Ultra Roller Complete: pulisce bene grazie anche all'IA
Mova Z60 Ultra Roller Complete: pulisce bene grazie anche all'IA
Rullo di lavaggio dei pavimenti abbinato a un potente motore da 28.000 Pa e a bracci esterni che si estendono: queste, e molte altre, le caratteristiche tecniche di Z60 Ultra Roller Complete, l'ultimo robot di Mova che pulisce secondo le nostre preferenze oppure lasciando far tutto alla ricca logica di intelligenza artificiale integrata
Renault Twingo E-Tech Electric: che prezzo!
Renault Twingo E-Tech Electric: che prezzo!
Renault annuncia la nuova vettura compatta del segmento A, che strizza l'occhio alla tradizione del modello abbinandovi una motorizzazione completamente elettrica e caratteristiche ideali per i tragitti urbani. Renault Twingo E-Tech Electric punta su abitabilità, per una lunghezza di meno di 3,8 metri, abbinata a un prezzo di lancio senza incentivi di 20.000€
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 29-11-2007, 19:50   #1
irK
Senior Member
 
L'Avatar di irK
 
Iscritto dal: Jun 2003
Messaggi: 1041
[C++] C++ e OpenGL

Salve ragazzi...

Ho un grande problema. Ho un codice in C++ e vorrei fare la versione in OpenGL.

Qualcuno mi può dare una mano per favore con OpenGL?
__________________
Ho trattato con: ))Lexandrus((, abc3d, al2, almar, antonio panaro, bimbo-gio, bruno sorbelli, CLURACAN, cervoale, cristoforobiagrtti, danisevoo, dayz, DrUg@tO, eric654, Feroz, firmus, gigio75, grezzo, icest0rm, leleweb, linears4, madelui, Maverick82^, morpheus3g, mrwinch, obi_wan, PERPAX, piziul, Razorx92, rigolo, robby2002, sagomaccio, sciach, semenzara, slash84, takers, tati29268, twil83, verbania, volcanik & altri...

Ultima modifica di irK : 06-12-2007 alle 18:43.
irK è offline   Rispondi citando il messaggio o parte di esso
Old 29-11-2007, 20:02   #2
variabilepippo
Senior Member
 
L'Avatar di variabilepippo
 
Iscritto dal: Mar 2007
Messaggi: 1792
Quote:
Qualcuno mi può dare una mano per favore?
Come possiamo aiutarti? Di cosa si tratta?
variabilepippo è offline   Rispondi citando il messaggio o parte di esso
Old 29-11-2007, 21:40   #3
irK
Senior Member
 
L'Avatar di irK
 
Iscritto dal: Jun 2003
Messaggi: 1041
Quote:
Originariamente inviato da variabilepippo Guarda i messaggi
Come possiamo aiutarti? Di cosa si tratta?
Allora io ho un codice in C++ che è un cavallo che si muove su una scacchiera.

Devo dire che non sono bravo a programmare in C++ ma lo stesso ho scritto come deve muoversi il cavallo. Il mio problema è come implementare l'OpenGL.
__________________
Ho trattato con: ))Lexandrus((, abc3d, al2, almar, antonio panaro, bimbo-gio, bruno sorbelli, CLURACAN, cervoale, cristoforobiagrtti, danisevoo, dayz, DrUg@tO, eric654, Feroz, firmus, gigio75, grezzo, icest0rm, leleweb, linears4, madelui, Maverick82^, morpheus3g, mrwinch, obi_wan, PERPAX, piziul, Razorx92, rigolo, robby2002, sagomaccio, sciach, semenzara, slash84, takers, tati29268, twil83, verbania, volcanik & altri...
irK è offline   Rispondi citando il messaggio o parte di esso
Old 29-11-2007, 21:46   #4
AnonimoVeneziano
Senior Member
 
L'Avatar di AnonimoVeneziano
 
Iscritto dal: Aug 2001
Città: San Francisco, CA, USA
Messaggi: 13827
Quote:
Originariamente inviato da irK Guarda i messaggi
Allora io ho un codice in C++ che è un cavallo che si muove su una scacchiera.

Devo dire che non sono bravo a programmare in C++ ma lo stesso ho scritto come deve muoversi il cavallo. Il mio problema è come implementare l'OpenGL.
non mi sembra che stai dando abbastanza informazioni affinchè noi possiamo fare qualcosa. (non io in particolare che di OpenGL so poco, ma chi ne sa)

Credo che dovresti almeno postare pezzi di codice che non ti sono chiari. (tutto in caso non ti fosse chiaro nulla )

Ciao
__________________
GPU Compiler Engineer
AnonimoVeneziano è offline   Rispondi citando il messaggio o parte di esso
Old 30-11-2007, 10:26   #5
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Con quale libreria grafica è realizzato questo codice ?
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 30-11-2007, 14:29   #6
Ufo13
Senior Member
 
L'Avatar di Ufo13
 
Iscritto dal: Nov 2005
Messaggi: 1545
Usa GLUT, cerca un tutorial per fare il setup della finestra e le matrici fondamentali (World, View, Projection).

Prepara la mesh per il tuo cavallo e renderizzala settando le matrici.
Ufo13 è offline   Rispondi citando il messaggio o parte di esso
Old 30-11-2007, 19:07   #7
irK
Senior Member
 
L'Avatar di irK
 
Iscritto dal: Jun 2003
Messaggi: 1041
Sto usando Glut. Tra copia incolla, e vari tutorial online questo è il codice:

Codice:
#include <iostream>
#include <iomanip>
using namespace std;

const int size = 8;


class position {
public:
  position(int x=0, int y=0) {row = x; col = y;}
  int getrow() const {return row;}
  int getcol() const {return col;}
  int getlast_mov() const {return last_mov;}
  void setlast_mov(int l_mov){last_mov=l_mov;}
  
private:
  int row;
  int col;
  int last_mov;
};


template< class T >
class Stack {
public:
  Stack( int SIZE = size*size );
  ~Stack() { delete [] stackPtr; }
  bool push( const T& );
  bool pop( T& );
  int getsize() const {return SIZE;}
  bool isEmpty() const { return top == -1; }
  bool isFull() const { return top == SIZE - 1; }
  
private:
  int SIZE; 
  int top; 
  T *stackPtr; 
};


template< class T >
Stack< T >::Stack( int s )
{
  SIZE = s > 0 ? s : size*size;  
  top = -1; 
  stackPtr = new T[ SIZE ]; 
}

template< class T >
bool Stack< T >::push( const T &pushValue )
{
  if ( !isFull() ) {
    stackPtr[ ++top ] = pushValue; 
    return true; 
  }
  return false;
}


template< class T > 
bool Stack< T >::pop( T &popValue )
{
  if ( !isEmpty() ) {
    popValue = stackPtr[ top-- ]; 
    return true;
  }
  return false; 
}


void print_board(int[][size]);
bool can_move(int,int,int,int,int[][size]);
void move_b(int,int,int,int,int[][size],int);
position update_stack(int x_pos, int y_pos, int last_mov);


void main(){
  
  int x_pos,y_pos; 
  
  int board[size][size]={0};
  
  int move[8][2]={1,2, 2,1, 2,-1, 1,-2, -1,-2, -2,-1, -2,1, -1,2};
  
  do 
    {
      cout<<"\nEnter an initial position: ";
      cin>>x_pos>>y_pos;
    } while ((x_pos<0)||(x_pos>=size)||(y_pos<0)||(y_pos>=size));
  
  int last_mov=0;
  
  position knights(x_pos,y_pos); 
  knights.setlast_mov(last_mov); 
  
  move_b(x_pos,y_pos,0,0,board,0);
  Stack <position> knight_stack(size*size);
  knight_stack.push(knights);
  
  bool exit_loop=false;
  
  while ((knight_stack.isEmpty()==false) && (knight_stack.isFull()==false))
    {

      exit_loop=false;
      
      for (;exit_loop==false;last_mov++)
	{

	  if (last_mov<8)
	    {
	      if (can_move(x_pos,y_pos,move[last_mov][0],move[last_mov][1],board))

		{
		  move_b(x_pos,y_pos,move[last_mov][0],move[last_mov][1],board,0);
		  x_pos=x_pos+move[last_mov][0];
		  y_pos=y_pos+move[last_mov][1];
		  knight_stack.push(update_stack(x_pos,y_pos,last_mov));
		  last_mov=-1;
		  exit_loop=true;
		}

	    }
		  
	  else
	  
	    {
	      knight_stack.pop(knights);
	      last_mov=knights.getlast_mov();
	      x_pos=knights.getrow();
	      y_pos=knights.getcol();
	      
	      move_b(x_pos,y_pos,move[last_mov][0],move[last_mov][1],board,1);
	      x_pos=x_pos-move[last_mov][0];
	      y_pos=y_pos-move[last_mov][1];
	      last_mov++;
	      exit_loop=true;  
	    }		    
	}
    }


  if (knight_stack.isEmpty()==true)
    cout<<"There are no solutions for the proposed problem... \n";
  if (knight_stack.isFull()==true)
    print_board(board);		
}


position update_stack(int x_pos, int y_pos, int last_mov)

{  
  position knights(x_pos,y_pos);
  knights.setlast_mov(last_mov);
  return (knights);
  
}


void print_board(int board[][size])
{
  cout<<"Here is one possible solution for the knights tour:\n";
  for (int i=0;i!=size;i++)
    {
    for (int k=0;k!=size;k++)
      {
	cout<<setw(3)<<board[i][k];
      }
    cout<<"\n";
    }
}


bool can_move(int x,int y,int delta_x,int delta_y,int board[][size])
{
  
  if (((x+delta_x)>=size)||((x+delta_x)<0)||((y+delta_y)<0)||((y+delta_y)>=size))
    return(false);
  
  if (board[x+delta_x][y+delta_y]!=0)
    return(false);
  
  return(true);
}


void move_b(int x,int y,int delta_x,int delta_y,int board[][size],int erase){
  
  if (erase==1)
    {
      board[x-delta_x][y-delta_y]=board[x][y]-1;
      
      board[x][y]=0;
    }
  else 
    {
      board[x+delta_x][y+delta_y]=board[x][y]+1;
    }

  position knights(x+delta_x,y+delta_y);
  
}
Il problema è che mi va in loop quando metto la posizione iniziale del cavallo
__________________
Ho trattato con: ))Lexandrus((, abc3d, al2, almar, antonio panaro, bimbo-gio, bruno sorbelli, CLURACAN, cervoale, cristoforobiagrtti, danisevoo, dayz, DrUg@tO, eric654, Feroz, firmus, gigio75, grezzo, icest0rm, leleweb, linears4, madelui, Maverick82^, morpheus3g, mrwinch, obi_wan, PERPAX, piziul, Razorx92, rigolo, robby2002, sagomaccio, sciach, semenzara, slash84, takers, tati29268, twil83, verbania, volcanik & altri...

Ultima modifica di irK : 06-12-2007 alle 18:39.
irK è offline   Rispondi citando il messaggio o parte di esso
Old 30-11-2007, 19:19   #8
irK
Senior Member
 
L'Avatar di irK
 
Iscritto dal: Jun 2003
Messaggi: 1041
Postato il codice per due volte...
__________________
Ho trattato con: ))Lexandrus((, abc3d, al2, almar, antonio panaro, bimbo-gio, bruno sorbelli, CLURACAN, cervoale, cristoforobiagrtti, danisevoo, dayz, DrUg@tO, eric654, Feroz, firmus, gigio75, grezzo, icest0rm, leleweb, linears4, madelui, Maverick82^, morpheus3g, mrwinch, obi_wan, PERPAX, piziul, Razorx92, rigolo, robby2002, sagomaccio, sciach, semenzara, slash84, takers, tati29268, twil83, verbania, volcanik & altri...

Ultima modifica di irK : 06-12-2007 alle 16:30.
irK è offline   Rispondi citando il messaggio o parte di esso
Old 30-11-2007, 21:56   #9
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
come mai hai realizzato una tua classe Stack? non va bene la classe stack delle STL?
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 03-12-2007, 17:27   #10
irK
Senior Member
 
L'Avatar di irK
 
Iscritto dal: Jun 2003
Messaggi: 1041
Quote:
Originariamente inviato da 71104 Guarda i messaggi
come mai hai realizzato una tua classe Stack? non va bene la classe stack delle STL?
quella classe diciamo che l'ho copita perché non sapevo che poteva andar bene anche la classe stack delle STL... cmq anche te va in loop il primo codice che ho postato?

ciao grazie
__________________
Ho trattato con: ))Lexandrus((, abc3d, al2, almar, antonio panaro, bimbo-gio, bruno sorbelli, CLURACAN, cervoale, cristoforobiagrtti, danisevoo, dayz, DrUg@tO, eric654, Feroz, firmus, gigio75, grezzo, icest0rm, leleweb, linears4, madelui, Maverick82^, morpheus3g, mrwinch, obi_wan, PERPAX, piziul, Razorx92, rigolo, robby2002, sagomaccio, sciach, semenzara, slash84, takers, tati29268, twil83, verbania, volcanik & altri...
irK è offline   Rispondi citando il messaggio o parte di esso
Old 04-12-2007, 14:50   #11
irK
Senior Member
 
L'Avatar di irK
 
Iscritto dal: Jun 2003
Messaggi: 1041
nessuno che mi può dare una mano?
__________________
Ho trattato con: ))Lexandrus((, abc3d, al2, almar, antonio panaro, bimbo-gio, bruno sorbelli, CLURACAN, cervoale, cristoforobiagrtti, danisevoo, dayz, DrUg@tO, eric654, Feroz, firmus, gigio75, grezzo, icest0rm, leleweb, linears4, madelui, Maverick82^, morpheus3g, mrwinch, obi_wan, PERPAX, piziul, Razorx92, rigolo, robby2002, sagomaccio, sciach, semenzara, slash84, takers, tati29268, twil83, verbania, volcanik & altri...
irK è offline   Rispondi citando il messaggio o parte di esso
Old 05-12-2007, 01:24   #12
Black imp
Senior Member
 
Iscritto dal: Nov 2000
Città: MILANO
Messaggi: 2662
scusa mi sembra che tu chieda un po' troppo. è come se chiedessi come si programma in c++. tu devi implementare tutta la grafica. che ti si può dire? studia opengl! non sono mica 2 comandi. cerca i tutorial di nehe. fra qualche settimana, se studi in fretta forse riesci a farlo.
Black imp è offline   Rispondi citando il messaggio o parte di esso
Old 05-12-2007, 13:20   #13
irK
Senior Member
 
L'Avatar di irK
 
Iscritto dal: Jun 2003
Messaggi: 1041
Quote:
Originariamente inviato da Black imp Guarda i messaggi
scusa mi sembra che tu chieda un po' troppo.
Scusatemi ragazzi, lo so che forse ho chiesto troppo... ma se gentilmente qualcuno poteva aiutarmi mi faceva un grandissimo favore visto che non so quasi niente di C++. Lo so che devo leggere un pò di tutorial ecc. Però mi hanno detto che non dovevo mettere + di 3 giorni per fare questo progetto e sinceramente ci sto mettendo quasi 3 settimane
__________________
Ho trattato con: ))Lexandrus((, abc3d, al2, almar, antonio panaro, bimbo-gio, bruno sorbelli, CLURACAN, cervoale, cristoforobiagrtti, danisevoo, dayz, DrUg@tO, eric654, Feroz, firmus, gigio75, grezzo, icest0rm, leleweb, linears4, madelui, Maverick82^, morpheus3g, mrwinch, obi_wan, PERPAX, piziul, Razorx92, rigolo, robby2002, sagomaccio, sciach, semenzara, slash84, takers, tati29268, twil83, verbania, volcanik & altri...
irK è offline   Rispondi citando il messaggio o parte di esso
Old 05-12-2007, 13:29   #14
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
A me sembra strano che non sapendo niente di C++ tu debba usare OpenGL...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 05-12-2007, 13:33   #15
variabilepippo
Senior Member
 
L'Avatar di variabilepippo
 
Iscritto dal: Mar 2007
Messaggi: 1792
Quote:
visto che non so quasi niente di C++

Però mi hanno detto che non dovevo mettere + di 3 giorni per fare questo progetto e sinceramente ci sto mettendo quasi 3 settimane
Probabilmente 3 giorni è il tempo stimato per chi conosce bene il C++ e discretamente OpenGL... Visto che sei a zero chi decidesse di aiutarti dovrebbe scriverti completamente il codice.
variabilepippo è offline   Rispondi citando il messaggio o parte di esso
Old 05-12-2007, 14:11   #16
irK
Senior Member
 
L'Avatar di irK
 
Iscritto dal: Jun 2003
Messaggi: 1041
Quote:
Originariamente inviato da cionci Guarda i messaggi
A me sembra strano che non sapendo niente di C++ tu debba usare OpenGL...
Pensavo di fare il progetto in Java... ma niente, non posso
__________________
Ho trattato con: ))Lexandrus((, abc3d, al2, almar, antonio panaro, bimbo-gio, bruno sorbelli, CLURACAN, cervoale, cristoforobiagrtti, danisevoo, dayz, DrUg@tO, eric654, Feroz, firmus, gigio75, grezzo, icest0rm, leleweb, linears4, madelui, Maverick82^, morpheus3g, mrwinch, obi_wan, PERPAX, piziul, Razorx92, rigolo, robby2002, sagomaccio, sciach, semenzara, slash84, takers, tati29268, twil83, verbania, volcanik & altri...

Ultima modifica di irK : 06-12-2007 alle 18:45.
irK è offline   Rispondi citando il messaggio o parte di esso
Old 05-12-2007, 14:41   #17
variabilepippo
Senior Member
 
L'Avatar di variabilepippo
 
Iscritto dal: Mar 2007
Messaggi: 1792
Quote:
Pensavo di fare lo stesso progetto in Java... ma niente, non posso
Per un progetto del genere non c'è grande differenza tra farlo in C++ e farlo in Java, stiamo lì... Il vero problema consiste nel riuscire a padroneggiare OpenGL in pochi giorni (indipendentemente da Java o C++).
variabilepippo è offline   Rispondi citando il messaggio o parte di esso
Old 05-12-2007, 15:49   #18
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
Quote:
Originariamente inviato da variabilepippo Guarda i messaggi
Per un progetto del genere non c'è grande differenza tra farlo in C++ e farlo in Java, stiamo lì... Il vero problema consiste nel riuscire a padroneggiare OpenGL in pochi giorni (indipendentemente da Java o C++).
be' oddio, pure il C++ potrebbe metterci del suo: se uno non ha padronanza ed è sfigato che gli capita un bel bug potrebbe dover aggiungere un giorno di ritardo (da 3 giorni a 4 giorni). e meno male che, da quanto ho capito, il programma non necessita di concorrenza tra thread.
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 05-12-2007, 15:57   #19
variabilepippo
Senior Member
 
L'Avatar di variabilepippo
 
Iscritto dal: Mar 2007
Messaggi: 1792
Quote:
be' oddio, pure il C++ potrebbe metterci del suo
Vero, ma è una questione di ordini di grandezza, dando un'occhiata al codice proposto non vedo differenze concettuali tra C++ e Java tali da essere paragonabili allo sforzo richiesto per imparare da zero a programmare con OpenGL... In altri termini, IMHO il fatto di doverlo scrivere necessariamente in C++ è un problema trascurabile rispetto al dover usare OpenGL (soprattutto per uno che conosce Java ma non OpenGL)!

Ultima modifica di variabilepippo : 05-12-2007 alle 16:04.
variabilepippo è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Cineca inaugura Pitagora, il supercomputer Lenovo per la ricerca sulla fusione nucleare Cineca inaugura Pitagora, il supercomputer Lenov...
Mova Z60 Ultra Roller Complete: pulisce bene grazie anche all'IA Mova Z60 Ultra Roller Complete: pulisce bene gra...
Renault Twingo E-Tech Electric: che prezzo! Renault Twingo E-Tech Electric: che prezzo!
Il cuore digitale di F1 a Biggin Hill: l'infrastruttura Lenovo dietro la produzione media Il cuore digitale di F1 a Biggin Hill: l'infrast...
DJI Osmo Mobile 8: lo stabilizzatore per smartphone con tracking multiplo e asta telescopica DJI Osmo Mobile 8: lo stabilizzatore per smartph...
HONOR 500 Pro, scheda tecnica confermata...
GeForce NOW si prepara a vivere un mese ...
Exynos 2600: temperature più bass...
Apple si ispirerà a Nothing? Back...
Da Intel ad AMD, il grande salto di Kulk...
Velocità 12 volte superiore a que...
Una piccola Morte Nera è gi&agrav...
Sei frodi che minacciano gli utenti nel ...
BioShock 4: Take-Two rassicura sullo svi...
Tesla, Musk promette FSD 'quasi pronto' ...
BioWare conferma: il nuovo Mass Effect &...
5 robot aspirapolvere di fascia alta in ...
Xiaomi Redmi Note 14 5G a 179€ è ...
Veri affari con gli sconti de 15% Amazon...
Tutti gli iPhone 16 128GB a 699€, 16e a ...
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: 03:26.


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