-
Notifications
You must be signed in to change notification settings - Fork 2
Meeting Agendas (Archive)
psieg edited this page Apr 3, 2014
·
1 revision
- logging policies
- error handling (exceptions, errorcodes, fatal errors)
- shouldnt logging and CheckGLError() print line and file?
- shouldnt OPTION_ERRORS_AS_EXCEPTION print the error too?
- startup/initialization design
- mainloop design
- separation of mesh/state?
- "Thing"
- mesh
- pos
- orientation (quaternion?)
- Mesh
- VertexBuffer
- VertexArrayObject
- Shader
- Alternative: "Thing" + Mesh gets generated in the geometry-shader
- "Thing"
- config files
- physic "rules" of our voxelworld
- might include lifepoints of whole cluster, glueforce, mass of voxels, impact, impact caused by explosions of voxels
- Rename "source" directory to "src"
- framerate independence
- unittests
- upstream push to hpicgs/glow
- C++11 features. Who are they and which should we use how. (auto, move semantics, constexpr, noexcept, ...)
- Which voxeleditor/format to use? (Sproxel)
- Where and how to store voxel best for performance and accessability (Hashmap isn't ideal imo)
- cvec3 ucvec3 needed?
- addVoxel() in Cluster vs insert() in other structures
- Discuss the WorldTransform class in terms of naming and functionality
- re: a few heartwarming words on code-ownership
- consistent style, either
using namespace std
orstd::
- csv vs zox
- design and usage of worldtransform
- coordinate system
- Sprites and Particles
- WorldTransform retrospective
- terminolgy for physics
- acceleration (linear/angular)
- velocity (linear/angular)
- http://dev.tutsplus.com/tutorials/custom-2d-physics-engine-oriented-rigid-bodies--gamedev-8032
- http://www.hakenberg.de/diffgeo/collision_resolution.htm
- scale of voxelclusters
- tabs, maybe coding style in general
- file format / editor
- Zoxel looses voxels
- Model size / resolution
- ClusterStore -> ClusterLoader with cache of just the voxels?
- Handling of values missing in config or config file not there. Ordered shutdown?
- WorldTree / WorldTree
- Property naming
- (Branch naming)
- Six-eyes-merge
- Voxel, PhysicalVoxel, VoxelCluster, PhysicalVoxelCluster, CrucialVoxel
- chatroom for everyonesworkingoneverything-evenings
- handling of performance issues
- too many files of very different responsibility in /world
- WorldObjects-Base classes such as Ship, Bullet, Hardpoint, Engine, ...
- Members / Pointers / References
- move() returns collision
- Vote in for codingstyle and stick to it everywhere, all the time. pull request don't go through if violated (?). expand list if you want.
- placement of curly braces for
- Classes
- Functions
- loops/conditionals
- indentation of initializers
- number of lines between preprocessor stuff and c++ code
- declarations, positioning of reference & and pointer *
- general naming of members and functions. names have to describe what the stuff does/is, even if the code hasn't been read for weeks and months!
- camelCase
- property-prefix
- How to improve communication? (Moritz buys headset, eg.) What rules apply to fundamental changes?
- Retro: Big refactoring
- discuss and improve the architecture (from a long perspective view?)
- when and where to use pointers, references, const references. Dual getters? (const & and &)
- z axis still inverted for voxelclusters
- zoxel looses voxels, shall we contact the devs, maybe they're happy we're using their software and willing to help
- self modifying voxels
- AABB ind/inf/we resolved?
- render to seperate framebuffers
- amount of tickets
- simultaneous movement
- CollisionFilter
- Dampening of directional velocity-altering on impact the more rotation is created
- Architecture of WorldObject, CollisionFilter, Physics...
- (?) retro about master builds always, etc (?) (as suggested by @psieg on skype)
- Shockwaves, issue 65
- Issue #179
- Design of voxelexplosions and voxelexplosion-api
- issue #141
- proposal: "space-physics" for debris, no dampening
- Collision of Particles (performance), maybe take particles out of the worldtree at all, check for intersection every few frames, remove if those occure. Draw with different shader.
- Architecture of WorldObject, VoxelCluster and WorldTransform in relation to Physics, SpecialPhysics, CollisionDetector, CollisionFilter...
- WorldHandle
- Center in WorldTransform
- Merging changes of config into master, overriding git-ignored developer.ini
- coding style: pointers as bools?
- One united run to make all code match conventions?
- PR-politics. How to act if I want to implement a feature based on a pending PR?
- reviewer want small PRs, with well defined additions
- devs want to use code they wrote, derive from a as-up-to-date-as-possible master
- -> faster reviewing (?)
- -> extra label for PRs that demand asap-merge (?)
- -> merge-dependencies, PR is not reviewed until previous PR is shipped
- regular glow updates()? How and when pushback improvements made by us?
- Another run on input, HUD and cameras.
- Flight with missing engines
- Interpolation with deltaSec. Suggestion: on update() don't simply multiply with deltaSec, but update only a maximum of ms. For weapons, this might be well > 100ms, rockets might need < 10ms and so forth
- switch instancing data from textures to VBOs (http://www.opengl-tutorial.org/intermediate-tutorials/billboards-particles/particles-instancing/)
- discuss the use of shared_ptr, unique_ptr. where is applicable? everywhere? (worldtreegeodes, e.g.)
- Discuss voxelexplosions and their generators. differ between explosions that are generated from destroyed voxels and those generated by e.g. rockets on collision?
- Joystick not working, test different ones
- saving properties to ini
To Be discussed next:
- HUD
- Input
- Camera
- weak_ptr / shared_ptr statt Handle
- remove some Voxel prefixes (VoxelParticle* -> Particle*, ...)
- reference page for coding convention
- preferred approach on saving properties
- AI milestones
- Scripting
- sound
- what should be done in march?
- shipits in advance
- sound
- don't use auto?
- opengl code only triggered (lazy init) by draw() methods?
- minimal voxel-ui framework for menus?
- smaller classes with as atomic tasks as possible?
- shield for playership
- shader version 150 or 330 and layout(location=n)
- How can we ensure proper gameplay even when short lags (<5 FPS, e.g.) occur
- How to speed up particle-intersection-test?
- Singleton improvements
- template-based base class for singletons?
- Switch to Qt-approach with ONE singleton (QApplication) that has all other not-anymore-"singletons" as members
- postprocessing
- AimHelper
- clickable hud-components, how to handle this?
- Basic statemachine to be used in AI, general gamestate
- after march
- what is a scene?
- Basic/Elevated task distinction needed
- accelerate multiplies with maxAcceleration
- class comments
- Scenario Baseclass, clear load, (see scenario pr)
- define Character, faction, reputation etc.
- Strict vs loose codingconventions
- class A: public B vs class A : public B
- Newlines after class members? 2 before protected/private?
- 2 newlines before protected/private methods after data members?
- target around ship and aimhelper: zTest or half transparent?
- crosshair before other hudgets
- order of hudgets (clicking on the first hudget only)
- hudget distinction between mouse buttons
- Controls (X / Freelancer)
- Strict vs loose codingconventions
- class A: public B vs class A : public B
- Newlines after class members? 2 before protected/private?
- 2 newlines before protected/private methods after data members?
- Code directorystructure
- unique_ptr + #include + forward decl. + destructor vs. instance for members
- (or maybe precompiled headers)
- Sound-system or: how to keep pure gameplaylogic and audio logic separated?
- Factions
- Menu
- Save/Load
- Hudgets
- Scripting System
- Which methods should have "shortcuts" / abstraction
- e.g. ship.position()/orientation(), player.cameraPosition()/orientation(), worldobject.fireAtPoint()
- Performance / BulletEngine
- HUD in Oculus
- Particle Intersection tests #394
- Factions/ Reputation
- Ship duration, healing, ...
- naming of boolean-returning functions (is* prefix?)
- do you need oo-based scripting?
- milestones until Moritz leaves, until end presentation, until hand-in
- Material for voxels (w/wo borders, colorvariations,...) maybe combine with HP?
- From Patrol to Fight and Back
- scripting
- fsm / scene architecture
- status instanced worldobjects
- switch to no dampening, direct speed-accessing by engines and improve boardcomputer based on this
- review speed
- Store squads in world
- hud/menu "on a plane"
- scripting
- menu (status text hudgets)
- website/video
- incremental linking
- white voxels (FFFFFF) are interpreted as engines
- ship speed management
- documentation/website
- video
- license text
organization & milestones
- milestones until commercial release? (move of repository?)
- fix&close all issues, build foundation for fluid future work?
- closing old wiki pages
- workflow
Architecture
- Refactoring / the GamePlay thing / disentanglement - Architecture
- GameElement (derived from Scriptable) for base class of WorldObject, Script, EventPoll, Mission, ... . World takes ownership, WorldComponents (WorldLogic, EventPoller, ...) only use them. Removal happens when GameElements request it by setting a flag, no more removeScript/Poll/WorldObject
- Bulletengine
- input
- missionsystem architecture
- mission templates on c++ side
- react on spawnfailure
- how to compensate long createWorldObject time (general issue) [loading screen, yay! during mission? yeeha!]
Feature
- gameplay and aiming
- engine/speed/engineslots
- item concept. healer, scanner, shield, ...
- integrate aimhelper and ai
- faction based ai
- main menu, ingame menus
Targeting mechanisms. Users may want to
- poll through all enemies !
- select nearest enemy ! --> maybe play freelancer ;)
- poll through all objects
- select incoming missile?
- select the enemy the player attacks
- vorstellung ideen