slouken@2226: SDL on DirectFB slouken@2226: slouken@2226: Supports: slouken@2226: slouken@2226: - Hardware YUV overlays slouken@2226: - OpenGL - software only slouken@2226: - 2D/3D accelerations (depends on directfb driver) slouken@2815: - multiple displays slouken@2815: - windows slouken@2226: slouken@2226: What you need: slouken@2226: slouken@2815: DirectFB 1.0.1, 1.2.x, 1.3.0 slouken@2226: Kernel-Framebuffer support: required: vesafb, radeonfb .... slouken@2226: Mesa 7.0.x - optional for OpenGL slouken@2226: slouken@2815: /etc/directfbrc slouken@2815: slouken@2815: This file should contain the following lines to make slouken@2815: your joystick work and avoid crashes: slouken@2815: ------------------------ slouken@2815: disable-module=joystick slouken@2815: disable-module=cle266 slouken@2815: disable-module=cyber5k slouken@2998: no-linux-input-grab slouken@2815: ------------------------ slouken@2815: slouken@2998: To disable to use x11 backend when DISPLAY variable is found use slouken@2998: slouken@2998: export SDL_DIRECTFB_X11_CHECK=0 slouken@2998: slouken@2998: To disable the use of linux input devices, i.e. multimice/multikeyboard support, slouken@2998: use slouken@2998: slouken@2998: export SDL_DIRECTFB_LINUX_INPUT=0 slouken@2998: slouken@2815: To use hardware accelerated YUV-overlays for YUV-textures, use: slouken@2815: slouken@2815: export SDL_DIRECTFB_YUV_DIRECT=1 slouken@2815: slouken@2815: This is disabled by default. It will only support one slouken@2815: YUV texture, namely the first. Every other YUV texture will be slouken@2815: rendered in software. slouken@2815: slouken@2815: In addition, you may use (directfb-1.2.x) slouken@2815: slouken@2815: export SDL_DIRECTFB_YUV_UNDERLAY=1 slouken@2815: slouken@2815: to make the YUV texture an underlay. This will make the cursor to slouken@2815: be shown. slouken@2815: couriersud@3023: Simple Window Manager couriersud@3023: ===================== couriersud@3023: couriersud@3023: The driver has support for a very, very basic window manager you may couriersud@3023: want to use when runnning with "wm=default". Use couriersud@3023: couriersud@3023: export SDL_DIRECTFB_WM=1 couriersud@3023: couriersud@3023: to enable basic window borders. In order to have the window title rendered, couriersud@3023: you need to have the following font installed: couriersud@3023: couriersud@3023: /usr/share/fonts/truetype/freefont/FreeSans.ttf couriersud@3023: slouken@2815: OPENGL Support slouken@2815: ============== slouken@2815: slouken@4636: The following instructions will give you *software* opengl. However this slouken@4636: works at least on all directfb supported platforms. slouken@4636: slouken@4636: As of this writing 20100802 you need to pull Mesa from git and do the following: slouken@2226: slouken@2226: ------------------------ slouken@5199: git clone git://anongit.freedesktop.org/git/mesa/mesa slouken@5199: cd mesa slouken@4636: git checkout 2c9fdaf7292423c157fc79b5ce43f0f199dd753a slouken@4636: ------------------------ slouken@4636: slouken@4636: Edit configs/linux-directfb so that the Directories-section looks like slouken@4636: ------------------------ slouken@4636: # Directories slouken@4636: SRC_DIRS = mesa glu slouken@4636: GLU_DIRS = sgi slouken@4636: DRIVER_DIRS = directfb slouken@4636: PROGRAM_DIRS = slouken@4636: ------------------------ slouken@4636: slouken@2226: make linux-directfb slouken@2226: make slouken@2226: slouken@2815: echo Installing - please enter sudo pw. slouken@2226: slouken@2226: sudo make install INSTALL_DIR=/usr/local/dfb_GL slouken@2226: cd src/mesa/drivers/directfb slouken@2226: make slouken@2226: sudo make install INSTALL_DIR=/usr/local/dfb_GL slouken@2226: ------------------------ slouken@2226: slouken@2226: To run the SDL - testprograms: slouken@2226: slouken@2226: export SDL_VIDEODRIVER=directfb slouken@2226: export LD_LIBRARY_PATH=/usr/local/dfb_GL/lib slouken@2226: export LD_PRELOAD=/usr/local/dfb_GL/libGL.so.7 slouken@2226: slouken@2226: ./testgl slouken@4636: