![]() ![]() ![]() ![]() |
Nog meer installatie-gedoeIk had aan het spreekwoord geen slapende honden wakker maken moeten denken, toen ik onder het motto wat niet weet dat niet deert de euvele moed had om te vermelden (in de vorige aflevering) dat er een versie 3 van POVRay bestaat. Nu vallen allerlei cursistes over mij heen, want waarom moeten zij tweede-rangs spullen gebruiken? Nu ben ik wel gedwongen om de installatie van POVRay3 te bespreken. Zou ik ooit wel aan het bespreken van PovRay zelf toekomen? Ik zal in elk geval duidelijk maken waarom voor de meeste cursisten de 'oude' versie 2 de best bruikbare is. Daar komt nog bij dat de Stichting ST nadrukkelijk onder mijn aandacht bracht dat er in de PD een een nieuwe shell voor PovRay is uitgekomen, die geschikt is voor versie 3. En tja, als je sponsor zoiets zegt, wat doe je dan? Foutje met grote gevolgen De Wet van Behoud van Ellende heeft de vorige keer zwaar toegeslagen. Ik vertelde dat het heel handig is om met .DEF files te werken om Povray aan te sturen. Mijn voorbeeldfile BLOB.DEF had ik verkregen door een 'save commandline' opdracht in de shell PovShell130 te doen na instelling van de parameters aldaar. Ik zei toen dat die file 1 lange regel bevat en dat ik voor het gemak (regels langer dan 72 letters zijn gewoon onhandig te behandelen in de meeste editors) de boel netjes had opgesplitst in regels. Daarvan waren zelfs afbeeldingen te zien (listings 1 en 2). Maar wat ik mij niet realiseerde bij het opsplitsen in
afzonderlijke regels was dat ik op die manier de spaties die de opties
gescheiden hielden, terecht liet komen aan het eind van de nieuw
gevormde regels. En wat blijkt nu? U kunt het wel raden: als Povray de
.def file leest dan gooit die alle einde-van-regel symbolen gewoon
weg. Staan er aan het eind van de tekstregels geen spaties dan wordt
alles aaneen geplakt tot een onbruikbare tekstworst. PovRay komt dan
niet op gang en neemt versneld afscheid met weinig instructieve
meldingen in de trant van 'cannot open input' of 'cannot do anything'.
Ik heb de fout nog verergerd door in mijn onschuld de raad te geven:
type je eigen .def file in aan de hand van listing 2 en op papier is
al helemaal niet te zien dat elke regel eindigt met een extra blanko!
Al die mensen die frusterende uurtjes achter hun computer hebben
doorgebracht maak ik hierbij mijn oprechte excuses. Voor de
duideljkheid heb ik een screendump gemaakt van de tekst zoals de
editor 'Alice' die laat zien. De pijltjes tekens geven een
'einde-van-regel-symbool' teken weer PovRay versie 3 De eerste vraag is: waar haal ik PovRay versie 3 vandaan? Uit de PD-bibiotheek van de Stichting ST natuurlijk (of van een BBS zoals Bearboard in Rotterdam). Een versie voor de ST zonder coprocessor is te vinden op de disk C 138 en voor de TT op disk C 139. Auteur van deze niet-officiële release is Szymon Stasik uit Polen. Wat versie 3 kan Er zijn een groot aantal nieuwe mogelijkheden om raytrace-afbeeldingen nog realistischer te doen zijn. Zo kan je mooie rook maken, vuur en vlammen en ook 'laserbolds' zijn mogelijk. Maar het meest opvallende is wel voor de gebruiker dat je op het beeldscherm de afbeelding pixel voor pixel opgebouwd ziet worden. Dat heeft psychologisch gezien een therapeutische waarde maar meer ook niet. Want wie van de cursisten gaat 15 minuten lang (of nog langer, rekentijden kunnen soms hoog zijn!) naar het beeldscherm zitten kijken? Er is een zeker hypnotisch effect als je gaat staren naar de opeenvolgend zichtbaar wordende pixels, maar is dat leuk? Laten we maar gauw verder gaan met het installeren. Benodigde ruimte Op de floppydisk staat een zelfuitpakkende ZIP-file. Voor mensen met een harddisk is het dus simpel: sleep die file naar de harddisk en dubbelklik hem. In de hiernavolgende afbeelding is te zien wat er in het ZIP-archief zit. Strikt genomen heb je alleen Povray.GTP en Povray.rsc uit te pakken maar de rest van de documenten bevat ook belangrijke informatie. We zien nu al direct waarom versie 3 niet zo geschikt is voor mensen zonder harddisk: de .GTP is maar liefst 832 Kb groot en dat past zodoende zelfs niet op een gewone floppydisk. Ook de hoeveelheid intern geheugen moet groter zijn dan 1 Mb, dus gebruikers met een 520, 520+, 1040, Mega ST1 e.d. kunnen Povray versie 3 wel op hun buik schrijven. Mogelijk komen er andere implementaties die wat kleiner zijn maar zover is het nog niet. Men zal nu beter begrijpen waarom ik deze versie niet zo op de voorgrond breng. Extra nodig Maar met dit Povray programma zijn we er nog niet. Aan diverse voorwaarden moet voldaan worden, voordat dit programma ook daadwerkelijk loopt op de computer. Laten we ze eens achtereenvolgens nader bekijken. Net zoals bij de versie 2 zendt het Povray programma ook zijn uitvoer boudweg naar het scherm. Voor de netheid kan je TOS2GEM gebruiken. Het staat ook erbij op de disks C 139 en 138 in de toepasselijk benaamde folder TOS2GEM. Nu komt de tekstuitvoer tenminste netjes in een echt venster terecht. Zonder dit programma dat de uitvoer opvangt is het mij niet gelukt om Povray werkend te krijgen. Nu eventjes voor de duidelijkheid: TOS2GEM moet in de Auto-folder geplaatst worden, want hij moet bij het opstarten actief worden en daarna onzichtbaar in de achtergrond verblijven. De tweede noodzakelijke is iets dan ENHANCER.PRG heet. Na veel gezoek en geprobeer heb ik uitgevogeld dat het niet werkte. Ik denk dat het een kwestie is van verschillen tussen Duitse TOSsen en de bij ons gebruikelijke Engelse versies. Helemaal zeker ben ik van dat soort computertechnische zaken nooit, maar neem van mij maar gewoon aan: het werkt niet met de 'enhancer'. Het alternatief is: gebruik NVDI versie 2.5 of hoger, want dan gaat het wel. Daarvan is het nadeel voor vele gebruikers: dat neemt extra geheugenruimte in beslag. Voor mensen zonder harddisk geldt: opstarten duurt heel wat langer. Verder heeft niet iedereen NVDI alhoewel is gebleken dat, door de jaren heen, het een programma is dat de mensen blijvend gebruiken, al was het alleen maar om de toegenomen snelheid van afhandeling van grafische zaken op het beeldscherm. Ik ga hier niet verder op NVDI in, want bij dit product wordt een prima handboek geleverd. Heeft men een harddisk en voldoende intern geheugen dan is NVDI een programma dat zonder meer het aanschaffen waard is. Einde reclameboodschap. Een .GTP: wat is dat nauw weer? Programma-files hebben specifieke letters staan in de uitgang (de drie letters na de punt in de naam die in het Engels 'extension' worden genoemd). Zo heb je als allersimpelste .TOS, dat een programma aanduidt dat geen grafische (GEM-)functies gebruikt en op zijn hoogst wat letters opstuurt naar de VT-52 schermemulatie (zie daarover in de vorige aflevering van deze cursus). Over de betekenis van .TTP heb ik het ook de vorige keer uitgebreid gehad, omdat versie 2 van Povray zo'n TTP-er is. (TTP=Tos Takes Parameters). Zonder twijfel is de meest voorkomende benaming voor een progammafile de .PRG (PRoGram), die weinig zegt. Vaak wordt gebruik gemaakt van GEM, maar soms niet. Ik heb diverse programma'tjes in mijn Auto-folder met de extensie .PRG die totaal geen uitvoer geven b.v. De laatste tijd komt de extensie .APP meer in gebruik voor 'APPlications'. Een vertaling voor die naam is 'toepassingen'. Programma's die je als gebruiker vanaf de desktop door een dubbele muisklik bijvoorbeeld activeert zouden allemaal .APP moeten heten maar dit ter zijde. Wat is nu die GTP? Een afkorting van GEM Take Parameters. Laat dat even bezinken en denk terug aan de TTP. Het verschil daarmee is dus dat grafische functies van GEM gebruikt worden wat een TTP niet doet. Maar wel hebben beide types gemeen dat ze 'parameters' mee kunnen krijgen bij het op gang komen. ST kent geen GTP? Hoe weet de computer nu, wanneer de desktop gebruikt wordt, wat er met een aangeklikte file moet gebeuren? Dat komt hij te weten door bij het opstarten op de boot-drive een file te zoeken met de naam Desktop.inf (of Newdesk.inf voor moderne TOS-versies). Kan die zo'n file niet vinden, dan wordt een soort default-dektop file uit het ROM-geheugen gehaald (uit de TOS zou je ook kunnen zeggen). In die file staat in een soort geheimschrift wat er met de diverse typen files moet gebeuren. Kijk ik in mijn Newdesk.inf op de Falcon dan zie ik daarin onder andere staan #G 03 FF 000 *.APP@@@ #G 03 FF 000 *.PRG@@@ #Y 03 FF 000 *.GTP@@@ #P 03 FF 000 *.TTP@@@ #F 03 04 000 *.TOS@@@ wat programmafiles voor extensie moeten hebben. Let vooral of de regel met: #Y 03 FF 000 *.GTP@ @ @ want daar gaat het om. Is die er niet dan moet die toegevoegd worden. Ga daartoe de teksteditor in (Tempus gebruik ik zelf, maar First Word Plus o.i.d. gaat ook) en typ de boel foutloos in. Save de file en na een Reset van de computer moet die dan voorgoed weten dat een GTP-file een programma bevat dat moet worden gestart. Klopt het niet, dan zal je na het aanklikken van onze Povray.GTP een box op het scherm krijgen met 'SHOW', 'PRINT' of 'CANCEL', want dan denkt die nog dat het een tekst bevattende file is (bij gebrek aan beter weten). Klopt het wel, dan zal na aanklikken het Povray programma actief worden en komt de bekende box op die we ook van TTP-programma's kennen. Vul de naam in van een .DEF file (die van de vorige uitgave van deze cursus). Maar wat je ook intypt: fluks verdwijnt Povray weer van het scherm. Daar schiet je dus weinig mee op, maar niet getreurd we gaan nog meer installatie-zaken doen. GTP gebruiken Ik kan de lezers verzekeren dat heel wat tijd heb zitten
verknoeien, voordat ik er achter kwam hoe ik versie 3 aan de praat
moest krijgen. De truc die iedereen kan doen is: meld Povray.GTP aan
als applicatie die verantwoordelijk is voor de .DEF files. Ga daartoe
eerst de GTP-file een keer beklikken, zodat die in het desktopvenster
zwart staat afgebeeld (als uitgekozen dus). Ga naar het menu 'Options'
van de desktop Plaatje zien Waarschijnlijk is het versie 3 programma zo groot geworden, omdat talrijke GEM-functies gebruikt moeten worden om de afbeelding tijdens het 'renderen' op het scherm af te beelden. We gaan eerst eens onze oude vertrouwde blob.def file in de editor inladen. We voegen een nieuwe regel toen met de letters '+D ' erin (zonder quotes natuurlijk en vergeet de spatie niet). Zie de tekst hieronder: +iF:\POVRAY\SCENES\LEVEL1\BLOB.POV +lF:\POVRAY\INCLUDE +lF:\POVRAY\SCENES\LEVEL1\ +w160 +h100 +q1 -a +d +x +v +ms1000 +mb25 +b20 +ft +c +oF:\POVRAY\RESULTS\BLOB.TGA (waarin, ik heb het al eerder gezegd, de spaties aan elk regeleind niet te zien zijn!). Het scherm moet dan een afbeelding bevatten die wat lijkt op de onderstaande afbeelding (die geeft het uitrekenen van Textures1.pov weer). Soms zit het grafische venstertje verborgen achter de tekst, dus even wat muizen als die niet direct zichtbaar is. Trouwens, als je goed naar de afbeelding kijkt, dan zie je dat het doorrekenen in de hoogste kwaliteit op een TT de nodige minuten duurt! Een betere shell Op disk B 261 in de Public Domain bibliotheek van de Stichting ST,
zo heeft mijn sponsor mij duidelijk onder de neus gewreven, staat een
shell (een werkomgeving). En wel in de folder ClockPOV.16. Afbeelding 10 In Het allereerste menu'tje dat ter zake doet is 'File' met de keuzes 'Exec PoV', 'Exec editor' en 'Exec viewer'. Zo zet je dus PovRay op gang, verander en typ je PovRay tekstfiles in en bekijk je de resultaten. Ikzelf gebruik als editor 'Alice' (op PD disk A 586) en voor het bekijken van afbeeldingen 'GEMView' (shareware die te vinden is op PD disk C 93 en 94). Je moet wel kiezen voor het juiste type editor. Vooral is het van belang dat die in staat is om, gestart vanuit de shell direct op te komen met de juiste .pov file (die in de shell was opgegeven). Hetzelfde geldt voor de viewer: die moet het juiste plaatje afbeelden. Nieuwe versies van Tempus doen het goed en 'Alice' reageert ook geschikt. Voor het bekijken van plaatjes is GEMView heel bruikbaar. Die geeft na het starten vanuit de shell ook zonder verdere tussenkomst van de gebruiker de juiste file weer. Met 'Quit PovClock' kan je de shell verlaten. Het menu 'Options' Het eerste dat we moeten doen, voordat we met de shell verder uit
de voeten kunnen is het opgeven van de plaatsen waar van alles te
vinden zal zijn. Met 'All pathnames...' (zie vorige afbeelding) krijg
je een box op het scherm afbeelding 12: Geen .def file De vorige keer hebben we het gehad over een .def file waarmee je aan Povray alle benodige parameters (instellingen) kon doorgeven. Voor de duidelijkheid: deze shell maakt dergelijke files niet aan. De .set files zijn voor ons en voor PovRay zelf onleesbaar. De shell zorgt voor de juiste aanroep van programma's en het doorgeven van parameters. Daar kom je als gebruiker dus niet meer tussen. Zolang je gebruik maakt van de shell om Povray en hulpprogramma's te draaien heb je nergens last mee. Met een floppydisk De shell neemt al gauw 150 Kb aan ruimte op de floppydisk in beslag. Maar met wat werkfiles, PovRay versie 2 (want 3 is veel te groot om op een flop te passen) en een editor hoeft de disk nog niet vol te zijn. Voor mensen met weinig intern (RAM-) geheugen is het ook oppassen: gebruik je deze shell (150 Kb) en PovRay versie 3 (ruim 800 Kb) met NVDI (ook weer 100 Kb) en TOS2GEM (20 Kb maar) dan loopt een 1 Mb geheugen gauw vol. Maar met versie 2 zou het moeten kunnen want die verbruikt maar 400 Kb. Shell- en Povray-versies Ikzelf heb eerst even geëxperimenteerd of het mij lukte om die lastige versie 3 (je weet wel die een GTP-programma is) te gebruiken in de shell. Het gaf geen noemenswaardige problemen. Behalve dan dat het display-venster (waarin de je de vooruitgang van het plaatje opgebouwd ziet worden) niet zichtbaar wil worden. Ook versie 2 word goed aangeroepen; alleen lukte het mij niet om de uitvoer naar een GEM-venster te krijgen. De meldingen bleven op het VT-52 scherm terecht komen. Je kunt een 'compatibiliteit' voor de shell opgeven. Als je dat hebt ingesteld op versie 3 maar je gebruikt versie 2 (die toch wat sneller is) dan worden wat parameters (opties) aan PovRay doorgegeven die als 'invalid option' worden gemeld. Dat kan geen kwaad, want versie 2 negeert die opties gewoon. Voor de netheid moet je natuurlijk zo niet werken: gebruik je versie 2 stel dan de shell in op die versie; gebruik je versie 3, zet de boel dan compatibel met versie 3. Instellingen doen Bekijken we alles wat er zo in afbeelding 10 te vinden is, dan
valt er het nodige uit te leggen. Gelukkig heb ik de meeste dingen al
in de vorige uitgave besproken, dus veel zal bekend voorkomen. Ten
eerste is er input nodig in de vorm van een file van het type .pov die
tekst(opdrachten) bevat die een PovRay-plaatje beschrijven. Links
boven zien we dat er een filenaam moet worden opgegeven. Klikken op
het veld met de naam laat de fileselector verschijnen waarin je de
file kunt opgeven. Let wel dat het knopje met de optie +I zwart staat
(dus geselecteerd), want PovRay draaien zonder invoer is als water
naar de zee dragen: het schiet niet op. Evenzo moet er tenminste een
folder (of disk) zijn opgegeven waarin gezocht wordt naar verder
noodzakelijke files. Er zijn maar liefst 5 verschillende paden aan te
geven. Zie het voorbeeld hiernaast: Ook hier weer zal het intuïtief duidelijk zijn hoe je die instellingen moet doen: klikken op een naamveld en de selectorbox komt op het scherm. Maar niet heus. De hier weergegeven paden zijn eerder ingesteld via het menu 'Options' en de keuze 'Pathnames...' (zie afbeelding 12) en moeten zo ook weer veranderd of aangevuld worden. Wil je niet naar het menu toe, dan kan je ook binnen de box blijven: rechtsonder zit de keuze 'Pathnames dialog' die hetzelfde doet. Eenvolgende keuze die gemaakt kan worden is voor 'Verbose' of niet. Zet je dit aan dan is PovRay erg babbelziek over zijn activiteiten. Ik waardeer dat wel. Een volgende keus is: 'Wil je pauzeren of niet'. Zo ja, dan kan ook nog gekozen worden tussen voor of na (before/after) beëindiging van het PovRay-programma. Ik kies 'before' en zet de knop gemerkt met +P op zwart. De reden hiervoor is: Povray neemt soms afscheid met wat meldingen op het scherm die zo snel verdwijnen dat je niet kunt lezen wat er heeft gestaan. Helemaal helpt deze optie niet: met versie 2 van PovRay lijkt het effect TOS-versie afhankelijk te zijn. Meestal hebben mensen die een alternatieve desktop gebruiken zoals 'Gemini' of 'Thing' geen last met dit probleem van de snel verdwijnende schermuitvoer. Die desktops weten de VT-52 uitvoer goed te onderscheppen en in een venster, dat zijn inhoud niet verliest, af te beelden. De PD-versie van Gemini is te vinden op de disk A 671 (Nederlandstalige versie). Een optie die we van de vorige keer herkennen (even aandacht erbij cursisten) is 'Early exit by key hit' wat zoveel wil zeggen: laat PovRay stoppen wanneer ik dit wil. Dat is natuurlijk geen probleem: u bent altijd de baas over de computer: stekker uit het stopkontakt trekken is dan wel een wat dictatoriale maatregel maar het helpt wel. Ook een druk op het kleine Reset-knopje of, bij sommige modernere versies van ons TOS operatingsysteem, het gelijktijdige indrukken van de toetsen Control-Alternate-Delete stoppen PovRay ook effectief in zijn werking. Maar netjes is het niet. Om toch te zorgen dat Povray op commando kan stoppen is er deze optie: staat die aan, dan wordt naar het toetsenbord geluisterd. Voor versie 3 is de gelukkige toetsencombinatie Control- met Q-toets en voor versie 2 schijnt dit een combinatie met Control-S en Control-Z te zijn die de noodstop in werking stelt. Onderbroken plaatjes kunnen weer worden voortgezet als de optie 'Continue aborted trace' wordt gebruikt. Staat die optie aan als je nog niets hebt gedaan (de eerste keer dus voor een plaatje), dan is er geen gedeeltelijk .TGA plaatje aanwezig en wordt geprotesteerd met 'cannot find outputfile'. Die maakt die (zowel versie 2 als 3 zijn elk slim genoeg) dan alsnog aan. Geen probleem dus om deze optie altijd aan te hebben staan. Je kunt ook gebruik maken van een buffer om de uitvoer tijdelijk op te slaan. Dit bespaart een heleboel toegangen naar de disk. Normaal schrijft PovRay na berekening van een beeldlijn de resultaten weg maar met de buffer aan (grootte instelbaar in stappen tussen 64 Kb en 2048 Kb (dus 2 Mb)) pas als de buffer vol is. Natuurlijk moet je wel interne geheugenruimte hebben om deze buffer op te bergen. De voor en tegens van de buffer en zijn grootte zijn in de vorige cursusaflevering uitgebreid behandeld. Ik ga er niet weer over beginnen, want iedereen kan het teruglezen. Verdere opties Ik zal nu wat mogelijkheden bespreken die ook specifieke zaken
bevatten waarmee alleen PovRay versie 3 weg mee weet. Kijk weer in
afbeelding 10. Rechts in de box is te vinden waarin het format van het
resulterende plaatje moet worden opgeborgen. Voor versie 2 van PovRay
is 'uncompressed Targa' de juiste keuze, bij versie 3 zijn de andere
keuzes zinvol En het is jammer: mijn versie van GEMView dateert uit 1993 en toen
bestond het PNG-format nog niet. Maar zonder twijfel zal je met de
nieuwste versie van GEMView wel PNG-files kunnen lezen. Eigenlijk is
het een niks-probleem, want met een Netwerkbrowser - zoals CAB - kan
je natuurlijk WWW-pages inladen die voorzien zijn van PNG afbeeldingen
en met behulp van 'Penguin' kan je WWW-pages samenstellen. Waarvoor
het andere format goed is weet ik niet; misschien is het iets dat heel
populair is bij de Windhoos-jongens. De optie +O kan niet afgezet
worden wat logisch is: waarom zou je PovRay draaien zonder uitvoer? We
hebben het al bij de vorige aflevering gezien: je hoeft niet altijd
een afbeelding in volle glorie te berekenen. Vooral in het
test-stadium kan een mindere kwaliteit bruikbaar zijn, zeker als daar
tegenover staat dat de rekentijd zoveel korter is. Ook hier heb je de
keus tussen kwaliteit 0 en 9 Verdere opties De 'Antialiasing quality' komt later wel ter sprake in de cursus
en nu kan ik ervan zeggen: laat maar voorlopig afstaan. Aanzetten kost
rekentijd die verspild is als het niet nodig is. En wanneer het nodig
is? Dat zal ik later heus wel vertellen! Een typische optie die ik nog
niet kende is 'Supersampling'. Een technische term die zoveel betekent
als (ik ben maar een leek in die dingen hoor) 'meer meten dan strikt
nodig is waardoor het eindresultaat beter wordt'. Uitsloverij dus,
maar wel met merkbaar resultaat. Als je Advanced options In figuur 21 zitten De klok In heb het de vorige keer al gezegd: ik ga het niet hebben over
animaties (bewegende beelden). Voor normale mensen vreet dat zoveel
rekentijd dat de lol er gauw af is. Ik zal dan ook de opties die met
animatie te maken hebben niet bespreken Slotopmerking Niet alleen kent de shell de mogelijkheid om alle menukeuzes via het toetsenbord te activeren, ook in de meeeste dialoogboxen zijn er shortcuts (Wie kent daar trouwens een geslaagde Nederlandse term voor?). Welke dat zijn staat aangegeven door een onderstreepte letter. Wil je nu de Pathnames dialog... hebben zonder met de muis aan te klikken, dan is het indrukken van de Alternate toets tesamen met de N-toets voldoende. De cursus Uiteindelijk, lang verwacht, is nu het moment gekomen om af te stappen van al die ingewikkelde computerkwesties en gewoon PovRay te gebruiken voor waar die bedoeld is: een uitlaadklep voor uw grenzeloze fantasie! Maar helaas (ik heb de vorige keer er al over geklaagd) heeft de redactie mij op rantsoen gezet. Meer dan het aantal nu gevulde pagina's krijg ik niet in deze uitgave van het blad. Tot de volgende keer dan maar! Piet Vogelaar Copyright © Rein Bakhuizen van den Brink Last updated on 1 september 1999 |
![]() ![]() ![]() ![]() |