packages feed

terminal-3d-graphics-0.2.0.0: terminal-3d-graphics.cabal

cabal-version:   3.0
name:            terminal-3d-graphics
version:         0.2.0.0
synopsis:        A terminal 3D rasteriser with textures, portals, and baked lighting
description:
    Simple multi-module Haskell terminal 3D engine.
    Can be used as a library or compiled to a demo executable.
license:         Unlicense
license-file:    LICENSE
author:          Larz Piechocki
maintainer:      LarzPiechocki@gmail.com
homepage:        https://github.com/LarzP123/terminal-3d-graphics
bug-reports:     https://github.com/LarzP123/terminal-3d-graphics/issues
build-type:      Simple
category:        Graphics
extra-doc-files: README.md
extra-source-files:
    textures/*.bmp

source-repository head
    type:     git
    location: https://github.com/LarzP123/terminal-3d-graphics

-- -----------------------------------------------------------------------
-- Common settings shared by library and executable
-- -----------------------------------------------------------------------
common shared
    default-language: Haskell2010
    build-depends:
        array >= 0.5.7 && < 0.6,
        base >= 4.20.0 && < 4.21,
        bytestring >= 0.12.1 && < 0.13,
        deepseq >= 1.5.0 && < 1.6,
        comonad >= 5.0.10 && < 5.1,
        transformers >= 0.6.1 && < 0.7,
        parallel >= 3.3.0 && < 3.4,
        process >= 1.6.19 && < 1.7,
    ghc-options:
        -Wall
        -funbox-strict-fields
        -fspecialise-aggressively
        -optc-O3

-- -----------------------------------------------------------------------
-- Library: import Terminal3D to use the engine in your own project
-- -----------------------------------------------------------------------
library
    import:          shared
    hs-source-dirs:  src
    exposed-modules:
        Terminal3D
    other-modules:
        Terminal3D.Vector
        Terminal3D.Matrix
        Terminal3D.Textures
        Terminal3D.Tri
        Terminal3D.Lighting
        Terminal3D.TerminalGraphics
        Terminal3D.Objects
        Terminal3D.BigText
        Terminal3D.Movement
        Terminal3D.Loop
        Terminal3D.Localization

-- -----------------------------------------------------------------------
-- Executable: demo scene (room + cube + portals)
-- Run with:  cabal run t3d
-- -----------------------------------------------------------------------
executable t3d
    import:          shared
    main-is:         Main.hs
    hs-source-dirs:  app
    ghc-options:     -threaded -rtsopts
    build-depends:   terminal-3d-graphics:terminal-3d-graphics