Three Months Of Side Projects

Three Months Of Side Projects

Small side projects I've built over the past few months (January through April):

Project #1 NewTek NDI Output From Unity3D

Create a multi-threaded hybrid (Native C & C++ and C# .NET) low-latency, zero-impact, cross-platform (desktop, Linux, iOS and Android) Unity3D plugin that captures the rendered 3D camera in Unity3D and transmits the image and the audio output as an uncompressed NewTek NDI video source to the local area network suitable for video streaming via Wirecast, vMix or OpenBroadcast Studio (OBS) or integration into an NDI hardware device such as the Atomos Ninja or NewTek Tricaster. This opens up a world of possibilities for live streaming games created in Unity3D that does not require separate hardware based capture cards or external screen capture software such as Fraps. Also useful for quality assurance to record the output of a screen for debugging purposes. Work in editor, desktop (Windows, macOS, Linux) and mobile (iOS and Android).

Project #2 Unity3D h264 Video Stream Decoder Plugin

Ingests a H264 encoded stream, (Native C with a C# wrapper) e.g. h264 camera, h264 video file or twitch.tv stream, and display the video on a texture in Unity3D. Can decode the h264 stream either via CPU or GPU using NVidia decoder.

Project #3 Unity3D H264 Video Encoder Plugin

Captures the output from a Unity3D camera and writes the video and audio to a file on the local machine or a network server. Encodes on CPU or GPU. Multi-threaded, zero-impact, zero-latency. Works in editor, desktop (Linux, macOS, Windows) and mobile (iOS, Android). Useful for capturing video for marketing purposes or quality assurance. Native C++ with a C# wrapper.

Project #4 Unity3D Twitch.tv Streaming

Twitch.tv streaming directly from within Unity3D. CPU or GPU encoder. Capture the rendered output from a Unity3D camera, overlay the webcam or front-facing camera ala PiP (picture-in-picture), and transmit it directly to twitch.tv, YouTube gaming or Facebook video. Works in editor, desktop and mobile, so you can stream your Unity3D games straight from your phone directly to twitch.tv. (Native C++ with a C# wrapper)

Project #5 macOS Tiered Storage

Tiered storage on macOS that can provide RAM disk like speeds when compiling or building your project even if you don't have enough RAM to store your entire project in a RAM disk. Built using C and macOS to produce a kernel driver. Prior proof of concept created using existing tools. (Native C kernel extension and device driver)

Project #6 Bcache-like caching layer for VMWare ESXi

Reduce latency and read/write delay even if using SSD as your storage. Written in C and inserting itself as a storage tier into VMWare ESXi to handle read & write storage requests this caching system accelerates all accesses to the underlying backing store. Can work in both write-back and write-through caching modes. (Native C kernel device driver)

Project #7 Unity3D Augmented Reality Features

Real-time SLAM and mini-SLAM (Simultaneous Localization and Mapping), SURF arrays and VIO (visual inertial odometry) for augmented reality applications in a GPS-denied environment. (C++, Rust, OpenCV, C#)

No alt text provided for this image

Project #8 Unity3D Replay Dashcam

Dashcam application for Unity3D games that continuously captures the last minute of gameplay in a continuous loop (circular buffer) and uploads it to a storage server. If the Unity3D game crashes during QA, or you need to visually demonstrate a glitch in the game, you can show it via the video easily. Also useful to capture “cinematic moments” in live game play. Works in editor, on desktop and also mobile. (Native C++ with a C# wrapper and a custom NVIDIA GPU encoder)

Project #9 VMWare ESXi General Purpose RAM Disk

Working at the virtual machine host level and inserting a RAM disk driver entire virtual machines whose existence is short-lived or when a VM is brought out of hibernation can be hosted directly in RAM, and then suspended back to SSD storage when no longer required. With the entire VM hosted in a RAM disk it reduces wear on the physical media (SSD), reduces read & write latency, and significantly reduces the amount of time that a CI/CD build system is waiting on a build agent. (Native C kernel device driver)

Michael Campos

Machine Learning Engineer

4 年

That's a very impressive list of projects. Congrats! I hope to get this creative with Unity as I learn more!

回复
Mike Hogan

Founder at myDox

4 年

Very cool Justin. Nice work!

回复
Michael J. Carpenter

Principal Gameplay Engineer @ Zynga | Former Telltale, US Navy, Intel Corp

4 年

Sounds super fun!

回复
Dave Boyce

All-in on PLG and AI-assisted GTM.

4 年

holy freak you've been busy. when do you sleep?

J. B. Buchanan

?????????????????????????????? ???? Father, Artist, Writer. Video Game Industry, D.O.D., & U.S. Marine Veteran. Known to be a Sheep Dog & an occasional swimmer with sharks.

4 年

That is very impressive!

要查看或添加评论,请登录

Justin Lloyd的更多文章

  • Alexander: The Not So Great Parts

    Alexander: The Not So Great Parts

    For you, it was the entirety of NaNoWriMo. For me, it was just another Monday.

  • Hippos & Ducks Are Verbotten

    Hippos & Ducks Are Verbotten

  • A Smart Home Dashboard Weekend Project

    A Smart Home Dashboard Weekend Project

    I did a little experimental weekend side project for a bit of fun. I created a dashboard for our home that runs as an…

    7 条评论
  • Science Papers I Read In 2016

    Science Papers I Read In 2016

    This is a list of the ninety-nine (99) science papers I read (and quite often re-read) from January 1st 2016 to…

    2 条评论
  • The Books Of 2016

    The Books Of 2016

    A list of the 80 or so books I read from January 1st, 2016 to December 31st, 2016. This year was a bit light on the…

  • Ain't Nobody Got Time For That...

    Ain't Nobody Got Time For That...

    Over the years, conversations with people have frequently taken the form of: "This food tastes awesome. I wish mine…

    1 条评论
  • Death By Billable Hours

    Death By Billable Hours

    I would have to say that oDesk and eLance and its ilk are poor sources to mine for well paying, serious mobile…

    11 条评论
  • The Upper Trust [NSFW]

    The Upper Trust [NSFW]

    Trust knows no upper price. Want to connect with me? Use justin@justinlloyd.

  • Fungal Career Growth

    Fungal Career Growth

    Your career goal should be to be un-fungible. Want to connect with me? Use justin@justinlloyd.

  • Bleeding Out

    Bleeding Out

    I've met founders of start-ups that bleed equity so profusely they are in imminent danger of exsanguination. Want to…

社区洞察

其他会员也浏览了