@borodutcher

Страница 1311 из 10003
Aler
05.09.2016
23:56:30
интересно, что быстрее

абстрактный класс с virtual полями

или проверка на (foo is IBarInterface)

Vladislav
05.09.2016
23:58:15
абстрактный класс с virtual полями
виртуалка гавно, но is вообще всех наследников вроде парит, тк что лучше виртуалить

Google
Vladislav
05.09.2016
23:58:39
хотя, если у тебя не глубокая наследственность is норм

Quaternion... switch(face) - нахуя так делать, математика жжиии Y_Y

Aler
05.09.2016
23:59:36
я это и переписываю

для наглядности сделал

так как когда писал объяснял, что и как тут работает

кстати, если есть на уме элегантное мат решение получения из 1, 2, 4, 6, 8 значений из свичкейса - буду признателен

я пока придумать не могу

Aler
06.09.2016
00:02:47
сплю)

1.2.4.8.16

Vladislav
06.09.2016
00:03:28
1.2.4.8.16
ну так по-битовая а что те не нравится?

Aler
06.09.2016
00:03:35
0000 0001 0000 0010 0000 0100 0000 1000 0001 0000

окей как из этого получить повороты

Google
Vladislav
06.09.2016
00:04:15
а какой дипозон и шаг

Aler
06.09.2016
00:04:36
case CullingFaces.West: return Quaternion.Euler(0, 90, 0); case CullingFaces.North: return Quaternion.Euler(0, 180, 0); case CullingFaces.East: return Quaternion.Euler(0, 270, 0); case CullingFaces.Up: return Quaternion.Euler(90, 0, 0); case CullingFaces.Down: return Quaternion.Euler(-90, 0, 0);

на скрине же)

Vladislav
06.09.2016
00:05:25
ну там не все видно. Так 6 позиций прально?

Aler
06.09.2016
00:05:44
да

по 6 сторонам куба

мне пока только в голову костыли лезут с Math.Max

Vladislav
06.09.2016
00:06:43
ну вообще ты можешь 4 бита на поворот по x и 4 по у

Aler
06.09.2016
00:07:13
по три, но это будет тот же свич кейс по сути

Vladislav
06.09.2016
00:07:35
ну а ты в любом случае меньше 8 бит не можешь взять

так у тебя 4х90=360 для каждой оси, удобно и приятно

Aler
06.09.2016
00:09:57
проблема в том, что для этого придется взять логарифм

Vladislav
06.09.2016
00:10:15
эм...

Aler
06.09.2016
00:10:33
ну а как ты 0000 0100 превратишь в 90*3?

что такое 0100? Это 2^3 же

а значит нужен логарифм

а это дорого

во ^2, но не суть

Vladislav
06.09.2016
00:11:52
while (byte[i]==0 && i<4) { i++; }

Aler
06.09.2016
00:13:10
byte[i] нельзя в шарпах

Google
Aler
06.09.2016
00:13:17
но даже если можно

Vladislav
06.09.2016
00:13:21
ну со сдвигами

Aler
06.09.2016
00:13:25
это всяко костыль хуже свича

Vladislav
06.09.2016
00:13:31
я хз. не юзаю это говно

shr» или как там

Aler
06.09.2016
00:13:52
Ты предлагаешь говно, а не Сшарп гавно.. ты уж прости)

Vladislav
06.09.2016
00:13:59
что может быть хуже свича Y_Y

Aler
06.09.2016
00:14:19
давай заменим 5 простых проверок на циклы

да еще и с аллокацией доп переменной

Vladislav
06.09.2016
00:14:56
Ты предлагаешь говно, а не Сшарп гавно.. ты уж прости)
я про побитовые сдвиги, они превращают код в сатанинское отродье как по мне YY

Aler
06.09.2016
00:15:15
ну смотря какие

static readonly int[] MultiplyDeBruijnBitPosition2 = new int[32] { 0, 1, 28, 2, 29, 14, 24, 3, 30, 22, 20, 15, 25, 17, 4, 8, 31, 27, 13, 23, 21, 19, 16, 7, 26, 12, 18, 6, 11, 5, 10, 9 }; static int GetLog2_DeBruijn(int v) { return MultiplyDeBruijnBitPosition2[(uint)(v * 0x077CB531U) » 27]; }

Aler
06.09.2016
00:15:40
такие точно

Vladislav
06.09.2016
00:15:43
давай заменим 5 простых проверок на циклы
какие 5 простых проверок, кэйс разбирается на If(var a==b.a)

Aler
06.09.2016
00:16:15
нихрена он так не разбирается

это превратится в if(1==a)

Vladislav
06.09.2016
00:16:31
Aler
06.09.2016
00:16:36
так как тут enum

энум по сути сахар над константами\дефайнами же

Vladislav
06.09.2016
00:17:14
так как тут enum
так как тут энум он тебе бокс и анбокс потом еще сделает

Google
Aler
06.09.2016
00:18:17
я не знаю, что ты под бокс и анбокс подразумеваешь, но догадываюсь и вопрос.. во что?!)

если у энума нету типа

мне кажется, что единственный способ это сделать завести массив логорифмов)

DeBrujin это и делает

Vladislav
06.09.2016
00:28:08
если у энума нету типа
когда ты один тип приводишь к другому он анбоксится а потом заново упаковывается.

value тоже касается

Aler
06.09.2016
00:28:47
так в том и дело, что для компилятора тут нету типов. Тут просто byte

Admin
ERROR: S client not available

Aler
06.09.2016
00:29:50


вот это для компилятора одно и тоже вообще

другое дело, что создавать каждый раз кватернион странное решение)

их точно можно положить в табличку

пустые virtual методы оказались в разы быстрее, чем интерфейсы

ну оно и логично наверно

Vladislav
06.09.2016
00:45:03
Is дергает с object'a

Aler
06.09.2016
00:47:06
просто фреймворки и адепты шарпа так любят интерфейсы (они конечно позволяют делать композинг), но я все никак не пойму почему

Vladislav
06.09.2016
00:52:57
можно затраить что-то вроде : Queternion.Euler((x%16)*90,(x-(x%16))*90.(x mod 16)*90) (наверняка где-то туплю, но набросок чисто по геометрии)

не, дичь

Google
Vladislav
06.09.2016
01:04:40
так у тебя не 6 положений, или тебя только фейс интересует?

Nikita
06.09.2016
02:16:00
пустые virtual методы оказались в разы быстрее, чем интерфейсы
ну, это как с наличием или отсутствием строгой типизации в языке :) один разрабатываешь или маленькой командой – все ок, как только команда овер 10 человек, начинается жопа и разработка тормозится дико :)

Святая Алербарда
06.09.2016
02:41:28
@enotcode начал бой на Алербардах c удара на целых 661 Гелиончиков! Кидайте алербарды в течение 60 секунд в @alerbarda_bobot, и получивший больше Гелиончиков победит! Да прибудет с вами Алер.

@enotcode официально провозглашен forever alone и хиккой. Пожелаем ему упасть в колени к Гею и уповать на милость РобоИисуса. Играть в одиночку оказалось реально грустно.

Nikita
06.09.2016
05:51:01
посоны

кто уже смотрел 9 серию мр робота?

почему в конце жена убитого перца назвала элиота "олли"?

или эллиот это еще и тот убитый перец?

Потом окажется, что и темную армию создал Элиот

Святая Алербарда
06.09.2016
06:01:11
@rombique начал бой на Алербардах c удара на целых 407 Гелиончиков! Кидайте алербарды в течение 60 секунд в @alerbarda_bobot, и получивший больше Гелиончиков победит! Да прибудет с вами Алер.

Nikita
06.09.2016
06:01:16
И китай создал Элиот

И Штаты

И екорп

@rombique сасаешь

Святая Алербарда
06.09.2016
06:02:12
@intcosmos победил в боях на Алербардах c 573 Гелиончиками! Результаты: @intcosmos: 573 @borodutch: 463 @rombique: 407 @alexzzz9: 176 Всего было выбито 1619 Гелиончиков.

Nikita
06.09.2016
06:02:22
Сцук

Roman
06.09.2016
06:02:25
@borodutch ты тоже☺️

Nikita
06.09.2016
06:02:55
В этой конфе слишком много романов

@rombique ты служил?

Страница 1311 из 10003