Giter VIP home page Giter VIP logo

mikhailgorobets / facegenbaselibrary Goto Github PK

View Code? Open in Web Editor NEW

This project forked from singularinversions/facegenbaselibrary

0.0 1.0 1.0 37.12 MB

A simple cross-platform C++11 library for developing computational 3D graphics applications.

License: MIT License

HTML 1.77% C++ 88.52% C 2.65% XSLT 0.01% Shell 0.22% CSS 0.01% Perl 0.01% Makefile 0.22% Batchfile 0.01% CMake 0.04% Mathematica 6.54% HLSL 0.01%

facegenbaselibrary's Introduction

FaceGen Base Library

Copyright (c) 2020 Singular Inversions Inc.

A simple cross-platform C++11 library for developing computational 3D graphics applications.

Features

  • 3D mesh IO, manipulation, hardware and software rendering.
  • Imaging IO, manipulation
  • Linear algebra with solvers
  • Ultra-simple declarative GUI (currently only implemented for Windows)
  • Cross platform build file construction tool.
  • Command-line interface tools with pretty-print.
  • Unicode, filesystem, diagnostics, data packaging, etc.
  • Support for VS2015,2017,2019 on Win, gcc & clang on Ubuntu and macOS. Warning-free compiles on -Wall.

Design

  • Emphasis on clear, correct code rather than premature optimization.
  • Functional and declarative design in as much as makes sense for C++.
    • Extensive use of return value elision.
    • Declarative GUI layout, declarative dataflow graph for computations.
  • Minimal OOP-fuscation; Some member functions and constructors, few private members, no impl inheritance.
  • Templates are used when they provide clear benefit; Avoid complex template metaprogramming.
  • Exceptions and RAII used throughout.
  • Compiles out of the box; No dependencies, install scripts or special make packages required.
  • Different compiler / configuration object files are kept in different directories for fast switching.
  • Conventions: camelCase, K&R brackets, why-not-what comments.
  • namespace Fg { varNoun, funcVerb, cNoun short for calcNoun, ClassName, FG_MACRO }

facegenbaselibrary's People

Contributors

mikhailgorobets avatar saurvs avatar

Watchers

 avatar

Forkers

leo92613

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.