The online racing simulator
LFS Car Viewer (PC / Mac / Linux)
(89 posts, started )
Very nice work here becky... ive seen some of your work, including the SRA manager, and i must say... this one shines!

3 cheers for becky.. hip hip (horay) hip hip (horay) hip hip (hoooraay)

but seriously well done!

plus this was my 100th post.... so you should feel special :P
Becky, testing here on my iMac, the skin viewer works perfectly, I'm actually right now gonna try and make an Icon for it, and if you like it you can use it.

I also have an iBook that I could test the PPC bit on in the future if need be.
is the mac verion released now is for PPC or intel mac? It doesn't even think the icon is an application on my G5 PPC

EDIT: just saw top post
It's Intel only, and it IS a .app, just without an icon.
Ah heck so there is an LFS user with a PPC Mac afterall. :/ ! Well for the time being i'm at a complete standstill on the PPC front because I just dont have a machine I can use to identify and sort out whatever the issue is with it. Normally there's loads of PPC machines at work but we've just flogged our last one (well actually it was given to charity - which is ironic because I have to be a charity to work there!).
Wish I could help more. I have lots of Mac's been a user since early 90's. On the desk are MacPro and G5, plus have a G4 here, and MacBook (Intel) and iBook G3, Probably my old G3 tower is around too.

I've had no problem getting it to run on my MacPro. The icon did look like a piece of paper but clicked it and started. Put my F1 texture loaded right up after a program restart. See what you mean about the view rotation. Hehehe.

What Resolution does your view import the textures at? I have noticed my textures at 2048x2048 in the viewer seem to be scaled or something the logos come out being lower resolution in the viewer and blurry.

I'm really happy you're doing this. Great work!!

Things I'd like to see.
1. Re-sizable windows.
2. Two zoom features, one for mouse wheel maybe. Also to rotate around the car and another to have a move and zoom freely around the car, not locked on the center.
Rotation is fixed but I think the BF1 model starts at the wrong rotation which makes the controls relatively useless, i've been ignoring that problem because i've been planning to do away with them and use cmx files instead. All other cars are fine under release 7.

To unlock from the centre hold the mouse and press the up/down arrows, this will change your distance from the view rotation. I did plan on improving the camera - but I havn't yet come up of a better way.

Window resizing I guess would be nice, I actually deliberately turned it off to hide from a problem caused by resizing a graphics canvas, but I guess I can destroy the graphics canvas and recreate it when a resize is detected.
#33 - FL!P
Quote from neglouseight :Wish I could help more. I have lots of Mac's been a user since early 90's. On the desk are MacPro and G5, plus have a G4 here, and MacBook (Intel) and iBook G3, Probably my old G3 tower is around too.

About the same here. I can test on a MacPro, a MacBook Pro, and a G4 QuickSilver. I also have a blue & white G3, a Performa, a LC and a SE somewhere, but I won't test on them!

I tried carview on the MacBook Pro and this is very promising, Becky! Bravo! I noticed a few problems, but I don't think you need any bug reports at that point, right?
Well other than the BF1 rotation and the fact that the car models are not perfectly mapped sure, I know about those two and both should be fixed if and when I make it read cmx files natively.

Actually creating cmx files was the first thing I tried to do, but that turned out to be unwise when being a brand new user of a 3D engine - as it plunged me deep into surfaces and vertices when I didnt even know the basic command set... ! Now i've written the application I hope to return to the model importing aspect and get it to read cmx files natively, in doing so i'll fix both of the above mentioned issues. If I cant get cmx working then i'll just fix the BF1 rotation issue.
I've identified the fault which prevented me from compiling on the PPC machine, or at least, i've identified that it isn't my car viewer application. The machine isn't compiling anything at all - even the stuff I write for work! So i'm on that now then i'll get the universal binary version released .
Something is wrong when it closed upon click right? :S
New Release 8 is a universal binary and supports PPC Macs, there are no feature differences from R6 but Mac support is now complete.
Quote :Something is wrong when it closed upon click right? :S

Probably, was it a one off?

I've found a fault that lies in the 3D engine, it can cause the program to exit when loading or destroying the 3D media (something that happens when changing viewed car or switching on/off environment mapping). I could debug it, seems like some kind of memory leak, but as i'm going to write my own loading function in order to support cmx that seems like a fools errand.
#39 - FL!P
I'm not sure how to reproduce it at will, but sometimes when I change the Mapping Mode setting to Off the cars become white, like no skin was loaded yet, and I can no longer change that setting successfully until I quit and relaunch carview.

The first screenshot shows how it looks when turning the mapping mode off works as expected. The second screenshot shows how it looks when the problem occurred, with mapping mode set to both Off and Normal (which makes no difference, then), and the third screenshot shows how it looks when mapping mode is set to Anodised.

This is a on MacBook Pro running 10.4.9.
Attached images
screenshot1.jpg
screenshot2.jpg
screenshot3.jpg
It's not removed the old models before loading the new ones. I swear the command is issued, but sometimes the model just doesnt get destroyed!

There isn't really another way for me to remove the texture layer completely without destroying and reloading the model, it appears to be a limitation of the engine.

There seems to be some memory leaks in the whole loading/unloading part of the system.
#41 - Tomi
Did you start the Linux version since your last post referring to it ?
Ubuntu would not boot the machine I have set aside for Linux, so i'm going to try Kubuntu next. I downloaded it last night but then found I was out of CD's to burn.

I cannot make absolute guarantees on the Linux version yet, i've still never had it installed let alone written a GUI + 3D based program for it! I think what i've done will work, probably a bit like the Mac where I have to make some minor tweeks here and there for the layout.

The bit i'm not sure on yet is whether the layout will make any different between Gnome and KDE.
#43 - Tomi
If ubuntu doesn't boot, you should try another distro than kubuntu because the internals are the same (kernel + userland). They only differ by the choice of the window environment (just a different set of preinstalled packages).

A computer that doesn't boot linux is a rare case nowadays, you may have a very specific problem. I know some HP computers with buggy SATA controllers need kernel options at the boot prompt for example. Before burning CDs for each distro I'd suggest doing a google search with your specific hardware.

Which language/portable libraries did you use for the windows/mac versions ?
Quote from Becky Rose :I swear the command is issued, but sometimes the model just doesnt get destroyed!

isnt there any way to check if the model gets dumped ?
Quote :isnt there any way to check if the model gets dumped ?

Not really, I keep track of that myself. The engine should be adhering to the instructions but doesn't always do so.

entity:TEntity=loadMesh("")

will load an object from disk into the type TEntity, to destroy it I do this:

entity.freeEntity() or freeEntity entity
entity=null

I keep track of whether an object exists by whether it has a null value or not, but I set this myself.

(EDIT: The TEntity instance is destroyed when I do garbage collection as it has no pointer)

It's either a memory leak in the TEntity type (part of a 3rd party 3D extension), or it is queing the instruction and is unable to complete because entity=null when it gets around to completing its task.

Quote :If ubuntu doesn't boot, you should try another distro than kubuntu because the internals are the same

I have two suspiscions as to why it failed, it's either because I do not have an fd0 device (my only error message), or it's Gnome that is crashing. The hang up occurs when the GUI initialises, I get a white screen and a mouse cursor and thats it. Kubuntu uses KDE instead of Gnome - thus providing a good diagnostic method as to what is wrong.

Quote : Which language/portable libraries did you use for the windows/mac versions ?

It's written in a wierd multi-platform tool that kinda mixes C, object orientated (although not C++ wierdly), and BASIC. It's called BlitzMax - I view it as an excellent intermediary where BASIC isn't powerful enough but C++ is still too much of a pain in the RS232C port.
#46 - Tomi
Quote from Becky Rose :
I have two suspiscions as to why it failed, it's either because I do not have an fd0 device (my only error message), or it's Gnome that is crashing. The hang up occurs when the GUI initialises, I get a white screen and a mouse cursor and thats it. Kubuntu uses KDE instead of Gnome - thus providing a good diagnostic method as to what is wrong.

I don't think it has anything to do with a missing fd0 device. I have used computers without a floppy drive for more than 8 years without any problem and if it hangs during the gui loading, this probably an X11 (configuration?) or GDM problem. You should try logging in console mode in another tty and have a look at your /var/log/Xorg.0.log file. I believe there is also a /var/log/gdm directory too.


Quote :
It's written in a wierd multi-platform tool that kinda mixes C, object orientated (although not C++ wierdly), and BASIC. It's called BlitzMax - I view it as an excellent intermediary where BASIC isn't powerful enough but C++ is still too much of a pain in the RS232C port.

It looks good. Too bad it is proprietary though :\
Quote from Becky Rose :entity.freeEntity() or freeEntity entity
entity=null

i suppose it hasnt got any return value to indicate if anything went arwy

Quote :or it is queing the instruction and is unable to complete because entity=null when it gets around to completing its task.

if thats really the problem the language would be beyond rubbish ... so i doubt thats it
I dunno Shotglas, this is the first time I have used this 3D engine, and i'm not that experienced with the language, i'll figure it out.

On the Linux front I can now say that it is because Kubuntu/Ubuntu does not support my hard disk/sata interface. I'll try a different distro but I cant until next week (CD shortage).
I like this two car mode
This happend when I tried anodised reflection mode, FXR became white and when I switched to F08 this is what happend. And I had to ctrl-alt-del kill it afther couple of movements around
Attached images
twocars.jpg
Quote from Becky Rose :You can move the camera with the cursor keys, you can also hold the right button to change how the up / down keys behave (Or right shift, right command, or right alt - gotta look after the single click Mac users too ).

You may need to click into the 3D screen area before it will accept the commands for it.

I think i'm going to try and make it work with event driven input rather than polled input. This is the first time i've mixed 3D with a GUI and there are things I just didn't know about getting it to work .

HI Becky
without trying to get flamed (prolly will) why the need for Mac users to be able to view the cars etc, I'm under the impression most Mac users have a PC somewhere or PC emulators etc, So they run the LFS viewer on a PC?

ShannonN

LFS Car Viewer (PC / Mac / Linux)
(89 posts, started )
FGED GREDG RDFGDR GSFDG