Попробуйте поместить код, который подключается к базе данных, до того, как вы укажете маршрут пользователя user.js:
// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'pug');
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false }));
app.use(logger('dev'));
app.use(express.json());
app.use(express.urlencoded({ extended: false }));
app.use(cookieParser());
app.use(express.static(path.join(__dirname, 'public')));
//Database connection
app.use(function(req, res, next){
console.log('In');
res.locals.connection = mysql.createConnection({
host : '127.0.0.1',
user : 'root',
password : 'q1w2e3r4t5',
database : 'users'
});
res.locals.connection.connect();
console.log('out');
next();
});
app.use('/', indexRouter);
app.use('/api/v1/users', usersRouter);
// catch 404 and forward to error handler
app.use(function(req, res, next) {
next(createError(404));
});
// error handler
app.use(function(err, req, res, next) {
// set locals, only providing error in development
res.locals.message = err.message;
res.locals.error = req.app.get('env') === 'development' ? err : {};
// render the error page
res.status(err.status || 500);
res.render('error');
});
module.exports = app;
var server = http.createServer(app);
server.listen(4001);
Вы ознакомились с руководством по космическим шутерам от Unity? https://unity3d.com/learn/tutorials/projects/space-shooter-tutorial/moving-player?playlist=17147
Кодируется в более старой версии Unity (Unity версии 4), но они проверяют совместимость с более новыми версиями (на сегодняшний день версия Unity 5.1). Я скопировал код, который они используют в видео, если ссылка изменится.
using UnityEngine;
using System.Collections;
[System.Serializable]
public class Boundary
{
public float xMin, xMax, zMin, zMax;
}
public class PlayerController : MonoBehaviour
{
public float speed;
public float tilt;
public Boundary boundary;
void FixedUpdate ()
{
float moveHorizontal = Input.GetAxis ("Horizontal");
float moveVertical = Input.GetAxis ("Vertical");
Vector3 movement = new Vector3 (moveHorizontal, 0.0f, moveVertical);
rigidbody.velocity = movement * speed;
rigidbody.position = new Vector3
(
Mathf.Clamp (rigidbody.position.x, boundary.xMin, boundary.xMax),
0.0f,
Mathf.Clamp (rigidbody.position.z, boundary.zMin, boundary.zMax)
);
rigidbody.rotation = Quaternion.Euler (0.0f, 0.0f, rigidbody.velocity.x * -tilt);
}
}
rigidBody.rotation
будет для наклона / крена, показанного на картинке, которую вы назначили, но в настоящее время не изменит вращение корабля вперед. нажатие клавиш со стрелками влево и вправо повлияет на скорость движения твердого тела и вызовет наклон, а после отпускания вернется в центральное положение корабля.