dettagli - Amiga Magazine
dettagli - Amiga Magazine dettagli - Amiga Magazine
Abbiamo parlato di ... Come al solito, Arninet si rivela una riserva inesauribile per i programma- tori Amiga. Ecco i riferimenti agli archivi contenenti r pacchetti citati in questa puntata (e ad alcuni archivi supplementari): GUI4CLI dev/gui/gui4cli.lha MUIRexx dev/mui/MUIRexx~2~2.lha TritonRexx util/rexx/TritonRexx376.lha ZedRexx util/rexx/ZedREXX.lha (versione dimostrativa) RexxARPlib util/rexx/ral3p3. lha e docs/hyper/RexxArpGuide. lha VAREXX util/rexx/varexx.lha EasyGUI dev/e/amigae.lha (pacchetto di Amiga E) dev/e/EasyGUI.lha (versione aggiornata) dev/e/frumSPlugsll.lha (plug-in) dev/e/Egui-Tools.lha (plug-in e altro) dev/e/multiGUI.lha (finestre multiple) dev/e/Plugin-Bitmap.1ha (plug-in) dev/e/Plugin-TIB.lha (plug-in) MUSE dev/e/Muse.lha Oberon/BGUI dev/obero/bguiob41-7.lha Oberon/GUIEnv dev/obero/guienv376~upl.lha Modula-2/EAGUI dev/gui/M2EAGUI.lha Ada/MUI dev/lang/amiga-ada.1ha ne deila GIJI non e di tipo logico, come per gli altri framework, ma di tipo fisico 11 programmatore deve specificare le coordi- nate e le dimensioni (in pixel di schermo) di ogni componente della GUI, rinuncidn- do alla ridimensionabilità e alla sensibilita al tont in LISO (a meno di implementarla ' inanualmente') Si tratta di un difetto gra- ve, solo par7ialinente controbilanciato dal- la maggiore flessibilith nella gestione degli eventi (fra i quali spicca la possibiliti di ri- Lezione dei messaggi ARexx) Anche in questo la descr17ione "'ld GUI sfmt- ta le liste di F, che però non sono trattate in modo gerarchico (proprio perché si trat- ta di descriLione fisica), oltre di gad- get, possono essere indicati menu, ele- menti grafici, shortcut da tastiera ed eventi di vario tipo I1 programmatore può intera- gire con la GLTI attraverso l'uso di un certo numero di funzioni esportate dal modulo MUSE, che per la verità non ci sono parse proprio coinodissime Considerato anche i1 maggior supporto di terLe parti disponibile per EasyGUI, ci sentiamo di sconsigliare 1 uso di MUSE per i casi più coinuni Altri linguaggi Per esigenze piu sofisticate, è possibile ricorrere ai plz~g-zn, La nostra breve trattazione non esaurisce di certo la gamma dei linguaggi e degli ambienti per la generazione di GUI disponibili su Amigd Molti ovvero estensioni di EasyGUI (implementate come OBJECT di essi, almeno in qualche implementazione, hanno un gedi Amiga E) che forniscono gadget piu complessi o non- stole di GIJI integrato (è i1 caso del Hasic, dello Sn~allTalk, standard, e\entualmente inteifdcciandosi con oggetti BOO- del Logo ), anche se spesso piuttosto primitivo Quasi tutti i PSI preesistenti, dicerse iaccolte di plz~g-zn di terze parti so- linguaggi possono poi interkacciarsi in qualche modo con i no disponibili su Aininet piu diftusi programmi per il disegno di interfacce grafiche, come GadToolsHox (Oberon), oppure con i framework più EasyGUI non è l unica alternativa per i1 programmatore diffusi, conle BGUI (ancora Oberon), MUI (Ada) o EAGUI Amiga E (che, ricordiamolo, può sempre ricorrere a uno (Modula-2) Insomma, anche con i iingiiaggi meno diffiisi 11 qualunque dei bdmework generici), i1 pacchetto MUSE si problema maggiore e quello delld scelta deii'dpproccio piu propone di offrire fun~ionalith analoglie quando non superiori In realta, MUSE soffre di un grave difetto la descri~ioconveniente E dell'esisten7a di questi problemi, in verità, possiamo solo essere contenti! A
Campi stellari La realizzazione di un campo tridimensionale in assembly Negli ultimi tempi, non solo le pagine di Amiga Magazine, ma anche quelle di altre famose testate dedicate alla pro- grammazione, sono state letteralmente affollate di articoli che, per mezzo di equazioni, calcoli matriciali, vettori, e quant'altro la matematica moderna mette a disposizione, tentano di infondere al lettore le basi per la programmazio- ne di un Engine 3D. Purtroppo, come noto, l'attuale gene- razione di Amiga, non è particolarmente adatta alla gestio- ne della grafica 3D, sia a causa del suo sottosistema grafico orientato ai bitplane, sia per la cronica indisponibilità di CPU e memoria veloce sulla gran parte delle macchine in- stallate. Inoltre molti, per mancanza di voglia, o a causa di scarse conoscenze matematiche, non sono in grado di affrontare letture impegnative sul tracciamento di poligoni, sull'imple- mentazione dello 2-Buffer o sulle tecniche di texture, ma preferirebbero semplicemente riuscire a realizzare sul pro- prio Amiga semplici effetti tridimensionali, da utilizzare in piccole realizzazioni software, come demo, intro, ma anche effetti video, animazioni e così via. Nulla comunque esclu- de che, una volta acquisite le necessarie basi di partenza, non si possa poi appr'ofondire l'argomento grazie all'aiuto di testi o pubblicazioni specifiche. Owiamente questo articolo non si prefigge l'obiettivo di affrontare in maniera completa le problematiche relative al tracciamento di punti in uno spazio 3D, ma più semplice- mente intende dare un approccio semplice e lineare al pro- grammatore Amiga che possiede già delle minime cono- scenze di base della programmazione a livello hardware e che vuole cominciare a "masticare" del 3D realizzando un campo di stelle (pixel) che si avvicinano in direzione dell'osservatore. Come sempre, useremo il linguaggio as- sembly, che permette di avere potenza sufficiente, anche su macchine dotate di 68000 o 68020. Consigliamo anche a chi non è direttamente interessato alla creazione di campi stellari, di leggere con attenzione I'inte- ro articolo. Questo infatti può anche essere considerato un pretesto per cominciare ad avvicinare in maniera niente af- fatto teorica la grafica 3D e tecniche di programmazione particolari. L'obiettivo 1 Cominciamo definendo esattamente cosa realizzare: voglia- mo avere un certo numero di punti che, originandosi nella zona centrale dello schermo (teoricamente lontano dall'os- servatore, ossia da chi guarda il monitor), sembrino awici- narsi sempre di più, fino a uscire dai bordi esterni del qua- dro. Per avere una resa migliore, in seguito faremo in mo- do di variare il colore dei pixel tracciati, così che quelli più lontani risultino più scuri, mentre quelli più vicini, appaia- no più chiari. Tutto questo per sopperire al fatto che i pixel, pur avvicinandosi, non aumentano di dimensione. Coloro che non avessero ancora ben chiaro il risultato che otterremo, pensino ad un comune videogioco spaziale 3D, nel quale la navicella del giocatore, che la osserva posteriormente, naviga in linea retta verso le profondità dello spazio, mentre le stelle, o il pulviscolo spaziale si awicinano velocemente. La teoria minima l Come è facilmente immaginabile anche da chi è completa- mente a digiuno di nozioni sulla grafica tridimensionale, ciascuna stella è costituita da un punto definito da tre coor- dinate: Xp, Xp e Zp. Xp definisce la posizione orizzontale - - del punto, da sinistra a destra; Yp quella verti- cale dall'alto verso il basso; Zp la distanza del punto dall'osserva- tore (figura 1). Lo schermo del computer si basa invece sulle sole coordinate Xs e Ys (fi- gura 2), trattandosi di un sistema bidimensio- Fig. 1 - Gli assi del mondo 30.
- Page 3: PIOS E P-OS 11 1997 si è aperto co
- Page 7 and 8: ste pagine, nonostante le evi- dent
- Page 9 and 10: sione 1.5 di ArtEffect. Grazie a qu
- Page 11 and 12: Intervista a Wolf DìetrYicb e Gera
- Page 13 and 14: 1 La simpatica mascotte/logo di GNU
- Page 15 and 16: sempio di un PentiumPro o di un Alp
- Page 17 and 18: zionate Zoom e riquadrate la zona c
- Page 19 and 20: Camera Altitude: 51 Camera Latitude
- Page 21 and 22: GLOSSflRIO ARCnet Amiga Relay Chat
- Page 23 and 24: Me~aggn di uscita p t mihg . NUOVO
- Page 25 and 26: la ricezione (Finestra ri- cezione
- Page 27 and 28: La Draco Motion & un'evoluzione del
- Page 29 and 30: successo LightWave, Photogenics, I-
- Page 31 and 32: struiscono la motherboard e sistema
- Page 33 and 34: Q ualche anno fa il 68040 era la pi
- Page 35 and 36: HTML Come costruire docamenti Ipert
- Page 37 and 38: come si può fare in un qualunque p
- Page 39 and 40: ano conformi alllHTML 3.2. Che cosa
- Page 41 and 42: strarsi. Curioso notare come questo
- Page 43 and 44: Questo tool, realizzato dal greco D
- Page 45: al Rexx. Questa libreria (che è un
- Page 49 and 50: ;Numero di stelle NUMSTARS EQU 5 ;O
- Page 51 and 52: M-TEC T 1230/28LC L'installazione
- Page 53 and 54: T urbocalc è il foglio elettronico
- Page 55 and 56: l l i - Ricaloolo . . Pratezi~ne. I
- Page 57 and 58: Con questi tre requester si imposta
- Page 59 and 60: troviamo anche informazioni generic
- Page 61 and 62: poche settimane di distanza dall'us
- Page 63 and 64: Nome: AWeb-Il 2 1 Ora sipuò ricerc
- Page 65 and 66: Un'immagine deli'ultimo meeting ten
- Page 67 and 68: QUESTO
- Page 69 and 70: Paolo Stefanucci segnala che il met
- Page 71 and 72: Attenzione però: gli hard disk SCS
- Page 73 and 74: datore sono i due strumenti indispe
- Page 75 and 76: plando liste interminabili di armi
- Page 77 and 78: Copper-Demon Valenta Ferenc Copper-
- Page 79 and 80: viene considerata significativa la
- Page 81 and 82: 1 SERVIZIO INSERZIONI GRATUITE COMP
- Page 83 and 84: Q) D m C SoftWare I r Cliianiiirc S
Abbiamo parlato di ...<br />
Come al solito, Arninet si rivela una riserva inesauribile per i programma-<br />
tori <strong>Amiga</strong>. Ecco i riferimenti agli archivi contenenti r pacchetti citati in<br />
questa puntata (e ad alcuni archivi supplementari):<br />
GUI4CLI dev/gui/gui4cli.lha<br />
MUIRexx dev/mui/MUIRexx~2~2.lha<br />
TritonRexx util/rexx/TritonRexx376.lha<br />
ZedRexx util/rexx/ZedREXX.lha (versione dimostrativa)<br />
RexxARPlib util/rexx/ral3p3. lha e docs/hyper/RexxArpGuide. lha<br />
VAREXX util/rexx/varexx.lha<br />
EasyGUI dev/e/amigae.lha (pacchetto di <strong>Amiga</strong> E)<br />
dev/e/EasyGUI.lha (versione aggiornata)<br />
dev/e/frumSPlugsll.lha (plug-in)<br />
dev/e/Egui-Tools.lha (plug-in e altro)<br />
dev/e/multiGUI.lha (finestre multiple)<br />
dev/e/Plugin-Bitmap.1ha (plug-in)<br />
dev/e/Plugin-TIB.lha (plug-in)<br />
MUSE dev/e/Muse.lha<br />
Oberon/BGUI dev/obero/bguiob41-7.lha<br />
Oberon/GUIEnv dev/obero/guienv376~upl.lha<br />
Modula-2/EAGUI dev/gui/M2EAGUI.lha<br />
Ada/MUI dev/lang/amiga-ada.1ha<br />
ne deila GIJI non e di tipo logico, come<br />
per gli altri framework, ma di tipo fisico 11<br />
programmatore deve specificare le coordi-<br />
nate e le dimensioni (in pixel di schermo)<br />
di ogni componente della GUI, rinuncidn-<br />
do alla ridimensionabilità e alla sensibilita<br />
al tont in LISO (a meno di implementarla<br />
' inanualmente') Si tratta di un difetto gra-<br />
ve, solo par7ialinente controbilanciato dal-<br />
la maggiore flessibilith nella gestione degli<br />
eventi (fra i quali spicca la possibiliti di ri-<br />
Lezione dei messaggi ARexx) Anche in<br />
questo la descr17ione "'ld GUI sfmt-<br />
ta le liste di F, che però non sono trattate<br />
in modo gerarchico (proprio perché si trat-<br />
ta di descriLione fisica), oltre di gad-<br />
get, possono essere indicati menu, ele-<br />
menti grafici, shortcut da tastiera ed eventi<br />
di vario tipo I1 programmatore può intera-<br />
gire con la GLTI attraverso l'uso di un certo<br />
numero di funzioni esportate dal modulo<br />
MUSE, che per la verità non ci sono parse<br />
proprio coinodissime Considerato anche i1<br />
maggior supporto di terLe parti disponibile<br />
per EasyGUI, ci sentiamo di sconsigliare<br />
1 uso di MUSE per i casi più coinuni<br />
Altri linguaggi<br />
Per esigenze piu sofisticate, è possibile ricorrere ai plz~g-zn,<br />
La nostra breve trattazione non esaurisce di<br />
certo la gamma dei linguaggi e degli ambienti<br />
per la generazione di GUI disponibili su Amigd Molti<br />
ovvero estensioni di EasyGUI (implementate come OBJECT di essi, almeno in qualche implementazione, hanno un gedi<br />
<strong>Amiga</strong> E) che forniscono gadget piu complessi o non- stole di GIJI integrato (è i1 caso del Hasic, dello Sn~allTalk,<br />
standard, e\entualmente inteifdcciandosi con oggetti BOO- del Logo ), anche se spesso piuttosto primitivo Quasi tutti i<br />
PSI preesistenti, dicerse iaccolte di plz~g-zn di terze parti so- linguaggi possono poi interkacciarsi in qualche modo con i<br />
no disponibili su Aininet piu diftusi programmi per il disegno di interfacce grafiche,<br />
come GadToolsHox (Oberon), oppure con i framework più<br />
EasyGUI non è l unica alternativa per i1 programmatore diffusi, conle BGUI (ancora Oberon), MUI (Ada) o EAGUI<br />
<strong>Amiga</strong> E (che, ricordiamolo, può sempre ricorrere a uno (Modula-2) Insomma, anche con i iingiiaggi meno diffiisi 11<br />
qualunque dei bdmework generici), i1 pacchetto MUSE si problema maggiore e quello delld scelta deii'dpproccio piu<br />
propone di offrire fun~ionalith analoglie quando non superiori<br />
In realta, MUSE soffre di un grave difetto la descri~ioconveniente<br />
E dell'esisten7a di questi problemi, in verità,<br />
possiamo solo essere contenti! A