The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Graphics::Raylib::Util - Utility functions for use With Graphics::Raylib::XS

VERSION

version 0.025

SYNOPSIS

    use Graphics::Raylib::Util;

    # returns Graphics::Raylib::XS::{Vector2,Vector3, Vector4} depending on scalar @coords
    my $vector = Graphics::Raylib::Util::vector(@coords);

DESCRIPTION

Raylib deals a lot in value-passed structs. This module builds these structs.

METHODS AND ARGUMENTS

vector(@coords)

Constructs a Graphics::Raylib::XS::Vector2, Graphics::Raylib::XS::Vector3 or Graphics::Raylib::XS::Vector4 depending on number of arguments. Croaks otherwise.

    typedef struct Vector2 {
        float x;
        float y;
    } Vector2;

    typedef struct Vector3 {
        float x;
        float y;
        float z;
    } Vector3;

    typedef struct Vector4 {
        float x;
        float y;
        float z;
        float w;
    } Vector3;
rectangle(x => $x, y => $y, width => $width, height => $height) or rectangle(position => $posVector2, size => $sizeVector2)

Constructs a Graphics::Raylib::XS::Rectangle.

camera3d(position => $pos3d, target => $target3d, up => $up3d, fovy => $fovy)

Constructs a Graphics::Raylib::XS::Camera3D.

    typedef struct Camera3D {
        Vector3 position;
        Vector3 target;
        Vector3 up;
        float fovy;
        int type;
    } Camera3D;
image(data => $str, size => [$width, $height], [ mipmaps => 1, format => UNCOMPRESSED_R8G8B8A8 ])

Constructs a Graphics::Raylib::XS::Image.

    typedef struct Image {
        void *data;             // Image raw data
        int width;              // Image base width
        int height;             // Image base height
        int mipmaps;            // Mipmap levels, 1 by default
        int format;             // Data format (PixelFormat type)
    } Image;

GIT REPOSITORY

http://github.com/athreef/Graphics-Raylib

SEE ALSO

Graphics::Raylib Graphics::Raylib::Color

AUTHOR

Ahmad Fatoum <athreef@cpan.org>, http://a3f.at

COPYRIGHT AND LICENSE

Copyright (C) 2017 Ahmad Fatoum

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.