Blender | Camera Controller Addon (Create Realistic Camera Movements)
Introduction to the Application/Add-on
Blender Camera Controller is an add-on designed for artists and studios that need to generate realistic camera movements. By using your smartphone, you can simulate camera movements as if you were holding a real camera, creating extremely realistic shakes in real-time, without the need for tracking. These movements are based on actual data captured from your phone and can be recorded in real-time, baking them as keyframes in your animation.
The app also allows you to move the camera using two joysticks: one controls forward, sideways, and backward movements, while the other controls the camera’s height. Additionally, with the option to send rotation/movement data from the active camera, you can direct the camera’s orientation while using the joysticks to generate translations.
You can also create keyframes in your scene at specific points in the animation and use your phone to generate only the camera’s rotational movements. This is a highly useful feature, but due to Blender’s limitations, there might be some lag when recording the movements. This is an issue within Blender itself, and I plan to report it to see if a developer can find a solution. However, once baked, these lags will no longer be visible.
What Do I Need to Know About My Phone's Hardware Before Using It?
-
SensorManager API Compatibility:
This application uses Android’s SensorManager API, which provides various rotation positions of your device based on data metrics. The app captures this data and converts it into real-time camera movements. Unfortunately, this feature is not available on all devices—only modern mid-to-high-end phones support it. Therefore, you will need to download and test the app on your device. -
High-Speed Network:
The recommended networks for use are Wi-Fi 5 or USB Tethering from Android. By disabling your computer’s network and enabling USB Tethering, you can create a high-speed wired local connection. However, this method requires your smartphone to remain physically connected via a USB cable. -
Device-Specific Performance:
Not all devices may behave the same way. This is a feature that will be tested over time.
How to Install
-
Downloading and Installing (Official Version Available on Gumroad Only)
a) Download the add-on to your computer (currently tested only on Windows) and install it in Blender.
b) After installation, it will appear in Blender’s sidebar under the name Camera Controller. Click this tab and then select "Start Server".
c) If everything works correctly, a QR Code will be generated.
d) With the application installed on your phone, scan the QR Code or manually enter the IP and Port. When you open the app for the first time, a warning message will inform you whether your phone supports the SensorManager API. (You can decide whether to proceed.)
How to Use
1) Sending Camera Movements
- If your device is supported, you will find two central buttons upon logging in:
- "SEND CAMERA MOVEMENTS"
- "ENABLE WALK"
- When activated, these buttons allow you to send rotation and translation movements to the camera.
2) Using Joysticks for Navigation
- When "ENABLE WALK" is active, the joysticks will be enabled.
- You will have access to advanced options via a configuration button, such as:
- Acceleration control
- Inertia effect (which smooths acceleration and deceleration of joystick movements).
- You can adjust these settings to fine-tune the best speed and inertia for your projects.
3) Reset Rotation and Translation Controls
- If a movement does not feel right, you can rewind your timeline and reset any necessary parameters.
- The last recorded rotation and translation movements will remain stored.
4) Camera Toggle Button
- This button, located next to the reset controls, allows you to switch to the active camera or exit it.
5) Timeline Controls
- The application was developed with usability in mind, featuring a fully interactive timeline:
- It synchronizes in real-time with Blender’s timeline.
- It detects if playback is active or if frames are being changed.
- You can drag left or right to scroll through the timeline.
- You can manually set the current frame, start frame, and end frame.
- There are also buttons to advance or rewind frame-by-frame.
6) Disconnect and Record Buttons
- Left button: Disconnects from the server.
-
Right button: Records movements in real-time.
- When this function is enabled, Blender Camera Controller will record and bake all keyframes, generating hyper-realistic camera animations for your scene.
Final Animation Quality
This add-on will be continuously improved to enhance usability. However, because it simulates a joystick and real-life movements, some practice is required to get used to the controls. Adjusting acceleration and inertia settings will help you refine your movements. Over time, you will develop muscle memory, allowing you to achieve better and more natural results.
DEVICES TESTED SO FAR:
This is a list of devices tested by me and some users, thanks to everyone who is helping with the compatibility report, and always remember to use a high-speed and stable network for better quality results and to avoid connection lags.
Samsung:
- Galax s25 Ultra (rotation✅, movements ✅)
- Galax s24 Ultra (rotation✅, movements ✅)
- Galax s23 Ultra (rotation✅, movements ✅)
- Galax a30S (rotation✅, movements ✅)
- Galaxy J5 Prime (rotation ⛔, movements ✅)
Google:
- Google Pixel 7 Pro (rotation✅, movements ✅)
Xiaomi:
- POCO F3 (rotation✅, movements ✅)
- Redmi Note 8t (rotation ⛔, movements ✅)
Lenovo:
- Xiaoxin Pad Pro 2022 (rotation✅, movements ✅)
Reporting Issues
If you encounter any bugs or have feature suggestions, please report them via email. Additionally, you can help by confirming whether your phone supports all features so that we can gradually compile a list of tested devices:
📩 batchrendercreator@gmail.com
Buy me a coffee 🍵