Giter VIP home page Giter VIP logo

iwannafly's Introduction

prealpha stats:

  • šŸ—¹ outline
  • šŸ—¹ implementation
  • šŸ—¹ syntax fixing
  • āž¤ debugging
  • āŒ› alpha release

build stats:

  • last working build : NULL

    • 0 total
  • last faulty build : 12:21:22 Sat Jul 27 2019 CDT

  • last failed build : 20:46:45 Fri Jul 26 2019 CDT

Iwannafly

open world game and game engine written in C useing minimal propagating dependencies

Screenshots

Terminal intro working: https://files.catbox.moe/zgv4wv.jpeg

Titlebar working: https://files.catbox.moe/nx5elu.jpeg

First coherent rendered object: https://files.catbox.moe/dzdncx.png (buggy ground mesh in the wrong projection space, but still milestone progress!)

Requirements

Libraries:

  • C Standard Libraries

  • OpenGL / Mesa version with matrix stack

  • GLX

  • X11 Common Library

  • X Toolkit

  • X Athena Widgets

System:

  • Display

  • Keyboard

  • A 3d graphics card; shader support shouldn't be required

  • Ludicrous amounts of ram (current estimates upwards of a GiB)

  • Xbox 360-style controler, located at /dev/input/js0

  • Complete keyboard (specifically, the keys:

    • Pause
    • Home
    • End
    • Page Up
    • Page Down
    • Escape
    • the arrow keys
    • function keys 1-4
    • the numpad exist and are not intercepted by another program or the system)
  • Unix-like Operating System

  • active X Session

  • xterm or other ANSI-compatible Terminal Emulator

  • make

  • C preprocessor with macro forward-calling

  • Actual C compiler with full C99, C89, and K&R support

  • sane POSIX enviroment

PLANNED PLATFORMS

  • Debian i686
  • Arch32 i686
  • Gentoo x86
  • NetBSD i386

Will add other systems if I get better hardware, Arch64 being paramount amoungst them

Right now my dev systems consist of a Netburst Celeron, a K7 with no ethernet (has rj45 and rs232 instead), and an early C2D laptop that only runs P6 kernels; all of which date from between the late 90s and mid 2000s with full compliment of parallel-PCI expansion bus, IDE drives, and "legacy" ports on the towers. (the K7 actually has an EISA slot for the graphics card!)

NEWS AND OTHER NOTES

I think I have the use of C89 struct literals and C99 compound literals figured out, but still see no difference between struct types and typedef aliases. after some tests, the aliases may be going away

While Xt+Xaw is considered an archaic library, I consider it the best choice for my application; It does what I need it to, It doesn't do stuff I don't need it to, and it is smaller and faster than anything that came after it, making it the ultimate lightweight graphics library (if you can manage to wrap your brain around it's API). Additionaly, it's avalibility in a system's package manager is practically guarunteed (being a build dependency for many old apps, such as the xtools and nethack), making porting across *nix-es that much easier. It's age also makes drastic changes to the api highly improbable, decreacsing the risk of code rot due to upstream changes.

Opposite of usual, as currently laid out, the games memory footprint should nominally shrink as quests are compleated and the ascossiated event nodes are deallocated. now that I've said this, the opposite will likely be the case.

While I have moved away from gotos, one side-effect is that I now use too many switch statements. Also be aware that macros are used heavily.

Note: Motorola Notation is used in game and in documentation, meaning that $n is a hexadecimal number and @n is an octal number (binary numbers would be %, but are not used). latitude and longitude are recorded as dĀ° m'. the symbol for currency shall be Ā¤.

LISCENSE?

While I would like to release under LGPL or RevBSD, it likely inherits "GPLv2 or any later version" somewhere. I am not a lawyer (and generally dislike them showing up at my house with stacks of paper...), so I'll need to figure this out before Beta.

iwannafly's People

Contributors

generalguy4872 avatar

Stargazers

 avatar  avatar  avatar

iwannafly's Issues

github_assets replaces text with .gif resources

in addition to being a violation of HTTP single origin policy and therefore, by definition, a security hole to anyone accessing the webpage, this is forbidden by Unicode stability policy.

Github editor autocorrect causes between 5 and 10 keystokes per line to be wasted

2.1 : does not allow double lines
2.2 : moves curly brackets around
2.3 : indents lines strangely
2.4 : randomly converts tabs to spaces
and other various mangling of document layout vis-a-vis mistreatment of whitespace, some of which can be corrected, some is immideately reverted after being fixed
2.5 : syntax highlighting does not match gitattributes language, or filetype (style highlighting while editing C documents interprets # as comment instead of macro, fixed when only viewing file...usually)
2.6 : final line of document is covered by horizontal scrollbar, oscillates up and down rapidly while typeing
2.7 : control characters are changed to unicode substitution character when opening a file to edit it, massive data loss possible

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.