LuaImg -- an image processing tool

Anything and everything that's related to OGRE or the wider graphics field that doesn't fit into the other forums.
Post Reply
User avatar
sparkprime
Ogre Magi
Posts: 1137
Joined: Mon May 07, 2007 3:43 am
Location: Ossining, New York
x 13
Contact:

LuaImg -- an image processing tool

Post by sparkprime »

As a spinoff from Grit (my project that uses Ogre) I repurposed my custom Lua VM to form a commandline image processing tool. It's been in development on/off for about a year but I've decided to release an alpha now.

This tool is useful for creating special textures offline (e.g. noise textures with particular characteristics) and generally dealing with textures, so I thought this community would be interested. And, of course, I am interested to see what people think of it.

http://www.gritengine.com/luaimg/
User avatar
Kojack
OGRE Moderator
OGRE Moderator
Posts: 7157
Joined: Sun Jan 25, 2004 7:35 am
Location: Brisbane, Australia
x 534

Re: LuaImg -- an image processing tool

Post by Kojack »

(I moved it to General, since Development is mainly ogre related while General is any graphics stuff)

This looks great.

I have a similar but weaker lua based image system that basically is just a wrapper around PixelToaster (cross platform lib that gives a window with floating point colour pixel access). Handy for quick prototyping, but I have no image loading/saving, multiple images or vector support. So it's pretty limited.

LuaImg looks quite useful for scripted processing and generation.
Transporter
Minaton
Posts: 933
Joined: Mon Mar 05, 2012 11:37 am
Location: Germany
x 110

Re: LuaImg -- an image processing tool

Post by Transporter »

I'll add an other option for dynamic image generation: http://docs.ogreprocedural.org/textures.html
User avatar
sparkprime
Ogre Magi
Posts: 1137
Joined: Mon May 07, 2007 3:43 am
Location: Ossining, New York
x 13
Contact:

Re: LuaImg -- an image processing tool

Post by sparkprime »

Kojack wrote: I have a similar but weaker lua based image system that basically is just a wrapper around PixelToaster (cross platform lib that gives a window with floating point colour pixel access). Handy for quick prototyping, but I have no image loading/saving, multiple images or vector support. So it's pretty limited.
That's interesting.

It seems like the ability to be able to hack on images in the LuaImg interactive shell, while having a dynamically updated window to view the changes in real time (possibly even feed back mouse clicks) would be very useful.

Currently I open geeqie side-by-side and when I want to see a change, i write the image disk and wait for geeqie to refresh it. Using PIxelToaster ought to be much better.
User avatar
cybereality
Hobgoblin
Posts: 563
Joined: Wed Jul 12, 2006 5:40 pm
x 12

Re: LuaImg -- an image processing tool

Post by cybereality »

Nice work.
User avatar
Daixiwen
Greenskin
Posts: 105
Joined: Fri Feb 08, 2013 11:30 am
Location: Oslo
x 16

Re: LuaImg -- an image processing tool

Post by Daixiwen »

It looks like an interesting tool to hack or edit textures. Are there any precompiled versions still available? The links on the page give 404 errors and I'm feeling a bit lazy to compile it all by myself ;).
Thanks!
Hardware, n.: part of the computer you can kick
User avatar
Daixiwen
Greenskin
Posts: 105
Joined: Fri Feb 08, 2013 11:30 am
Location: Oslo
x 16

Re: LuaImg -- an image processing tool

Post by Daixiwen »

I decided I wouldn't be so lazy after all, but it's not that easy to compile! I needed to install Visual C++, and I needed to check out the whole repository (a huge 2.5Gb). Every attempt to compile a partial check out of the repo failed. I also needed to download and install ICU in the dependencies folder before I could compile luaimg.
I could share the executable here, but currently the zip file is over the upload size on the forum, and I have no experience with Visual C++ so I don't know how universal the executable is. I don't even know if I compiled a 32-bit or a 64-bit version...
Hardware, n.: part of the computer you can kick
User avatar
sparkprime
Ogre Magi
Posts: 1137
Joined: Mon May 07, 2007 3:43 am
Location: Ossining, New York
x 13
Contact:

Re: LuaImg -- an image processing tool

Post by sparkprime »

Apologies for the 404s, turned out I'd put the links in with filenames like luaimg-0.8.0.zip but uploaded the files as luaimg-0.8.zip

So I renamed the files on the webserver -- the links should work now.


It is a pain to compile I admit, but there's a lot of stuff going on there. ICU is needed since I added text rendering support. A new version coming soon will support DDS import/export including DXT1,3,5 and maybe the newer BCn formats.
User avatar
sparkprime
Ogre Magi
Posts: 1137
Joined: Mon May 07, 2007 3:43 am
Location: Ossining, New York
x 13
Contact:

Re: LuaImg -- an image processing tool

Post by sparkprime »

BTW I don't read these forums that frequently these days, so if you have a problem with luaimg feel free to email me directly on sparkprime@gmail.com
User avatar
sparkprime
Ogre Magi
Posts: 1137
Joined: Mon May 07, 2007 3:43 am
Location: Ossining, New York
x 13
Contact:

Re: LuaImg -- an image processing tool

Post by sparkprime »

Quick update: Now supported (in version 0.9) is DDS export/import including BC1-5, mipmaps, cubemaps, and volumemaps.

Note that this makes it a great commandline tool for creating dds files on Linux.

I'd also like to support anigifs but not sure when I'll have time to do that.
PhilipLB
Google Summer of Code Student
Google Summer of Code Student
Posts: 550
Joined: Thu Jun 04, 2009 5:07 pm
Location: Berlin
x 108

Re: LuaImg -- an image processing tool

Post by PhilipLB »

Are the volume maps compatible with the Volume Component? :)
Google Summer of Code 2012 Student
Topic: "Volume Rendering with LOD aimed at terrain"
Project links: Project thread, WIKI page, Code fork for the project
Mentor: Mattan Furst


Volume GFX, accepting donations.
User avatar
sparkprime
Ogre Magi
Posts: 1137
Joined: Mon May 07, 2007 3:43 am
Location: Ossining, New York
x 13
Contact:

Re: LuaImg -- an image processing tool

Post by sparkprime »

DDS is a standard so as long as my code (and Ogre) doesn't have any bugs it ought to be fine.
Post Reply