Вопросы о Python
|
|
DamirGoo | Дата: Вторник, 20.09.2011, 21:21 | Сообщение # 16 |
Группа:
Сообщений: 16
Награды: 0
Репутация: 0
Статус: Offline
| Toxa17
вот файл, blender 2.57
http://narod.ru/disk/25787594001/OFF%20Road%20game.blend.html
Сообщение отредактировал DamirGoo - Вторник, 20.09.2011, 21:22 | |
| |
Toxa17 | Дата: Среда, 21.09.2011, 00:15 | Сообщение # 17 |
BGE мастер
Группа:
Сообщений: 697
Награды: 11
Репутация: 23
Статус: Offline
| DamirGoo, вот скрипт: Code from bge import logic as g, events
c = g.getCurrentController()
o = c.owner
tc = g.keyboard.events
freio = 0.0 acelerador = 0.0
if tc[events.WKEY]: acelerador -= 80.0 if tc[events.SKEY]: acelerador = 75.0 if tc[events.AKEY]==2: o["virar"] += 0.1 if tc[events.DKEY]==2: o["virar"] -= 0.1 if o["virar"]>0.5: o["virar"] = 0.5 if o["virar"]<-0.5: o["virar"] = -0.5 if tc[events.SPACEKEY]: freio = 2.7 carro = o["carro"] carro.applyEngineForce(acelerador,2-5) carro.applyEngineForce(acelerador,3-5) carro.applyEngineForce(acelerador,4-5) carro.applyEngineForce(acelerador,5-5) carro.applyEngineForce(acelerador,6-5) carro.applyEngineForce(acelerador,7-5) carro.applyEngineForce(acelerador,8-5) carro.applyEngineForce(acelerador,9-5)
carro.setSteeringValue(o["virar"],0) carro.setSteeringValue(o["virar"],1) carro.setSteeringValue(o["virar"],10) carro.setSteeringValue(o["virar"],11)
carro.applyBraking(freio,2) carro.applyBraking(freio,3) carro.applyBraking(freio,4) carro.applyBraking(freio,5) carro.applyBraking(freio,6) carro.applyBraking(freio,7) carro.applyBraking(freio,8) carro.applyBraking(freio,9) изменив тут: Code if tc[events.AKEY]==2: o["virar"] += 0.1 o["virar"] ты изменяешь резкость паворота изменив тут: Code if o["virar"]>0.5: o["virar"] = 0.5 if o["virar"]<-0.5: o["virar"] = -0.5 число 0,5 на большее увеличиваешь максимальный поворот Что бы скрипт работал добавь проперти virar на объект 1(там где скрипт стоит)
| |
| |
DamirGoo | Дата: Среда, 21.09.2011, 13:22 | Сообщение # 18 |
Группа:
Сообщений: 16
Награды: 0
Репутация: 0
Статус: Offline
| блин, не работает почему-то... с этим скриптом никакие кнопки не работают... (проперти virar добавил)
| |
| |
Toxa17 | Дата: Среда, 21.09.2011, 16:58 | Сообщение # 19 |
BGE мастер
Группа:
Сообщений: 697
Награды: 11
Репутация: 23
Статус: Offline
| DamirGoo, там просто при копировании кода с сайта пробелы везде добавляются, можешь удалить их и всё или вот скрипт в txt файле.
| |
| |
DamirGoo | Дата: Среда, 21.09.2011, 17:25 | Сообщение # 20 |
Группа:
Сообщений: 16
Награды: 0
Репутация: 0
Статус: Offline
| Круто большое спасибо
| |
| |
DevilNG | Дата: Пятница, 07.10.2011, 17:19 | Сообщение # 21 |
Группа:
Сообщений: 82
Награды: 0
Репутация: 0
Статус: Offline
| кто знает ? Rasterizer.showMouse(0) - скрыть курсор мыши? или по другому нужно написать? спрашиваю - потому-что не работаетДобавлено (06.10.2011, 15:09) --------------------------------------------- всё сделал =) Добавлено (07.10.2011, 15:11) --------------------------------------------- from bge import logic as G from bge import render as R import Rasterizer Rasterizer.showMouse(1) sens = 1.0 owner = G.getCurrentController().owner cont = G.getCurrentController() lClick = cont.sensors["lClick"] if "oldX" not in owner: G.mouse.position = (0.5,0.5) owner["oldX"] = 0.0 owner["oldY"] = 0.0
if lClick.positive: # round() is a hack to work around the floating mouse bug x= round(0.5 - G.mouse.position[0], 2) y = round(0.5 - G.mouse.position[1],2) x *= sens y *= sens owner['oldX'] = (owner['oldX']*0.9 + x*0.1) owner['oldY'] = (owner['oldY']*0.9 + y*0.1) x = owner['oldX'] y = owner['oldY'] # set the values owner.applyRotation([0, 0, x], False) owner.applyRotation([y, 0, 0], True) Rasterizer.showMouse(0) # Center mouse in game window G.mouse.position = (0.5,0.5)
пожалуйста помогите, кто разбирается в питоне, что на что нужно в этом коде поменять, чтоб объект вращался относительно осей сцены, а не относительно своих осей? Добавлено (07.10.2011, 17:19) --------------------------------------------- всё сделал=) блин, сам пишу сам отвечаю))))))))))))))))
| |
| |
DevilNG | Дата: Воскресенье, 30.10.2011, 19:53 | Сообщение # 22 |
Группа:
Сообщений: 82
Награды: 0
Репутация: 0
Статус: Offline
| Toxa17, помнишь ты делал пример перемещение объекта курсором мышки? Так вот в этом примере курсор ставится ровно по центру объекта. А мне нужно чтобы я мог за любую часть объекта тащить. чтобы он к центру не съезжал. я уже весь инет перерыл, даже справочник по питону(не нашел как изменить центр объекта), пробовал сделать скрипт на основе позиции курсора, но объект как-то волнообразно следует. Получается твой пример если подделать с изменением центра объекта, то будет самое то. в файле то что у меня получилось
| |
| |
Toxa17 | Дата: Понедельник, 31.10.2011, 19:24 | Сообщение # 23 |
BGE мастер
Группа:
Сообщений: 697
Награды: 11
Репутация: 23
Статус: Offline
| DevilNG, вот сделал, наводишь на объект курсором и жмёшь на л.к. мыши и он перемещается, объект в центр не переносится. Стандартно стоит, надо держать л.к. мыши. Ещё можешь поменять initial в state и там просто раз жмёшь объект двигается за мышкой, ещё раз перестаёт.
| |
| |
DevilNG | Дата: Вторник, 01.11.2011, 10:57 | Сообщение # 24 |
Группа:
Сообщений: 82
Награды: 0
Репутация: 0
Статус: Offline
| Toxa17, спасибо, очень удобное решение)))))))
| |
| |
Торт | Дата: Вторник, 01.11.2011, 20:41 | Сообщение # 25 |
Генерал Торт
Группа:
Сообщений: 17
Награды: 1
Репутация: 2
Статус: Offline
|
| |
| |
Toxa17 | Дата: Среда, 02.11.2011, 16:44 | Сообщение # 26 |
BGE мастер
Группа:
Сообщений: 697
Награды: 11
Репутация: 23
Статус: Offline
| Торт, шо ето значит?
| |
| |
Торт | Дата: Четверг, 03.11.2011, 12:57 | Сообщение # 27 |
Генерал Торт
Группа:
Сообщений: 17
Награды: 1
Репутация: 2
Статус: Offline
| флужу смайликами
| |
| |
DevilNG | Дата: Четверг, 17.11.2011, 14:50 | Сообщение # 28 |
Группа:
Сообщений: 82
Награды: 0
Репутация: 0
Статус: Offline
| в питоне есть что нибудь типа разбиение кода на части по файлам, а потом один файл подключить к другому?
| |
| |
DevilNG | Дата: Четверг, 17.11.2011, 15:10 | Сообщение # 29 |
Группа:
Сообщений: 82
Награды: 0
Репутация: 0
Статус: Offline
| нашел
| |
| |
Торт | Дата: Четверг, 08.12.2011, 20:31 | Сообщение # 30 |
Генерал Торт
Группа:
Сообщений: 17
Награды: 1
Репутация: 2
Статус: Offline
| Почему куб не крутится по нажатию клавиши пробел? (блен 2,6)
| |
| |