Size: a a a

AI Cups Official

2021 January 22

O

Opera in AI Cups Official
struct MyTouchable  { ... }
impl Touchable for MyTouchable { ... }
struct MyHideable { ... }
...
объекты - просто струкруры с реализациями трейтов

а хранить их в структуре как в том примере
источник

O

Opera in AI Cups Official
у меня просто потом получается такое
impl<A, G, H, M> FooBar<A, G, H, M> where A : Aoo, G : Game<A>, H : Hoo, M : Moo<A, G, H> {
источник

VK

Vitaliy Kudasov in AI Cups Official
Ну в целом это норм. Но если тебя смущает что ты указываешь слишком много инфы ты можешь использовать динамичную диспетчеризацию вместо статической (Box<dyn Trait>). Но это даёт меньше гибкости
источник

e

elsid in AI Cups Official
Opera
как в расте правильно хранить объекты с нужным мне трейтом? Если использовать template, то потом нужно везде их прописывать и это не удобно

struct Foo<T : Touchable, H : Hidable> {
   pub touchable : T,
   pub hidable : H
}
impl...

associated types для структур вроде нет.
мб Box<> или as_ref?
можно так, но это ограничивает чем может быть touchable и hidable:
struct Foo {
   pub touchable : Box<dyn Touchable>,
   pub hidable : Box<dyn Hidable>,
}
источник

VK

Vitaliy Kudasov in AI Cups Official
Вроде был ещё RFC про implied bounds, возможно с этим кейсом поможет, не помню. А пока так
источник

VK

Vitaliy Kudasov in AI Cups Official
источник

e

elsid in AI Cups Official
Вообще можно не хранить трейты, а имплементировать столько трейтов сколько нужно для конкретного типа. Можно же требовать чтобы тип соответствовал множеству трейтов:
fn f<T: Touchable + Hidable>(foo: &T) {}
источник

O

Opera in AI Cups Official
было бы хорошо, если бы не
touchable : Vec<Touchable>
hidable : Hidable
источник

VK

Vitaliy Kudasov in AI Cups Official
Если ты переходишь с ооп языка то Box<dyn Trait> скорее всего решит твои проблемы
источник

D

Dmitriy in AI Cups Official
Dmitry Sannikov
Нравится ли дизайн?
чёт нет...
источник

AK

Alexander Kiselev in AI Cups Official
Dmitry Sannikov
Нравится ли дизайн?
а где дым?
источник

A(

Andrey (@AndrewB330) in AI Cups Official
Серега
Последние N лет было черное так-то
Это где N меньше двух?)
источник
2021 January 23

u

ud1 in AI Cups Official
Dmitry Sannikov
Нравится ли дизайн?
Нет. Могу предложить сделать 10 боевых кораблей одновременно лучами аттакуют здоровую турель, и это все красиво в 3d, и ракурс выбрать интересный. А на заднем фоне в далеке еще приближаются сотня кораблей противника.
источник

u

ud1 in AI Cups Official
источник

M

Michael in AI Cups Official
ud1
Нет. Могу предложить сделать 10 боевых кораблей одновременно лучами аттакуют здоровую турель, и это все красиво в 3d, и ракурс выбрать интересный. А на заднем фоне в далеке еще приближаются сотня кораблей противника.
А сзади то же самое но с квадратными лучниками и домиками :)
источник

S

SilentNox in AI Cups Official
Можно сделать в стилистике  визуализатора - все синее на черном, и ничего толком не разобрать
источник

u

ud1 in AI Cups Official
И надпись "Я сущность"
источник

DS

Dmitry Sannikov in AI Cups Official
источник

VK

Vitaliy Kudasov in AI Cups Official
ud1
И надпись "Я сущность"
вам не понравилось то как все реализовано через сущности, вместо отдельных типов под каждого юнита/здание? интересно мнение, тк раньше делали по другому
источник

S

SilentNox in AI Cups Official
Vitaliy Kudasov
вам не понравилось то как все реализовано через сущности, вместо отдельных типов под каждого юнита/здание? интересно мнение, тк раньше делали по другому
Мне понравилось, потому что сущности между собой не сильно отличаются, чтобы их по разным классам пихать.
источник