pramberg / devicergb Goto Github PK
View Code? Open in Web Editor NEW๐ Plugin for UE4 that lets you control RGB devices using materials and textures
License: MIT License
๐ Plugin for UE4 that lets you control RGB devices using materials and textures
License: MIT License
Currently all UVs go between 0-1 regardless of their physical size. This doesn't necessarily make sense, and it would be nice to be able to change the transform on a per device basis. Due to how Razer's SDK works, it may have to be on a per device type basis, instead of all/any connected devices unfortunately.
The final color should be the average of multiple pixels, in order to more accurately represent the source material. Since the device is usually very low resolution, only sampling once often leads to an inaccurate sample, and/or sporadic colors, depending on the source. To alleviate this, add support for multisampling in some way. How this should be implemented is not entirely straight forward, since sampling every pixel in the "area" of a LED is probably not the way to go...
Measure the current cost of reading the colors back from the GPU, and check if it needs to be optimized.
This should lead to more accurate colors and more temporally stable colors. Currently, the colors from SceneTextures seem off, and I hope this will fix it. It should be an easy fix, so it's bang for the buck. It just needs to be tested, so it doesn't cause any other issues. An alternative is that the Post Process Material setting that determines blend location also does this? Might be feasible, but probably overkill.
A basic layer system would be a nice feature in this plugin. The layer system should be able to only be applied to select keys (WASD for example).
SDKs just works in the editor at the moment. The are also assumed to exist, even though the Corsair SDK isn't in the repo. I'm not sure we can distribute some SDKs, so a user would have to download it themselves, and place it in the ThirdParty
directory. This in turn requires that the build system detects available SDKs.
I realized that it is error prone to make the user deal with all the material settings when creating a new material. It would be easier if that is done automatically. I don't think it should be too difficult to add, IIRC
Add new asset
menu called "DeviceRGB Material" or something like thatWhen using the material editor in a separate window, so both the level editor and the material editor viewports are visible, the view extension is run twice. This causes the colors to behave sporadically. The optimal solution would probably be to use the viewport/window the use last interacted with, but I'm unsure if that's possible. Regardless, this needs to be fixed in some way, because it makes testing more difficult than it has to be.
LogOutputDevice: Error: === Handled ensure: ===
LogOutputDevice: Error:
LogOutputDevice: Error: Ensure condition failed: Init && InitSDK && UnInit && CreateEffect && CreateKeypadEffect && CreateMouseEffect && CreateHeadsetEffect && CreateMousepadEffect && CreateKeypadEffect && SetEffect && DeleteEffect && QueryDevice [DeviceRGB\Source\Controllers\Razer\RazerController.h] [Line: 93]
LogOutputDevice: Error:
LogOutputDevice: Error: Stack:
LogOutputDevice: Error: [Callstack] 0x00007ffd484873a8 UE4Editor-RazerController.dll!UnknownFunction []
LogOutputDevice: Error: [Callstack] 0x00007ffd484825fc UE4Editor-RazerController.dll!UnknownFunction []
LogOutputDevice: Error: [Callstack] 0x00007ffd48483ff1 UE4Editor-RazerController.dll!UnknownFunction []
LogOutputDevice: Error: [Callstack] 0x00007ffd86731322 UE4Editor-Core.dll!UnknownFunction []
LogOutputDevice: Error: [Callstack] 0x00007ffd867303b9 UE4Editor-Core.dll!UnknownFunction []
LogOutputDevice: Error: [Callstack] 0x00007ffd5d338bf2 UE4Editor-DeviceRGB.dll!UnknownFunction []
LogOutputDevice: Error: [Callstack] 0x00007ffd6dff86d0 UE4Editor-Engine.dll!UnknownFunction []
LogOutputDevice: Error: [Callstack] 0x00007ffd6e02034a UE4Editor-Engine.dll!UnknownFunction []
LogOutputDevice: Error: [Callstack] 0x00007ffd6e0ff237 UE4Editor-Engine.dll!UnknownFunction []
LogOutputDevice: Error: [Callstack] 0x00007ffd6aca5f02 UE4Editor-UnrealEd.dll!UnknownFunction []
LogOutputDevice: Error: [Callstack] 0x00007ffd6aca549b UE4Editor-UnrealEd.dll!UnknownFunction []
LogOutputDevice: Error: [Callstack] 0x00007ffd6b5a90c1 UE4Editor-UnrealEd.dll!UnknownFunction []
LogOutputDevice: Error: [Callstack] 0x00007ff740b12f54 UE4Editor.exe!UnknownFunction []
LogOutputDevice: Error: [Callstack] 0x00007ffd6b5792d1 UE4Editor-UnrealEd.dll!UnknownFunction []
LogOutputDevice: Error: [Callstack] 0x00007ff740b30ffb UE4Editor.exe!UnknownFunction []
LogOutputDevice: Error: [Callstack] 0x00007ff740b3125a UE4Editor.exe!UnknownFunction []
LogOutputDevice: Error: [Callstack] 0x00007ff740b452bd UE4Editor.exe!UnknownFunction []
LogOutputDevice: Error: [Callstack] 0x00007ff740b47fea UE4Editor.exe!UnknownFunction []
LogOutputDevice: Error: [Callstack] 0x00007ffde7807034 KERNEL32.DLL!UnknownFunction []
LogOutputDevice: Error: [Callstack] 0x00007ffde97e2651 ntdll.dll!UnknownFunction []
I think this might be because InitSDK wasn't available in Synapse 2.
This project needs a getting started guide, since it's not entirely straight forward what is required from the material.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.