PDA

View Full Version : Lightwave file preview prototype (video)



Ryan Roye
04-23-2013, 12:00 PM
Summary:

I've been meaning to do this for a while: Take an existing freeware file browser and integrate it into Lightwave. The idea is that whenever I am looking to open an object in Lightwave's Modeler or Layout, I can visually preview (in draft detail) what the object looks like before loading it up. The video below shows a working prototype of what I'm talking about, but it isn't quite done yet. I want to optimize the way the program runs and add some user-friendly options (such as ability to toggle the preview on/off from Lightwave's file dialogue).


http://youtu.be/dqejxB4_3Sw

Lewis
04-23-2013, 01:06 PM
I like it, very cool project. Does it show textures ?

Ryan Roye
04-23-2013, 01:43 PM
I like it, very cool project. Does it show textures ?

BCview version 0.8h is the base application that is used in my bridge program and you can get it here (http://www.vector.co.jp/download/file/win95/art/fh479828.html) (thank Erikals for doing this nifty post (http://forums.newtek.com/showthread.php?135109-Lightwave-3party-LWO-3DViewers) about available 3rd party viewers!)

And Yes it does do textures. UV mapped textures and things like bump maps will typically show okay, but there's less support for complex node setups, texture layers within surfaces, procedurals etc (which will load, but may not display correctly). Here's an example real-time preview:

http://www.delura.tanadrine.com/image_autoupload/bcviewpreview.jpg

BCView's interface is tacky, but it gets the job done. By pressing f1-f3, it shows you these windows where you can tweak the view settings to your liking (speed vs. detail). Note that default poly limits are set quite low so you may need to bump them up a bit.

http://www.delura.tanadrine.com/image_autoupload/bcviewpreview2.jpg

But mainly I used this program for its mod-ability and lightweight programming.

geo_n
04-23-2013, 11:02 PM
Looks cool! Do you need to have lightwave open to preview the lwo files?

nickdigital
04-23-2013, 11:32 PM
This looks great. I really need to look at AHK more.

Simon-S
04-24-2013, 03:10 AM
Looks awesome! How long until its ready to release?

Ryan Roye
04-24-2013, 05:19 AM
Looks cool! Do you need to have lightwave open to preview the lwo files?

BCview is originally a self-standing program, so if you want you can use it without Lightwave to view various model files. BCview only appears to support .LWO and .MQO files at this time.


Looks awesome! How long until its ready to release?

I want to wait until after my system upgrade (likely this weekend) so that I can do some testing on windows 7/8 and make sure it works okay on those operating systems as well. Also, I need to whip up a convenient way to install the program as it activates through a slightly modified Lighwave shortcut. Finally, I want to add some buttons or modifiers that allow the user to quickly toggle between Low/high detail setting presets, or to toggle the viewer itself.

tcoursey
04-24-2013, 07:32 AM
I too hate that Lightwave doesn't have something like this NATIVE. It seems simple enough. It's sometimes the little things the difference. Great work. I like the idea of using the open/load dialog too.

I found a program that makes THUMNAILS of your 3D assets and you can view those in your load/open dialogs by pressing the view thumbnails option. However your limited to the actual thumbnail not a live 3d view. It works pretty well, but it also costs money.

Can't wait to see what you release! Thanks.

Ryan Roye
04-24-2013, 08:06 AM
I found a program that makes THUMNAILS of your 3D assets and you can view those in your load/open dialogs by pressing the view thumbnails option. However your limited to the actual thumbnail not a live 3d view. It works pretty well, but it also costs money.

They are justified in charging for a thumbnail app, generating thumbnails from 3d models automatically is NOT an easy or simple process from the programmer's end of the rope.

My original idea was to use jpg thumbnails, but I quickly discovered I'd have to solve some additional problems:

1) Taking the Snapshot; How?: Lightwave's viewport setup can vary. Some people work in 4x windows, some people have dual monitor setups, etc. I'd have to write the program to compensate for this if I didn't want people to be stuck with uselessly small thumbnails. There's just so many variables to account for.

2) Zooming/standardization: This is a problem because if the user zooms out too much, the jpg thumbnail will be too small to be useful. The program would trigger whenever the user hit CTRL-S... and wherever the object was in 3d space is what the user would get (which leaves the possibility of useless thumbnails). This also makes standardized thumbnails (IE: all model snapshots being 3/4th view) very difficult to do. Theoretically I could use color scans from Autohotkey to detect where a model is on the screen... but then what if the user has a custom background color in their viewport? It is a code spaghetti mess.

3) Caching: The implementation that I think is possible with Autohotkey would require the user to run a cache action that opens up all of the models and takes pics of them. I didn't like that idea... I could use BCView's built in snapshot feature to do it, but BCview does have limitations in what it can display and those errors would show up in the thumbnails. Doing it through Lightwave would be a slow and inefficient process.

Anyhow, I'm trying to get the program I have in place as snappy as possible. I'm sure it'll run tons better on a machine that isn't 10 yrs old, but those little things count.

tcoursey
04-24-2013, 08:14 AM
They are justified in charging for a thumbnail app, generating thumbnails from 3d models automatically is NOT an easy or simple process from the programmer's end of the rope.

My original idea was to use jpg thumbnails, but I quickly discovered I'd have to solve some additional problems:

1) Taking the Snapshot; How?: Lightwave's viewport setup can vary. Some people work in 4x windows, some people have dual monitor setups, etc. I'd have to write the program to compensate for this if I didn't want people to be stuck with uselessly small thumbnails. There's just so many variables to account for.

2) Zooming/standardization: This is a problem because if the user zooms out too much, the jpg thumbnail will be too small to be useful. The program would trigger whenever the user hit CTRL-S... and wherever the object was in 3d space is what the user would get (which leaves the possibility of useless thumbnails). This also makes standardized thumbnails (IE: all model snapshots being 3/4th view) very difficult to do. Theoretically I could use color scans from Autohotkey to detect where a model is on the screen... but then what if the user has a custom background color in their viewport? It is a code spaghetti mess.

3) Caching: The implementation that I think is possible with Autohotkey would require the user to run a cache action that opens up all of the models and takes pics of them. I didn't like that idea... I could use BCView's built in snapshot feature to do it, but BCview does have limitations in what it can display and those errors would show up in the thumbnails. Doing it through Lightwave would be a slow and inefficient process.

Anyhow, I'm trying to get the program as snappy as possible. I'm sure it'll run tons better on a machine that isn't 10 yrs old, but those little things count.

Good points. I wasn't challenging the idea or anything. Just letting others know until your program is ready there are some options, albiet $ options. Can't wait to see your program and be able to implement on our production machines.

If you get it snappy on a 10 year old machine I'm sure those with modern production machines will be very happy with the reulsts. Good luck!

zapper1998
04-24-2013, 08:22 AM
this is really awesome, wow

thank you..

:)