Oppure

Loading
22/05/18 15:16
Thejuster
Ovviamente nemmeno io sono il tipo da fare flame.

Obiettivamente posso dirti che fin quando si tratta di programmi basilari come:
Gestionali, programmi di download, gestione dei database etc và più che bene.

Ma quando entra nel mondo della grafica, li iniziano a subentrare problemi di prestazioni.
e capisci che il linguaggio fà la differenza.
Come mostrato, seppure entrambi utilizzano lo stesso framework, alcune operazioni è possibile
farlo solo in C#, altre ancora solo in F#

F# è ancora molto più veloce del C# e parliamo sempre del .net

per il mio motore, Nonostante io abbia usato metodi unsafe, e svariati algoritmi ottimizzati
per ridurre tempi di elaborazione di alcune immagini, sono stato costretto comunque a cambiare approccio.


Ma metti esempio che con un algoritmo in C# tramite metodi unsafe, per generare 16 Normal Map.
Impiega tra i 15 - 16 secondi, in vb.net avrei impiegato almeno il triplo del tempo.

E quindi non sarebbe stato per niente performante. Sopratutto per l'utente che utilizza quel determinato programma e paga tot per avere determinati benefici e poi si ritrova solo delusioni.

Avevo pensato anche di passare al Qt C++.

ma capendo il sistema di rendering del Qt, ho realizzato un controllo fac-simile a quello del Qt.

Quindi per concludere, il messaggio era semplicemente questo:

Se devi fare una cosa, falla bene altrimenti non iniziare nemmeno.
Se stai passando al .net, conviene imparare un linguaggio molto più performante. Come il C#.
Che usare il vb.net. O meglio ancora il C++.

L'unico linguaggio che per ora mi ha soddisfatto in tutto è ovviamente il c++.
mi ha disegnato una griglia di 9999 X 9999 blocchi di 32x32 pixel in meno di 1 sec.

In C# una cosa del genere posso solo sognarla.
l'unico problema che mi ostacola del C++ non è il codice o programmarlo.
Ma la scarsità del designer qt di elementi grafici.
Certo c'è il QML. ma è sempre una sorta di wpf, quindi al momento ancora fastidioso da apprendere.




Ultima modifica effettuata da Thejuster 22/05/18 15:34
mire.forumfree.it/ - Mire Engine
C# UI Designer
22/05/18 16:44
Carlo
Postato originariamente da Thejuster:
Ma quando entra nel mondo della grafica, li iniziano a subentrare problemi di prestazioni.
e capisci che il linguaggio fà la differenza.
Come mostrato, seppure entrambi utilizzano lo stesso framework, alcune operazioni è possibile
farlo solo in C#, altre ancora solo in F#

Nessuna offesa, sono interessato solo a sapere di più.
La grafica mi interessa, e le prestazioni della grafica ancora di più.
Per il codice unsafe, me lo avevi postato quando parlavamo di VB6 e .NET, non sapevo che in VB .NET non si potesse usare.
Per ora se devo programmare uso il VB .NET (procedurale), ma sto scrivendo anche in C#.
Già con quel poco che ho imparato di C#, struttura if, cicli for, operatori logici, e poco altro, quando cerco qualche esempio, ora sono in grado di leggere anche dal C/C++ e java.
Tutta preparazione per arrivare alle directX e openGL.
Ironia, le difficoltà le trovo più sulla miriade di possibilità di configurazione di VS, che nei linguaggi stessi.
Ultima modifica effettuata da Carlo 22/05/18 19:27
in programmazione tutto è permesso
22/05/18 18:50
Thejuster
Certo, perché C# essendo C-Like, automaticamente conosci 80% dei linguaggi.
Ovviamente sempre in modo teorico.

Dico ultima cosa, anche perché stiamo andando veramente molto, molto OT.
E bene fare molto attenzione su ciò che deciderai di fare.

Perché tra le DirectX è OpenGL c'è di mezzo il mare.
Hanno un funzionamento completamente differente.

partendo anche dalle semplici coordinate.
In DirectX parti da 0,0 sinistra verso destra, alto verso il basso.
OpenGL è al contrario. da destra verso sinistra, basso verso l'alto.

Le texture vengono caricate direttamente in memoria a differenza delle directX che utilizza variabili
che possono essere distrutte.

In OpenGL le texture le carichi tramite una variabile int.
E occorre obbligatoriamente preparare un viewport. Cosa che si può omettere in DirectX.

Se scegli OpenGL è molto complicato ma Cross-Plattform.
mentre le DirectX sono più facili ma unicamente per windows.

Magari posso realizzare una breve guida sulle OpenGL o meglio ancora una libreria Helper per il C#
come feci tempo fà con MMORpgmaker, in modo da gestire tutto in Manged mode.
mire.forumfree.it/ - Mire Engine
C# UI Designer
22/05/18 19:34
Carlo
Postato originariamente da Thejuster:
Magari posso realizzare una breve guida sulle OpenGL o meglio ancora una libreria Helper per il C#
come feci tempo fà con MMORpgmaker, in modo da gestire tutto in Manged mode.

Una prima guida utile, è quella che dice cosa va implementato in VS e come :k:.
in programmazione tutto è permesso