Here is a quick overview on several key elements to look out for when developing using the Razer Chroma SDK.
1) POSSESS THE NECESSARY RAZER CHROMA PERIPHERALS
Ensure that you have Razer Chroma peripherals that are supported by the Razer Chroma SDK. You can refer to the full list supported by the SDK here. The optimal line of hardware to own for development would be
- Mouse – Razer Mamba Tournament Edition/Razer Diamondback
- Keyboard – Razer BlackWidow Chroma V2
- Headset – Razer Kraken 7.1 V2
- Mousemat – Razer Firefly
- Keypad – Razer Orbweaver Chroma
The Razer Laptop can be supported by simply using an API that is further explained in (2).
2) BUILDING ACCURATE SUPPORT FOR AS MANY RAZER PRODUCTS AS YOU CAN
- Using Generic Layout
To ensure that your codes are future proof and supports any new Razer Chroma product, you are advised to develop using the generic matrix for our major product lines such as keyboards, mouse, mousemats, keypads and headsets. By using this way, you do not have to constantly update your code within the game/application to support new Razer Chroma products that Razer releases.
- Automatically Support the Various Keyboard Layouts
An API was developed to use the BlackWidow Chroma keyboard as a baseline to accurately map and support various regional language layouts and the Razer Blades.
This is due to our keyboard is featured in various layouts such as German, UK, French and even our laptops.
You can also test how your effects will appear on the Razer Blade line by downloading the emulator.
CHROMA_CUSTOM acts like a drawing canvas while CHROMA_CUSTOM_KEY gives you the canvas plus key effects regardless of physical or region layout.
This new API allows developers to create effects on keyboard without having to worry about the location of the physical keys. The data structure contains 2 x 2D array with one represents a canvas and the other key effects.
For an example, when an animated effect (wave) with blinking W, A, S, D effect runs on a BW Chroma with US layout, you will see the wave effect as the background and blinking W, A, S, D overlaying on top. Running this on a Blade will see the exact result despite the Blade having a different physical key layout compared to a BW Chroma. Running this effect on a French layout BW Chroma will yield the same result even though the localized key layout is different.
The difference between CHROMA_CUSTOM_KEY and CHROMA_CUSTOM is with CHROMA_CUSTOM, the effect will appear at the location as it is. Hence, different keyboard layouts will result in the effect appearing differently. With CHROMA_CUSTOM_KEY, the developer is guaranteed that effect appears the same for all keyboard layouts.
3) ALLOW USERS TO READ YOUR GAME/APP DETAILS WITHIN SYNAPSE
Enclose your application with the XML file to ensure that your app details are shown accurately within Razer Synapse.
- Example 1: Your Application Shown Within Synapse
- Example 2: Application Details
5) TELL THE WORLD ABOUT YOUR CREATION ON THE ULTIMATE DISTRIBUTION PLATFORM—CHROMA WORKSHOP
Check out the Chroma Workshop—the repository for all Razer Chroma supported games, apps and profiles. You can also share your game as well as application, and it could just become the next big thing.
You can reach out to our team for co-marketing opportunities at our Contact Us page.
6) DEVELOPMENT TOOLS
a. Sample Project
The application will allow you to try out the effects for each of our SDK supported devices. You are also able to view the source code to better understand how the code works.
b. Emulator (Beta)
Should you lack a particular device, the emulator will be able to simulate the Chroma effects of the following supported products:
- Razer Blade
- Mamba TE
- BlackWidow Chroma
This will be most useful when you need to check how the Chroma effects appear on the Razer Blade once you’ve implemented the CUSTOM_KEYS API.DOWNLOAD