rTexViewer
rTexViewer
A simple and easy-to-use textures viewer, editor and image board.
What can I do with rTexViewer
?
rTexViewer
is a powerful image viewer and editing tool that allows you to organize images into an image board, perfect to generate moodboards for reference and inspiration. It also includes multiple image editing tools to optimize pixel format, crop, resize, flip or apply custom GLSL shader effects, including an integrated shader code editor with hot-reloading.
With rTexViewer
, you can easily view and manage your game textures or sprites, and also export them in multiple formats.
Features
- Three view image modes:
TABS
,BOARD
orFOLDER
- Load/Save images/full-board as
.rtv
project file (non-destructive, image data compressed) - Load image file formats:
.png
,.qoi
,.bmp
,.tga
,.jpg
,.gif
,.hdr
,.ppm
,.pgm
- Load compressed texture formats:
.dds
,.pkm
,.ktx
,.pvr
,.astc
(if supported by GPU) - Load images from URL (copy&paste), saved automatically into a
downloads
directory (Windows only) - View image options:
Zoom
,Pan
,Alpha
,Background
andScale filter
- View image information:
Name
,Size
,Format
,Memory
,Selected Pixel info
,Color Palette
- Edit images: Change image pixel-format with real-time preview
- Edit images:
Flip
,Rotate
,Resize
,Resize Canvas
,Crop
,Alpha Clean
and more - Edit images: Visual crop mode, just draw a rectangle and crop
- Edit images: Define image Text Description, saved on
.rtv
- Edit images: Assign GLSL shaders effects to images, saved on
.rtv
- Image shader code editor with auto-hot-reloading of shader changes
- Multiple sample GLSL shaders provided for reference and new effects creation
- Export single images as
.png
,.qoi
,.dds
,.raw
or byte array.h
- Export full image board as a single image
.png
,.qoi
or.dds
- Export image palette as
.png
or.pal
(up to 256 colors) - Multiple UI styles supported, including latest
Amber
style! - Multiple window options: clean mode, borderless, top-most, mouse pass-through
- Command-line support for batch image processing and formats conversion
- Completely portable (single-file, no-dependencies)
Basic Usage
Open the tool, drag & drop your images and view/edit them or place/organize them in the board mode.
Edited image can be exported as .png
, .qoi
, .dds
, .raw
and .h
code file. Images collection can be saved as a .rtv
project file.
rTexViewer
desktop version comes with command-line support for batch image processing and format conversion. Up to 256 chainned transformations can be applied per image on the command-line. For usage help:
rtexviewer.exe --help
Keyboard/Mouse Shortcuts
F1
- Show Help windowF2
- Show About windowF3
- Show Issue Report window
File Options
LCTRL + N
- New projectLCTRL + O
- Load image/boardLCTRL + S
- Save image/boardLCTRL + E
- Export image/boardLCTRL + X
- Close image
View Modes
1,2,3
- Switch view mode: Tabs, Board, FolderF5
- Toggle image Info window (uncomp. only)F6
- Toggle image Edit window (uncomp. only)F7
- Toggle image Shade Editor
-Tabs/Folder mode controls
MOUSE WHEEL
- Zoom in/outMOUSE LEFT/MIDDLE BTN
- PanningLCTRL + LSHIFT + MOUSE WHEEL
- Fast zoomF
- Zoom to screen size and centerA + MOUSE WHEEL
- Opacity change
-Board mode controls
MOUSE WHEEL
- Board zoom in/outMOUSE LEFT BTN
- Image selection/movementMOUSE MIDDLE BTN
- Board panningLCTRL + MOUSE WHEEL
- Image zoomLCTRL + LSHIFT + MOUSE WHEEL
- Image fast zoomLALT + MOUSE WHEEL
- Image draw orderSPACE
- Toggle image Lock
Image Edit Options
H
- Flip image HorizontalV
- Flip image VerticalR
- Rotate image 90 degrees CWLCTRL + R
- Show Resize windowLCTRL + K
- Show Visual Crop modeMOUSE LEFT BTN
- Draw crop rectangle"T
- Edit image text info
Shader Editor (on mouse hover)
LCTRL + X
- Cut selected textLCTRL + C
- Copy selected textLCTRL + V
- Paste selected textLCTRL + Z
- Undo latest text changesLCTRL + X
- Undo latest text changesU
- Reset image shader
View Options
C
- Toggle Clean modeG
- Toggle Grid mode (zoom +500%)
Window Options
7
- Toggle undecorated window8
- Toggle top-most window9
- Toggle mouse-passthrough window0
- Toggle transparent backgroundLALT + A + MOUSE WHEEL
- Window opacityMOUSE MIDDLE BTN
- Pan window (undecorated)"
Images navigation
TAB
- Cycle to next imageRIGHT/PAGE UP
- Show next imageLEFT/PAGE DOWN
- Show previous imageESCAPE
- Close Window/Exit
Command-line
USAGE:
> rtexviewer [--help] --input <filename.ext>
[--output <filename.ext>] [--format <pixelformat>]
[--resize <new_width>,<new_height>,[algorythm]]
[--resize-canvas <new_width>,<new_height>,[offsetx],[offsety]]
[--crop <x>,<y>,<width>,<height>]
[--flip-horizontal] [--flip-vertical]
[--rotate-cw] [--rotate-ccw]
[--alpha-clear] [--alpha-crop] [--alpha-premultiply]
[--make-pot] [--dithering] [--gen-mipmaps]
[--palette <filename.ext>]\n
OPTIONS:
-h, --help : Show tool version and command line usage help
-i, --input <filename.ext> : Define input file\n
-iraw, --input-raw <filename.raw>,<width>,<height>,<format>,<header>
: Define raw input file\n
-o, --output <filename.ext> : Define output file
: Supported extensions: .png, .ktx, .raw, .h\n
-f, --format <pixelformat> : Convert image pixel format\n
-r, --resize <new_width>,<new_height>,[algorythm]
: Resize image\n
-rc, --resize-canvas <new_width>,<new_height>,[offsetx],[offsety]
: Resize canvas\n
-k, --crop <x>,<y>,<width>,<height>]
: Crop image to rectangle\n
-fh, --flip-horizontal : Flip horizontal
-fv, --flip-vertical : Flip vertical
-rcw, --rotate-cw : Rotate CW
-rccw, --rotate-ccw : Rotate CCW
-pot, --make-pot : Make Power of Two
-ac, --alpha-clear : Clear alpha pixels
-at, --alpha-trim : Trim alpha border
-ap, --alpha-premultiply : Premultiply alpha
-d, --dithering : Apply image dithering
-gm, --gen-mipmaps : Generate mipmaps
EXAMPLE:
> rtexviewer --input image.png --output output.png --format R5G5B5A1
Technologies
This tool has been created using the following open-source technologies:
- raylib - A simple and easy-to-use library to enjoy videogames programming
- raygui - A simple and easy-to-use immediate-mode-gui library
- rpng - A simple and easy-to-use library to library to manage png chunks
- rini - A simple and easy-to-use config init files reader and writer
- tinyfiledialogs - File dialogs for desktop platforms
Handmade Software
rTexViewer
is handmade software, it has been meticulously developed using the C programming language, with great attention put on each line of code written.
This approach usually results in highly optimized and efficient code, but it is also more time-consuming and require a higher level of technical skills.
The result is great performance and small memory footprint.
rTexViewer
is self-contained in a single-executable of about 1 MB, it could fit on a floppy disk.
Issues & Feedback
Note that the one-time-payment desktop version of rTexViewer
comes with no support. Still, tool issues and feedback can be reported at https://github.com/raylibtech/rtools. They are reviewed with low-priority.
For additional support, priority issues review or tool customization requirements, please contact ray[at]raylibtech.com
License
The use of rTexViewer
desktop application is subject to the terms and conditions of the End User License Agreement
.
By using rTexViewer
, the user agrees to be bound by the terms of the EULA.
Check included End User License Agreement
document for details (EULA.txt).
Copyright (c) 2015-2024 raylib technologies (@raylibtech) | Ramon Santamaria (@raysan5)
Status | Released |
Category | Tool |
Platforms | HTML5, Windows, macOS, Linux |
Release date | Mar 14, 2019 |
Rating | Rated 5.0 out of 5 stars (8 total ratings) |
Author | raylib technologies |
Made with | raylib |
Tags | image, raygui, raylib, Textures, tool, viewer |
Average session | About an hour |
Languages | English |
Inputs | Keyboard, Mouse |
Links | Steam, Homepage, Twitter/X, Steam, LinkedIn |
Purchase
In order to download this tool you must purchase it at or above the minimum price of $19.95 USD. You will get access to the following files:
Development log
- rTexViewer v4.0 published!90 days ago
- rTexViewer v3.0 published!Jan 06, 2023
- rTexViewer v3.0-beta published!Nov 29, 2022
- rTexViewer v2.0 published!Jan 22, 2022
- rTexViewer running on Web!Feb 24, 2020
- rTexViewer Linux version released!Oct 06, 2019
- rTexViewer v1.2 released!Sep 22, 2019
- rTexViewer v1.0-alpha published!Mar 17, 2019
Comments
Log in with itch.io to leave a comment.
Hey Ray,
Is there a way to change the GUI font size? I want to make it a little bit bigger. I cannot find any way to do it. Maybe som k : v in the config.ini?
Thanks
I was looking for something similar. It sometimes quite hard to read on my screen because of the size scaling
I quite like the program but I find it very difficult to use as an image board as it is quite difficult to zoom in and out without selecting a specific image. I would prefer having to click to select an image and right click to select no image.
Thanks for the feedback! I'm actually reviewing that behaviour to zoom to mouse-position in all view modes. Also reviewing the mouse behaviour.
I found a bug. If, while in tab view, an image is large enough that clicking the view button would click the image underneath, then clicking to switch from tab to board can mess up the image's position on the board. This only happens if the user moves the mouse during the click on the view button, even if just one pixel.
Thanks for reporting! Not sure if I understand it correctly... please, could you open an issue on https://github.com/raylibtech/rtools to review it?
I found buggy behaviour. When opening a .rtv image board file from a folder with other .rtf board files. Starting from the board view, select an image then switch to directory view, some image in the board will have the right arrow enabled, click it to switch this image to one from another board file. Not all image will be scrollable in the directory view.
I could replicate this consistently before but now I cannot... Weird. The issue might come from somewhere else.
Thanks! It sounded difficult to reproduce! :D
I found a bug. It is possible to keep dragging an image while switching mode with the 1-3 keys. It is possible to drag around an image by clicking through the menu bar at the top of the screen. This is also possible to do through buttons.
Thanks! I take note! I think this should be easy to fix...
I found a bug. In board mode, zooming out a lot will forcefully enlarge the selected image. In this very zoomed-out situation, hovering any image will force them to their minimum size.
I think this is caused by the minimum limit when scaling images.
Thanks! I think this can be also easely addressed. :)
Hi Ray, very nice tool! Will the tool support more features for image/art creation, such as pixel art? Totaly cool if you're going to develop a separate tool for that purpose BTW.
Hi Jack-Ji! Thanks! No plans to add image creation capabilities like pixel-art for the moment, in any case additional editing capabilities, like shaders editing. Maybe a separate tool but unfortunately my resources are very limited.
Hi Ray,
I really like this tool (and Raylib). Happy to support your excellent work and just bought thisfor the Linux version.
When running ./rtexviewer, however, I'm getting an error that 'GLIBC_2.3x' (x = 5 | 3 | 4) is not found and is required by the app. My current GLIBC version is 2.31 and I'm running Ubuntu 20.04.6 LTS x86.
Is there a relatively painless way of overcoming this error without making major changes (e.g., upgrading Ubuntu to a new version)?
Thanks,
edibo
Just reviewed this issue.
All the tools are build on GitHub servers using the provided Linux host runner, that use by default Ubuntu 22.04, I tried rebuilding it with Ubuntu 20.04 alternative host.
I'm uploading a new file but please note that this new version is a development version with some improvements and new features for the tools and not much tested.
Please, let me know if it works for you! :)
Dear Ray,
Much thanks for your quick reply and upload.
I tested the Ubuntu 20.04 (dev) version and it works perfectly as far as I can see. I also upgraded another machine to Ubuntu 22.04 to try the release version and that works great too.
Thanks again and keep up the great work!!!
edibo
Nice! Glad to know it worked! :D
Do you think you could add a macOS arm64 build?
Same request, for the other tools you make, if it's feasible.
I'm afraid this is not possible at the moment. I'm a solo developer and my resources are very limited. I can't implement a macOS build system and test everything properly, it would imply considerable amount of work. I neither have a mac and never used one so it would require some investigation...
But, afaik, raylib works on macOS without problems so if anyone is willing to help on that regards, it will be really appreciated. All my tools use a similar build system, based on GitHub Actions and some of the tools are open source. If anyone feels brave enough to implement a macOS build action, that would be great! Here there are some sample workflows, they could be used for reference to implement a macOS equivalent: https://github.com/raysan5/rfxgen/tree/master/.github/workflows
Still, it would require testing...
It will be added on next release!
Any plans on open sourcing this in a late future?
No plans to open source this software. Why do you need it? I could provide the sources per client contract if required.
I was thinking, that you could just provide the src for me, because im incorporating this software into another software for PSX development.
Sorry, I'm trying to make tools for a living, not all my work is free and open source.
does it support the open sourced format: "Basis Universal Texture Compression", kind of KTX, I think: https://github.com/BinomialLLC/basis_universal
Not yet, but it's on my roadmap. Probably in a future version.