Giter Site home page Giter Site logo

bpype / cgru Goto Github PK

View Code? Open in Web Editor NEW

This project forked from cgru/cgru

0.0 0.0 0.0 45.96 MB

CGRU - AFANASY

Home Page: http://cgru.info/

License: GNU Lesser General Public License v3.0

Shell 1.37% JavaScript 16.91% Ruby 0.23% C++ 48.15% Python 23.37% C 0.57% PHP 1.33% CSS 1.34% Makefile 0.01% HTML 1.16% QML 4.33% QMake 0.05% CMake 0.36% Batchfile 0.52% MAXScript 0.18% Roff 0.12%

cgru's Introduction

CGRU

CGRU is the Computer Graphics Tools Pack.

It consists of the main tools Afanasy and Rules. Other tools are arranged as satellites around these two, like dailies encoding scripts and software submission plug-ins.

Afanasy is a render farm manager.

Rules is a Web based CG projects tracker.

Site

Documentation

Forum

You can ask any questions on the CGRU forum.

GitHub issues are used for code development and bug tracking.

Coding rules:

  • Indentation - TABS. You can vary tab length, default 4 spaces length is normal.
    • Python Indentation - SPACES(4). It is not a problem to tune any modern text editor for each file type.
  • Code alignment - SPACES, it should not break on various tab length.
  • Variable names: variable_name.
  • Function names: functionName.
  • Class names: ClassName.
  • Use prefixes to make code more readable:
    • i_ - Input variables.
    • o_ - Output variables.
    • m_ - Class members.
    • ms_ - Static class members.
    • g_ - External variables.
    • v_ - Virtual functions.
  • Do not use "!" as NOT, since it is not noticeable for doing code review. It is much more easy to notice false == .
  • Use false == var and NULL == val instead of var == false or var == NULL. As if you miss one '=' character, it will not be an error, it will be assignment, not comparison.
  • Use const & to pass complex types as function parameters to not to copy class instance.

Example:

// Function with long parameters list:
bool someFunction(std::string &o_status, const std::string &i_param1, const std::string &i_param2,
	const std::string &i_param3, const std::string &i_param4)
{
	...

	if (false == variable_name)
	{
		o_status = "error";
		return false;
	}
	return true;
}

You will notice, that some parts of the code are not following these rules. This is mostly because such code has been written before these rules were created or changed.

The typical file header and code style for C++ and JS files can automatically be applied with the script utilities/maintenance/codeStyleCheck.php see the file for instructions of setup and usage.

The file header shall contain as much information as possible about the file, you can find a good example here: afanasy/browser/monitor.js

Some names:

CGRU - came from CG - Rules. It has two meanings: computer graphics principles and computer graphics is a cool thing.

Afanasy - came from a Greek name meaning immortal.

Rules - simple came from rules! This project tracker is based on defined rules. Mostly project structure rules, where to store sources, references, dailies, outputs. As Rules does not have its own database, it walks file-server folders structure.

cgru's People

Contributors

timurhai avatar lithorus avatar eoyilmaz avatar abuisine avatar predat avatar eliemichel avatar zebastian avatar sebastianelsner avatar ymesh avatar anti-distinctlyminty avatar mifth avatar tobkum avatar deroesi avatar elecstorm avatar maxim-konnov avatar manuelrais avatar seven110 avatar notawhalevfx avatar kriskras99 avatar jasperges avatar rilights avatar yannci avatar coder-pranav avatar sergeneren avatar steffenduenner avatar eclaesson avatar abhishekgarg120 avatar aghiles avatar mdk-man avatar lwclasses avatar

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.