:!: CGView is currently being implemented in Go from scratch. See this page for the new version :!:

CGView

Trying CGView with Yokorenbo Immoral Mother ;) CGView is an image viewer similar to Comix, with some nice features targetted towards viewing (H)CG archvies. It is written in python, and uses SDL through pygame.

Currently, the project is at an early alpha stage. There are some buggy functions and some don't work at all. If you want to try it nevertheless, you can get the current version here.

Features

  • Can read from zip, rar 1), tar archives, as well as ordinary directories (without digging down to subdirectories for now though)
  • Usual functions one would expect from an image viewer 2)
  • Transitions between images 3)
  • Fully featured CG view mode similar to ones you'll find in a eroge 4)
  • Content filtering 5)
  • Runs everywhere pygame does. Works perfectly without a window manager under framebuffer as well! 6)

Controls

  • ESC - Quit
  • F - Toggle fullscreen
  • L - Toggle looping
  • HOME - First image
  • END - Last image
  • T - Toggle transitions
  • SPACE/PAGEDOWN/M_WHEEL_DOWN/M_LEFT/NumPad Enter - Next image
  • PAGEUP/M_WHEEL_UP/M_LEFT - Previous image
  • S - Toggle stretching image
  • . - Decrease transition duration
  • , - Increase transition duration
  • R - Toggle random ordering
  • V - Toggle verbose messaging
  • G - Go to image
  • ENTER - Toggle slideshow mode
  • M - Toggle horizontal flip
  • CTRL+Mouse movement/Direction buttons - Move the image (if it doesn't fit into the window)

Windowed mode only:

  • 1 - resize window to image size

Slideshow mode only:

  • M_WHEEL_DOWN/M_LEFT - Increase slide duration
  • M_WHEEL_UP/M_RIGHT - Increase slide duration

cgview.txt Files

This is just a design draft for the structure of cgview.txt. It is prone to go under heavy changes, so don't rely on it!

cgview.txt is the file where you define CG scene details for extra functionality. You can define which images belong to which character(s) and scene(s), define their contents and create image groups for toggling (such as “toggle bunnygirl/nurse/maid outfit”). CGView parses the file when the archive/directory has a file named cgview.txt, or a file (with an arbitrary name) is passed via -C.

cgview.txt is a Python ConfigParser file. Specific structuture of a cgview.txt is like this. You need to define characters involved in the game under a section “Characters” (yup, you cannot use this name for another section)

[Character]
Mom = Mom Scene 1 : Mom Scene 2
Sis = Sis Scene 1 : Sis Scene 2
Mom and Sis = Mom & Sis Scene 1

A character block's content property applies to all scenes below it

Next to the character names are semi-colon seperated scene names. Definition of a scene involves semi-colon seperated image files that belong to the scene . If your image file contains a semi-colon, you need to type it's name using an escape sequence. So if you have a file named “Scene:Mom-01.jpg”, you need to type “Scene\:Mom-01.jpg”. (img)

NOTE: FILE NAMES SHOULD BE CASE-SENSITIVE

As an alternative to the semi-colon seperated list, you can use a regular expression to define the list (imgre). When both img and imgre are specfied, union of the lists they define is used.

Quirks & Tips

  • Shortcuts cannot be customized yet.
  • If your CPU supports MMX and SSE instructions (if you have procfs, see contents of /proc/cpuinfo), smooth stretching images should be working swiftly. To check things out, run cgview with -i, and see what smooth scaling “backend” is. If it's not what you expect, you need to compile pygame, after removing -D_NO_MMX_FOR_X86_64 from CFLAGS for transform.c (edit Setup.in and run config.py). You need to get a recent version of SDL (>=1.2.10) if you do so, since _NO_MMX_FOR_X86_64 was introduced as a workaround for a bug in SDL (see RedHat bugzilla #487720)
  • File names should be CaSe SeNsItIvE!!
1)
Through unrar executable
2)
Fullscreen/windowed mode, stretch/flip/rotate images, slideshow mode, random ordering
3)
Only alpha-blending at the moment
4)
You may need to write a “cgview.txt file” to describe the scenes and characters though, if someone else hasn't written it already.
5)
Via cgview.txt file, see section “cgview.txt Files”
6)
You will need to start GPM, though
 
projects/cgview-python.txt · Last modified: 2012/04/16 05:18 by salviati
 
RSS - 2007 © Designed by Oscar M. Lage - Userlinux HeadQuarters