A Pen by Arifayan Idowu Olatubosun on CodePen.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
auto world = GetWorld(); | |
if(world == nullptr) | |
return; | |
auto viewLocations = world->ViewLocationsRenderedLastFrame; | |
if(viewLocations.Num() == 0) | |
return; | |
FVector camLocation = viewLocations[0]; |
A non-exhaustive list of WebGL frameworks and libraries. It is mostly for learning purposes as some of the libraries listed are outdated/not maintained anymore.
- three.js: JavaScript 3D library
- stack.gl: an open software ecosystem for WebGL, built on top of browserify and npm.
- PixiJS: Super fast HTML 5 2D rendering engine that uses webGL with canvas fallback
- Pex: Pex is a javascript 3d library / engine allowing for seamless development between Plask and WebGL in the browser.
- Babylon.js: a complete JavaScript framework for building 3D games with HTML 5 and WebGL
- AwayJS: AwayJS is a graphics library for javascript written in typescript
- SceneJS: An extensible WebGL-based engine for high-detail 3D visualisation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Perforce File Type Mapping Specifications. | |
# | |
# TypeMap: a list of filetype mappings; one per line. | |
# Each line has two elements: | |
# | |
# Filetype: The filetype to use on 'p4 add'. | |
# | |
# Path: File pattern which will use this filetype. | |
# | |
# See 'p4 help typemap' for more information. |
For particularly necessary to-do reminders, the JM_TODO
macro below will print to the build console (and on the warning/error list) as a trivial warning -- so it won't interfere with builds that treat warnings as errrors. Then you can just double-click it and jump to that spot.
#define JM_PRAGMA_STRING2(x) #x
#define JM_PRAGMA_STRING(x) JM_PRAGMA_STRING2(x)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Comments are left by me, not from the code. | |
// Because why not have a default set or make the method abstract or, really, anything but this. Luckily no one would ever | |
// think to use ::GetMaxSpeed as a divisor or anything. | |
inline float UMovementComponent::GetMaxSpeed() const | |
{ | |
return 0.f; | |
} | |
// FUN FACT: UMovementComponent defines a plethora of methods for managing the maximum speed of a component. It does not, |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// FMechPartDataBase Data Structure. | |
// This structure is solely for serialization/deserialization purposes (it gets transferred to the UObject instance after that process is done). | |
USTRUCT( ) | |
struct FMechPartDataBase_SerializationStructure | |
{ | |
GENERATED_BODY( ) | |
public: | |
FMechPartDataBase_SerializationStructure( ) | |
: ConfigName( NAME_None ) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// [GIST NOTE] Added at the bottom of the existing class (for editor and runtime). | |
// Check the system environment variables for HOUDINI_PATH (instead of just hard-coded path searching like the default plugin does). | |
public static bool GetHoudiniPath( int PluginVersionMajor, int PluginVersionMinor, int PluginVersionPatch, out string HoudiniPathOut ) | |
{ | |
string version = null; | |
// Do the easy check: an environment variable I recommend to people (trent, 12/31/17). | |
HoudiniPathOut = System.Environment.GetEnvironmentVariable("HOUDINI_PATH", System.EnvironmentVariableTarget.User); | |
if ( !string.IsNullOrEmpty( HoudiniPathOut ) ) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Structure to define a lambda object, return type, and any arguments to pass into the lambda expression upon execution. | |
template< typename O, typename R, typename ... A > | |
struct LambdaExpression | |
{ | |
O _object; | |
R( O::*_function )( A... ) const; | |
LambdaExpression( const O & object ) | |
: _object( object ), _function( &decltype( _object )::operator() ) | |
{ } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// NOTE: This does not result in the accessors being available for blueprint-use as they're not UFUNCTIONs. | |
UCLASS( ) | |
class URawr : public UObject | |
{ | |
GENERATED_CLASS( ) | |
protected: | |
float RawrValue; | |
NewerOlder