POV-Ray : Newsgroups : povray.general : tga2df3.exe? : Re: tga2df3.exe? Server Time
3 Aug 2024 02:22:48 EDT (-0400)
  Re: tga2df3.exe?  
From: Ross
Date: 4 Jun 2004 11:35:03
Message: <40c096a7$1@news.povray.org>
"Steve Shelby" <ssh### [at] shelbyvisioncom> wrote in message
news:40bfe2bc@news.povray.org...
> I downloaded tga2df3.exe from Gilles Tran's website,
> http://www.oyonale.com/ressources/english/sources13.htm . It's supposed to
> allow you to create df3 files from a series of tga bitmaps. It looks like
a
> simple dos command line program, and when I open it, it says "Enter base
> name of files to convert". I'm not sure exactly what is called for here,
but
> when I type something in and then press Enter, the program either
dissapears
> entirely, or I get a fatal error message. I tried this on two different
> machines, win98, and win xp, and the results were the same.
> Has anyone out there used this program successfully? Any ideas what my
> problem might be?
> Thank you,
> Steve Shelby
>
>

as someone answered and all, i'll just take this moment to go off on a
tangent.

I know that the linux version has some faults to it. it has atleast one
potential buffer overflow bug, and segfaults in several usages that i'd
consider typical. i think the windows/dos version has the same problems. i'm
probably 97% done with a new tga2df3 that improves performance dramatically
in my testing, taking less than half as long. it also does not error out in
bad and user-unfriendly ways. with the old tga2df3, one of my test cases
took over 45 seconds (wall time) to complete. my redesigned version took 22
seconds (again, wall time). This was for a set of 100 800x600 tga images i
think... on a 3 or 4 year old computer. it's not a true benchmark, since the
original is C and mine is C++, however the same compiler optimization levels
were used, and gcc 3.2.3 for the old tga2df3 and g++ 3.2.3 for my version.
memory usage for my version was roughly 300k i think, the old version was
way less. meh.. trade-offs. 300k is nothing.

also, it is ISO C++ compliant (as far as i know) and the code compiles
cleanly on both windows and linux. the only drawback is that the usage you
had problems with, supplying a basname, isn't supported because that crosses
into handling operating system specific filesystems[*1]. instead you have
several options of how to get the filenames (reading from a list in a file,
redirecting output of one program to input of tga2df3, and more), and
options on the output filename.

In any event, i was hoping(I stress the word "hoping") to finish up the code
this weekend and release the source next week. right now i'm in the "I have
to perfect everything" mode and if i don't bite the bullet and release it
soon, it might be in that stage for ever. i'm hesitant to release binary
versions, but i doubt everyone who uses tga2df3 has a compiler handy. i only
have a crappy version of WindowsME that came with my laptop, i'm not sure of
the binary compatibility between it and real versions of Windows. anyone
know? i really don't develop for windows. (i'm using gnu g++ on windows.
anyone know if Microsofts free C++ compiler works in ME? it says it
doesn't...)

future additions might be a cross-platform GUI... who in windows wants to
start up a dos prompt just to run a stupid program? not me. linux isn't much
of an issue since you almost always have a shell open. this could be a bad
assumption, but that's how i work anyway. i'd keep the GUI platform-agnostic
as much as possible anyway.

alas, if you read this far, thanks for listening :)
-ross


[*1] boost libraries (http://www.boost.org) provide a way to deal with
various OS filesystems in a standards-compliant C++ way, but it would be a
dependancy that I don't want at this point, for such a small tool.


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.