I’m developing an on-road remote control car racing game for PC. The goals of this game are to:
Capture the excitement of real RC racing (see video below)
Offer single player (offline with AI opponents) and multi-player modes
Allow players to create and share their own track designs with others
I worked on the track designer earlier in the year, got extremely distracted by other things for seven months, and am finally getting motivated to work on this again. If you’re interested, I have a web-based track designer prototype you can try (link below)
Next steps:
Create a car that can be driven within the track designer
Automatic way point and racing line generator for AI opponents
Develop AI opponents with different personalities (i.e. newbie, skilled, aggressive, precision driver, improving driver, sloppy driver, etc.)
Any feedback, comments or questions are appreciated.
In keeping with the requirements of this section, below are some screen captures of my progress this past week. The holiday season is a very busy time for me after hours, so I haven’t had as much time as I’ve wanted to work on the project.
game project + wife + holidays = not very productive
I have very little modeling experience, so my initial goal was just to rough out a car now and clean it up later. It took a couple of hours to relearn how to use Blender, but it came back to me pretty quickly.
The car I’m modeling is the latest 1/10th scale electric sedan put out by Team Xray, which only came out a couple of months ago. I had to put together a library of reference photos - both from Team Xray’s site and some photos that people building the car have posted online. This kit minus all the electronics (servo, speed controller, motor, battery, receiver) is $500, so I’d rather not buy it solely for the purpose of modeling it.
The other thing I spent an incredible amount of time on was researching the wheel collider and various car related scripts posted on the Web - again. I was looking for new tutorials, videos or info and trust me when I say, there isn’t a whole lot of new stuff out there.
The best free scripts and tutorials I’ve found thus far continues to be the one put out by polynurb (aka JamesArndt here in the forum). He has all the scripts and a very robust project with more stuff in it linked under the video on his YouTube Channel. Link is here. I just had to tweak a few parameters so that I can use it for running the car on the test track in the track designer. Good stuff!
Short term goals:
Finish modeling the car - shock tower, suspension parts, wheels and bumper. No body for now, that can come later too.
Import the model into Unity, apply the scripts and fine tune the steering, throttle and braking with the gun controller (pictured below)
See if I can figure out how to make a working suspension. Yes, yes, I know - I don’t need this, but it looks really cool and will play a role in the game when configuring the car… See this demo for an example of working suspension arms.
If you have any comments or questions, let me know.
Congratulations on the work you have done so for on your sim. Can I just say that if you are creating this sim for financial rewards then I would strongly urge you to look at off-road rather than on-road. There is very little market for on-road. The other advantage of off-road is that you will be able to see the results of your work on the animating suspension. The downside is that the track editor may require some more work. However I suspect your motivation is more on a personal level than financial and so far you have made a great start.
The track editor is a great feature to have as most drivers will want to be able to re-create their own club track to practice at home so good thinking to get that sorted early on.
The modelling on the car looks solid and with some textures and materials thrown on their it should look great.
A word of warning about the physics for an on-road rc sim. You are going to have to run the physics at a much higher frequency than you would for a normal driving sim, or even off-road rc, and I am not sure how well unity will cope with that so you might want to look into that. If it doesn’t like it then you are going to need to write your own physics which is not a light undertaking.
Anyway best of luck and I look forward to following your progress. As I said great start and keep up the good work.
Thanks for the feedback and great advice. Very helpful info!
Yeah, I’m not into it for the money, so it’s all good. Free to play with a donate button, and maybe ads if it gets popular.
I primarily run 1/10 nitro sedan, have a T2, and run a M18 in the garage, so I’m basing the game around something I know.
I’ve only run off-road in Real Race (out of print RC sim), so I don’t have a good “feel” for the cars and how to set them up for different type of track surfaces. Designing your own tracks for that game was a real challenge.
I think I could pull off the off-road track designer, but I’d have to get a lot of real track time to get the cars right.
I’m keeping an eye on your progress. Good luck with it.
I tried to create a 1/8th RC Nitro Buggy simulator for mobile earlier in the year. I tried both Edys vehicle physics and Unitycar.
I had problems trying to get those packages to work with real scale cars. They just kept jumping around, which was a real shame as sometimes I could control them long enough to get a glimpse of what the physics would like like it looked great, they flipped and jumped very realistically.
In the end I decided to move on to another game and go back to the RC Sim at a later stage.
It’s interesting what you say Tony about using a higher frequency for physics, maybe that is something that would of fixed the issue i was having?
Finished the roughed out car minus the body. 20k vertices, 20.5k faces, and 55 objects in Blender. The count is way too high for racing around the track, so I’ll be hiding certain objects as required once it’s imported into Unity.
This working model will allow me to setup the car configuration screen, see how the car moves/reacts around the track with different car, track, and physics settings (different views in a “playback” mode), and see how the car drives around from the driver’s stand view.
The final racing version of the car will only be 6 objects - the body (with fake underside), the four wheels, and the chassis plate for setting the physic’s ride height position.
I have a working R/C car now. It behaves like it’s suppose to, including crashing into things, flipping over, and getting stuck on the rails, but I need to spend a lot more time adjusting all the settings to get a solid baseline configuration. Still a lot more trial and error before it’s right.
My gun controller horizontal/vertical input value adjustment code seems to be working okay. I need to calculate the in-game steering endpoints [ relative to a real R/C car ] so that I can code that correctly and that will help with making the other adjustments. I can take a tight turn and accelerate out of the corners, but I feel like I’m slowing down too much to do that.
I fussed with the Fixed Timestep values and that certainly makes a difference. With 0.01, the car spins very easily. 0.015 seems about right, but the SWAG endpoint adjustment need to be fixed, so that will definitely factor into the final value that I use.
Manually adjusting the values in the inspector is getting “stupid”, so I definitely need to get an interface up and running to continue. It needs to include a auto-checkpoint and rollback feature so that I can go back at any point in time without having to write things down. I also need to be able to put in a note so that I keep track of what I changed.
The gear shifting isn’t working right and I will have to completely recode that to work properly. It needs to be redone for the R/C gearing anyway, but for now, I just want it to accelerate a little more realistically.
I’m happy with my progress, especially after putting in all these hours today - and that’s what counts.
LOL! Yes, I used the Unity wheel colliders. I just imported my car into this polynurb’s “Full tutorial scene” project from his YouTube video [ http://www.youtube.com/watch?v=21zuMIsy2GM - link is in the description ], copied everything over to my car and then started fussing with the parameters based in part on the info posted on this page: http://www.gotow.net/andrew/blog/?page_id=78
On the wheel colliders, adjusting the wheel forward friction and sideways friction stiffness factors, and the spring value made a big difference. I also tested turning on/off the Antiroll_Bar and SimpleVelocityLimiter scripts and adjusting the values in the SimpleVelocityLimiter script.
Just driving on the ground plane is misleading. Creating a small track let me see what was really happening with the car - and my camera angle was as you see it, not following the car as in the tutorial scene.
Haha guys that’s my vehicle tutorial! Glad it could help some folks out. I like that you posted the Andrew Gotow car tutorial as well, since my stuff is based on a lot of his work as well.
Making good progress. Looking forward to seeing a none rough version of the car with some textures and watching it driving around a track. Will your tracks only be the ones from the editor or will you make some real tracks also?
Getting double value on this thread with 2 RC sims in production. Going to be interesting to watch them both develop.